数字电子技术基础 - 逻辑代数基础

在练习HDLBits时碰到与卡诺图、真值表、逻辑函数相关的知识,重新整理和复习一下数电学过的基础知识。(参考数电课的课件)

1 概述

逻辑:事物的因果关系
逻辑运算的数学基础:逻辑代数
在二值逻辑中的变量取值: 0/1

2 逻辑代数中的三种基本运算

与、或、非
常用的复合逻辑运算:与非、或非、与或非、异或、同或

3 逻辑代数的基本公式和常用公式

3.1 基本公式

根据与、或、非等的定义,得如下表的布尔恒等式(公式演绎或真值表可证明)
在这里插入图片描述

3.2 若干常用公式

在这里插入图片描述

4 逻辑代数的基本定理

4.1 代入定理

在任何一个包含A的逻辑等式中,若以另外一个逻辑式代入式中A的位置,则等式依然成立。

例:
A + BC = (A + B)(A + C),以CD代入C中,得:
A + B(CD) = (A + B)(A + CD) = (A + B)(A + C)(A + D)

4.2 反演定理

对于任意一个逻辑式Y,若将其中所有的“与”换成“或”,“或”换成“与”,0换成1,1换成0,原变量变成反变量,反变量变成原变量,则得到一个新的逻辑式即为逻辑式Y的非,这个规律称为反演定理。
Y => Y’,有: · => + 、 + => · 、 0 => 1 、 1 => 0 、 原变量 => 反变量 、 反变量 => 原变量

例:
Y = A(B + C) + CD
Y’ = (A’ + B’C’)(C’ + D’) = A’C’ + B’C’ + A’D’ + B’C’D’ = A’C’ + B’C’ + A’D’

4.3 对偶定理

若两逻辑式相等,则它们的对偶式也相等。

5 逻辑函数及其表示方法

5.1 逻辑函数

Y = F(A, B, C, ······)
若以逻辑变量为输入,运算结果为输出,则输入变量值确定以后,输出的取值也随之而定。输入/输出之间是一种函数关系。
注:在二值逻辑中,输入/输出都只有两种取值 0/1。

5.2 逻辑函数的表示方法

下述各方法之间可以相互转换。
真值表

输入变量 A B C ……输出 Y1 Y2 ……
遍历所有可能的输入变量的取值组合输出对应的取值

逻辑式
将输入/输出之间的逻辑关系用与/或/非的运算式表示就得到逻辑式
逻辑图
用逻辑图形符号表示逻辑运算关系,与逻辑电路的实现相对应。
波形图
将输入变量所有取值可能与对应输出按时间顺序排列起来画成时间波形。
卡诺图
计算机软件中的描述方式
HDL (Hardware Description Language):VHDL、Verilog HDL
EDIF
DTIF

各种表现形式的相互转换

真值表 => 逻辑式
1.找出真值表中使 Y=1 的输入变量取值组合。
2.每组输入变量取值对应一个乘积项,其中取值为1的写原变量,取值为0的写反变量。
3.将这些变量相加即得 Y。
逻辑式 => 真值表
把输入变量取值的所有组合逐个代入逻辑式中求出Y,列表。
逻辑式 => 逻辑图
用图形符号代替逻辑式中的逻辑运算符。
逻辑图 => 逻辑式
从输入到输出逐级写出每个图形符号对应的逻辑运算式。

5.3 逻辑函数的两种标准形式

最小项之和

