收藏 分享(赏)

电子技术基础 数字部分(第六版) 康华光第2章逻辑代数与硬件描述语言基础共5节.ppt

上传人:精品资料 文档编号:10453226 上传时间:2019-11-14 格式:PPT 页数:64 大小:2.50MB
下载 相关 举报
电子技术基础 数字部分(第六版) 康华光第2章逻辑代数与硬件描述语言基础共5节.ppt_第1页
第1页 / 共64页
电子技术基础 数字部分(第六版) 康华光第2章逻辑代数与硬件描述语言基础共5节.ppt_第2页
第2页 / 共64页
电子技术基础 数字部分(第六版) 康华光第2章逻辑代数与硬件描述语言基础共5节.ppt_第3页
第3页 / 共64页
电子技术基础 数字部分(第六版) 康华光第2章逻辑代数与硬件描述语言基础共5节.ppt_第4页
第4页 / 共64页
电子技术基础 数字部分(第六版) 康华光第2章逻辑代数与硬件描述语言基础共5节.ppt_第5页
第5页 / 共64页
点击查看更多>>
资源描述

1、2 .逻辑代数与硬件描述语言基础,2.1 逻辑代数的基本定理和恒等式2.2 逻辑函数表达式的形式2.3 逻辑函数的代数化简法2.4 逻辑函数的卡诺图化简法2.5 硬件描述语言Verilog HDL基础,教学基本要求,1、熟悉逻辑代数常用基本定律、恒等式 和规则。,4、熟悉硬件描述语言Verilog HDL,2、掌握逻辑代数的表示方法;,3、掌握逻辑代数的变换和卡诺图化简法;,2.1.1 逻辑代数的基本定律和恒等式,2.1 逻辑代数的基本定理和规则,2.1.2 逻辑代数的基本规则,2.1 逻辑代数的基本定理和规则,逻辑代数又称布尔代数。它是分析和设计现代数字逻辑电路不可缺少的数学工具。逻辑代数有

2、一系列的定律、定理和规则,用于对表达式进行处理,以完成对逻辑电路的化简、变换、分析和设计。,逻辑关系指的是事件产生的条件和结果之间的因果关系。在数字电路中往往是将事情的条件作为输入信号,而结果用输出信号表示。条件和结果的两种对立状态分别用逻辑“1” 和“0”表示。,1、基本公式,2.1.1 逻辑代数的基本定律和恒等式,吸收律,2、基本公式的证明,列出等式、右边的函数值的真值表,(真值表证明法),例 证明,2.1.2 逻辑代数的基本规则,代入规则,: 在包含变量A逻辑等式中,如果用另一个函数式代入式中所有A的位置,则等式仍然成立。这一规则称为代入规则。,例:B (A + C) = BA+BC,,

3、用A + D代替A,得,B (A +D) +C = B(A +D) + BC = BA + BD + BC,代入规则可以扩展所有基本公式或定律的应用范围,对于任意一个逻辑表达式L,若将其中所有的与( )换成或(+),或(+)换成与();原变量换为反变量,反变量换为原变量;将1换成0,0换成1;则得到的结果就是原函数的反函数。,2. 反演规则:,解:按照反演规则,得,对于任何逻辑函数式,若将其中的与( )换成或(+),或(+)换成与();并将1换成0,0换成1;那么,所得的新的函数式就是L的对偶式,记作 。,例: 逻辑函数 的对偶式为,3. 对偶规则:,当某个逻辑恒等式成立时,则该恒等式两侧的对

4、偶式也相等。 这就是对偶规则。利用对偶规则,可从已知公式中得到更多的 运算公式,例如,吸收律,2.2 逻辑函数表达式的形式,2.2.2 最小项与最小项表达式,2.2.1 逻辑函数表达式的形式,2.2.3 最大项与最大项表达式,2.2 逻辑函数表达式的形式,1、与-或表达式,2.2.1 逻辑函数表达式的基本形式,若干与项进行或逻辑运算构成的表达式。由与运算符和或运算符连接起来。,2、或-与表达式,若干或项进行与逻辑运算构成的表达式。由或运算符和与运算符连接起来。,n个变量X1, X2, , Xn的最小项是n个因子的乘积,每个变量 都以它的原变量或非变量的形式在乘积项中出现,且仅出 现一次。一般n

