0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

利用FPGA技术实现各类分频器的设计

电子设计 来源:郭婷 作者:电子设计 2019-08-07 08:00 次阅读

引言

分频器是FPGA设计中使用频率非常高的基本单元之一。尽管目前在大部分设计中还广泛使用集成锁相环(如altera的PLL,Xilinx的DLL)来进行时钟的分频、倍频以及相移设计,但是,对于时钟要求不太严格的设计,通过自主设计进行时钟分频的实现方法仍然非常流行。首先这种方法可以节省锁相环资源,再者,这种方式只消耗不多的逻辑单元就可以达到对时钟操作的目的。

1 整数分频器的设计

1.1 偶数倍分频

偶数分频器的实现非常简单,通过计数器计数就完全可以实现。如进行N倍偶数分频,就可以通过由待分频的时钟触发计数器计数,当计数器从0计数到N/2-1时,输出时钟进行翻转,并给计数器一个复位信号,以使下一个时钟从零开始计数。以此循环,就可以实现任意的偶数分频。

利用FPGA技术实现各类分频器的设计

1.2 奇数倍分频

奇数倍分频有两种实现方法,其中之一完全可以通过计数器来实现,如进行三分频,就可通过待分频时钟上升沿触发计数器来进行模三计数,当计数器计数到邻近值时进行两次翻转。比如可以在计数器计数到1时,输出时钟进行翻转,计数到2时再次进行翻转。这样,就在计数值邻近的1和2进行了两次翻转。如此便实现了三分频,其占空比为1/3或2/3。

占空比1/15的15分频设计的主要代码如下:

利用FPGA技术实现各类分频器的设计

如果要实现占空比为50%的三分频时钟,则可通过待分频时钟下降沿触发计数,并以和上升沿同样的方法计数进行三分频,然后对下降沿产生的三分频时钟和上升沿产生的时钟进行相或运算。即可得到占空比为50%的三分频时钟这是奇数分频的第三种方法。这种方法可以实现任意的奇数分频。如将其归类为一般的方法:对于实现占空比为50%的N倍奇数分频,首先要进行上升沿触发以进行模N计数,计数选定到某一个值再进行输出时钟翻转,然后过(N-1)/2再次进行翻转,就可得到一个占空比非50%的奇数n分频时钟。再同时进行下降沿触发的模N计数,当其到达与上升沿触发输出时钟翻转选定值相同时,再进行输出时钟翻转,同样,经过(N-1)/2时,输出时钟再次翻转以生成占空比非50%的奇数n分频时钟。将这两个占空比非50%的n分频时钟相或运算,就可以得到占空比为50%的奇数n分频时钟。

利用FPGA技术实现各类分频器的设计

利用FPGA技术实现各类分频器的设计

2 半整数分频器设计

进行n+0.5分频一般需要对输入时钟先进行操作。其基本设计思想是:首先进行模n的计数,在计数到n-1时,将输出时钟赋为‘1’,而当回到计数0时,又赋为0,这样,当计数值为n-1时,输出时钟才为1,因此,只要保持计数值n-1为半个输入时钟周期,即可实现n+0.5分频时钟。因此,保持n-1为半个时钟周期即是该设计的关键。从中可以发现,因为计数器是通过时钟上升沿计数,故可在计数为n-1时对计数触发时钟进行翻转,那么,时钟的下降沿就变成了上升沿。即在计数值为n-1期间的时钟下降沿变成了上升沿,也就是说,计数值n-1只保持了半个时钟周期。由于时钟翻转下降沿变成上升沿,因此,计数值变为0。所以,每产生一个n+0.5分频时钟的周期,触发时钟都要翻转一次。

利用FPGA技术实现各类分频器的设计

3 任意整数带小数分频

任意整数带小数分频的基本原理是采用脉冲吞吐计数器和锁相环技术先设计两个不同分频比的整数分频器,然后通过控制单位时间内两种分频比出现的不同次数来获得所需要的小数分频值。若设计一个分频系数为10.1的分频器,即可以将分频器设计成9次10分频和1次11分频,这样,总的分频值为:

F=(9×10+1×11)/(9+1)=10.1

从这种实现方法的特点可以看出,由于分频器的分频值不断改变,分频后得到的信号抖动一般较大。当分频系数为N-0.5(N为整数)时,可控制扣除脉冲的时间,以使输出成为一个稳定的脉冲频率,而不是一次N分频,一次N-1分频。一般而言,这种分频由于分频输出的时钟脉冲抖动很大,故在设计中的使用已经非常少。但是,这也是可以实现的。

利用FPGA技术实现各类分频器的设计

4 结束语

利用本文介绍的方法可在对时钟要求比较严格的FPGA系统中,用FPGA内嵌的锁相环资源来实现分频。该设计方法简单方便、节约资源、可移置性强、便于系统升级,因此,在时钟要求不太严格的系统中应用非常广泛,同时在以后的FPGA设计发展中也有很大的应用空间。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1629

    文章

    21729

    浏览量

    602989
  • 锁相环
    +关注

    关注

    35

    文章

    584

    浏览量

    87735
  • 分频器
    +关注

    关注

    43

    文章

    447

    浏览量

    49876
