第2章

Digital Logic Design and Computer Organization with Computer Architecture for Security
组合电路:小型设计

2.1 简介

第1章中简单介绍了组合电路以及它们在数字系统中的应用。在这一章里,我们将涉及小的组合电路设计方法,但这些方法与设计大的组合电路用到的方法有所不同。而且,当我们手动进行最小化设计时,我们将会限制输入引脚的个数为4个,对于一些输入个数虽然超出了4但不是很大的情况(比如5个或6个),我们也会使用最小化软件进行最小化设计。对比而言,大的组合电路需要有更多的输入引脚,可以使用小的电路模块实现。关于大的组合电路设计的方法将会在第3章进行介绍。
小的组合电路中输入和输出之间的关系由真值表确定,而真值表是由描述的设计问题决定的。例如一个两位无符号数的乘法器,如图2-1中的框图所示,一个两位无符号的数A = a1a0被一个两位无符号的数B = b1b0乘,得到一个4位的无符号数P = p3p2p1p0。在这个图中,大写和小写字母分别用于表示多位的和一位的输入/输出。另外,画线箭头表示了多位的输入输出(图2-1a所示)。而且,多位的输入输出也可以用粗线箭头表示(如图2-1b所示)。
表2-1表示了无符号乘法器的真值表。例如真值表中所示,由A = 3 = (11)2和B = 2 = (10)2得到的结果是P = 6 = (0110)2。每一个p3到p0的输出值都标识了一个由4位输入a1、a0、b1和b0对应的逻辑功能。


真值表包含了使一个输出位(比如p0)为0的所有的输入逻辑情况,也包含了使一个输出位为1的所有的输入逻辑情况。如果一个输出位始终为0或始终为1,那么这个位不表示输入所对应的逻辑功能,应当在真值表中删去。真值表的行数由电路的输入引脚个数决定。如果是3个输入端(每个端口值为0或1),就应当有8种可能的组合方式,或者说在真值表中应当有8行;如果是4个输入端,就应当有16行,如表2-1所示。通常情况下,如果有n个输入端,真值表中应当会有2n行。在硬件上,真值表会有两种实现方式:
整个真值表可以存储在查找表(LUT)中,例如,表2-1可以存储在深度为16条、宽度为4位的存储器中。
一个最小的逻辑电路是由每一个与输入所对应的输出决定的。
查找表的优势在于不需要更多的设计步骤,真值表被原样存储在集成芯片内部的存储器模块中。然而,查找表的缺点却是双重的:
所有的0和1的输出值都要被保存,这样将使用更多的硬件资源。
查找表是典型的慢输出,因为它需要较长的时间去读本身的内容。
相反,一个最小的逻辑电路实现了使输出为1或者说使输出为0的输入逻辑电路。它使用更少的逻辑门、更少的输入门还有更少的连接线路,因此占用更少的硬件资源。
另一方面,存储在LUT中的真值表可以应用于可配置集成电路,例如现场可编程门陈列(FPGA)。FPGA芯片中每一个查找表模块都可以用不同的真值表进行更新,去实现一个不同的组合逻辑。
在这章中的其他部分,我们将涉及如何将一个真值表转换为和它等效的逻辑表达,这种逻辑表达会在NAND或者NOR电路上实现。手工和算法的逻辑最小化技巧、最小化软件的使用、Verilog硬件描述语言电路的描述,以及电路设计中使用的计算机辅助设计(CAD)工具,我们将举例进行讨论。这一章还提出了电路时序和潜在的时序风险。其他的门电路,比如标准门电路和三态缓冲,也都进行了讨论。这里面覆盖了很多应用,包括互连体系结构中用到的模块设计。本章中还包含了一些标准的小的组合电路模块的设计实例。
信号命名标准
回忆一下,一个信号是指电路的输入或输出为1或0。同样,每一个信号名都有一个极性指示符,该极性指示符定义了信号值1或者0在电路中的含义。信号极性定义如下:
高电平有效信号极性——当信号被称为高电平有效时,逻辑1表示活跃、有效或使能状态;逻辑0代表不活跃、无效或禁止状态。通常我们用不带前缀或者后缀符号的信号名称来标识一个高电平有效信号(例如x)。
低电平有效信号极性——当信号被称为低电平有效时,逻辑0表示活跃、有效或使能状态;逻辑1代表不活跃、无效或禁止状态。通常我们用带前缀或者后缀符号的信号名称来标识一个低电平有效信号。例如,_x、x′、/x或者x#都可以用来表示低电平有效信号。
除非另作说明,我们一律采取下划线(_)前缀,例如_x或者_X分别定义了一个低电平信号和多个低电平信号。
?例2-1? 画出一位反相器的框图并在适当的地方标出其输入和输出信号。电路的输入为一位数据和标记为_c的低电平控制信号。当_c为不活跃(无效、禁止)时,电路的输出为与输入相比较没有改变的一位数据;当_c为活跃(有效、使能)时,电路的输出为输入的反相。反相电路没有对输入的数据进行标记说明,方便起见,我们将输入数据和电路输出分别标记为x和y。
解:图2-2为有一位输入x、输出y和低电平控制信号_c的反相电路框图。表2-2为一位反相器的真值表。因为_c为低电平信号,所以当_c = 0(活跃)时,y = ,当_c = 1(不活跃)时,y = x。

