基于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分频器设计研究

基于FPGA分频器设计研究   摘要分频器是数字逻辑电路设计中常用的一种基本电路。本文重点介绍了在MAX+plus II开发软件下,利用VHDL硬件描述语言以及原理图的输入方式来设计各种整数或半整数分频器的规律和方法。   关键词VHDL; FPGA;分频器   Abstractcrossover is a basic circuit in the design of digital logic circuit. This paper mainly introduces how to using VHDL and inputting Schematic to design integer or half-integer crossovers, in the condition of MAX+plus II.   KeywordsVHDL;FPGA;Crossover   中图法分类号: TP391.72 文献标识码:A       一、 引言      在数字逻辑电路设计中,分频器是一种基本电路。通常用来对某个给定频率进行分频,以得到所需的频率。分频系数为2N的分频器的实现非常简单,可采用标准的加或减法计数器的设计来实现。而分频系数为整数N的分频器常见有二种电路:加法分频电路和减法分频电路。但在某些场合下,时钟源与所需的频率不成整数倍关系,此时可采用小数分频器进行分频。比如:分频系数为2.5、3.5、7.5等半整数分频器。笔者利用VHDL硬件描述语言和原理图输入方式,通过MAX+plus II开发软件在FPGA上方便地完成了整数半整数分频器电路的设计。   二、2N分频器的设计   2N分频器的设计原理是以N位计数器的输出端口状态的变化进行设计。Q1的变化发生在时钟脉冲的每一个上升沿,刚好形成二分频,而Q2的变化发生在Q1的每一个下降沿,从而与时钟形成22分频。依次类推,QN的变化发生在QN-1的每一个下降沿,对时钟形成2N分频。以一个4bit的加法计数器为例进行分析说明。   首先以原理图输入方式设计一加法读数器如图1所示,经编译、时序模拟后得到仿真波形如图2所示:         从仿真波形可以看出分别由Q0、Q1、Q2、Q3得到的脉冲波形频率正是时钟信号CP的1/2、1/4、1/8和1/16。亦即分频系数是2、4、8和16。假设FPGA的CP所接石英晶体是20MHz,则不同引脚所得到的频率分别为10 MHz、5 MHz、2.5 MHz和1.25 MHz。由上讨论推广可知,Nbit计数器可获得最高分频系数为2N。此类设计最简单。      三、N分频器的设计      在很多情况下分频系数往往是整数N,比如说10、1999等。这时加法计数器的分频功能就无法顺利地完成要求。为了实现整数N分频,常见的方法有以下二种:加法分频和减法分频。      (一)加法分频电路   基本工作原理是先建立一个计数器,而这个计数器的大小必须符合条件2X ?莛N才可以,X为计数器的位宽,N为分频系数。当计数器在计数值为N的瞬间,立刻复位至0。这样在最高位输出端一个周期恰好是脉冲信号的N个周期,实现了N分频的目标。   以设计一个十分频的加法分频电路为例,先建立一个计数器,位宽必须是4bits(计数的默认范围是0~24-1=15),不过将把这样的计数在计数值为10的瞬间,立即复位改变成0,部分源程序如下:   …………   if(clkevent and clk=“1”)then   if(en=“1”) then----------------同步使能   if(count=“1001”) then-----------计数在计数值为10的瞬间,立即复位改变成0   count=“0000”;   elsecount=count+1;----------如果count小于10,则继续作加1运算   end if; end if; end if;end if; end process;   qH=count(3);----------------------将计数最高位作为分频输出端口   end behavior;   经编译、时序模拟后得到仿真波形如图三所示,由此可知时间轴为480ns~580ns范围,恰好是最高位输出qH的一个完整周期包含脉冲时钟信号CLK的十个周期。所以qH输出就是将脉冲信号频率进行十分频的结果。          (二)减法分频电路   与加法分频电路相比,减法分频电路就是利用一个计数器往下减的方式,来达到分频功能,其设计方法与加法分频电路设计完全相似,只需将加法计数程序的核心代码作如下修改即可:   ……   if(count=“0000”

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档