收藏 人收藏

    评论

    相关推荐

    基于FPGA的通用数控分频器设计方案

    本文首先介绍了各种分频器实现原理,并在FPGA开发平台上通过VHDL文本输入和原理图输入相结合的方式,编程给出了仿真结果。最后通过对各种分频的分析,
    发表于 05-07 09:43 5148次阅读
    基于<b class='flag-5'>FPGA</b>的通用数控<b class='flag-5'>分频器</b>设计方案

    基于FPGA的任意数值分频器的设计

    【摘要】:介绍了基于FPGA的任意分频系数的分频器的设计,该分频器实现分频系数和占空比均可以调
    发表于 04-26 16:09

    基于FPGA的任意分频器设计

    本帖最后由 weihu_lu 于 2014-6-19 16:25 编辑 作者:卢威虎1、前言 分频器FPGA设计中使用频率非常高的基本单元之一。尽管目前在大部分设计中还广泛使用集成锁相环(如
    发表于 06-19 16:15

    如何利用CPLD/FPGA设计多功能分频器

    分频器在CPLD/FPGA设计中使用频率比较高,尽管目前大部分设计中采用芯片厂家集成的锁相环资源 ,但是对于要求奇数倍分频(如3、5等)、小数倍(如2.5、3.5等)分频、占空比50%
    发表于 08-12 07:50

    基于FPGA的多种形式分频的设计与实现

    摘 要: 本文通过在QuartursⅡ开发平台下,一种能够实现等占空比、非等占空比整数分频及半整数分频的通用分频器FPGA设计与
    发表于 06-20 12:43 611次阅读
    基于<b class='flag-5'>FPGA</b>的多种形式<b class='flag-5'>分频</b>的设计与<b class='flag-5'>实现</b>

    基于CPLD/FPGA的多功能分频器的设计与实现

    基于CPLD/FPGA的多功能分频器的设计与实现 引言   分频器在CPLD/FPGA设计中使用频率比较高,尽管目前大部分设计中采用芯
    发表于 11-23 10:39 1323次阅读
    基于CPLD/<b class='flag-5'>FPGA</b>的多功能<b class='flag-5'>分频器</b>的设计与<b class='flag-5'>实现</b>

    什么是分频器 分频器介绍

    什么是分频器 分频器介绍     分频器是指将不同频段的声音信号区分开来,分别给于放大,然后送到相应频段的扬声中再进行重放
    发表于 02-05 17:51 4402次阅读

    FPGA实现小数分频器

    介绍了一种基于FPGA的双模前置小数分频器分频原理及电路设计,并用VHDL编程实现分频器的仿真.
    发表于 11-29 16:43 48次下载
    <b class='flag-5'>FPGA</b><b class='flag-5'>实现</b>小数<b class='flag-5'>分频器</b>

    用Verilog实现基于FPGA的通用分频器的设计

    用 Verilog实现基于FPGA 的通用分频器的设计时钟分频包括奇数和偶数分频
    发表于 07-14 11:32 46次下载

    分频器有哪些_分频器分类

    分频器分为主动式、被动式、脉冲分频器三种。主动式电子分音的原理就是要把适当频率讯号传给适当的单体,被动式分音“功能、用途”是介于扩大器与喇叭之间,由于单一喇叭无法达到“全频段响应”
    发表于 01-10 15:36 1.2w次阅读

    奇数分频器的介绍和实现

    因为偶数分频器过于简单,所以我们从奇数分频器开始说起8 01 奇数分频器     假设我们要实现一个2N+1分频
    的头像 发表于 03-12 15:44 6444次阅读
    奇数<b class='flag-5'>分频器</b>的介绍和<b class='flag-5'>实现</b>

    一种基于FPGA分频器实现

    一种基于FPGA分频器实现说明。
    发表于 05-25 16:57 16次下载

    基于CPLD/FPGA的半整数分频器设计方案

    基于CPLD/FPGA的半整数分频器设计方案
    发表于 06-17 09:37 21次下载

    FPGA分频器的设计方法

    FPGA分频器是一种常用于数字信号处理、通信系统、雷达系统等领域的电路,其作用是将信号分成多个频段。
    发表于 05-22 14:29 2214次阅读
    <b class='flag-5'>FPGA</b><b class='flag-5'>分频器</b>的设计方法

    FPGA学习-分频器设计

    分频器设计 一:分频器概念 板载时钟往往 是 有限个( 50MHZ/100MHZ/24MHZ/60MHZ… ),如果在设计中需要其他时钟时,板载时钟不满足时,需要对板载时钟进行分频 / 倍频,目的
    的头像 发表于 11-03 15:55 1905次阅读
    <b class='flag-5'>FPGA</b>学习-<b class='flag-5'>分频器</b>设计