版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第二章 分析与设计数字电路的工具,2.2 卡诺图化简法,2.3 VHDL硬件描述语言基础,2.1 逻辑代数,引 言 设计一个数字电路或数字系统,就像做一个建筑工程,它不仅需要砖瓦、预制件等这些建筑材料,还需要有效的工具和合理的工艺。本章介绍的是分析与设计数字电路的工具。首先介绍一种数学工具逻辑代数和卡诺图。它的作用是化简和转换逻辑函数,以方便数字电路的分析和设计。然后介绍一种硬件描述语言工具VHDL。用它和可编程逻辑器件及电子设计自动化(EDA)软件配合,可设计出功能更强大的数字电路。对于工具的学习,我们要先熟悉它,掌握使用它的基本要领,然后在以后的章节中通过反复的使用,不断的练习,逐步达到熟
2、练掌握、得心应手的境地。,2.1 逻辑代数,一、逻辑代数的基本公式,2.1逻辑代数,公式的证明方法:,(1)用简单的公式证明略为复杂的公式。,例2.1.1 证明吸收律,证:,例2.1.2 用真值表证明反演律,1 1 1 0,1 1 1 0,(2)用真值表证明,即检验等式两边函数的真值表是否一致。,2.1逻辑代数,二、逻辑代数的基本规则,1 .代入规则 对于任何一个逻辑等式,以某个逻辑变量或逻辑函数同时取代等式两端任何一个逻辑变量后,等式依然成立。 例如,在反演律中用BC去代替等式中的B,则新的等式仍成立:,2 .对偶规则 将一个逻辑函数L进行下列变换: , 0 1,1 0,所得新函数表达式叫做
3、L的对偶式,用 表示。,对偶规则的基本内容是:如果两个逻辑函数表达式相等,那么它们的对偶式也一定相等。 基本公式中的公式l和公式2就互为对偶 式。,2.1逻辑代数,3 .反演规则,利用反演规则,可以非常方便地求得一个函数的反函数,解:,解:,将一个逻辑函数L进行下列变换: , ; 0 1,1 0 ; 原变量 反变量, 反变量 原变量。,所得新函数表达式叫做L的反函数,用 表示。,例2.1.3 求函数 的反函数:,例3.1.4 求函数 的反函数:,在应用反演规则求反函数时要注意以下两点: (1)保持运算的优先顺序不变,必要时加括号表明,如例2.1.3。 (2)变换中,几个变量(一个以上)的公共非
4、号保持不变。如例2.1.4。,2.1逻辑代数,三、逻辑函数的代数化简法,1逻辑函数式的常见形式 一个逻辑函数的表达式不是唯一的,可以有多种形式,并且能互相转换。例如:,与或表达式,或与表达式,与非与非表达式,或非或非表达式,与或非表达式,其中,与或表达式是逻辑函数的最基本表达形式。,2.1逻辑代数,2逻辑函数的最简“与或表达式” 的标准,3用代数法化简逻辑函数,(1)并项法:,运用公式 将两项合并为一项,消去一个变量。,例:,(1)与项最少,即表达式中“+”号最少。 (2)每个与项中的变量数最少,即表达式中“ ”号最少。,2.1逻辑代数,(2)吸收法:,(3)消去法:,运用吸收律 A+AB=A
5、,消去多余的与项。,例:,例:,运用吸收律 消去多余因子。,先通过乘以 或加上 ,增加必要的乘积项,再用以上方法化简。,例:,(4)配项法:,2.1逻辑代数,例2.1.6 化简逻辑函数:,(利用A+AB=A),(利用 ),在化简逻辑函数时,要灵活运用上述方法,才能将逻辑函数化为最简。,2.1逻辑代数,例2.1.7 化简逻辑函数:,(利用 ),(利用A+AB=A),(配项法),(利用A+AB=A),(利用 ),2.1逻辑代数,代数化简法的优点: 不受变量数目的限制。 缺点: 没有固定的步骤可循;需要熟练运用各种公式和定理;需要一定的技巧和经验;不易判定化简结果是否最简。,2.1逻辑代数,2.2
6、卡诺图化简法,一、 最小项与最小项表达式 1.最小项n个变量的逻辑函数中,包含全部变量的乘积项称为最小项。n变量逻辑函数的全部最小项共有2n个。,最小项的基本性质,(1)对于任意一个最小项,只有与之对应的一组变量取值使它的值为1, 而其余各组变量取值均使它的值为0。,两变量:,(2)对于变量的任一组取值,全体最小项的和为1。,2.2 卡诺图化简法,最小项表达式与或式中的每一个与项均为最小项。,任一逻辑函数可以展开为最小项表达式。,例:,2. 逻辑函数的最小项表达式,2.2 卡诺图化简法,解:,=m7+m6+m3+m5=m(3,5,6,7),例2: 将函数 转换成最小项表达式。,2.2 卡诺图化
7、简法,二、卡诺图及其逻辑函数的卡诺图表示法,1相邻最小项 如果两个最小项中只有一个变量互为反变量,其余变量均相同,则称这两个最小项为逻辑相邻,简称相邻项。,如果两个相邻最小项出现在同一个逻辑函数中,可以合并为一项,同时消去互为反变量的那个量。,如最小项ABC 和 就是相邻最小项。,如:,2 .卡诺图 一个小方格代表一个最小项,然后将这些最小项按照相邻性排列起来。即用小方格几何位置上的相邻性来表示最小项逻辑上的相邻性。,2.2 卡诺图化简法,卡诺图的结构,(1)二变量卡诺图,(2)三变量卡诺图,2.2 卡诺图化简法,卡诺图具有很强的相邻性: (1)直观相邻性,只要小方格在几何位置上相邻(不管上下
8、左右),它代表的最小项在逻辑上一定是相邻的。 (2)对边相邻性,即与中心轴对称的左右两边和上下两边的小方格也具有相邻性。,(3)四变量卡诺图,2.2 卡诺图化简法,3.用卡诺图表示逻辑函数,解: 该函数为三变量,先画出三变量卡诺图,然后根据真值表将8个最小项L的取值0或者1填入卡诺图中对应的8个小方格中即可。,1,1,1,1,(1)从真值表到卡诺图 例2.2.3 已知某逻辑函数的真值表,用卡诺图表示该逻辑函数。,2.2 卡诺图化简法,(2)从逻辑表达式到卡诺图,(a)如果表达式为最小项表达式,则可直接填入卡诺图。,解: 写成简化形式:,解:直接填入:,例2.2.4 用卡诺图表示逻辑函数:,然后
9、填入卡诺图:,例2.2.5 用卡诺图表示逻辑函数:,(b)如不是最小项表达式,应先将其先化成最小项表达式,再填入卡诺图。也可由“与或”表达式直接填入。,2.2 卡诺图化简法,三、卡诺图化简法,(2)4个相邻的最小项可以合并,消去2个取值不同的变量。,1,1卡诺图化简逻辑函数的原理 : (1)2个相邻的最小项可以合并,消去1个取值不同的变量。,2.2 卡诺图化简法,(3)8个相邻的最小项可以合并,消去3个取值不同的变量。,总之,2n个相邻的最小项可以合并,消去n个取值不同的变量。,2.2 卡诺图化简法,2用卡诺图合并最小项的原则(画圈的原则),(1)卡诺图中所有取值为1的方格均要被圈过,即不能漏
10、下取值为1的最小项。 (2)尽量画大圈,但每个圈内只能含有2n(n=0,1,2,3)个相邻项。要特别注意对边相邻性和四角相邻性。 (3)圈的个数尽量少。 (4)在新画的包围圈中至少要含有1个末被圈过的1方格,否则该包围圈是多余的。,3用卡诺图化简逻辑函数的步骤: (1)画出逻辑函数的卡诺图。 (2)合并相邻的最小项,即根据前述原则画圈。 (3)写出化简后的表达式。每一个圈写一个最简与项,规则是,取值为l的变量用原变量表示,取值为0的变量用反变量表示,将这些变量相与。然后将所有与项进行逻辑加,即得最简与或表达式。,2.2 卡诺图化简法,解:(1)由表达式画出卡诺图。,(2)画包围圈,合并最小项,
11、得简化的 与或表达式:,例2.2.6 化简逻辑函数: L(A,B,C,D)=m(0,2,3,4,6,7,10,11,13,14,15),2.2 卡诺图化简法,解:(1)由表达式画出卡诺图。,注意:图中的绿色圈 是多余的,应去掉 。,例2.2.7 用卡诺图化简逻辑函数:,(2)画包围圈合并最小项, 得简化的与或表达式:,2.2 卡诺图化简法,解:(1)由真值表画出卡诺图。,由此可见,一个逻辑函数的真值表是唯一的,卡诺图也是唯一的,但化简结果有时不是唯一的。,(a):写出表达式:,(b):写出表达式:,例2.2.8 已知某逻辑函数的真值表,用卡诺图化简该函数。,(2)画包围圈合并最小项。 有两种画
12、圈的方法:,2.2 卡诺图化简法,4卡诺图化简逻辑函数的另一种方法圈0法,(2)用圈0法,得:,解:(1)用圈1法,得:,对L取非得:,例2.2.9 已知逻辑函数的卡诺图如图示,分别用“圈1法”和“圈0法”写出其最简与或式。,2.2 卡诺图化简法,2.2 卡诺图化简法,1无关项在有些逻辑函数中,输入变量的某些取值组合不会出现,或者一旦出现,逻辑值可以是任意的。这样的取值组合所对应的最小项称为无关项、任意项或约束项。,例2.2.10:在十字路口有红绿黄三色交通信号灯,规定红灯亮停,绿灯亮行,黄灯亮等一等,试分析车行与三色信号灯之间逻辑关系。,四、具有无关项的逻辑函数的化简,解:设红、绿、黄灯分别
13、用A、B、C表示,且灯亮为1,灯灭为0。 车用L表示,车行L=1,车停L=0。列出该函数的真值。,显而易见,在这个函数中,有5个最小项为无关项。 带有无关项的逻辑函数的最小项表达式为: L=m( )+d( ) 如本例函数可写成: L=m(2)+d(0,3,5,6,7),2具有无关项的逻辑函数的化简,考虑无关项时,表达式为:,例2.2.10:,不考虑无关项时,表达式为:,要充分利用无关项可以当0也可以当1的特点,尽量扩大卡诺圈,使逻辑函数更简。,2.2 卡诺图化简法,如果不考虑无关项,写出表达式为:,(3)写出逻辑函数的最简与或表达式:,(2)合并最小项。注意,1方格不能漏。方格根据需要,可以圈
14、入,也可以放弃。,例2.2.11:用卡诺图法化简逻辑函数(输入是8421BCD码) L(A,B,C,D)=m(1,4,5,6,7,9)+d(10,11,12,13,14,15),解:(1)填卡诺图。,2.2 卡诺图化简法,2.3 VHDL硬件描述语言基础,VHDL (Very-High-Speed Integrated Circuit HardwareDescription Language) 是目前最流行的硬件描述语言之一。它诞生于1982年,已成为IEEEStd_1076标准。许多公司的EDA设计工具都提供了对VHDL的支持,因此它得到了广泛的应用。 VHDL有以下几个主要特点: (1)具
15、有很强的电路描述和建模能力,能从多个层次对数字系统进行建模和描述,从而大大简化了硬件设计任务,提高了设计效率和可靠性。 (2)编程与工艺无关。设计者可以专心致力于其功能的实现,而不需要对不影响功能的与工艺有关的因素花费过多的时间和精力。 (3)语言标准、规范,易于共享。设计技术齐全、方法灵活、支持广泛。,一、VHDL的基本结构,定义元器件库,定义电路的输入/输出引脚,描述电路的内部功能,VHDL描述的最小和基本的逻辑结构中一般包含标准库及程序包、实体和结构体三部分。,2.3 VHDL硬件描述语言基础,举例:用VHDL语言描述一半加器的功能。,逻辑表达式是:,VHDL程序如下: LIBRARY
16、ieee; -ieee标准库说明 USE ieee.std_logic_1164.ALL; -程序包说明 ENTITY adder IS -adder是实体名称 PORT(a,b:IN std_logic; -定义输入/输出端口信号的类型 c,s:OUT std_logic); END ENTITY adder; ARCHITECTURE ex1 OF adder IS -ex1是结构体名称 BEGIN sa XOR b; -赋值语句 ca AND b; END ARCHITECTURE ex1;,2.3 VHDL硬件描述语言基础,实体的基本格式为: ENTITY 实体名 IS PORT( 端
17、口名称1:输入/输出状态 数据类型; 端口名称2:输入/输出状态 数据类型; END 实体名; 输入/输出状态有以下几种状态: (1)IN输入量,信号进入电路单元。 (2)OUT输出量,信号从电路单元输出。 (3)INOUT信号是双向的,既可以进入电路,也可以从电路输出。 (4)BUFFER反馈量。 常用的端口数据的类型有位型(BIT)、位向量型(BIT_VECTOR)、标准逻辑位型(STD_LOGIC)及标准逻辑位向量型(STD_LOGIC_VECTOR等几种。,1VHDL的实体(ENTITY)说明语句,2.3 VHDL硬件描述语言基础,结构体的基本格式为: ARCHITECTURE 结构体
18、名 OF 实体名 IS 说明语句 BEGIN 电路描述语句 END 结构体名;,2结构体(ARCHITECTURE )说明语句,库是经编译后的数据集合,库的作用是使设计者共享编译过的设计结果,类似于传统设计中的元器件库。库的说明要放在程序最前面。库的调用语句格式为: LIBRARY 库名; 如对标准库IEEE的调用语句为: LIBRARY IEEE;,3库(LIBRARY)与程序包(PACKAGE),2.3 VHDL硬件描述语言基础,两个标准库STD和IEEE中包含的程序包,常用库与程序包调用语句: LIBRARY ieee; USE ieee.std_logic_1164.ALL; USE
19、ieee.std_logic_ arith.ALL; USE ieee.std_logic_ signed.ALL;,2.3 VHDL硬件描述语言基础,二. VHDL的语言元素,1标识符与保留字 标识符是VHDL语言中符号书写的一般规则,用来表示常量、变量、信号、子程序、结构体和实体等的名称标识符组成的规则如下: (1)标识符由26个英文字母和10个数字(09)及下划线(_)组成。 (2)标识符必须以英文字母开头。最长可以是32个字符。 (3)标识符中不能有两个连续的下划线,标识符的最后一个字符不能是下划线。 (4)标识符中的英文字母不区分大小写。 例如,CP、DAT1、wr_1、counte
20、r_A等都是合法的标识符。 保留字是具有特殊意义的标识符号。用户不能用保留字作为标识符。在例2.3.1中LIBRARY、USE、ENTITY、IS、OF、ARCHITECTURE、BEGIN、END、XOR、AND等都是保留字。,2.3 VHDL硬件描述语言基础,2.客体类型 在VHDL中可以赋值的对象称为客体,客体包括信号、变量和常量。,客体类型,2.3 VHDL硬件描述语言基础,3.数据类型 (1)标准数据类型,2.3 VHDL硬件描述语言基础,(2)IEEE预定义标准数据类型 在IEEE的程序包STD_LOGIC_1164中定义了两个非常重要的数据类型。 STD_LOGIC:工业标准的逻
21、辑位类型, 取值: 0(强0)、 1(强1)、 Z(高阻态)、 X(强未知的)、 W(弱未知的)、 L(弱0)、 H(弱1)、 (忽略)、 U(未初始化的)。 STD_LOGIC_VECTOR:工业标准的逻辑位向量,STD_LOGIC的组合。 在使用这两种数据类型时,在程序中必须有库及程序包说明语句,即LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;这两句在程序中必不可少。,2.3 VHDL硬件描述语言基础,(3)用户定义的数据类型 枚举类型。用来表示实际生活中的某些事物所具有的特定性质。格式为: TYPE 数据类型名 IS (元素1,元素2,); 例如 TY
22、PE state_m IS(s0,s1,s2,s3,s4); TYPE wenk IS(sun,mon,tue,wed,thu,fri,sat);,整数类型和实数类型。是VHDL语言中已经存在的标准数据类型的子集。定义格式为: TYPE 数据名 IS 数据类型 RANGE 数值 TO 数值; 例如 TYPE digit IS integer RANGE 0 TO 9; TYPE signal_level IS real RANGE 10.00 TO +10.00;,数组类型。具有相同的数据类型的元素集合。格式为: TYPE 数组名 IS ARRAY 范围 OF 数据类型; 例如 TYPE a
23、IS ARRAY (0 TO 3)OF bit; TYPE rom IS ARRAY (0 TO 7,0 TO 7)OF bit;,2.3 VHDL硬件描述语言基础,2.3 VHDL硬件描述语言基础,4运算符,1并行语句 VHDL设计中的结构体,一般是由一个以上的并行语句构成的。所有的并行语句在结构体中都是同时执行的,与它们在程序中排列的先后顺序无关。 (1)并行赋值语句 其功能是将一个数据或一个表达式的运算结果传送给一个数据对象,这个数据对象可以是内部信号,也可以是预定义的端口信号。其格式为: 赋值目标表达式; 例:s=a XOR b c=a AND b tmp =0; y = tmp;,三
24、. VHDL的基本语句,2.3 VHDL硬件描述语言基础,(2)条件赋值语句WHENELSE 其格式为: 赋值目标=表达式1 WHEN 赋值条件1 ELSE 表达式2 WHEN 赋值条件2 ELSE 表达式N;,例2.3.2 用WHENELSE语句描述异或门 LIBRARY ieee; -库说明语句 USE IEEE.std_logic_1164.ALL; -调用库 ENTITY xor2 IS -xor2是实体名称 PORT (a, b : IN bit; -定义输入量a、b是标准位类型 f : OUT bit ); -定义输出量f是标准位类型 END ENTITY xor2; ARCHIT
25、ECTURE ex2 OF xor2 IS -ex2是结构体名称 SIGNAL s : bit_vector(1 DOWNTO 0) ; -定义内部信号s为2位位向量 BEGIN s = a -用 USE ieee.std_logic_1164.ALL; ENTITY or2 IS PORT (a, b : IN std_logic; f : OUT std_logic); END ENTITY or2; ARCHITECTURE ex3 OF or2 IS SIGNAL s : std_logic_vector(1 DOWNTO 0) ; BEGIN s = a WITH s SELECT
26、f =0WHEN“00”, -当ab=00时,f=0 1WHEN OTHERS; -当ab=除了00以外的值时,f=1 END ex3;,2.3 VHDL硬件描述语言基础,(4)进程语句PROCESS 是结构体中常用的一种模块描述语句。一个结构体可以包含多个进程,各进程之间是同时执行的。但一个进程主要是由一组顺序语句组成的。进程语句不仅可以描述组合逻辑电路,还可以描述时序逻辑电路。 进程语句的格式为: 进程名称: PROCESS(敏感信号表) 进程说明语句 BEGIN 顺序语句, END PROCESS 进程名称; 注意:敏感信号表是进程语句所特有的,只有当表中所列的某个信号发生变化时,才能启
27、动该进程的执行。执行完后,进入等待状态,直到下一次某一敏感信号变化的到来。,2.3 VHDL硬件描述语言基础,例2.3.4 用进程语句描述一个半加器。 LIBRARY ieee; USE IEEE.std_logic_1164.ALL; ENTITY adder IS PORT (a, b : IN std_logic; -定义输入量a、b是工业标准的逻辑位类型 c, s : OUT std_logic); -定义输出量c、s是工业标准的逻辑位类型 END ENTITY adder; ARCHITECTURE ex4 OF adder IS BEGIN proc_s: PROCESS(a,b)
28、 -定义一个名为proc_s的带敏感表的进程 BEGIN s =a XOR b; -赋值语句 END PROCESS; proc_c: PROCESS(a,b) -定义一个名为proc_c的带敏感表的进程 BEGIN c =a AND b -赋值语句 END PROCESS; END ex4 ;,2.3 VHDL硬件描述语言基础,(1)IF语句 IF语句用于实现两种或两种以上的条件判断。有三种形式,其格式如下:, IF 布尔表达式1 THEN 顺序语句 END IF;, IF 布尔表达式1 THEN 顺序语句1 ELSE 顺序语句2 END IF;, IF 布尔表达式1 THEN 顺序语句1
29、ELSIF 布尔表达式2 THEN 顺序语句2 END IF;,2. 顺序语句,2.3 VHDL硬件描述语言基础,例2.3.5 用IF语句描述异或门。 LIBRARY ieee; USE IEEE.std_logic_1164.ALL; ENTITY xor2 IS PORT (a, b : IN std_logic; f : OUT std_logic); END ENTITY xor2; ARCHITECTURE ex5 OF xor2 IS BEGIN PROCESS(a,b) BEGIN IF(a=b)THEN f 顺序语句2; WHEN 值N =顺序语句N; WHEN OTHERS
30、=顺序语句N+1; END CASE;,2.3 VHDL硬件描述语言基础,例2.3.6 用CASE语句描述半加器。 LIBRARY ieee; USE IEEE.std_logic_1164.ALL; ENTITY adder IS PORT (a, b : IN std_logic; c, s : OUT std_logic); END ENTITY adder; ARCHITECTURE ex7 OF adder IS SIGNAL abc : std_logic_vector(1 DOWNTO 0) ; -定义内部信号abc BEGIN abc s相当于THEN的作用,不是运算符 WHEN “01” = s s s NULL ; -NULL为空语句 END CASE; END PROCESS; END ARCHITECTURE ex7 ;,2.3 VHDL硬件描述语言基础,(3)LOOP语句 LOOP语句用于循环控制,与LOOP有关的五种语法的格式如下:, 单个LOOP语句 LOOP标号: LOOP 顺序语句 END LO
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 炊事员职业成长路径指南
- 2026事业单位工勤技能-江苏-江苏水利机械运行维护工一级(高级技师)历年参考题库含答案详解3套试卷
- 2026事业单位工勤技能-江苏-江苏园林绿化工五级(初级工)历年参考题库含答案详解3套试卷
- 2026事业单位工勤技能-新疆-新疆行政岗位工五级(初级工)历年参考题库含答案详解3套试卷
- 2026事业单位工勤技能-新疆-新疆放射技术员三级(高级工)历年参考题库含答案详解3套试卷
- 2026事业单位工勤技能-新疆-新疆仓库管理员二级(技师)历年参考题库含答案详解3套试卷
- 专科CRC职业发展路径
- 2026年秋季开学大学一年级新生军训迷彩青春教育课件
- 第三单元第 16 课 《世界自然遗产 - 中国篇》教学课件 - 2026-2027 学年岭南美版(新教材)初中美术八年级上册
- Web程序基础设计 7
- 新版(2026秋新版)部编版语文五年级上册教学计划合集
- 2026年家庭健康指导员体重管理指导测试题含答案
- 2026年高级经济师《农业经济》考试真题及答案
- 2026年甘肃省嘉峪关市招聘辅助岗位工作人员40人笔试参考题库及答案详解
- 2026年秋季开学:高中开学第一课为梦想而战
- 凯爱瑞2026上半年餐饮新品情报合集
- 2026年湖北省事业单位联考真题及答案
- 幼儿园教职工岗位安全培训
- 2024建筑用轻质外墙条板
- 六年级下册字帖笔顺
- 船舶安全规范与标准
评论
0/150
提交评论