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

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

3天内不再提示

verilog实现简单分频器的方案

冬至子 来源:玩儿转FPGA 作者:建東 2023-06-28 16:17 次阅读

偶数分频原理

偶数分频最为简单,很容易用模为N的计数器实现50%占空比的时钟信号,即每次计数满N(计到N-1)时输出时钟信号翻转。

以4分频为例,波形图如下:

图片

奇数分频原理

方法一

使用模为2N+1的计数器,让输出时钟在X-1(X在0到2N-1之间)和2N时各翻转一次,则可得到奇数分频器,但是占空比并不是50%(应为 X/(2N+1))。

得到占空比为50%的奇数分频器的基本思想是:将得到的上升沿触发计数的奇数分频输出信号CLK1,和得到的下降沿触发计数的相同(时钟翻转值相同)奇数分频输出信号CLK2,CLK1和CLK2占空比不是50%而是低电平2周期,高电平1周期。

最后将CLK1和CLK2相或之后输出,就可以得到占空比为50%的奇数分频器。时序图如下,红线就是我们要的50%占空比三分频结果:

图片

方法二

和方法一唯一的区别是,CLK1和CLK2相反,高电平变低电平,低电平变高电平,最终输出的分频时钟是CLK1&CLK2。所以注意区别。波形图如下:

图片

整数数分频原理

总结1和2,设整数位N,当N为偶数时,cnt>1)。这是一个编程的技巧。

代码的一些具体技巧我将它放在了代码注释里面,希望大家好好看看。

设计思路

很多人在问我,拿到一个设计的时候如何去找思路。相信这也是很初学者的疑惑。一般推荐按照以下步骤来设计,一步步解决。

1.分解功能模块——分解到每个模块你都是能够想得到办法解决的为止,前期不要练习复杂的模块,推荐练习的有今天的各种分频,以后还可以尝试分数分频,UART,localbus,SPI,IIC这些是我推荐给大家练习的,由易到难。

2.每个分解的最小功能模块画出时序图,就像今天文章里分频的时序图一样,主要是帮你了解到每个时钟周期是怎么工作的,原理上是怎么实现的,时序图一出来,整个思路都清晰了。

3.组合功能模块,保证模块之间的时序是满足要求的,自底向上往上堆,每堆一个模块仿真一下,堆到顶层通过顶层仿真就算初步完成了功能的要求

设计整数分频

上面说了方法这里我们来试验下

1.分解模块功能,也就是画出总体框图

图片

2.画时序图,每个分频模块的时序图前面已经画过了,奇偶选择没有时序图,就是一个选择开关,奇数分频系数选择奇数分频模块输出,偶数分频系数选择偶数分频输出。

3.拼凑——奇偶分频各写一个alwyas,最后加上奇偶选择,如果不熟悉可以分成两个单独的.v文件写,最后封装到顶层。

设计在以上步骤以及完成了,现在我们来看看仿真结果:

图片

7分频

图片

6分频

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

    关注

    9

    文章

    425

    浏览量

    26273
  • 分频器
    +关注

    关注

    43

    文章

    433

    浏览量

    49319
  • 计数器
    +关注

    关注

    32

    文章

    2126

    浏览量

    93009
  • UART接口
    +关注

    关注

    0

    文章

    123

    浏览量

    15068
  • Verilog语言
    +关注

    关注

    0

    文章

    113

    浏览量

    8160
收藏 人收藏

    评论

    相关推荐

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

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

    基于FPGA的任意分频器设计

    这种方式只消耗不多的逻辑单元就可以达到对时钟的操作目的。2、整数倍分频器的设计2.1 偶数倍分频 偶数倍分频器实现非常简单,只需要一个计数
    发表于 06-19 16:15

    请问ADF4106可以实现分频器的功能吗?

    您们好:最近做的项目中需要使用到分频比很大的分频器,故计划使用ADF4106作为分频器使用,请问ADF4106可以实现分频器的功能吗,可以的
    发表于 10-08 10:34

    请问ADI分频器的类型有什么不同?

    我想对2GHz的正弦波(相位噪声很低)进行16分频分频出来的125M信号输入给FPGA,想选用ADi的分频器实现分频功能,我有以下几个问题
    发表于 01-11 13:39

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

    在复杂数字逻辑电路设计中,经常会用到多个不同的时钟信号。介绍一种通用的分频器,可实现2~256 之间的任意奇数、偶数、半整数分频。首先简要介绍了FPGA 器件的特点和应用范
    发表于 11-01 14:39 78次下载

    定阻型功率分频器的设计与制作(三)-二阶功率分频器

    定阻型功率分频器的设计与制作(三)-二阶功率分频器
    发表于 12-02 15:48 78次下载
    定阻型功率<b class='flag-5'>分频器</b>的设计与制作(三)-二阶功率<b class='flag-5'>分频器</b>

    具有奇次和偶次分频分频器

    具有奇次和偶次分频分频器
    发表于 04-11 10:22 894次阅读
    具有奇次和偶次<b class='flag-5'>分频</b>的<b class='flag-5'>分频器</b>

    什么是分频器 分频器介绍

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

    FPGA实现小数分频器

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

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

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

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

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

    奇数分频器的介绍和实现

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

    一种基于FPGA的分频器实现

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

    分频分频器与饮料售货机控制器verilog代码

    分频分频器与饮料售货机控制器verilog代码分享
    发表于 09-01 15:35 0次下载

    Verilog HDL中使用分频器的8位计数器的设计

    电子发烧友网站提供《在Verilog HDL中使用分频器的8位计数器的设计.zip》资料免费下载
    发表于 06-15 10:14 0次下载
    在<b class='flag-5'>Verilog</b> HDL中使用<b class='flag-5'>分频器</b>的8位计数器的设计