封面作者:PanHongliang仅供个人学习1 数字电子基础41.1 导读41.2 数字电路概述41.2.1 数字信号与数字电路41.2逻辑函数及其表示方法51.2.1逻辑代数51.2.2逻辑函数的表示方法及相互转换51.3逻辑函数的公式化简法61.3.1逻辑函数的不同表达方式61.3.2逻辑函数的公式化简法61.4逻辑函数的卡诺图化简法71.4.1逻辑函数的最小项及其表达式71.4.2逻辑函数的卡诺图表示法71.4.3用卡诺图化简逻辑函数82逻辑门电路82.1 导读82.1逻辑门电路92.1.1三种基本门电路92.1.2 DTL与非门102.2 TTL逻辑门电路102.2.1 TTL与非门的电路结构102.2.2 TTL与非门的工作原理102.3 其他类型的TTL门电路112.3.1集电极开路与非门(OC门)112.3.2三态门(TSL门)112.4多余输入端的处理123组合逻辑133.1 导读133.2组合逻辑电路基础133.2.1组合逻辑电路的基本概念133.2.2组合逻辑电路的分析方法143.2.3组合逻辑电路的设计方法143.3常用组合逻辑建模143.3.1编码器143.3.2 译码器和数据分配器163.3.3数据选择器183.3.4数值比较器193.3.5加法器(减法器)203.3.6乘法器223.3.7除法器244触发器244.1导读244.2触发器的电路结构及工作原理244.2.1基本RS触发器(异步)244.2.2同步RS触发器254.2.3主从触发器和边沿触发器264.3触发器的功能分类及相互转换274.3.1触发器的功能分类274.3.2不同类型时钟触发器的相互转换28 5时序逻辑电路295.1导读295.2时序逻辑电路的基本概念295.2.1时序逻辑电路的结构及特点295.3 时序逻辑的设计305.3.1同步时序逻辑电路的设计步骤305.3.2时序电路通用设计方法305.3时序逻辑建模305.3.1数码寄存器315.3.2移位寄存器315.3.3锁存器315.3.4寄存器集成电路介绍325.3.5计数器326总结351 数字电子基础1.1 导读个人认为,现代信息技术就是,把现实世界,利用强大的计算机技术处理和变换。
而数字电路技术是整个信息技术的一个桥梁。
现代计算机是基于是微电体系的,至少现阶段计算机只能做“电计算”。
所以我们需要一门技术把丰富多彩的现实世界,用电信号表示出来让计算机也能理解,数字电路就是起这个作用。
他能够把现实世界中的各种信息,转换到计算机的物理的电世界。
本章介绍了把现实世界用物理的电信号表示出来的基本技术。
本章主要讨论数字电子技术的基础理论知识。
同时,还给出了逻辑函数的概念、表示方法及相互转换。
1.2 数字电路概述1.2.1数字信号与数字电路电子电路中的信号可分为两类,一类在时间和幅度上都是连续的,称为模拟信号,如图 1.1所示,例如电压、电流、温度、声音等信号。
传送和处理模拟信号的电路称为模拟电路;图1.1 模拟信号另一类在时间和幅度上都是离散的,称为数字信号,如图 1.2所示,例如计时装置的时基信号、灯光闪烁等信号都属于数字信号。
传送和处理数字信号的电路称为数字电路。
图1.2 数字信号数字电路的特点●信号是离散的数字信号。
数字信号常用0、1二元数值表示。
●半导体器件均工作在开关状态,即工作在截止区和饱和区。
●研究的主要问题是输入、输出之间的逻辑关系。
●主要分析工具是逻辑代数。
1.2逻辑函数及其表示方法1.2.1逻辑代数逻辑代数又叫布尔代数或开关代数,是由英国数学家乔治·布尔于1847年创立的。
逻辑代数与普通代数都由字母来代替变量,但逻辑代数与普通代数的概念不同,它不表示数量大小之间的关系,而是描述客观事物一般逻辑关系的一种数学方法。
逻辑变量的取值只有两种,即逻辑0和逻辑1,它们并不表示数量的大小,而是表示两种对立的逻辑状态,如开关的通与断、电位的高与低、灯的亮与灭等。
0和1称为逻辑常量。
例如,在图1.3所示的指示灯控制电路中,我们用字母Y表示指示灯,用A、B表示两个开关。
指示灯Y的亮与灭两种状态取决于开关A、B的通断状态。
我们将A、B称为输入逻辑变量,将Y称为输出逻辑变量。
图1.3 指示灯控制电路逻辑代数有两种逻辑体制,其中,正逻辑体制规定,高电平为逻辑1,低电平为逻辑0;负逻辑体制规定,低电平为逻辑1,高电平为逻辑0。
1.2.2逻辑函数的表示方法及相互转换逻辑函数常用的表示方法有5种:逻辑真值表,逻辑函数表达式,逻辑图,波形图和卡诺图。
1. 逻辑真值表逻辑真值表是将输入变量的各种可能取值和相应的函数值排列在一起组成的表格,一个确定的逻辑函数只有一个逻辑真值表,具有惟一性。
逻辑真值表能够直观明了地反映变量取值和函数值的对应关系,但输入变量较多时,列写起来比较繁琐,它是将实际问题抽象为逻辑问题的首选描述方法。
2. 逻辑函数表达式实际在FPGA设计中此方法较常用。
函数表达式是面向人类的,易于人类理解,实际设计时我们主要工作就是把逻辑函数转换为RTL代码。
而逻辑函数表达式的获得就是算法设计。
逻辑函数的表达式不是惟一的,可以有多种形式,并且能互相转换。
逻辑函数的特点是:简洁、抽象,便于化简和转换。
3. 逻辑图与、或、非等运算关系用相应的逻辑符号表示出来,就是函数的逻辑图。
例如,异或逻辑关系也可用如图1.14所示的逻辑图来表示。
优点是:逻辑图与数字电路的器件有明显的对应关系,便于制作实际电路。
缺点是不能直接进行逻辑推演和变换。
图1.14 异或逻辑关系的逻辑图4. 波形图实际在FPGA分析中此方法最常用。
当然如果要做时序分析(提高系统性能,达到使用标准的必然分析)波形不会是如此陡峭,必须把上升沿和下降沿也表现出来,这样才能精确地分析电路的最高频率。
反映输入和输出波形变化规律的图形,称为波形图,也称为时序图。
异或逻辑关系中,当给定A、B的输入波形后,可画出函数Y的波形,如图1.15所示。
图1.15 异或逻辑关系的波形图波形图的优点是,能直观反映变量与时间的关系和函数值变化的规律,它与实际电路中的电压波形相对应。
5. 各种表示方法之间的相互转换同一逻辑函数可以用几种不同的方式来表示,这几种表示方法之间必然可以相互转换。
由真值表写出逻辑函数的一般步骤如下。
(1)找出真值表中使输出Y=1的那些输入变量的组合。
(2)每组输入变量的取值组合对应一个乘积项,其中变量取值为1的用原变量表示,取值为0的用反变量表示。
(3)将这些乘积项相加,得到的即为真值表对应的逻辑函数表达式。
1.3逻辑函数的公式化简法现代EDA工具基本可以优化逻辑函数,所以化简不是必需的。
但是现在的EDA并不是非常的成熟,有些情况下,化简是减少电路的竞争和冒险的唯一手段,具体情况见两本数电教材。
1.3.1逻辑函数的不同表达方式同一逻辑函数可以有多种不同的表达方式,它们之间能互相转换。
1.3.2逻辑函数的公式化简法在逻辑电路设计中,对逻辑函数化简具有十分重要的意义。
逻辑函数表达式越简单,实现该函数所用的逻辑元件就越少,电路的可靠性就越高。
一般情况下,都将逻辑函数化为最简与或表达式。
最简与或表达式应遵循乘积项最少,且每个乘积项的变量数最少的原则。
1.4逻辑函数的卡诺图化简法在应用公式法对逻辑函数进行化简时,不仅要求对公式能熟练应用,而且对最后结果是不是最简要进行判断,遇到较复杂的逻辑函数时,此方法有一定难度。
下面介绍的卡诺图化简法,只要掌握了其要领,化简逻辑函数非常方便。
1.4.1逻辑函数的最小项及其表达式1. 最小项的定义与性质在n变量的逻辑函数中,若其与或表达式的每个乘积项都包含有n个因子,而且每个因子仅以原变量或反变量的形式在该乘积项中出现一次,这样的乘积项称为n变量逻辑函数的最小项。
每个乘积项都是最小项形式的表达式称为逻辑函数的最小项表达式。
最小项的性质:(1)对于输入变量的任何一组取值,有且只有一个最小项的值为1。
(2)对于变量的任一组取值,任意两个最小项的乘积为0。
(3)全体最小项之和为1。
注意:不说明变量数目的最小项是没有意义的。
2. 逻辑函数的最小项表达式任何一个逻辑函数表达式都可以转化为最小项之和的形式。
方法是,先将逻辑函数写成与或表达式,然后在不是最小项的乘积项中乘以(X+X)补齐所缺变量因子即可。
1.4.2逻辑函数的卡诺图表示法1. 最小项的卡诺图图1.20 三变量的卡诺图图1.21 四变量的卡诺图注意:为了确保卡诺图中小方格所表示的最小项在几何上相邻时,在逻辑上也有相邻性,两侧标注的数码不能从小到大依次排列。
除几何相邻的最小项有逻辑相邻的性质外,图中每一行或每一列两端的最小项也具有逻辑相邻性,因此,卡诺图可看成是一个上下左右闭合的图形。
卡诺图形象、直观地反映了最小项之间的逻辑相邻关系,但变量增多时,卡诺图会变得更为复杂。
当变量的个数在5个或5个以上时,就不能仅用二维空间的几何相邻来代表其逻辑相邻,故一般较少使用。
2. 逻辑函数的卡诺图表示既然任何逻辑函数式都可以表达成最小项形式,而最小项又可以表示在卡诺图中,故逻辑函数可用卡诺图表示。
方法是:把逻辑函数式转换成最小项表达式,然后在卡诺图上与这些最小项对应的方格内填1,其余填0(也可以不填),就得到了表示这个逻辑函数的卡诺图。
任一逻辑函数的卡诺图是惟一的。
1.4.3用卡诺图化简逻辑函数1. 化简依据相邻最小项的合并规律是:两个相邻的最小项可合并为一项,消去一个变量;4个相邻的最小项可合并为一项,消去两个变量;8个相邻的最小项可合并为一项,并消去3个变量。
消去的是包围圈中发生过变化的变量,而保留下的是包围圈内保持不变的变量,如图1.23所示。
图1.23 最小项的合并规律2. 化简步骤用卡诺图化简逻辑函数的步骤如下。
(1)将逻辑函数化成最小项之和的形式(有时可以跳过)。
(2)用卡诺图表示逻辑函数。
(3)对可以合并的相邻最小项(填1的方格)画出包围圈。
(4)消去互补因子,保留公共因子,写出每个包围圈合并后所得的乘积项。
用卡诺图化简时,为了保证结果的最简化和正确性,在选取可合并的最小项即画包围圈时,应遵循以下几个原则。
(1)每个包围圈只能包含2n个填1的小方格,而且必须是矩形或正方形。
(2)包围圈能大勿小。
包围圈越大,消去的变量就越多,对应乘积项的因子就越少,化简的结果越简单。
(3)包围圈个数越少越好。
因个数越少,乘积项就越少,化简后的结果就越简单。
(4)画包围圈时,最小项可以被重复包围,但每个包围圈中至少应有一个最小项是单独属于自己的,以保证该化简项的独立性。
(5)包围圈应把函数的所有最小项都圈完。
2逻辑门电路2.1 导读如果是做基于FPGA的设计应该是不用考虑到三极管、二极管这么低层的电路结构吧?开始我也是这么认为的,但是做了一个工程之后,随着学习的升入发现,逻辑门电路内部的结构必须要十分清楚。