目录
题目
实现50%占空比的三分频
核心思路
如果不限制占空比50%的话,那么用counter做3进制计数,每次counter=1拉高,counter=2拉低即可,但是这样的占空比是1/3。
如果要做50占空比的三分频,则需要一个上升沿的六分频和一个下降沿的六分频组合来得到。
类似的奇分频都可以这样实现。
大致有三种组合方式都可以得到:与
或
异或后续将上升沿采样记为clk_pos,下降沿采样记为clk_neg
答案
与逻辑分频
- 用与逻辑来组合,需要clk_pos和clk_neg拉高2T,但是其本身有0.5T的时序差
- 那么在cnt=0时,clk_pos拉高2拍
- cnt=0时,clk_neg拉高2拍
- 最后clk_pos & clk_neg 即为分频结果
下面是理论波形图方便理解。
module div_and #(parameter n=5) ( input