trustintruth · 2020年11月04日

分数分频的FPGA实现

11.04.jpg

来源:知乎
作者: Trustintruth

分频对于许多FPGA的学习者来说很常见,无论是偶数分频还是奇数分频。但是分数分频在我们制作时并不常见。现在我们来说分数分频。
分数分频顾名思义分频比并不是一个整数,而是一个分数。往常我们接触的积分频,偶分频分频比都是整数,而分数分频的小数如何实现就是这个的核心问题。
在实现分数分频的过程中,我们并不是使用一个小数来实现计数器功能,而是使用变分频比取平均的方法来实现。分频器设置两个分频模数,分别为 M 和 M + 1,它们的分频次数分别设置在 N2 和 N1,在一个输出信号的完整的 周期( N1 +N2)中,若输入信号的周期为 N2·M +N1·( M +1), 即在周期为 N2 ·M + N1 ·( M + 1) 的输入信号中,进行了 N2 次 M 分频和 N1 次( M + 1) 分频,则可得到周期为( N1 + N2) 的输出信号,所以,分频器的分频比为: N2·M + N1·( M +1) N1 + N2 = N . 令 Q = N1 + N2, P = N2·M + N1( M + 1) ,则分频比又可 以写成:N =P/Q
其中 P、 Q 均为整数,且 P > Q。可得当基准时钟源每输入 P 个脉冲时,按照一定规律删除( P-Q) 个脉冲,并使删除的( PQ) 个脉冲位置相对均匀地分布在时钟源相对应的 P 个脉冲 中,输出 Q 个脉冲,便实现了平均意义上的 N 分频。 通过分析可知,分数分频的两种分频比可通过脉冲删除 电路来实现。具体设计思路为: 设置一个计数器,设其初始 值为0;在基准时钟源的每个上升沿到来时,计数器加上 Q, 若结果大于等于 P,则将计数器的值减去 P,并不删除脉冲; 若结果小于 P,则删除脉冲。
相关文章

更多IC设计相关技术干货请关注IC设计专栏。
3 阅读 426
推荐阅读
0 条评论
关注数
1248
内容数
110
FPGA Logic 二三事
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
Arm中国学堂公众号
关注Arm中国学堂
实时获取免费 Arm 教学资源信息
Arm中国招聘公众号
关注Arm中国招聘
实时获取 Arm 中国职位信息