- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于FPGA 的多种形式分频的设计与实现
摘 要 本文通过在Quarturs Ⅱ开发平台下,一种能够实现等占空比、非等占
空比整数分频及半整数分频的通用分频器的FPGA 设计与实现,介绍了利用VHDL
硬件描述语言输入方式,设计数字电路的过程。
关键词 FPGA;VHDL 硬件描述语言;数字电路设计;分频器
引言
分频器是数字系统设计中的基本电路,根据不同设计的需要,我们会遇到偶数分
频、奇数分频、半整数分频等,有时要求等占空比,有时要求非等占空比。在同
一个 设计中有时要求多种形式的分频。通常由计数器或计数器的级联构成各种
形式的偶数分频及非等占空比的奇数分频,实现较为简单。但对半整数分频及等
占空比的奇 数分频实现较为困 。本文利用VHDL 硬件描述语言,通过
Quartus Ⅱ3.0 开发平台,使用Altera 公司的FPGA,设计了一种能够满足上述各
种 要求的较为通用的分频器。
一、电路设计
采用FPGA 实现半整数分频器,可以采用以下方法:设计一个模N 的计数器,再
设计一个脉冲扣除电路,每来两个脉冲扣除一个脉冲,即可实现分频系数为N-
0.5 的分频器。脉冲扣除电路由异或门和一个2 分频器构成。本设计在半整数分
频器原理的基础上,对异或门加一个使能控制信号,通过对异或门和计数器计数
状 态值的控制,实现同一个电路完成多种形式分频,如图1 所示。
二、VHDL 语言的实现
现通过设计一个可以实现8.5 分频,等占空比的17 分频,2、4、8、16、32 分
频,及占空比为1 ∶8 和4 ∶5 的9 分频等多种形式分频的分频器,介绍该通用分
频器的FPGA 实现。
由图1 所示的电路原理图可知,分频器由带使能端的异或门、模N 计数器和一个
2 分频器组成,本设计用D 触发器来完成2 分频的功能,实现方法是 将触发器
的Q 反输出端反馈回输入端D,将计数器的一个计数输出端作为D 触发器的时钟
输入端。各功能模块的VHDL 语言实现如下。
1.模N 计数器的实现
一般设计中用到计数器时,我们可以调用lpm 库中的计数器模块,也可以采用
VHDL 语言自己设计一个模N 计数器。本设计采用VHDL 语言设计一个最大模值 为
16 的计数器。输入端口为 使能信号en,复位信号clr 和时钟信号clk;输出
端口为 qa、qb、qc、qd。其VHDL 语言描述略。
2.带使能控制的异或门的实现
输入端为 xor_en 异或使能,a 和b 异或输入;输出端为 c 异或输出。当
xor_en 为高电平时,c 输出a 和b 的异或值。当xor_en 为低电平时,c 输出信
号b。其VHDL 语言略。
3.2 分频 (触发器)的实现
输入端为:时钟信号clk,输入信号d;输出端为 q:输出信号a,q1:输出信
号a 反。其VHDL 语言略。
4.分频器的实现
本设计采用层次化的设计方法,首先设计实现分频器电路中各组成电路元件,然
后通过元件例化的方法,调用各元件,实现整个分频器。其VHDL 语言略。
三、仿真结果及硬件电路的测试
本设计的目的是通用性和简易性,只要对上述程序稍加改动即可实现多种形式的
分频。
1.实现8.5 分频和等占空比的17 分频
只要将上述程序中,调用计数器模块时端口qa、qb、qc 匹配为open 状态,同时
置xor_en 为高电平即可。从编译报告看出总共占用8 个逻辑单元(logic
elements),其仿真波形如图2~4 所示。
图2 图3 图4
由图中qxiao 和clk 的波形可以看出,每隔8.5 个时钟周期,qxiao 信号产生一
个上升沿,从而实现分频系数是8.5 的分频,同时在qzheng 端 得到等占空比的
17 分频。设clk 为170MHz,则qxiao 输出为20MHz,qzheng 输出为10MHz。
2.实现占空比为1 ∶8 和4 ∶5 的9 分频
只要上述程序的xor_en置低电平即可在qxiao输出占空比为1 ∶8 的9 分频信号;
在qzheng2 输出占空比为4 ∶5 的9 分频信号。同样仅占8 个逻辑单元(logic
elements)。仿真波形如下。
3.实现等占空比的2、4、8、16 和32 分频
只要将上述程序中的xor_en 置为低电平,同时将计数器模块的计数最大值设为
16 即可。仿真波形如下。
由此可见,只要稍微改变计数器的计数状态值,对异或门进行选通控制,即可实
现上述多种形式的分频。本设计在Altera 公司的EP1K50QC208-3 构成的测试平
台上测试通过,性能良好。
结束语
我们在设计模拟雷达脉冲信号和用FPGA
文档评论(0)