4、率:设N出现的频率为a,则N×a+(N+1)×(B-a)=N×B+A求解a=B-A;所以N+1出现的频率为A.例如实现7+2/5分频,取a为3,即7×3+8×2就可以实现。但是由于这种小数分频输出的时钟脉冲抖动很大,现实中很少使用。通常实现偶数的分频比较容易,以十分频为例:always@(posedgeclkorposedgereset) if(reset) begin k<=0; clk_10<=0; end else
5、 if(k==4) begin k<=0; clk_10<=~clk_10; end else k<=k+1; 二分频最简单了,一句话就可以了: always@(negedgeclk) clk_2<=~clk_2;若进行奇数分频,则稍微麻烦点,以11分频为例:always@(posedgeclk) if(!reset) begin
6、 i<=0; clk11<=0; end else if(i==5) begin clk11<=~clk11; i<=i+1; end else if(i==10) begin i<=0; clk11<=~clk11; end else
7、 i<=i+1; 以上语句虽然可以实现,但是逻辑有点繁,弄不好就出错了,建议使用两个always语句来实现:always@(posedgeclk) if(!reset) i<=0; else begin if(i==10) i<=0; else i<=i+1; end always@(posedgeclk) if(!reset) clk1