最小项:m是乘积项、包含n个因子、n个变量均以原变量和反变量的形式在m中出现一次(对于n变量函数有 2 n 2^n 2n个最小项

例:
两变量A、B的最小项:A’B’、A’B、AB’、AB( 2 2 2^2 22 = 4个)
三变量A、B、C的最小项:A’B’C’、A’B’C、A’BC’、A’BC、AB’C’、AB’C、ABC’、ABC( 2 3 2^3 23 = 8个)

最小项的编号

最小项取值对应编号
ABC十进制数
A’B’C’0000m0
A’B’C0011m1
A’BC’0102m2
A’BC0113m3
AB’C’1004m4
AB’C1015m5
ABC’1106m6
ABC1117m7

最小项的性质
在输入变量任一取值下,有且仅有一个最小项的值为1。
全体最小项之和为1 。
任何两个最小项之积为0 。
两个相邻的最小项之和可以合并,消去一对因子,只留下公共因子。
相邻:仅一个变量不同的最小项


A’BC’与A’BC:A’BC’+A’BC = A’B(C’ + C) = A’B

逻辑函数最小项之和的形式


Y(A, B, C) = ABC’ + BC = ABC’ + BC(A + A’) = ABC’ + ABC + A’BC = ∑ \sum m(3, 6, 7)

最大项之积

最大项:M是相加项、包含n个因子、n个变量均以原变量和反变量的形式在M中出现一次(对于n变量函数有 2 n 2^n 2n

例:
两变量A、B的最大项:A’ + B’、A’ + B、A + B’、A + B( 2 2 2^2 22 = 4个)

最大项的编号

最小项取值对应编号
ABC十进制数
A’ + B’ + C’1117M7
A’ + B’ + C1106M6
A’ + B + C’1015M5
A’ + B + C1004M4
A + B’ + C’0113M3
A + B’ + C0102M2
A + B + C’0011M1
A + B + C0000M0

最大项的性质
在输入变量任一取值下,有且仅有一个最大项的值为0;
全体最大项之积为0;
任何两个最大项之和为1;
只有一个变量不同的最大项的乘积等于各相同变量之和。

6 逻辑函数的化简法

逻辑函数的最简形式:最简与或(包含的乘积项已经最少,每个乘积项的因
子也最少,称为最简的与-或逻辑式)


Y1 = ABC + B’C + ACD
Y2 = AC + B’C

6.1 公式化简法

反复应用基本公式和常用公式,消去多余的乘积项和多余的因子。


Y = AC + B’C + BD’ + CD’ + A(B + C’) + A’BCD’ + AB’DE
[ A + AB = A => CD’ + A’BCD’ = CD’ ]
= AC + B’C + BD’ + CD’ + A(B + C’) + AB’DE
[ A(B + C’) => A(B’C)’ ]
= AC + B’C + BD’ + CD’ + A(B’C)’ + AB’DE
[ A + A’B = A + B => B’C + A(B’C)’ = B’C + A ]
= AC + B’C + BD’ + CD’ + A + AB’DE
= A + B’C + BD’ + CD’
= A + B’C + BD’

6.2 卡诺图化简法

逻辑函数的卡诺图表示法:以 2 n 2^n 2n个小方块分别代表n变量的所有最小项,并将它们排列成矩阵,而且使几何位置相邻的两个最小项在逻辑上也是相邻的(只有一个变量不同),就得到表示n变量全部最小项的卡诺图。
表示最小项的卡诺图
二变量卡诺图

三变量卡诺图

四变量卡诺图

五变量卡诺图

用卡诺图表示逻辑函数

将函数表示为最小项之和的形式 ∑ \sum mi,在卡诺图上与这些最小项对应的位置上添入1,其余地方添0。


Y(A, B, C, D) = A’B’C’D + A’BD’ + AB’
= A’B’C’D + (C + C’)A’BD’ + AB’[C’D’ + C’D + CD’ + CD]
= ∑ \sum m(1, 4, 6, 8, 9, 10, 11)

用卡诺图化简函数

在卡诺图中,最小项的相邻性可以从图形中直观地反映出来。具有相邻性的最小项可合并,消去不同因子。
合并最小项的原则
两个相邻最小项可合并为一项,消去一对因子
四个排成矩形的相邻最小项可合并为一项,消去两对因子
八个相邻最小项可合并为一项,消去三对因子
化简步骤
用卡诺图表示逻辑函数
找出可合并的最小项
化简后的乘积项相加(项数最少,每项因子最少)
化简原则
化简后的乘积项应包含函数式的所有最小项,即覆盖图中所有的1。
乘积项的数目最少,即圈成的矩形最少。
每个乘积项因子最少,即圈成的矩形最大。


Y(A, B, C) = AC’ + A’C + B’C + BC’
化简结果不唯一


Y = ABC + ABD + AC’D + C’D’ + AB’C + A’CD’

7 具有无关项的逻辑函数及其化简

7.1 约束项、任意项和逻辑函数式中的无关项

约束项:在逻辑函数中,对输入变量取值的限制
任意项:在输入变量某些取值下,函数值为1或为0不影响逻辑电路的功能,在这些取值下为1的最小项称为任意项
逻辑函数式中的无关项:约束项和任意项可以写入函数式,也可不包含在函数式中,因此统称为无关项

7.2 无关项在化简逻辑函数中的应用

合理地利用无关项,可得更简单的化简结果。
加入(或去掉)无关项,应使化简后的项数最少,每项因子最少。
从卡诺图上直观地看,加入无关项的目的是为矩形圈最大,矩形组合数最少。


Y = A’B’C’D + A’BCD + AB’C’D’,
给定约束条件为:A’B’CD + A’BC’D + ABC’D’ + AB’C’D + ABCD + ABCD’ + AB’CD’ = 0

8 多输出逻辑函数的化简

9 逻辑函数形式的变换

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
模拟电路(模电)和数字电路(数电)是电子工程中两个重要的概念,它们在设计和应用中有着不同的特点和用途。 首先,模拟电路处理的是连续信号,而数字电路处理的是离散信号。模拟电路可以处理连续的电压和电流信号,其输出是与输入信号的变化成比例的。而数字电路处理二进制的离散信号,其输入和输出只能是取值为0和1的逻辑状态。 其次,模拟电路可以进行无限细的精度和精确的运算。模拟电路可以实现很高的精度和准确度,可以处理小到毫伏甚至微伏级别的信号。而数字电路在某个位宽下进行运算,有限的位数限制了计算的精确度。 再次,模拟电路具有连续性和实时性的特点,适用于处理实时信号和实时反馈系统。而数字电路具有离散性和时序性的特点,适用于逻辑运算和控制系统。 最后,两者的设计方法和技术不同。模拟电路设计更注重对电子元器件的选择、电路拓扑和元件参数的调整,需要对电路运算原理有深刻的理解。而数字电路设计则更注重逻辑功能的实现,需要掌握逻辑门的运算和开关电子器件的工作方式。 总结来说,模拟电路适用于处理连续信号和实时控制系统,具有高精度和精确度;而数字电路适用于处理离散信号和逻辑运算,具有高稳定性和可编程性。两者有着自己独特的领域和应用范围,对于电子工程师而言,掌握它们的理论和设计方法是非常重要的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值