时钟分频系列——分数分频电路的Verilog实现
发布网友
发布时间:2024-10-24 09:44
我来回答
共1个回答
热心网友
时间:2024-10-30 05:27
分数分频器由两部分组成:ZN和ZN+1为分频系数的多路分频器以及一个ACC计数器。设计分数分频器时,首先定义模块名字MDIV。此模块需实现ZN/ZN+1分频器,其设计包含偶分频器和奇分频器。设计使用Verilog硬件描述语言实现,调用方法明确。具体仿真波形直观展示了MDIV的运行效果。
ACC计数器用于控制执行ZN分频N次与ZN+1分频M次的操作。根据控制过程的不同,ACC计数器设计可分四类情况:先做N次ZN分频后做M次ZN+1分频、先做M次ZN+1分频后做N次ZN分频、将N次ZN分频平均插入M次ZN+1分频中、将M次ZN+1分频平均插入N次ZN分频中。组合两种分频方式时,第1、2种情况的时钟频率变化较大,相位抖动较高;第3、4种情况则相对均匀,相位抖动较小。例如,8.7分频器的设计利用3次8分频和7次9分频,通过混频达到87周期等效的效果。
设计ACC计数器时,以第3种情况为例,即将3次8分频均匀插入到7次9分频中,实现混频。使用Verilog代码实现,通过修改98行的数字来调整混频方式。最终,将MDIV与ACCT模块结合构成8.7分频器,通过Verilog代码实现,波形输出展示了clkout信号。
分数分频器设计过程需细致考量,实现中需注意模块间协同工作以确保输出信号的稳定和准确。尝试使用MDIV和ACCT设计其他分数分频器,如10.3分频器,将有助于进一步掌握此技术。