基于FPGA_的分频器的设计.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
前言: 众所周知,分频器是FPGA设计中使用频率非常高的基本设计之一,尽管在目前大部分设计中,广泛使用芯片厂家集成的锁相环资源,如altera?的PLL,Xilinx的DLL.来进行时钟的分频,倍频以及相移。 但是对于时钟要求不高的基本设计,通过语言进行时钟的分频相移仍然非常流行,首先这种方法可以节省芯片内部的锁相环资源,再者,消耗不多的逻辑单元就可以达到对时钟操作的目的。另一方面,通过语言设计进行时钟分频,可以看出设计者对设计语言的理解程度。 在数字系统的设计中,设计人员会遇到各种形式的分频需求,如偶数分频、奇数分频、半整数分频、小数分频和分数分频等。在某些设计中,系统不仅对频率有要求,而且对占空比也有严格的要求。由计数器或计数器的级联构成各种形式的偶数分频及非等占空比的奇数分频实现起来较为简单, 但对半整数分频及等占空比的奇数分频实现较为困难,小数分频和分数分频更困难。 整数分频器 偶数分频器的设计较为简单,可以利用计数器实现。 假设要实现m = 2 n分频,当计数器的值为0 ~ j - 1时,输出时钟为1,计数器的值为j~2n - 1时,输出时钟为0,在计数器值为2n - 1时复位计数器,如此循环下去,即可实现占空比为j/2n的分频,m 和j都是预置数, j用于调节占空比, m 调节分频系数。m 的值不同,分频系数也就不同, 如果预置数m 是奇数则可实现占空比不等于50%的奇数分频。 占空比为50%的奇数分频实现起来较为困难,实现的方法较多,主要有三种办法: 1:对两个相差为90的占空比最接近50%的N分频计数器输出进行或运算。 假设要实现占空比为50%的m = 2n + 1分频, 选择两个2n + 1进制计数器控制两个中间时钟clk1和clk2, 1号计数器在输入时钟clk的上升沿计数, 2号在clk的下降沿计数。当计数器1输出为0~n - 1时clk1为1, 输出为n~2n时clk1为0且计数器1输出为2n时计数器1清0 ,如此循环下去; 当计数器2输出为0 ~ n - 1时clk2为1, 输出为n~2n时clk2为0且计数器2输出为2n时计数器2清0,如此循环下去。可见2种计数器实现方法一样,只是翻转的边沿不一样,最终输出的时钟clkout = clk1 + clk2。占空比为50%的奇数分频。 2:先2N分频,再倍频实现50%占空比。倍频的方法是相移90度进行异或运算。 两个相位差为90 度的2N 分频输出信号进行异或,从而得到占空比50%的奇数N 分频电路。下图中TFF为T触发器,输入为1时,进行翻转,这样就可以得到两路2N分频的信号D0,D1。TFF0的输入为1发生在Cal=时,有一个周期的延迟,即当Cal=1时,D0翻转。在Cal=N+1时,再次翻转。为使D1有90度的相移,需要在(N+2)/2处翻转,为此我们在(N+1)/2处使TFF1输入为1,并在(N+2)/2采样,这里正好对应着下降沿,所以采用下降沿采样。 3:对进行奇数倍n分频时钟,首先进行n/2分频(带小数,即等于(n-1)/2+0.5),然后再进行二分频得到。得到占空比为50%的奇数倍分频。详细见半整数分频。 半整数分频 1:模N+1计数,然后翻转触发时钟扣除半个脉冲,脉冲周期剔除法N-0.5的分频器,其电路可由一个模N计数器、一个二分频器和一个异或门组成,如图7-1所示。 在实现时,模N计数器可设计成带预置的计数器,这样就可以实现任意分频系数为N-0.5的分频器。 通用半整数分频器 小数分频 小数分频器的实现方法很多,但其基本原理一样:在若干个分频周期中采取某种方法使某几个周期少计一个或几个数,即吞脉冲原理,从而在整个计数周期的总体平均意义上获得一个小数分频比。如设计一个分频系数为10.1的分频器时,可以将分频器设计成9次10分频,1次11分频,这样总的分频值为:F=(9×10+1×11)/(9+1)=10.1 假设时钟源的频率为F0 ,期望得到的频率为F1 ,则其分频比X 有X = F0 / F1 其中, X 1 。 若M X M + 1 , M 为整数,则有 其中, N1 和N2 均为整数。当N1 和N2 取不同的正整数时,从N2/( N1 + N2 ) 可以得到任意一个小数,就可以从理论上实现任意小数分频比的分频. 从工程角度可以进一步构造出下列关系: 它有明确的物理意义,它的右边实际上是个多位累加器。当分频比X 为无限小数时,例如把13MHz的时钟信号分频为11MHz 时,x = 1118181818 ?,此时,尽管在理论上可以设计这样的多位累加器,但在实际电路中却是不可实现的。因此,实际所设计的双模前置小数分频器的分频比,有时候与实际期望得到的分频比存在一个微 小的偏差;当分频器长时间工作,就会导致累计误差。 这样的设计

文档评论(0)

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档