基于VHDL和FPGA的多种分频的实现方法

图四
由图中qxiao和clk的波形可以看出,每隔8.5个时钟周期,qxiao信号产生一个上升沿,从而实现分频系数是8.5的分频,同时在qzheng端得到等占空比的17分频。设clk为170MHz,则qxiao输出为20MHz,qzheng输出为10MHz。
2.实现占空比为1∶8和4∶5的9分频
只要上述程序的xor_en置低电平即可在qxiao输出占空比为1∶8的9分频信号;在qzheng2输出占空比为4∶5的9分频信号。同样仅占8个逻辑单元(logic elements)。仿真波形如下。
3.实现等占空比的2、4、8、16和32分频 只要将上述程序中的xor_en置为低电平,同时将计数器模块的计数最大值设为16即可。仿真波形如下。
由此可见,只要稍微改变计数器的计数状态值,对异或门进行选通控制,即可实现上述多种形式的分频。本设计在Altera公司的EP1K50QC208-3构成的测试平台上测试通过,性能良好。
结束语
我们在设计模拟雷达脉冲信号和用FPGA开发扩频芯片时就用到了上述多种形式得分频。本文旨在介绍一种进行FPGA开发时,所需多种分频的实现方法,如果设计中所需分频形式较多,可以直接利用本设计,通过对程序的稍微改动以满足自己设计的要求。如果设计中需要分频形式较少,可以利用本设计部分程序,以节省资源。
评论