基于VHDL的占空比50的7分频Word文档下载推荐.docx
- 文档编号:6503573
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:7
- 大小:112.15KB
基于VHDL的占空比50的7分频Word文档下载推荐.docx
《基于VHDL的占空比50的7分频Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于VHDL的占空比50的7分频Word文档下载推荐.docx(7页珍藏版)》请在冰点文库上搜索。
时序电路设计中需要各种各样的分频器来获得不同频率的时钟,其中以整数分频器最为常见。
整数分频可以简单的使用模n计数器实现,即随驱动时钟跳变n次后就输出一个进位脉冲,然后立即被清零或置位,再开场新一轮的循环的计数。
模n计数器的进位脉冲的宽度一般与驱动时钟一样,这对于边沿驱动的时序逻辑并不会带来什么问题。
但是在某些需要使用电平逻辑的设计中,我们更希望分频时钟拥有50%,或者与驱动时钟一样的占空比。
这时就需要通过另外的逻辑方法来进展分频,或者使用PLL。
在基于CPLD〔复杂可编程逻辑器件〕/FPGA〔现场可编程门阵列〕的数字系统设计中,很容易实现由计数器或其级联构成各种形式的偶数分频及非等占空比的奇数分频,但对等占空比的奇数分频及半整数分频的实现较为困难。
本文利用VHDL〔超高速集成电路硬件描述语言〕,通过QuartusII7.1开发平台,设计了一种能够实现占空比50%的7分频电路设计,这种设计方法原理简单,可重用性好,而且只需很少的逻辑宏单元。
关键词:
VHDL占空比分频器
1、VHDL语言
1.1、VHDL语言的介绍
VHDL语言是一种用于电路设计的高级语言。
它在80年代的后期出现。
最初是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种使用围较小的设计语言。
VHDL翻译成中文就是超高速集成电路硬件描述语言,主要是应用在数字电路的设计中。
目前,它在中国的应用多数是用在FPGA/CPLD/EPLD的设计中。
当然在一些实力较为雄厚的单位,它也被用来设计ASIC。
VHDL主要用于描述数字系统的构造、行为、功能和接口。
除了含有许多具有硬件特征的语句外VHDL的语言形式、描述风格以及语法是十分类似于一般的计算机高级语言。
VHDL的程序构造特点是将一项工程设计,或称设计实体〔可以是一个元件,一个电路模块或一个系统〕分成外部〔或称可视局部,及端口)和部〔或称不可视局部〕,既涉及实体的部功能和算法完成局部。
在对一个设计实体定义了外部界面后,一旦其部开发完成后,其他的设计就可以直接调用这个实体。
这种将设计实体分成外局部的概念是VHDL系统设计的根本点。
1.2、VHDL语言的特点
1 功能强大、设计灵活支持广泛、易于修改
2 强大的系统硬件描述能力
3 独立于器件的设计、与工艺无关
4 很强的移植能力
5 易于共享和复用
2、分频电路的设计
分频电路是数字系统设计中的根本电路。
在硬件电路设计中,时钟信号是最重要的信号之一,经常需要对较高频率的时钟进展分频操作,得到较低频率的时钟信号。
2.1分频电路的分类:
1)、任意占空比的偶数分频及非等占空比的奇数分频,通常由计数器或计数器的级联来完成。
2)、等占空比的奇数分频电路。
要实现占空比为50%的M=2N+1分频电路。
2.2任意奇数倍〔2N+1〕分频
占空比为X/(2N+1)或〔2N+1-X〕/〔2N+1〕分频,模〔2N+1〕计数器模块可以实现。
取0至2N之间某一数值X(0<
X<
2N),当计数器时钟上升沿从0开场计数到X值时输出时钟翻转一次,在计数器继续计数到达2N+1时,输出时钟再次翻转并对计数器置一复位信号,使之从0开场重新计数,即可实现。
2.3占空比为50%的分频
2.2中占空比为非50%的输出时钟在输入时钟的上升沿触发翻转。
假设在同一个输入时钟周期,此计数器分别在输入时钟的上升沿和下降沿触发翻转得到的两路信号,再将所得到的信号进展逻辑或,即可得到占空比为50%的奇数倍分频时钟。
另外,对于实现占空比为50%的N倍奇数分频,首先进展上升沿触发进展模N计数,计数选定到某一个值进展输出时钟翻转,然后经过〔N-1〕/2再次进展翻转得到一个占空比非50%奇数n分频时钟。
再者同时进展下降沿触发的模N计数,到和上升沿触发输出时钟翻转选定值一样值时,进展输出时钟时钟翻转,同样经过〔N-1〕/2时,输出时钟再次翻转生成占空比非50%的奇数n分频时钟。
两个占空比非50%的n分频时钟相或运算,得到占空比为50%的奇数n分频时钟。
另外一种方法:
对进展奇数倍n分频时钟,首先进展n/2分频〔带小数,即等于(n-1)/2+0.5〕,然后再进展二分频得到。
得到占空比为50%的奇数倍分频。
奇数倍分频原理下列图所示:
3、占空比为50%的7分频电路的设计
3.1、7分频电路的RTL视图,如下:
3.2、基于VHDL的占空比为50%的7分频电路的代码程序
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_arith.all;
useieee.std_logic_unsigned.all;
entityclk_div3is
port(clk_in:
instd_logic;
clk_out:
outstd_logic);
endclk_div3;
architectureaofclk_div3is
signalt1,t2:
integerrange0to6;
signalclk1,clk2:
std_logic;
begin
process(clk_in)--上升沿
begin
if(rising_edge(clk_in))then
if(t1<
6)then
t1<
=t1+1;
else
=0;
endif;
3)then
clk1<
='
1'
;
0'
endprocess;
process(clk_in)--下降沿
if(falling_edge(clk_in))then
if(t2<
t2<
=t2+1;
clk2<
clk_out<
=clk1orclk2;
enda;
3.3、占空比为50%的7分频仿真
4、心得体会
通过本次的设计,我加深了对EDA课程的认识和了解。
一方面,这也是理论到实践的一个过渡;
另一方面,通过软件的学习,虽然刚开场的时候很难学,不懂得操作,可是弄多了就上手了。
另外,刚开场学这门课的时候,看到的是一段段的代码,很繁琐的东西,顿时感到烦倦,完全提不起学习的兴趣。
可是通过这个分段器的设计,让我明白到任何一个东西,只要肯用心,花心机去弄懂它,最终我们会承受它,从中得到乐趣。
至少我们接触了以后不会排斥它。
而且任何知识都是有用的,只是时间的问题。
当我们不知道它有什么用的时候,先学好,不要到了书到用时方恨少的境地。
5、参考文献
[1]阎石主编,清华大学电子学教研组编.数字电子技术根底.:
高等教育.
[2]多利,丽,高明伦等.可配置非幂方分频器的全新设计方法[J]1电子学报
[3]汪虹,宏.基于FPGA的等占空比任意整数分频器的设计.仪器与仪表.
[4]松,黄继业.EDA实用技术教程.:
科学.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 VHDL 50 分频