1、IE7 ReleasedMachine Structures Lecture 15 组合逻辑电路的表示组合逻辑电路的表示 week,after more than 3 years since the last major update,Microsoft finally releases the next generation of their Internet Explorer web browser复习复习 状态单元的作用状态单元的作用:构建存储(构建存储(Build memories)控制其他状态单元与组合逻辑间的信息流动控制其他状态单元与组合逻辑间的信息流动 用用D型翻转器(型翻转器(
2、D-flip-flops)构建寄存器)构建寄存器 时钟定义时钟定义D型翻转器何时改变型翻转器何时改变建立和保持(建立和保持(Setup and Hold)时间重要)时间重要 为了构建更快的时钟,可将长延时的工作流水化为了构建更快的时钟,可将长延时的工作流水化 有限状态机非常有用有限状态机非常有用 表达状态和变化表达状态和变化组合逻辑组合逻辑FSMs 有状态和变化有状态和变化如何从一个状态变化为另一状态如何从一个状态变化为另一状态?答案答案:组合逻辑组合逻辑真值表真值表:唯一定义组合逻辑函数唯一定义组合逻辑函数0关于组合逻辑,需要学些什么关于组合逻辑,需要学些什么?如何设计如何设计:给定定义给定
3、定义将其分解为可管理的大小来实现将其分解为可管理的大小来实现如何分析如何分析:延时多少延时多少,价格多少价格多少,能耗多少能耗多少具体对我们具体对我们:用逻辑门电路来实现用逻辑门电路来实现(TT)真值表)真值表 例例#1:1 iff one(not both)a,b=1a b y000011101110(TT)真值表例)真值表例#2:2位加法位加法多少行多少行?TT 例例#3:32位无符号数加法位无符号数加法多少行多少行?TT 真值表例真值表例#3:3-输入多数(输入多数(majority)电路)电路逻辑门逻辑门(1/2)And vs.OrAND Gate(与门)(与门)CAB符号符号A BC
4、0 000 101 001 11定义定义AND逻辑门逻辑门(2/2)2输入门扩展为输入门扩展为 n输入输入 N输入输入XOR是唯一一是唯一一个扩展方法不明显的个扩展方法不明显的 非常简单非常简单:XOR=1 当当且仅当其输入中且仅当其输入中1的个的个数为奇数数为奇数 真值表真值表 门门(如多数电路如多数电路)真值表真值表 门电路门电路(如如,有限状态机电路有限状态机电路)PSInputNSOutput000000001010010000011100100000101001或者等价地或者等价地布尔代数布尔代数Boolean AlgebraGeorge Boole,19世纪数学家世纪数学家开发了涉
5、及逻辑的数学系统开发了涉及逻辑的数学系统 (代数代数)后来称为后来称为“布尔代数布尔代数”基本函数基本函数:AND,OR 和和 NOT布尔代数的重要意义在于:布尔代数的重要意义在于:由由AND,OR 和和 NOT 构建的门电路和布尔代数的代数式间构建的门电路和布尔代数的代数式间存在一一对应存在一一对应 +即即 OR,即即 AND,x 即即 NOT布尔代数布尔代数(例例,“多数多数”函数函数)y=a b+a c+b cy=ab+ac+bc布尔代数布尔代数(如如,有限状态机有限状态机)PSInputNSOutput000000001010010000011100100000101001或者等价地或
6、者等价地y=PS1 PS0 INPUT布尔代数布尔代数:电路化简电路化简布尔代数也可用于布尔代数也可用于 电路电路证明:证明:如电路如电路 X=电路电路 Y?可用布尔代数证明可用布尔代数证明!布尔代数运算法则布尔代数运算法则布尔代数化简实例布尔代数化简实例组合逻辑的三种表示组合逻辑的三种表示组合逻辑表示转换组合逻辑表示转换布尔表达式布尔表达式转真值表转真值表:对右边所有变量尝试可能的值,穷对右边所有变量尝试可能的值,穷举得到真值表举得到真值表转逻辑门转逻辑门:用与或非门(用与或非门(AND-gate/OR-gate/Inverter)替换布尔代数中的与或非)替换布尔代数中的与或非AND/OR/
7、NOT运算运算门电路图门电路图转真值表转真值表:用所有可能的输入组合,来对电路用所有可能的输入组合,来对电路进行测试,得到输出值进行测试,得到输出值转布尔表达式转布尔表达式:逆变换逆变换真值表转布尔表达式真值表转布尔表达式?正则表示正则表示(1/2)乘积之和乘积之和(ORs of ANDs)正则形式正则形式(2/2)课堂测验课堂测验A.(a+b)(a+b)=bB.N-input gates can be thought of cascaded 2-input gates.I.e.,(a bc d e)=a (bc (d e)where is one of AND,OR,XOR,NANDC.Yo
8、u can use NOR(s)with clever wiring to simulate AND,OR,&NOT ABC1:FFF2:FFT3:FTF4:FTT5:TFF6:TFT7:TTF8:TTTA.(a+b)(a+b)=aa+ab+ba+bb=0+b(a+a)+b=b+b=b TRUEB.(next slide)C.You can use NOR(s)with clever wiring to simulate AND,OR,&NOT.NOR(a,a)=a+a=aa=aUsing this NOT,can we make a NOR an OR?An And?TRUEPeer Ins
9、truction AnswerA.(a+b)(a+b)=bB.N-input gates can be thought of cascaded 2-input gates.I.e.,(a bc d e)=a (bc (d e)where is one of AND,OR,XOR,NANDC.You can use NOR(s)with clever wiring to simulate AND,OR,&NOT ABC1:FFF2:FFT3:FTF4:FTT5:TFF6:TFT7:TTF8:TTTA.B.N-input gates can be thought of cascaded 2-inp
10、ut gates.I.e.,(a bc d e)=a (bc (d e)where is one of AND,OR,XOR,NANDFALSELets confirm!CORRECT 3-inputXYZ|AND|OR|XOR|NAND000|0|0|0|1 001|0|1|1|1 010|0|1|1|1 011|0|1|0|1 100|0|1|1|1 101|0|1|0|1 110|0|1|0|1 111|1|1|1|0 CORRECT 2-inputYZ|AND|OR|XOR|NAND00|0|0|0|1 01|0|1|1|1 10|0|1|1|1 11|1|1|0|0 0 0 0 1 0 1 1 1 0 1 1 1 0 1 0 1 0 1 1 0 0 1 0 0 0 1 0 0 1 1 1 1 Peer Instruction Answer(B)“小结小结”有限状态机(有限状态机(FSM)非常有用非常有用后续课程还要学后续课程还要学Use this table and techniques we learned to transform from 1 to another