标题: 分频器Verilog设计 [打印本页]

作者: WeTiGY    时间: 2016-11-25 22:19
标题: 分频器Verilog设计
本帖最后由 WeTiGY 于 2016-12-4 15:04 编辑

实验三  分频器
一、实验目的
1、掌握分频器的设计原理;
2、用HDL语言设计分频器。
二、实验原理
分频器与计数器类似,也是要对时钟脉冲进行计数,但其输出的不是对时钟脉冲个数的计数值,而是其频率与时钟的频率成固定比例关系的脉冲信号。整数分频是所有分频器中最简单,最容易实现的。我们只需要通过计数器计数就完全可以实现。如整数N分频,就可以通过待分频的时钟触发计数器计数当计数从0计数到N/2-1时,输出时钟进行反转,并使计数器在下一个时钟从0开始重新计数,如此循环就可以实现任意的等占空比或占空比近似为50%的整数分频。
三、实验内容
设计一个分频输出信号的占空比近似为50%的分频器,将50MHz输入时钟分频为1Hz时钟,在试验箱EXT_B_A1_1端口输出,并用示波器观察输出波形。
  1. module divider_module
  2. (
  3.        CLK,f_Out
  4. );

  5.        input CLK;
  6.        output f_Out;
  7.    

  8.        parameter T1s=26'd50_000_000;
  9.        reg [25:0]Count1;
  10.    
  11.       always @ ( posedge CLK )
  12.                  if( Count1 == T1s)
  13.                       Count1 <= 26'd0;
  14.                 else
  15.                       Count1 <= Count1 + 1'b1;
  16.         
  17.        reg rf_Out;        
  18.        always @ ( posedge CLK )
  19.                    if( Count1 >= 26'd0 && Count1 <= 26'd25_000_000)
  20.                         rf_Out <= 1'b0;
  21.                   else
  22.                         rf_Out <= 1'b1;     
  23.       assign f_Out = rf_Out;

  24. endmodule
复制代码



注:使用20分频仿真

仿真图:








欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1