5、个变量的最小项应有2n个。,1. 最小项的定义和性质,2.2 .2 最小项与最小项表达式,全体最小项之和为1。,对于任意一个最小项,只有一组变量取值使得它的值为1;,任意两个最小项的乘积为0;,三个变量的所有最小项的真值表,2、最小项的性质,3、最小项的编号,三个变量的所有最小项的真值表,m0,m1,m2,m3,m4,m5,m6,m7,最小项的表示:通常用mi表示最小项,m 表示最小项,下标i为最小项号。,2. 最小项表达式,为“与或”逻辑表达式; 在“与或”式中的每个乘积项都是最小项。,= m7m6m3m5,由若干最小项相或构成的表达式,也称为标准与-或式。,例2 将,化成最小项表达式,a.

6、去掉非号,b.去括号,n个变量X1, X2, , Xn的最大项是n个因子或相,每个变量 都以它的原变量或非变量的形式在或项中出现,且仅出 现一次。一般n个变量的最大项应有2n个。,1. 最大项的定义和性质,2.2.2 最大项与最大项表达式,例如,A、B、C三个逻辑变量的最大项有(23)8个,即,1. 最大项的定义和性质,最大项的表示:通常用Mi表示最大项,M 表示最大项,下标i为最大项号。,全体最大项之积为0。,对于任意一个最大项,只有一组变量取值使得它的值为0;,任意两个最大项的之和为1;,最大项的性质:,2. 最小项和最大项的关系,例: 逻辑电路的真值表如右,写出最小项和最大项表达式。,最

7、小项表达式: 将L1的各个最小项相加,最大项表达式: 将L0的各个最大项相乘,2.3 逻辑函数的代数化简法,2.3.2 逻辑函数的代数化简法,2.3.1 逻辑函数的最简形式,2.3 逻辑函数的代数法化简,化简的目的:降低电路实现的成本,以较少的门实现电路。,图(a)和图(b)的电路逻辑功能相同,但图 (b)电路简单可靠性高,成本低。,“或-与”表达式,“与非-与非”表达式,“与-或-非”表达式,“或非或非” 表达式,“与-或” 表达式,2.3.1 逻辑函数的最简形式,逻辑函数有不同形式,如与-或表达式、与非-与非表达式、或-与表达式、或非-或非表达式以及与-或-非表达式等。,将其中包含的与项数

8、最少,且每个与项中变量数最少的与-或表达式称为最简与-或表达式。,1、逻辑函数的化简,化简的主要方法:公式法(代数法)图解法(卡诺图法),代数化简法:运用逻辑代数的基本定律和恒等式进行化简的方法。,并项法:,2.3.2 逻辑函数的代数化简法,吸收法:,A + AB = A,消去法:,配项法:,通常在一片集成电路芯片中只有一种门电路,为了减少门电路的种类,需要对逻辑函数表达式进行变换。,2、逻辑函数形式的变化,(1)求最简的与-或式,并画出相应的逻辑图; (2)画出仅用与非门实现的电路。 解:,例:已知,2.4 逻辑函数的卡诺图化简法,2.4.2 用卡诺图化简逻辑函数,2.4.1 用卡诺图表示逻

9、辑函数,1.逻辑代数与普通代数的公式易混淆,化简过程要求对所 有公式熟练掌握; 2.代数法化简无一套完善的方法可循,它依赖于人的经验 和灵活性; 3.用这种化简方法技巧强,较难掌握。特别是对代数化简 后得到的逻辑表达式是否是最简式判断有一定困难。卡诺图法可以比较简便地得到最简的逻辑表达式。,代数法化简在使用中遇到的困难:,2.2.3 用卡诺图表示逻辑函数,1、卡诺图的引出,卡诺图:将n变量的全部最小项都用小方块表示,并使具有逻辑相邻的最小项在几何位置上也相邻地排列起来,这样,所得到的图形叫n变量的卡诺图。,逻辑相邻的最小项:如果两个最小项只有一个变量互为反变量,那么,就称这两个最小项在逻辑上相

10、邻。,1,0,1,0,0,1,00,01,11,10,三变量卡诺图,四变量卡诺图,两变量卡诺图,2、卡诺图的特点:各小方格对应于各变量不同的组合,而且上下 左右在几何上相邻的方格内只有一个因子有差别,这个重要特 点成为卡诺图化简逻辑函数的主要依据。,3. 已知逻辑函数画卡诺图,当逻辑函数为最小项表达式时,在卡诺图中找出和表达式中 最小项对应的小方格填上1,其余的小方格填上0(有时也可 用空格表示),就可以得到相应的卡诺图。任何逻辑函数都 等于其卡诺图中为1的方格所对应的最小项之和。,例2 画出下式的卡诺图,2. 填写卡诺图,2.4.2 用卡诺图化简逻辑函数,1、化简的依据,2、化简的步骤,用卡

