首先,从奇数分频的实质来说?其实这种方法是利用时钟的上升沿和下降沿在count不同时分别输出1,然后将两个不同的1组合起来形成输出的clkout,而之所以要用到下降沿,是因为下降沿可以让时序落后半个周期,其同上升沿组合(逻辑加)起来来满足占空比的要求<br>
举个例子来说,要实现50%占空比的5分频,则有<br>
0 1 2 3 4<br>
上升沿 高 低 低 低 低<br>
下降沿 高 高 高/低 低 低<br>
+<br>
----------------------------<br>
高 高 高/低 低 低 <br>
注意此处第高/低表示一半周期高一半周期低,满足题目要求 <br>
回到本题,我们有M/2其实就是指第三个时钟下降沿来的时刻<br>
同样,从verilog的语法上来讲:在进行整数除法运算时,结果要略去小数部分,只取整数部分<br>
你再结合程序看看,应该会明白的 |