EDA技术与VHDL设计 第五章 VHDL基本语句(三).pptVIP

  • 14
  • 0
  • 约 39页
  • 2020-08-03 发布于浙江
  • 举报

EDA技术与VHDL设计 第五章 VHDL基本语句(三).ppt

5.4组合逻辑电路的设计5.5时序逻辑电路的设计习题1第5章VHDL基本语句5.4组合逻辑电路的设计组合逻辑电路是一种不含存储元件的电路,其输出完全...

    5.4 组合逻辑电路的设计   组合逻辑电路是一种不含存储元件的电路,其输出完全由输入决定。常见的组合逻辑电路包括三态门电路、编码器、译码器、多路选择器、全加器等。本节通过几个组合逻辑电路设计的实例让读者进一步理解VHDL语句。 5.4.1 三态门电路和双向端口的设计 1、三态门电路   三态门是驱动电路常用的器件,其输出除了高、低电平两种状态外,还有第三种状态——高阻态。处于高阻态时,其输出相当于断开状态,没有任何逻辑控制功能。 三态门的输出逻辑状态的控制是通过一个输入控制端en来实现的。当en为高电平时,三态门呈现正常的逻辑“0”和逻辑“1”的输出;当en为低电平时,三态门输出呈现高阻状态,即断开状态,相当于该逻辑门与它相连接的电路处于断开状态。三态门的逻辑符号如图5-27所示。   三态门主要用于总线的连接,通常在总线上接有多个器件,每个器件通过控制端进行选通。当器件没有被选中时,它就处于高阻状态,相当于没有接在总线上,不影响其他器件的工作。图5-28是利用三态门实现总线传输的示例。在任何时刻只有一个三态门的控制端取值为“1”,则通过使n个三态门控制端依次为“1”就可以实现依次传输。 图5-28 三态门实现总线传输   例5-42是一个三态门电路的描述示例。在VHDL中用大写字母“Z”表示高阻态,一个“Z”代表一个逻辑位。虽然对于关键词,VHDL语法并不区分大小写,但当把“Z”作为一个高阻态赋值给一个数据类型为STD_LOGIC的数据对象时,必须是大写。这是因为在IEEE库中对STD_LOGIC数据类型的预定义中已经将高阻态明确确定为大写字母“Z”。图5-29是经过综合后的RTL电路结构。图5-30是三态门的仿真波形。当控制端en为低电平时,输出为高阻态。 图5-29 三态门电路结构 图5-30 三态门仿真结果 2、双向端口的设计   双向端口是通过控制三态门来实现的,如图5-31所示。当控制端en取值为“1”时,三态门导通,数据可以从上面的OUTPUT端口输出;当控制端取值为“0”时,三态门断开,即上面的OUTPUT端口被断开,数据只能够从下面的INPUT端口输入。 例5-43是一个双向端口的设计,其中定义了双向端口q和三态输出端口x。需要注意的是,当控制端en取值为“0”时,双向端口q作为输入口使用,其输出必须设置为高阻态,否则待输入的外部数据会和端口处原有输出数据发生“线与”,导致数据无法正确读入。 图5-32 例5-43综合后的RTL电路结构 图5-33 例5-43仿真结果 5.4.2 编码器和译码器的设计   在数字电路中,需要建立特定的信息与二进制码间的联系。如果用若干位二进制码代表特定意义的信息,就称为编码,即输入为特定信息,输出为相应的二进制码。 常见的编码形式有:8421BCD编码、8线-3线编码、8线-3线优先编码、10线-4线优先编码等。如果需要编码的信息量是N,则需要m位二进制码,满足N≤ 。 编码的逆过程就是译码,即将输入的二进制码还原成事先规定的、具有特殊意义的输出信号。   例5-44是一个8线-3线优先编码器的示例,它是将8位输入的信号转换成3位二进制编码,其功能见图5-34。可以看到,当输入端i(7)取值为“1”时,即使其他输入端i(6)~i(0)取值为“1”也将会被忽略,i(7)具有最高的优先级,输出编码为“111”。当输入端i(7)取值为“0”时,才会判断i(6)的取值。如果此时i(6)取值为“1”,则输出编码为“110”;否则继续判断i(5)的取值。8位输入端具有优先级,这就是“优先”二字的来由。 例5-44是利用WHEN/ELSE语句判断条件的顺序性来实现8线-3线编码器的优先级的。那么使用IF语句能否完成8线-3线优先编码器的设计呢?如果使用CASE语句或WITH/SELECT/ WHEN语句呢? 图5-34 8线-3线优先编码器的功能表   仿真结果如图5-35所示。可以看到,当i取值为时,虽然i(7)、i(6)、i(3)、i(2)同时取值为“1”,但由于i(7)的优先级最高,所以最后的编码结果是“111”。当i取值为时,由于没有对应的有效位取值为“1”,所以执行例5-44的L20,最后结果是高阻态“ZZZ”。 图5-35 8线-3线优先编码器仿真结果   例5-45是使用CASE语句实现的译码器,其功能如图5-36所示。仿真结果见图5-37。 图5-36 3线-8线译码器 图5-37 3线-8线译码器仿真结果 5.4.3 串行进位加法器的设计   加法器是电路设计中常用的基本器件,以全加器为基础

文档评论(0)

1亿VIP精品文档

相关文档