如何编写和验证简单的纯组合逻辑电路

核心提示每个模块的设计工作包括3个部分:1,电路模块的设计;2,测试模块的设计;3,设计文档的编写和整理。测试模块的设计和文档编写是比电路模块设计更为重要的设计环节,测试是否严密和完整决定了系统设计的成败,设计文档的完整和准确也是系统设计成败的关键

每个模块的设计工作包括3个部分:1,电路模块的设计;2,测试模块的设计;3,设计文档的编写和整理。测试模块的设计和文档编写是比电路模块设计更为重要的设计环节,测试是否严密和完整决定了系统设计的成败,设计文档的完整和准确也是系统设计成败的关键,缺少完整的设计说明文件,就不能维持设计工作的连续性,为今后的调试和维护带来困难。组合电路逻辑在数字系统中起着基本组件的作用,也可以说,如果不了解组合逻辑的构成,就不可能对数字逻辑电路系统有任何了解。采用Verilog或VHDL高层次设计方法,也是以基本组合逻辑电路为基础的。如果没有基本组合逻辑电路知识,即使对Verilog 或 VHDL 语法了如指掌,也不可能设计出结构合理的复杂系统。

在实现算法时(如卷积运算和快速傅里叶变换),常常会用到加运算。由于多位并行加法器是由多层组合逻辑构成的,加上超前进位形成的逻辑虽然减少了延时,但还是有多级门和布线的延迟,而且随着位数的增加延迟还会积累,这样就使加法器的使用频率受到限制,这里是指计算的节拍(即时钟)必须大于运算电路的延迟,只有在输出稳定后才能输入新的数据进行下一次运算。如果设计的是32位或者是64位的加法器,延迟就会更大。为了加快计算速度,可以在运算的组合逻辑层中加入多个寄存器组来暂存中间结果。也就是采用数字逻辑设计中常用的流水线(pipe-line)办法,来提高运算速度。

这样设计的加法器在行为仿真时是没有延时的。借助综合器,可以将以上代码自动将其综合成典型的加法器结构。综合器有许多选项可供设计者选择,以便来控制自动生成的电路性能。设计者可以考虑提高电路的速度或者是节省电路元件以减少电路占用硅片的面积。综合器会自动根据你的选项为你挑选一种基本加法器的结构,有的综合器还可以根据用户对运算速度的要求插入流水线结构。

数字电子电路中的后起之秀是数字逻辑电路。把它叫做数字电路是因为电路中传递的虽然也是脉冲,但这些脉冲是用来表示二进制数码的,例如用高电平表示 1 ,低电平表示 0 。声音图像文字等信息经过数字化处理后变成了一串串电脉冲,它们被称为数字信号。能处理数字信号的电路就称为数字电路。这种电路同时又被叫做逻辑电路,那是因为电路中的 1 和 0 还具有逻辑意义,例如逻辑 1 和逻辑 0 可以分别表示电路的接通和断开、事件的是和否、逻辑推理的真和假等等。电路的输出和输入之间是一种逻辑关系。这种电路除了能进行二进制算术运算外还能完成逻辑运算和具有逻辑推理能力,所以才把它叫做逻辑电路。由于数字逻辑电路有易于集成、传输质量高、有运算和逻辑推理能力等优点,因此被广泛用于计算机、自动控制、通信、测量等领域。一般家电产品中,如定时器、告警器、控制器、电子钟表、电子玩具等都要用数字逻辑电路。数字逻辑电路的第一个特点是为了突出逻辑两个字,使用的是独特的图形符号。数字逻辑电路中有门电路和触发器两种基本单元电路,它们都是以晶体管和电阻等元件组成的,但在逻辑电路中我们只用几个简化了的图形符号去表示它们,而不画出它们的具体电路,也不管它们使用多高电压,是 TTL 电路还是 CMOS 电路等等。按逻辑功能要求把这些图形符号组合起来画成的图就是逻辑电路图,它完全不同于一般的放大振荡或脉冲电路图。数字电路中有关信息是包含在 0 和 1 的数字组合内的,所以只要电路能明显地区分开 0 和 1 , 0 和 1 的组合关系没有破坏就行,脉冲波形的好坏我们是不大理会的。所以数字逻辑电路的第二个特点是我们主要关心它能完成什么样的逻辑功能,较少考虑它的电气参数性能等问题。也因为这个原因,数字逻辑电路中使用了一些特殊的表达方法如真值表、特征方程等,还使用一些特殊的分析工具如逻辑代数、卡诺图等等,这些也都与放大振荡电路不同。门电路和触发器( 1 )门电路门电路可以看成是数字逻辑电路中最简单的元件。目前有大量集成化产品可供选用。最基本的门电路有 3 种:非门、与门和或门。非门就是反相器,它把输入的 0 信号变成 1 , 1 变成 0 。这种逻辑功能叫非,如果输入是 A ,输出写成 P=A 。与门有 2 个以上输入,它的功能是当输入都是 1 时,输出才是 1 。这种功能也叫逻辑乘,如果输入是 A 、 B ,输出写成 P=A?B 。或门也有 2 个以上输入,它的功能是输入有一个 1 时,输出就是 1 。这种功能也叫逻辑加,输出就写成 P=A + B 。把这三种基本门电路组合起来可以得到各种复合门电路,如与门加非门成与非门,或门加非门成或非门。图 1 是它们的图形符号和真值表。此外还有与或非门、异或门等等。数字集成电路有 TTL 、 HTL 、 CMOS 等多种,所用的电源电压和极性也不同,但只要它们有相同的逻辑功能,就用相同的逻辑符号。而且一般都规定高电平为 1 、低电平为 0 。

 
友情链接
鄂ICP备19019357号-22