VHDL设计实例及分析.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《VHDL设计实例及分析.ppt》由会员分享,可在线阅读,更多相关《VHDL设计实例及分析.ppt(67页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第7讲讲 VHDL设计实例及分析设计实例及分析组合逻辑单元的组合逻辑单元的VHDL描述描述基本逻辑门的基本逻辑门的VHDL描述描述编码器、译码器和多路选通器的编码器、译码器和多路选通器的VHDL描述描述加法器和求补器的加法器和求补器的VHDL描述描述三态门及总线缓冲器三态门及总线缓冲器7.2 时序电路的时序电路的VHDL描述描述7.2.1时钟信号和复位信号时钟信号和复位信号7.触发器触发器7.寄存器寄存器7.计数器计数器 7.1 组合逻辑单元的组合逻辑单元的VHDL描述描述组合逻辑电路有基本逻辑门电路、编码器、译码器、多路选通器、三态门等。7.1.1 基本逻辑门的基本逻辑门的VHDL描述描述
2、逻辑门电路是构成所有逻辑电路的基本电路,本节将通过二输入“与非”门、二输入“或非”门、反相器和二输入“异或”门等简单门电路的VHDL描述实例来介绍逻辑门电路的VHDL描述方法。1二输入二输入“与非与非”门电路门电路二输入“与非”门电路是逻辑门电路中最简单的,其逻辑电路图如图所示。图7.1 二输入“与非”门电路的逻辑电路图利用VHDL描述二输入“与非”门有多种形式,如例所示。2二输入二输入“或非或非”门电路门电路二输入“或非”门电路的逻辑电路图如图所示。图7.2 二输入“或非”门电路的逻辑电路图例所示为用VHDL描述的二输入“或非”门电路的程序。3反相器反相器反相器电路的逻辑电路图如图所示。图7
3、.3 反相器的逻辑电路图例所示为用VHDL描述的反相器的程序。4二输入二输入“异或异或”门电路门电路二输入“异或”门电路的逻辑表达式如下:y=ab其逻辑电路图如图所示。图7.4 二输入“异或”门电路的逻辑电路图例所示为用VHDL描述的二输入“异或”门的程序。7.1.2 编码器、译码器和多路选通器的编码器、译码器和多路选通器的VHDL描述描述编码器、译码器和多路选通器是组合电路中较简单的3种通用电路,它们可以直接由简单的门电路组合连接而构成。通过门电路构造译码器过于复杂,如果使用VHDL进行行为级的描述就清楚多了,本节将介绍编码器、译码器和多路选通器的VHDL描述方式。1优先级编码器优先级编码器
4、优先级编码器常用于中断的优先级控制。当优先级编码器的某一个输入电平有效时,编码器输出一个对应的3位二进制编码。另外,当同时有多个输入有效时,将输出优先级最高的那个输入所对应的二进制编码。图所示就是最简单的优先级编码器的引脚图,它有8个输入D0D7和3位二进制输出A0A2。例所示为用VHDL描述的优先级编码器的程序。23-8译码器译码器3-8译码器是一种常用的小规模集成电路,如图所示。它有3位二进制输入端A、B、C和8位译码器输出端Y0Y7。对输入A、B、C的值进行译码,就可以确定输出端Y0Y7的某一个输出端变为有效(低电平),从而达到译码的目的。除了基本的输入、输出端口外,3-8译码器还有3个
5、选通输入端G1、G2A和G2B。只有在G1=l,G2A=0,G2B=0时,3-8译码器才能进行正常译码,否则Y0Y7输出将均为高电平。例所示为用VHDL描述的3-8译码器的程序。34选选1多路选通器多路选通器多路选通器用于信号的切换。4选1多路选通器如图所示,它用于4路信号的切换。4选1多路选通器有4个信号输入端input(0)input(3)、2个选择信号a和b及1个信号输出端y。当a、b输入不同的选择信号时,input(0)input(3)中某个相应的输入信号就与输出y端接通。7.1.3 加法器和求补器的加法器和求补器的VHDL描述描述1加法器加法器本小节将介绍关于加法器的结构级描述。多位
6、的加法器由多个全加器和一个半加器构成。全加器可以用两个半加器构成。2求补器求补器在二进制的运算过程中,经常要用到求补的操作。8位二进制数的同步求补器引脚框图如图所示。求补电路的输入为a(0)a(7),补码输出为b(0)b(7),其中a(7)和b(7)为符号位,该电路结构较复杂,可以采用如例所示的行为级的VHDL描述,其语句更加简洁、清楚。7.1.4 三态门及总线缓冲器三态门及总线缓冲器三态门和双向缓冲器是接口电路和总线驱动电路经常用到的器件。本小节将介绍三态门和总线缓冲器的VHDL描述方法。1三态门的三态门的VHDL描述描述三态门的引脚框图如图所示。它具有一个数据输入端din、一个数据输出端d
7、out和一个控制端en。当en=1时,dout=din;当en=0时,dout=Z(高阻)。例所示为用VHDL描述的三态门的程序。2单向总线缓冲器单向总线缓冲器单向总线缓冲器常用于微型计算机的总线驱动,通常由多个三态门并列组成,用来驱动地址总线和控制总线。一个8位的单向总线缓冲器如图所示,它由8个三态门组成,具有8个输入端和8个输出端,所有的三态门的控制端连在一起,由一个控制输入端en控制。3双向总线缓冲器双向总线缓冲器双向总线缓冲器用于对数据总线的驱动和缓冲。典型的双向总线缓冲器的引脚框图如图所示。图中的双向总线缓冲器有两个数据输入/输出端a和b、一个方向控制端dir和一个选通端en。当en
8、=1时,双向总线缓冲器未被选通,a和b都呈现高阻。当en=0时,双向总线缓冲器被选通。如果dr=0,那么ab;如果dir=1,那么ba。例所示为用VHDL描述的双向总线缓冲器的程序。时序电路的时序电路的VHDL描述描述与组合电路不同,时序电路的输出不仅取决于该时刻的输入信号,而且与电路的原状态有关。在时序电路中常常存在时钟信号和复位信号,时钟信号和复位信号的描述在时序电路的描述中至关重要,因此本节先介绍时钟信号和复位信号的描述。7.2.1 时钟信号和复位信号时钟信号和复位信号1时钟信号的描述时钟信号的描述一般情况下,时序电路均以时钟信号为驱动信号,时序电路只是在时钟信号的驱动下运行,其状态才发
9、生改变。因此,时钟信号通常是描述时序电路的程序的执行条件。时序电路也总是以时钟进程形式来进行描述的,其描述方式一般有两种。(1)时钟信号作为进程的敏感信号。时钟信号应作为敏感信号,显式地出现在PROCESS语句后的敏感信号列表中。描述时钟脉冲的上升沿可采用如下语句:clock_signalevent and clock_signal=1 同理,描述时钟脉冲的下降沿可采用如下语句:clock_signalevent and clock_signal=0 (2)用进程中的“WAIT ON”语句判断时钟。进程通常停留在“WAIT ON”语句上,只有在时钟信号到来且满足边沿条件时,其余的语句才能被执行
10、。WAIT ON语句只能放在进程的最前面或者最后面。2复位信号的描述复位信号的描述时序电路的初始状态常常由复位信号来设置。分为同步复位和非同步复位两种。所谓同步复位,就是当复位信号有效且在给定的时钟边缘到来时,触发器才被复位,此时复位的状态与时钟同步,有助于信号的稳定和系统毛刺的消除;而非同步复位状态与时钟状态不要求同步,一旦复位信号有效,触发器就被复位。1)同步复位在用VHDL描述时,同步复位的语句必须在以时钟为敏感信号的进程中,常用“IF”语句来描述复位条件。例和例就是同步复位方式的程序实例。例7.17PROCESS(clock_signal)BEGIN IF (clock_edge_co
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VHDL 设计 实例 分析
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内