《数字逻辑设计与计算机组成》一 第2章 2.1 简介相关推荐

  1. 数字逻辑计算机组成,数字逻辑设计与计算机组成pdf

    数字逻辑设计与计算机组成 内容简介 本书从简单的数字逻辑电路设计基础开始,由浅入深,讲解组合逻辑和时序逻辑电路的设计技术.计算机组成的基本原理和计算机体系结构的相关概念,后深入探讨了现代计算机系统如何 ...

  2. 《数字逻辑设计与计算机组成》一 第3章 3.1 简介

    第3章 Digital Logic Design and Computer Organization with Computer Architecture for Security 组合电路:大型设计 ...

  3. 《数字逻辑设计与计算机组成》一3.3 加法器

    3.3 加法器 n位整数加法器输入两个n位数值和一个可选的输入进位(cin)来产生一个n位的和及最后进位输出(cout).如图3-3所示,从右(例如最低有效位)开始,两位和先前的进位相加产生一个和及一 ...

  4. 《数字逻辑设计与计算机组成》一练习

    练习 3.1 现有一个CPA (8),8位的CPA,完成以下练习: a. 用非门和与非门设计一个加法器,并给出所需逻辑门的总数量.使用第2章给出的全加器SOP表达式实现. b. 给出所需三极管总数量. ...

  5. 数字逻辑设计(何建新)第二章

    数字电路(第二章) 不同进制之间的转换 R进制转换为十进制例:将二进制(1010.11)转换为十进制=1×2^3 + 1×2^1 + 1×2^-1 + 1×2^-2=(8+2+0.5+0.25)=10 ...

  6. 数字逻辑设计大程——以撒的结合(Verilog语言)

    前言 在大二学习数字逻辑设计课程(即计算机组成课程的前引课)时,期末大程题目我和同组的github成员lwaekfjlk 决定写一款基于Verilog语言的游戏.原型是我们两人都非常喜爱的一款游戏-- ...

  7. 【数字逻辑设计】核心知识归纳总结

    数字逻辑设计 概述 二进制 组合逻辑设计 时序逻辑设计 SR锁存器 D锁存器 D触发器 四位寄存器 带使能端的触发器 带复位功能的触发器 非稳态电路 同步电路与异步电路 有限状态机 时序逻辑的时序 并 ...

  8. 【数字逻辑设计】Logisim构建多路选择器

    多路选择器在数字逻辑设计中用途广泛,其逻辑表达式是: f = s ′ x 1 + s x 2 f = s'x1 + sx2 f=

  9. 【数字逻辑入门】计算机如何存储1位二进制数

    0 前言 本文将会以R-S锁存器为例,引出锁存器的核心和本质,之后再带你构建更多类型的锁存器,你能够: 感受到由浅入深的学习方式 体会到掌握核心本质的快感 深刻理解核心套外壳的设计理念(产品迭代1.0 ...

最新文章

  1. java实现layui分页_基于LayUI分页和LayUI laypage分页的使用示例
  2. 在用户线程/主线程中推荐MsgWaitForMultipleObjects代替WaitForSingleObject和WaitForMultipleObjects()函数
  3. .net label在父容器中占两行显示_十分钟快速了解 JS 中的 offset、scroll、client
  4. SpringAMQP--FanoutExchange
  5. [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了
  6. 详解在Visual Studio中使用git版本系统(转)
  7. 【转】静态类与非静态类
  8. 央视放出荣耀9X系列广告宣传片:麒麟810处理器+侧面指纹识别
  9. HibernateTemplate使用方法
  10. sonar扫描android项目配置 mac版
  11. 利用遗传算法解决TSP问题
  12. SpreadJS V14.2.0 放假前Crack
  13. pdf文件如何转换成word?
  14. 由于找不到 MSVCR120.dll,无法继续执行代码解决方法
  15. Alien Skin X7PS调色滤镜插件下载及PS调色滤镜教程
  16. electron+vue3+vite2 如何使用打印
  17. 【2021春招】2021年阿里笔试真题3.6/3.8/3.10/3.12记录
  18. project设置工期为1个工作日,但开始时间与结束时间不是同一天,如何解决或者是设置?
  19. echart 水滴图水波颜色设置
  20. 顺序结构不属于python语言控制结构_顺的解释|顺的意思|汉典“顺”字的基本解释...

热门文章

  1. tomcat9无法登陆控制界面
  2. 华为5G折叠屏手机,外媒猜长这样
  3. Waymo无人驾驶出租车上线:科技感爆棚,还比Uber便宜
  4. AI发来贺电,您的2333号奶牛已进入恋爱时节 | 野性的呼唤
  5. 特斯拉遭遇史上最大单季亏损,马斯克放言无人车3个月内横穿美国
  6. Google在东京召开了一场AI座谈会
  7. ormlite更改数据库默认位置
  8. The Importance of Money in Life
  9. 参数嗅探(Parameter Sniffing)(1/2)
  10. Thumbnailator java图片压缩,加水印,批量生成缩略图