11、诺图化简逻辑函数的步骤如下:,(4) 将所有包围圈对应的乘积项相加。,(1) 将逻辑函数写成最小项表达式,(2) 按最小项表达式填卡诺图,凡式中包含了的最小项, 其对应方格填1,其余方格填0。,(3) 合并最小项,即将相邻的1方格圈成一组(包围圈),每一组含2n个方格,对应每个包围圈写成一个新的乘积项。本书中包围圈用虚线框表示。,画包围圈时应遵循的原则:,例 :用卡诺图法化简下列逻辑函数,(2)画包围圈合并最小项,得最简与-或表达式,解:(1) 由L 画出卡诺图,(0,2,5,7,8,10,13,15),例: 用卡诺图化简,圈0,圈1,3、具有无关项的化简,(1)什么叫无关项:,在真值表内对应

12、于变量的某些取值下,函数的值可以是任意的,或者这些变量的取值根本不会出现,这些变量取值所对应的最小项称为无关项或任意项。,在含有无关项逻辑函数的卡诺图化简中,它的值可以取0或取1,具体取什么值,可以根据使函数尽量得到简化而定。,例: 要求设计一个逻辑电路,能够判断一位十进制数是奇数还是偶数,当十进制数为奇数时,电路输出为1,当十进制数为偶数时,电路输出为0。,解: (1)列出真值表,(2)画出卡诺图,(3) 卡诺图化简,2.5.1 Verilog语言的基本语法规则2.5.2 变量的数据类型2.5.3 运算符及其优先级2.5.4 Verilog内部的基本门级元件2.5.5 Verilog程序的基

13、本结构2.5.6 逻辑功能的仿真与测试,2.5 硬件描述语言Verilog HDL基础,硬件描述语言HDL(Hardware Description Languag ) 类似于高级程序设计语言.它是一种以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,复杂数字逻辑系统完成的逻辑功能。HDL是高层次自动化设计的起点和基础.,2.5 硬件描述语言Verilog HDL基础,计算机对HDL的处理:,逻辑综合 是指从HDL描述的数字逻辑电路模型中导出电路基本元件列表以及元件之间的连接关系(常称为门级网表)的过程。类似对高级程序语言设计进行编译产生目标代码的过程.产生门

14、级元件及其连接关系的数据库,根据这个数据库可以制作出集成电路或印刷电路板PCB。,逻辑仿真 是指用计算机仿真软件对数字逻辑电路的结构和行为进行预测.仿真器对HDL描述进行解释,以文本形式或时序波形图形式给出电路的输出。在仿真期间如发现设计中存在错误,就再要对HDL描述进行及时的修改。,2.5.1 Verilog语言的基本语法规则,为对数字电路进行描述(常称为建模),Verilog语言规定 了一套完整的语法结构。,1间隔符: Verilog 的间隔符主要起分隔文本的作用,可以使文本错落有致,便于阅读与修改。 间隔符包括空格符(b)、TAB 键(t)、换行符(n)及换页符。,2注释符:注释只是为了

15、改善程序的可读性,在编译时不起作用。 多行注释符(用于写多行注释): /* - */; 单行注释符 :以/开始到行尾结束为注释文字。,为了表示数字逻辑电路的逻辑状态,Verilog语言规定了 4种基本的逻辑值。,标识符:给对象(如模块名、电路的输入与输出端口、变量等)取名所用的字符串。以英文字母或下划线开始 如,clk、counter8、_net、bus_A 。 关键词:是Verilog语言本身规定的特殊字符串,用来定义语言的结构。例如,module、endmodule、input、output、wire、reg、and等都是关键词。关键词都是小写,关键词不能作为标识符使用 。,4逻辑值集合,

16、3标识符和关键词,5常量及其表示,实数型常量,Verilog允许用参数定义语句定义一个标识符来代表一个常量,称为符号常量。定义的格式为: parameter 参数名1常量表达式1,参数名2常量表达式2,;如 parameter BIT=1, BYTE=8, PI=3.14;,常量,整数型,例如:3b101、5o37、8he3,8b1001_0011,2.5.2 变量的数据类型,1线网类型:是指输出始终根据输入的变化而更新其值的变量,它一般指的是硬件电路中的各种物理连接.,例:wire L; /将上述电路的输出信号L声明为网络型变量wire 7:0 data bus; /声明一个8-bit宽的网

