FPGA 5分频程序

一、FPGA实现奇数倍分频,以5分频为例,代码如下:

module div(MCLK,DIV5_CLK,DIV0,DIV1,COUNT0);

 
input  MCLK;                 //时钟输入
 
output DIV5_CLK;             //5分频输出
output DIV0,DIV1;             //(N-1)/2分频输出
reg DIV0;
reg DIV1;
 
parameter N = 5;                 // 设置分频数N(奇数)
parameter M = 2;                 // (N-1)/2
 
output [2:0]COUNT0;              //计数器计数寄存器
reg[2:0] COUNT0 = 0;
reg[2:0] COUNT1 = 0;
 
always@(posedge MCLK)          //MCLK上升沿分频
begin
   if(COUNT0==2)begin
      DIV0=0;
   end else if(COUNT0==5)begin
      COUNT0=0;
      DIV0=1;
   end
      COUNT0=COUNT0+1;
end
 
always@(negedge MCLK)         //MCLK下降沿分频
begin
   if(COUNT1==2)begin
      DIV1=0;
   end else if(COUNT1==5)begin
      DIV1=1;
      COUNT1=0;
   end
      COUNT1=COUNT1+1;
end
 
assign DIV5_CLK=DIV0|DIV1;     //两路(N-1)/2分频输出相或
 

endmodule

仿真图如下所示:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值