最近刚开始学习FPGA,准备使用verlog实现一些分频电路,偶数倍分频比较好操作,奇数倍分频相对来说要复杂一点点,我在网上查阅了一些资料,我来用我自己的话总结下。

1、最简单最好理解的实现(不推荐)

使用一个计数器 对基准时钟的上升沿和下降沿计数。计数范围 [0 N-1] , 在N-1对输出信号进行翻转并复位计数值 以三分频为例子,下面给出代码理解一下

//三分频实验
reg div3_o_r = 0;
reg [1:0] div3_cnt;
assign div3_o = div3_o_r;always @(posedge clk_i or negedge clk_i or negedge rst_n_i)if(!rst_n_i)div3_cnt <= 1'd0;else if(div3_cnt==2) begin    //0-2 中已经包含三次计数div3_o_r <= ~div3_o_r;div3_cnt <= 1'b0;endelsediv3_cnt <= div3_cnt + 1;

仿真结果:

我认为这是最简单的一种方案,可是网上几乎没有人这么做?不会是大家都没想到吧?我怀着疑问网上查了很多资料,说verlog中不能同时上升沿下降沿?那是为什么呢?

混合时钟沿电路虽然并不影响功能仿真结果,但是混合电路影响的是电路的时序性能。时钟上升沿和下降沿都对寄存器操作,其功能等同于使用了原来时钟的2 倍频单信号沿来驱动电路。但对于可编程逻辑器件,不推荐同时使用同一信号的两个沿。这是因为可编程逻辑器件内部的时钟处理电路,只能保证时钟的一个沿具有非常好的指标,而另外一个沿的抖动、偏斜以及过渡时间等指标都不保证,因此同时采用两个沿会造成时钟性能的恶化。因此在可编程逻辑的设计中,在这种情况下,推荐首先将原时钟倍频,然后利用单沿对电路进行操作。此外,即使在ASIC 设计中,同时利用上升沿和下降沿,意味着时序延迟折半,不利用后端做电路的时钟树综合的工作,并且也会对自动测试向量产生带来不利影响.

更多参考该链接 http://www.eefocus.com/book/09-03/8331410080357.html

2、简单实现(占空比非50%)

以三分频为例子  一个计数器 对基准时钟的上升沿计数。计数范围 [0 2] , 在cnt==0时、cnt==2时对信号进行翻转 对输出信号进行翻转,并在cnt==2后对cnt进行复位,这样可以得到占空比为30%的信号

3、用“”或“”逻辑来实现奇数分频的技术

FPGA三分频电路的实现相关推荐

  1. 设计占空比为50%的三分频电路

    设计占空比为50%的三分频电路 时序图工具 {signal: [ {name: 'clk', wave: 'P-P-'}, {name: 'clk1', wave: 'H.LH.LH.L'}, {na ...

  2. (89)FPGA三分频设计,面试必问(十三)(第18天)

    (89)FPGA三分频设计,面试必问(十三)(第18天) 1 文章目录 1)文章目录 2)FPGA初级课程介绍 3)FPGA初级课程架构 4)FPGA三分频设计,面试必问(十三)(第18天) 5)技术 ...

  3. 题目:用Verilog实现三分频电路,要求输出50%占空比。

    题目:用Verilog实现三分频电路,要求输出50%占空比. module Div_three(input clk,input rst_n,output div_three ); reg [1:0] ...

  4. 一、verilog编写三分频电路

    1.目标:使用verilog编写三分频电路,要求占空比大小为50%. 2.方法:分别使用上升沿和下降沿计数cnt_p以及cnt_n,并且计数从0到N-1(N为分频的次数,此时为3):分别对clk_p以 ...

  5. FPGA三分频,五分频,奇数分频

    我们在做FPGA设计时,有时会用到时钟频率奇数分频的频率,例如笔者FPGA的晶振为50M,当我们需要10M的时钟时,一种方式可以使用DCM或PLL获取,系统会内部分频到10M,但其实VERILOG内部 ...

  6. 三分频电路Verilog设计

    三分频用两个在不同的时钟沿的序列发生器来构成一个3分频信号: `timescale 1ns/10ps module div_3(clkin,clkout1,clkout2,clkout3); inpu ...

  7. 一种三分频电路的实现与仿真

    module fenpin;reg clk;reg q1;reg q2;wire d1,d2;initial beginclk = 0;q1 = 0;q2 = 0;endalways #10 clk ...

  8. 【数字IC手撕代码】Verilog奇数分频|题目|原理|设计|仿真(三分频,五分频,奇数分频及特殊占空比)

    芯片设计验证社区·芯片爱好者聚集地·硬件相关讨论社区·数字verifier星球 四社区联合力荐!近500篇数字IC精品文章收录! [数字IC精品文章收录]学习路线·基础知识·总线·脚本语言·芯片求职· ...

  9. 【FPGA】分频电路设计(Verilog HDL设计)(良心博文)

    目录 前言 分频器分类 偶分频 奇分频 占空比为50%的奇分频 占空比不限定的奇数分频器 前言 虽然在实际工程中要产生分频时钟一般采用FPGA的时钟管理器来进行分频.倍频,通过设置一下IP核中的参数即 ...

最新文章

  1. python常见函数
  2. expect,spawn用法小结
  3. web服务器与网页表单通信,前端与后端通信的几种方式
  4. squid 的配置详解 (转)--SeriesI 收藏
  5. Django购物网站使用说明
  6. android 输入法如何启动流程_android输入法02:openwnn源码解析01—输入流程
  7. 内部人示范(野生项目笔记02)
  8. Arduino USBASP烧录之ICSP模式
  9. Eclipse设立编辑器为绿豆沙颜色
  10. sql server访问Excel97-2003 Excel2007
  11. 特征选择(模型输入参数的分析选择)方法汇总
  12. kaggle:谁是NBA最佳防守球员?(二)
  13. 资产负债表与利润表钩稽关系
  14. 银行会员人脸识别方案
  15. Java byte[]与short[]之间转换
  16. 拔萝卜MySQL_mysql考题
  17. 爬虫君子协议-robots.txt协议
  18. ESP8266 CH420
  19. 安装 CherryTree 报错无法找到 gtksourceview2
  20. sun服务器显示线接哪个口,sun服务器显示线接哪个口

热门文章

  1. 2020年高教社杯全国大学生数学建模竞赛题目D题 接触式轮廓仪的自动标注
  2. 触摸IC XTP2046 驱动笔记
  3. 十大常见的电子元器件
  4. 数据杂谈:CIO和CTO的区别(首席信息官首席技术官)
  5. 基于Vue开发的电商APP项目——蘑菇街app
  6. 母婴广告投放在哪里合适?如何在抖音投放广告抢占市场?
  7. 芝士粉和芝士的区别_它是芝士吗?
  8. cad渐变线怎么画_花花绿绿的股票线是怎么画出来的?想怎么画就怎么画!
  9. 用计算机创造一个宇宙,人工智能令整个宇宙变成一个玄计算机,宇宙是虚拟的,真实世界...
  10. 音频文件按照正常语句,断句拆分的处理方法