17、络型总线变量,寄存器型变量对应的是具有状态保持作用的电等路元件,如触发器寄存器。寄存器型变量只能在initial或always内部被赋值。,2、寄存器类型,4种寄存器类型的变量,例: reg clock;/定义一个1位寄存器变量reg 3:0 counter; /定义一个4位寄存器变量,1. 运算符,2.5.3 运算符及其优先级,运算符分为算术运算符、逻辑运算符、关系运算符、移位运算符等,对同一个操作数的重复拼接还可以双重大括号构成的运算符 例如4A=4b1111,2A,2B,C=8b11101000。,作用是将两个或多个信号的某些位拼接起来成为一个新的操作数,进行运算操作。,位拼接运算符,设

18、A=1b1,B=2b10,C=2b00,则B,C4b1000 A,B1,C03b110 A,B,C,3b101=8b11000101。,位运算符与缩位运算的比较,A:4b1010 、 B:4b1111,,2. 运算符的优先级,优先级的顺序从下向上依次增加。,一般用法: condition_expr?expr1:expr2;,条件运算符,是三目运算符,运算时根据条件表达式的值选择表达式。,首先计算第一个操作数condition_expr的值,如果结果为逻辑1, 则选择第二个操作数expr1的值作为结果返回,结果为逻辑0, 选择第三个操作数expr2的值作为结果返回。,基本门级元件模型,多输入门,

19、多输出门,三态门,2.5.4 Verilog内部的基本门级元件,门级建模:将逻辑电路图用HDL规定的文本语言表示出来。,1、多输入门,只允许有一个输出,但可以有多个输入。,and A1(out,in1,in2,in3);,X- 不确定状态,Z- 高阻态,2、多输出门,允许有多个输出,但只有一个输入。,not N1(out1,out2,in);,buf B1(out1,out2,in);,3、三态门,有一个输出、一个数据输入和一个输入控制。 如果输入控制信号无效,则三态门的输出为高阻态z。,2、每个模块先要进行端口的定义,并说明输入(input)和输出 (output),然后对模块功能进行描述。

20、,2.5.5 Verilog程序的基本结构,模块是Verilog描述电路的基本单元。对数字电路建模时,用一个或多个模块。不同模块之间通过端口进行连接。,1、每个模块以关键词module开始,以endmodule结束。,3、除了endmodule语句外,每个语句后必须有分号。,4、可以用/* - */和/对程序的任何部分做注释。,5、逻辑功能的描述方式有三种不同风格:结构描述方式(门级描述方式)数据流描述方式,行为描述方式。,模块定义的一般语法结构如下:,模块名,数据类型说明,例 用结构描述方式建立门电路Verilog模型,module mux2to1(D0, D1, S, Y );input

21、D0, D1, S; /定义输入信号output Y; /定义输出信号wire Snot, A, B ; /定义内部节点信号数据类型 /下面对电路的逻辑功能进行描述not U1(Snot, Sl); and U2(A, D0, Snot);and U3(B, D1, S);or U4(Y, A, B); endmodule,module mux2to1_dataflow(D0, D1, S, Y );input D0, D1, S; output Y;wire Y ; /下面是逻辑功能描述assign Y = (S /表达式左边Y必须是wire型 endmodule,电路结构描述,数据类型说明

22、,例 用数据流描述方式建立模型,注意,在assign语句中,左边变量的数据类型必须是wire型。,数据类型说明,例 用行为描述方式建立模型,module mux2to1_bh(D0, D1, S, Y );input D0, D1, S; output Y;reg Y ; /逻辑功能描述always (S or D0 or D1) if (S = 1) Y = D1; /也可以写成 if (S) Y = D1;else Y = D0; /注意表达式左边的Y必须是reg型 endmodule,2.5.6 逻辑功能的仿真与测试,逻辑电路的设计块完成后,就要测试这个设计块描述的逻辑功能是否正确。为此必须在输入端口加入测试信号,而从其输出端口检测其结果是否正确,这一过程常称为搭建测试平台。根据仿真软件的不同,搭建测试平台的方法也不同。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报