新闻中心

EEPW首页 > 模拟技术 > 设计应用 > 全同步数字频率计的 VHDL设计与仿真

全同步数字频率计的 VHDL设计与仿真

作者: 时间:2012-08-06 来源:网络 收藏


3.2 FPGA芯片内部模块电路设计和结果
FPGA芯片内部模块电路设计和结果如图6到图9所示。


3.2.1 计数器
此 计数播为27位二进制,具有计数使能端(ena)、异步清零端(clr)、时钟输入端(clk)、进位输出端(ov)等。当异步清零端(clr)为高电平 时,不管计数使能端是否有效,时钟上升沿是否到来,计数器都立即清零,即q=0。只有异步清零端(clr)为低电平,并且汁数使能端为高电平,有上升沿到 来时,计数器才开始计数,当计数器计满时,进位输出为高电平。计数器程序图如图6所示。




3.2.2 乘法器
由 于本设计所用的乘法器位数较宽,而组合逻辑乘法器位数越多耗用的硬件资源成倍增长,并且本设计不需要有很高的运算速度,考虑到硬件资源与运算速度,因此采 用时序电路来实现乘法器,其原理是通过逐项移位相乘相加来实现。他是一种牺牲运算时间换取硬件资源的方案。乘法器的程序仿真图如图7所示。




3.2.3 除法器

除法器则可通过移位相减相除来实现,其工作原理与剩法器是一样的,其程序仿真图如图8所示。




3.2.4 控制器

控 制器工作时序如下:当同步信号(clk)上升沿到来时,计数使能信号(cp)立即变成高电平,锁存信号(creg)及清零信号(clr)变成低电平,同步 信号(clk)的上升沿再次到来时,除清零信号(clr)外,其余信号均取反,当同步信号(clk)的下降沿到来时,清零信号(clr)变成高电平。当同 步信号又到来时,重复上述过程,其仿真结果如图9所示。




3.2.5 顶层设计

由 模块电路设计原理图4,经过VHDL编程,得到各模块的VHDL设计实体,然后对各模块的设计实体在Max+PlusⅡ中进行仿真,验证各模块的正确性。 最后再设计一个顶层文件把各模块按图4连接起来,便构成了一个全同步的FPGA内部硬件电路。下面给出顶层文件的仿真结果,由仿真图10可看 出:124×108/93=13 333 333,由于使用的是10 MHz的晶振,因此还有一位小数点最终显示的结果应该是1 333 333.3Hz。由仿真图11知,小数位在数码管的第二位上有效,其余位均无效。仿真结果与期望结果一致。至此,本设计得到成功验证。





4 结 语

本 文利用Altear公司的FPGA芯片FlexEPF10k20TC144-4 [5],使用VHDL语言设计了全同步,在Max+PlusⅡ中进行了各模块的仿真,达到了预期结果。全同步是目前精度最高的频率计 之一。在高速时钟随处可见的现代电子系统,有着非常广泛的研究价值。从某种程度上说他是以牺牲时间来换取精确度的,但一般情况下测频系统对时间的要求并不 高,并且由于电子系统对系统时钟的准确度越来越高,因此全同步数字频率计有着广泛的应用空间。

本文引用地址:https://www.eepw.com.cn/article/185975.htm

上一页 1 2 下一页

评论


相关推荐

技术专区

关闭