数字系统设计 Digital System Design EE141 数字系统设计 Digital System Design ------组合逻辑电路 王维东 Weidong Wang 浙江大学信息与电子工程学院 College of Information Science & Electronic Engineering 信息与通信工程系 Zhejiang University Spring 2018 – Lec. #4
任课教师 王维东 TA: 浙江大学信息与电子工程学院, 信电楼306 邮箱:wdwang@zju.edu.cn EE141 任课教师 王维东 浙江大学信息与电子工程学院, 信电楼306 邮箱:wdwang@zju.edu.cn College of Information Science & Electronic Engineering Zhejiang University, Hangzhou, 310027 Tel: 86-571-87953170 (O) Mobile: 13605812196 TA: 陈 佳云 Jiayun CHEN,13161700140; chenjy93@outlook.com; 陈 彬彬 Binbin CHEN, 13071888906; 15091831397@163.com; Office Hours:玉泉信电楼 308室(可以微信或邮件联系). Spring 2018 – Lec. #4
Prerequisites预修课程 电子电路基础 电子线路 C语言 How to learn this Course? Not only listening, thinking and waiting …. But Exercise, Simulation, Practice!
课程简介 课程代码:111C0120 参考书 阎石, 数字电子技术基础, 第6版, 高等教育出版社, 2016. EE141 课程简介 课程代码:111C0120 参考书 阎石, 数字电子技术基础, 第6版, 高等教育出版社, 2016. 王金明著,数字系统设计与Verilog HDL,电子工业出版社,第6版 补充讲义/期中考试前预备 Stanford 大学 108A课程notes. R.H.Katz, G.Borriello, Contemporary Logic Design, second edition,电子工业出版社, 2005. M.M.Mano, 数字设计(第四版), 电子工业出版社, 2010. http://www.prenhall.com/mano Spring 2018 – Lec. #4
Other Course Info Website: http://mypage.zju.edu.cn/wdwd/教学工作/ Check frequently 答疑 玉泉信电楼308室/周三周五下午2:30-5:00 上课课间、课后均可 Email,微信群/数字系统设计2018,短信均可
Grading (考核) Final grades will be computed approximately as follows: 平时(含课程作业、期中考试+小测验、Project、出勤等)30% Class Room Check Homework Sets 作业每周三上交截止期为课后一周内有效。 Project 2 projects (1 or 2 members team) Project-2可选(总评加分1~5分,但不超过平时成绩范围) Finial Exam期末闭卷考试 - 70% 上课说明此门课程的成绩合成:平时成绩包括平时小测验、期中考试、作业、出勤、课堂讨论、论文
授课时间和地点: 2017年春夏学期, 地点:紫金港西2-309(多) 周三上午,第1~2节(8:00-9:35) 星期五上午,第1~2节(8:00-9:35) 地点:紫金港西2-309(多) http://mypage.zju.edu.cn/wdwd/教学工作/ 学在浙里/数字系统设计2018
课程简介 课程代码:111C0120 参考书 阎石, 数字电子技术基础, 第6版, 高等教育出版社, 2016. EE141 课程简介 课程代码:111C0120 参考书 阎石, 数字电子技术基础, 第6版, 高等教育出版社, 2016. 王金明著,数字系统设计与Verilog HDL,电子工业出版社,第6版 补充讲义/期中考试前预备 Stanford 大学 108A课程notes. R.H.Katz, G.Borriello, Contemporary Logic Design, second edition,电子工业出版社, 2005. M.M.Mano, 数字设计(第四版), 电子工业出版社, 2010. http://www.prenhall.com/mano Spring 2018 – Lec. #4
课程结构 数字理论知识(必备) 数字电路分析与设计 脉冲电路与接口 控制器与数字系统 微处理器简介与设计 数字系统和编码、逻辑代数、门电路 EE141 课程结构 数字理论知识(必备) 数字系统和编码、逻辑代数、门电路 数字电路分析与设计 组合逻辑电路 触发器、半导体存贮器、可编程器件 时序逻辑电路 脉冲电路与接口 控制器与数字系统 状态机 控制器 微码控制器 测试和验证 微处理器简介与设计 指令集 简单CPU设计 Spring 2018 – Lec. #4
第四章 组合逻辑电路combinational logic circuits EE141 第四章 组合逻辑电路combinational logic circuits
组合逻辑的内容 组合电路的设计步骤 基本组合电路单元 电路HDL描述 编码器Encoder 译码器Decoder 选择器Multiplexer 比较器Comparator 加法器Adder 乘法器Multiplier(*可选) 电路HDL描述 Spring 2018 – Lec. #4
4.1概述 一、组合逻辑电路的特点 从功能上 从电路结构上 任意时刻的输出仅 取决于该时刻的输入 EE141 4.1概述 一、组合逻辑电路的特点 从功能上 从电路结构上 At any time, the logic level at the output depends on the combination of logic levels present at the inputs. A combinational circuit has no memory characteristic, so its output depends only on the current value of its inputs. 任意时刻的输出仅 取决于该时刻的输入 不含记忆(存储)元件 Spring 2018 – Lec. #4
EE141 二、逻辑功能的描述 组合逻辑 电路 组合逻辑电路的框图 Spring 2018 – Lec. #4
4.2.2 组合逻辑电路的设计方法 一、逻辑抽象 分析因果关系,确定输入/输出变量 定义逻辑状态的含意(赋值) 列出真值表 二、写出函数式 EE141 4.2.2 组合逻辑电路的设计方法 一、逻辑抽象 分析因果关系,确定输入/输出变量 定义逻辑状态的含意(赋值) 列出真值表 二、写出函数式 三、选定器件类型 四、根据所选器件:对逻辑式化简(用门) 变换(用MSI) 或进行相应的描述(PLD) 五、画出逻辑电路图,或下载到PLD 六、工艺设计 Spring 2018 – Lec. #4
设计举例: 设计一个监视交通信号灯状态的逻辑电路 如果信号灯 出现故障, Z为1 R Z A G Spring 2018 – Lec. #4 EE141 设计举例: 设计一个监视交通信号灯状态的逻辑电路 如果信号灯 出现故障, Z为1 R A G Z Spring 2018 – Lec. #4
设计举例: 1. 抽象 输入变量: 红(R)、黄(A)、绿(G) 输出变量: 故障信号(Z) 2. 写出逻辑表达式 输入变量 输出 R A EE141 设计举例: 输入变量 输出 R A G Z 1 1. 抽象 输入变量: 红(R)、黄(A)、绿(G) 输出变量: 故障信号(Z) 2. 写出逻辑表达式 Spring 2018 – Lec. #4
EE141 设计举例: 3. 选用小规模SSI器件 4. 化简 5. 画出逻辑图 Spring 2018 – Lec. #4
回顾: 组合逻辑电路的设计方法 一、逻辑抽象 分析因果关系,确定输入/输出变量 定义逻辑状态的含意(赋值) 列出真值表 二、写出函数式 EE141 回顾: 组合逻辑电路的设计方法 一、逻辑抽象 分析因果关系,确定输入/输出变量 定义逻辑状态的含意(赋值) 列出真值表 二、写出函数式 三、选定器件类型 四、根据所选器件:对逻辑式化简(用门) 变换(用MSI) 或进行相应的描述(PLD) 五、画出逻辑电路图,或下载到PLD 六、工艺设计 Spring 2018 – Lec. #4
4.3 若干常用组合逻辑电路 4.3.1 编码器 编码:将输入的每个高/低电平信号变成一个对应的二进制代码 普通编码器ENCODERS EE141 4.3 若干常用组合逻辑电路 4.3.1 编码器 编码:将输入的每个高/低电平信号变成一个对应的二进制代码 普通编码器ENCODERS 优先编码器Priority Encoders Spring 2018 – Lec. #4
一、普通编码器 特点:任何时刻只允许输入一个编码信号。 例:3位二进制普通编码器 输 入 输 出 I0 I1 I2 I3 I4 I5 I6 EE141 一、普通编码器 输 入 输 出 I0 I1 I2 I3 I4 I5 I6 I7 Y2 Y1 Y0 1 特点:任何时刻只允许输入一个编码信号。 例:3位二进制普通编码器 Spring 2018 – Lec. #4
EE141 利用无关项化简,得: 任何时候只有一个输入时激活的,或有两个输入同时激活,则输入就会产生一个没有定义的组合。对于这个不确定因素,编码器必须建立优先机制,使得只有一个输出被编码。 Spring 2018 – Lec. #4
二、优先编码器 特点:允许同时输入两个以上的编码信号,但只对其中优先权最高的一个进行编码。 例:8线-3线优先编码器 EE141 二、优先编码器 输 入 输 出 I0 I1 I2 I3 I4 I5 I6 I7 Y2 Y1 Y0 X 1 特点:允许同时输入两个以上的编码信号,但只对其中优先权最高的一个进行编码。 例:8线-3线优先编码器 (设I7优先权最高…I0优先权最低) Spring 2018 – Lec. #4
EE141 实例: 74HC148芯片 低电平 Spring 2018 – Lec. #4
EE141 选通信号 选通信号 Spring 2018 – Lec. #4
EE141 附 加 输 出 信 号 为0时,电路工作无编码输入 为0时,电路工作有编码输入 Spring 2018 – Lec. #4
EE141 输 入 输 出 1 X Spring 2018 – Lec. #4
附加输出信号的状态及含意 状态 1 不工作 工作,但无输入 工作,且有输入 不可能出现 Spring 2018 – Lec. #4 EE141 附加输出信号的状态及含意 状态 1 不工作 工作,但无输入 工作,且有输入 不可能出现 Spring 2018 – Lec. #4
控制端扩展功能举例: 例: 用两片8线-3线优先编码器 16线-4线优先编码器 其中, 的优先权最高· · · EE141 控制端扩展功能举例: 例: 用两片8线-3线优先编码器 16线-4线优先编码器 其中, 的优先权最高· · · Spring 2018 – Lec. #4
EE141 状态 1 不工作 工作,但无输入 工作,且有输入 不可能出现 Spring 2018 – Lec. #4
第一片为高优先权 只有(1)无编码输入时,(2)才允许工作 第(1)片 时表示对 的编码 低3位输出应是两片的输出的“或” EE141 第一片为高优先权 只有(1)无编码输入时,(2)才允许工作 第(1)片 时表示对 的编码 低3位输出应是两片的输出的“或” Spring 2018 – Lec. #4
EE141 Spring 2018 – Lec. #4
Switch Encoder Spring 2018 – Lec. #4
4.3.2 译码器DEMULTIPLEXERS 译码:将每个输入的二进制代码译成对应的输出高、低电平信号。 EE141 4.3.2 译码器DEMULTIPLEXERS 译码:将每个输入的二进制代码译成对应的输出高、低电平信号。 常用的有:二进制译码器,二-十进制译码器,显示译码器等 输 入 输 出 A2 A1 A0 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 1 一、二进制译码器 例:3线—8线译码器 Spring 2018 – Lec. #4
EE141 真值表 逻辑表达式: 用电路进行实现 用二极管与门阵列组成的3线-8线译码器 Spring 2018 – Lec. #4
EE141 集成译码器实例:74HC138 附加 控制端 低电平输出 Spring 2018 – Lec. #4
EE141 74HC138的功能表: 输 入 输 出 S1 A2 A1 A0 X 1 Spring 2018 – Lec. #4
利用附加控制端进行扩展 例: 用74HC138(3线—8线译码器) 4线—16线译码器 Spring 2018 – Lec. #4 EE141 利用附加控制端进行扩展 例: 用74HC138(3线—8线译码器) 4线—16线译码器 Spring 2018 – Lec. #4
EE141 D3=1 D3=0 Spring 2018 – Lec. #4
二、二—十进制译码器 将输入BCD码的10个代码译成10个高、低电平的输出信号 BCD码以外的伪码,输出均无低电平信号产生 例:74HC42 EE141 二、二—十进制译码器 将输入BCD码的10个代码译成10个高、低电平的输出信号 BCD码以外的伪码,输出均无低电平信号产生 例:74HC42 Spring 2018 – Lec. #4
三、用译码器设计组合逻辑电路 1. 基本原理 3位二进制译码器给出3变量的全部最小项; 。。。 n位二进制译码器给出n变量的全部最小项; EE141 三、用译码器设计组合逻辑电路 1. 基本原理 3位二进制译码器给出3变量的全部最小项; 。。。 n位二进制译码器给出n变量的全部最小项; 任意函数 将n位二进制译码输出的最小项组合起来,可获得任何形式的输入变量不大于n的组合函数 Spring 2018 – Lec. #4
EE141 2. 举例 例:利用74HC138设计一个多输出的组合逻辑电路,输出逻辑函数式为: Spring 2018 – Lec. #4
EE141 四、显示译码器 1. 七段字符显示器 如: Spring 2018 – Lec. #4
2. BCD七段字符显示译码器 (代码转换器)7448 输 入 输 出 数字 A3 A2 A1 A0 Ya Yb Yc Yd Ye Yf EE141 2. BCD七段字符显示译码器 (代码转换器)7448 输 入 输 出 数字 A3 A2 A1 A0 Ya Yb Yc Yd Ye Yf Yg 字形 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Spring 2018 – Lec. #4
EE141 真值表 卡诺图Karnaugh Map Y Y Y Y Y Y Y Spring 2018 – Lec. #4
EE141 BCD-七段显示译码器7448的逻辑图 Spring 2018 – Lec. #4
EE141 7448的附加控制信号:(1) 灯测试输入 当 时,Ya ~ Yg全部置为1 Spring 2018 – Lec. #4
EE141 7448的附加控制信号:(2) 灭零输入 当 时, 时,则灭灯 Spring 2018 – Lec. #4
7448的附加控制信号:(3) 灭灯输入/灭零输出 输入信号,称灭灯输入控制端: 无论输入状态是什么,数码管熄灭 输出信号,称灭零输出端: EE141 7448的附加控制信号:(3) 灭灯输入/灭零输出 输入信号,称灭灯输入控制端: 无论输入状态是什么,数码管熄灭 输出信号,称灭零输出端: 只有当输入 ,且灭零输入信号 时, 才给出低电平 因此 表示译码器将本来应该显示的零熄灭了 Spring 2018 – Lec. #4
EE141 Spring 2018 – Lec. #4
EE141 Spring 2018 – Lec. #4
BCD-to-7-segment decoder/driver driving a common-anode 7-segment LED display Spring 2018 – Lec. #4
例:利用 和 的配合,实现多位显示系统的灭零控制 EE141 例:利用 和 的配合,实现多位显示系统的灭零控制 整数部分:最高位是0,而且灭掉以后,输出 作为次高位的 输入信号 小数部分:最低位是0,而且灭掉以后,输出 作为次低位的 输入信号 Spring 2018 – Lec. #4
DIP dual-in-line package 数字系统设计-组合电路 DIP dual-in-line package Actual silicon chip is much smaller than the protective package Spring 2018 – Lec. #4 先进计算体系结构和集成电路系统 http://mypage.zju.edu.cn/liupeng
TROUBLESHOOTING DIGITAL SYSTEMS There are three basic steps in fixing a digital circuit or system that has a fault (failure): 1. Fault detection. Observe the circuit/system operation and compare it with the expected correct operation. 2. Fault isolation. Perform tests and make measurements to isolate the fault. 3. Fault correction. Replace the faulty component, repair the faulty connection, remove the short, and so on. Spring 2018 – Lec. #4
4.3.3 数据选择器 MULTIPLEXERS 一、工作原理 选择一路数据作为输出 “双四选一”, EE141 4.3.3 数据选择器 MULTIPLEXERS 一、工作原理 选择一路数据作为输出 “双四选一”, Spring 2018 – Lec. #4
例:“双四选一”,74HC153 分析其中的一个“四选一” A1 A0 Y1 1 X D10 D11 D12 D13 EE141 例:“双四选一”,74HC153 分析其中的一个“四选一” A1 A0 Y1 1 X D10 D11 D12 D13 Spring 2018 – Lec. #4
例:用两个“四选一”接成“八选一” “四选一”只有2位地址输入,从四个输入中选中一个 “八选一”的八个数据需要3位地址代码指定其中任何一个 EE141 例:用两个“四选一”接成“八选一” “四选一”只有2位地址输入,从四个输入中选中一个 “八选一”的八个数据需要3位地址代码指定其中任何一个 Spring 2018 – Lec. #4
二、用数据选择器设计组合电路 1. 基本原理 具有n位地址输入的数据选择器,可产生任何形式的输入变量不大于n+1的组合函数 EE141 二、用数据选择器设计组合电路 1. 基本原理 具有n位地址输入的数据选择器,可产生任何形式的输入变量不大于n+1的组合函数 Spring 2018 – Lec. #4
EE141 例如: Spring 2018 – Lec. #4
Security monitoring system Spring 2018 – Lec. #4
4.3.4 加法器 一、1位加法器 1. 半加器,不考虑来自低位的进位,将两个1位的二进制数相加 输 入 输 出 A B S CO 1 EE141 4.3.4 加法器 一、1位加法器 1. 半加器,不考虑来自低位的进位,将两个1位的二进制数相加 输 入 输 出 A B S CO 1 Spring 2018 – Lec. #4
2. 全加器:将两个1位二进制数及来自低位的进位相加 EE141 2. 全加器:将两个1位二进制数及来自低位的进位相加 输 入 输 出 A B CI S CO 1 74LS183 74HC183 Spring 2018 – Lec. #4
EE141 二、多位加法器 串行进位加法器 优点:简单 缺点:慢 Spring 2018 – Lec. #4
2. 超前进位加法器 基本原理:加到第i位 的进位输入信号是两 个加数第i位以前各位 (0 ~ j-1)的函数, EE141 2. 超前进位加法器 基本原理:加到第i位 的进位输入信号是两 个加数第i位以前各位 (0 ~ j-1)的函数, 可在相加前由A,B两数确定。 优点:快,每1位的和 及最后的进位基本同时产生。 缺点:电路复杂。 74LS283 Spring 2018 – Lec. #4
EE141 Spring 2018 – Lec. #4
三、用加法器设计组合电路 基本原理: 若能生成函数可变换成输入变量与输入变量相加 若能生成函数可变换成输入变量与常量相加 EE141 三、用加法器设计组合电路 基本原理: 若能生成函数可变换成输入变量与输入变量相加 若能生成函数可变换成输入变量与常量相加 例:将BCD的8421码转换为余3码 输 入 输 出 D C B A Y3 Y2 Y1 Y0 1 Spring 2018 – Lec. #4
思考:已知X是3位二进制数(其值小于等于5),试实现Y=3X 并用7段数码管进行显示 ? EE141 思考:已知X是3位二进制数(其值小于等于5),试实现Y=3X 并用7段数码管进行显示 ? ? Y=3X D2 D1 D0 Spring 2018 – Lec. #4
4.3.5 数值比较器 用来比较两个二进制数的数值大小 一、1位数值比较器 A,B比较有三种可能结果 EE141 4.3.5 数值比较器 用来比较两个二进制数的数值大小 一、1位数值比较器 A,B比较有三种可能结果 Spring 2018 – Lec. #4
EE141 二、多位数值比较器 原理:从高位比起,只有高位相等,才比较下一位。 例如: Spring 2018 – Lec. #4
EE141 2. 集成电路CC14585 实现4位二进制数的比较 Spring 2018 – Lec. #4
EE141 3. 比较两个8位二进制数的大小 Spring 2018 – Lec. #4
Magnitude comparator used in a digital thermostat Spring 2018 – Lec. #4
DATA BUSING Spring 2018 – Lec. #4
THE 74ALS173/HC173 TRISTATE REGISTER Spring 2018 – Lec. #4
4.4 组合逻辑电路中的竞争-冒险现象 4.4.1 竞争-冒险现象及成因 一、什么是“竞争” EE141 4.4 组合逻辑电路中的竞争-冒险现象 4.4.1 竞争-冒险现象及成因 一、什么是“竞争” 两个输入“同时向相反的逻辑电平变化”,称存在“竞争” 二、因“竞争”而可能在输出产 生尖峰脉冲的现象,称为 “竞争-冒险”。 Spring 2018 – Lec. #4
EE141 三、2线—4线译码器中的竞争-冒险现象 Spring 2018 – Lec. #4
4.4.2 检查竞争-冒险现象的方法 4.4.3 消除竞争-冒险现象的方法 一、接入滤波电容 尖峰脉冲很窄, 二、引入选通脉冲 EE141 4.4.2 检查竞争-冒险现象的方法 有可能的情况: Y=A+A’=10(A=0,A’慢;A’=0,A慢变)1; Y=A·A’=01(A=1,A’慢;A’=1,A慢变)0; 例:Y=AB+A’C 4.4.3 消除竞争-冒险现象的方法 一、接入滤波电容 尖峰脉冲很窄, 用很小的电容就可将尖峰削弱到 VTH 以下。 二、引入选通脉冲 取选通脉冲作用时间,在电路达到稳定之后, P的高电平期的输出信号不会出现尖峰。 Spring 2018 – Lec. #4
EE141 三、修改逻辑设计 例: Spring 2018 – Lec. #4
4.4补充 综合分析 --------4-Bit Arithmetic Logic Unit (ALU) 学习74LS181 datasheet 功能分析General Description: The 74LS181 is a 4-bit Arithmetic Logic Unit (ALU) which can perform all the possible 16 logic operations on two variables and a variety of arithmetic operations Features Provides 16 arithmetic operations: add, subtract, compare, double, plus twelve other arithmetic operations Provides all 16 logic operations of two variables: exclusive-OR, compare, AND, NAND, OR, NOR, plus ten other logic operations Full lookahead for high speed arithmetic operation on long words Operand Inputs: A’0–A’3/B’0–B’3 four Function Select inputs (S0–S3) Mode Control input (M): logic/arithmetic Carry Input (Cn)/Carry Output(Cn+4) Function Outputs(F’0–F’3) Comparator Output (A = B) Carry Generate Output(G’)/Carry Propagate Output(P’) Spring 2018 – Lec. #4
Connection Diagram Spring 2018 – Lec. #4
Logic Symbols Spring 2018 – Lec. #4
Functional Description & Function Table Spring 2018 – Lec. #4
Logic Diagram Spring 2018 – Lec. #4
How to read datasheet What’s Recommended Operating Conditions? What’s Electrical Characteristics? What’s Switching Characteristics? What’s Physical Dimensions? Spring 2018 – Lec. #4
4.5用multisim分析组合逻辑电路(自学) 例:用mulitisim分析逻辑电路. 找出电路的逻辑函数式和逻辑真值表。 EE141 4.5用multisim分析组合逻辑电路(自学) 例:用mulitisim分析逻辑电路. 找出电路的逻辑函数式和逻辑真值表。 Spring 2018 – Lec. #4
EE141 Spring 2018 – Lec. #4
课后作业 1) 调查: 数字集成电路组合电路芯片手册 2) 作业: 3) 阅读: 4) 学习 图书馆资源:电子器件天地 ch4.4-4.5; EE141 课后作业 1) 调查: 数字集成电路组合电路芯片手册 74HC148, 74HC138, 7448, 74HC153,74LS283,CD4585等 国际公司TI, NXP(Philips), Resean(Toshiba/NEC/Hitachi), Fairchild, OnSemi(Motorola)…… 图书馆资源:电子器件天地 http://10.15.61.7:8080/poweb/s_search.jsp?searchFiled=5&KWord=tjn&sClass=0&Submit=%BC%EC+%CB%F7 2) 作业: 见学在浙里 3) 阅读: ch4.4-4.5; Ch5.1-5.7 4) 学习 组合电路,触发器, 74LS181 datasheet Spring 2018 – Lec. #4
什么是SRTP? 什么是电子设计竞赛? 1)了解规则 2)组队 3)了解课题 ……. 4) 联系指导教师 5) 申报 6) go