逻辑函数规范范式

您所在的位置:网站首页 sop和pop区别 逻辑函数规范范式

逻辑函数规范范式

2023-09-07 09:26| 来源: 网络整理| 查看: 265

SOP/POS基础及相互转换 一. SOP/POS介绍1. The Sum-of-Products(SOP)Form2.The Product-of-Sums(POS)Form 二. SOP/POS标准式1. SOP标准化2. POS标准化3. SOP对应真值表4. POS对应真值表 三. SOP/POS的相互转换

注:文章内容基于 Thomas L. Floyd-Digital Fundamentals-Prentice Hall (2014)

一. SOP/POS介绍 1. The Sum-of-Products(SOP)Form

SOP表达式:

书中给出定义: A product term was defined as a term consisting of the product (Boolean multiplication) of literals (variables or their complements). When two or more product terms are summed by Boolean addition, the resulting expression is a sum-of-products (SOP). 普遍理解为:(变量的)乘积之和组成表达式 Sum有求和之意,Product有乘积之意

例如如下表达式:

A B C + A ‾ B + A C ‾ ABC+\overline{A}B+A\overline{C} ABC+AB+AC A B + A ‾ B + A B C ‾ + B C AB+\overline{A}B+AB\overline{C} +BC AB+AB+ABC+BC A B D + A ‾ B D + B C ‾ D + B ABD+\overline{A}BD+B\overline{C}D +B ABD+ABD+BCD+B…

要注意在SOP表达式中 A ‾ B C ‾ \overline{A}B\overline{C} ABC可以作为一个求和项,但是 A B C ‾ \overline{ABC} ABC不可以表示一个求和项; 写成SOP表达式的时候需满足单个上划线下只存在一个变量

2.The Product-of-Sums(POS)Form 书中给出定义: A sum term was defined as a term consisting of the sum (Boolean addition) of literals (variables or their complements). When two or more sum terms are multiplied, the resulting expression is a product-of-sums (POS). 普遍理解为:(变量之)和的乘积组成的表达式 Sum有求和之意,Product有乘积之意

例如如下表达式:

( A + B ) ( A + B ‾ + C ) ( B + C ‾ ) (A+B)(A+\overline{B}+C)(B+\overline{C}) (A+B)(A+B+C)(B+C) ( A + B + C ‾ ) ( A + B ‾ + C ) ( B + C ‾ ) ( B ‾ + C ) (A+B+\overline{C})(A+\overline{B}+C)(B+\overline{C})(\overline{B}+C) (A+B+C)(A+B+C)(B+C)(B+C) ( A + B + D ) ( A + C ‾ + D ) ( B + C + D ‾ ) (A+B+D)(A+\overline{C}+D)(B+C+\overline{D}) (A+B+D)(A+C+D)(B+C+D)…

要注意在POS表达式中 ( A + B + C ) (A+B+C) (A+B+C)可以作为一个乘积项,但是 ( A + B + C ) ‾ \overline{(A+B+C)} (A+B+C)​不可以表示一个乘积项; 写成POS表达式的时候需满足单个上划线下只存在一个变量

二. SOP/POS标准式

无论标准或非标准式,在写SOP/POS表达式时都必须满足上划线下只包含一个变量

标准形式的SOP/POS表示SOP/POS中的每个求和项或乘积项(求和项表示用于求和的项元;乘积项表示用于乘积的项元)包含全部的变量

① 实际上将SOP/POS化成标准形式是“化简为繁” ② 对应于“化繁为简”代指将SOP/POS式化至最简以简化设计门电路(化简方法有多种:公式化简法、卡诺图最小化布尔函数法、Quine-McCluskey法等)

在这里将SOP/POS化至最简实现的功能:方便写出SOP/POS真值表,并通过真值表实现简单的相互转换。

在进行标准化之前,先掌握如下基本公式(布尔代数基本公式):

1. A + 0 = A A+0=A A+0=A7. A ⋅ A = A A\cdot A=A A⋅A=A2. A + 1 = 1 A+1=1 A+1=18. A ⋅ A ‾ = 0 A\cdot \overline{A}=0 A⋅A=03. A ⋅ 0 = 0 A\cdot 0=0 A⋅0=09. A ‾ ‾ = A \overline{\overline{A}}=A A=A4. A ⋅ 1 = A A\cdot 1=A A⋅1=A10. A + A B = A A+AB=A A+AB=A5. A + A = A A+A=A A+A=A11. A + A ‾ B = A + B A+\overline{A}B=A+B A+AB=A+B6. A + A ‾ = 1 A+\overline{A}=1 A+A=112. ( A + B ) ( A + C ) = A + B C (A+B)(A+C)=A+BC (A+B)(A+C)=A+BC

证明过程略

1. SOP标准化

给出如下SOP表达式: A B + A C + B C AB+AC+BC AB+AC+BC

标准化方法: ① 确定表达式总变量数(此式为3) ② 依 A + A ‾ = 1 A+\overline{A}=1 A+A=1,对于第一项 A B AB AB,添加缺失的变量 C C C,有 A B = A B ( C + C ‾ ) AB=AB(C+\overline{C}) AB=AB(C+C) ③ 展开表达式、整理

得到 A B ( C + C ‾ ) + A C ( B + B ‾ ) + B C ( A + A ‾ ) AB(C+\overline{C})+AC(B+\overline{B})+BC(A+\overline{A}) AB(C+C)+AC(B+B)+BC(A+A) 展开整理得 A B C + A B C + A B C + A B C ‾ + A B ‾ C + A ‾ B C ABC+ABC+ABC+AB\overline{C}+A\overline{B}C+\overline{A}BC ABC+ABC+ABC+ABC+ABC+ABC

2. POS标准化

给出如下POS表达式: ( A + B ) ( A + C ) ( B + C ) (A+B)(A+C)(B+C) (A+B)(A+C)(B+C)

标准化方法: ① 确定表达式总变量数(此式为3) ② 依 A ⋅ A ‾ = 0 A\cdot \overline{A}=0 A⋅A=0,对于第一项 ( A + B ) (A+B) (A+B),添加缺失的变量 C C C,有 ( A + B ) = ( A + B + C ⋅ C ‾ ) (A+B)=(A+B+C\cdot \overline{C}) (A+B)=(A+B+C⋅C) ③ 依 ( A + B ) ( A + C ) = A + B C (A+B)(A+C)=A+BC (A+B)(A+C)=A+BC将表达式展开 有 ( A + B ) = ( A + B + C ⋅ C ‾ ) = ( A + B + C ) ( A + B + C ‾ ) (A+B)=(A+B+C\cdot \overline{C})=(A+B+C)(A+B+\overline{C}) (A+B)=(A+B+C⋅C)=(A+B+C)(A+B+C) ④ 整理

得到 ( A + B ) = ( A + B + C ⋅ C ‾ ) = ( A + B + C ) ( A + B + C ‾ ) (A+B)=(A+B+C\cdot \overline{C})=(A+B+C)(A+B+\overline{C}) (A+B)=(A+B+C⋅C)=(A+B+C)(A+B+C)

即得到标准形式下的SOP/POS表达式

3. SOP对应真值表

以标准化后的SOP标准式为例

对于如下SOP标准式: A B C + A B C ‾ + A B ‾ C + A ‾ B C ABC+AB\overline{C}+A\overline{B}C+\overline{A}BC ABC+ABC+ABC+ABC

(1). 含有三个变量,对应 A B C ABC ABC所有可能情况为 2 3 2^{3} 23种,则需要确定该表达式对应于这 8 8 8种情况中的哪种情况。 (2). 以 A B C ABC ABC为例,对 A 、 B 、 C A、B、C A、B、C三个输入执行与操作,只要其中任意一个输入为 0 0 0,则输出为 0 0 0,反过来,当输出为 1 1 1时, A 、 B 、 C A、B、C A、B、C输入唯一确定且全为 1 1 1。这就意味着,可以通过输出为 1 1 1的状态唯一确定输入值 (3). 现通过给定输出值来写出SOP表达式对应真值表 将输出定为 1 1 1,对于每一项例如 A ‾ B C \overline{A}BC ABC,此项其中每一项输入给 1 1 1,反求 A 、 B 、 C A、B、C A、B、C,反求结果为 A = 0 , B = 1 , C = 1 A=0,B=1,C=1 A=0,B=1,C=1,并将结果写入下表中 上式求得输出为 1 1 1的几种情况分别为 111 、 110 、 101 、 011 111、110、101、011 111、110、101、011

ABCOutput X1Product Term0000010100111 A ‾ B C \overline{A}BC ABC1001011 A B ‾ C A\overline{B}C ABC1101 A B C ‾ AB\overline{C} ABC1111 A B C ABC ABC

除了输出为 1 1 1的所有状态,剩下状态即为输出为 0 0 0的所有状态 原理上述已给出,输入值满足输出为 1 1 1的条件,不满足即输出为 0 0 0

补全上述真值表

ABCOutput XProduct Term0000001001000111 A ‾ B C \overline{A}BC ABC10001011 A B ‾ C A\overline{B}C ABC1101 A B C ‾ AB\overline{C} ABC1111 A B C ABC ABC 4. POS对应真值表

以标准化后的SOP标准式为例

对于如下POS表达式: ( A + B + C ) ( A + B + C ‾ ) ( A ‾ + B + C ) ( A + B ‾ + C ) (A+B+C)(A+B+\overline{C})(\overline{A}+B+C)(A+\overline{B}+C) (A+B+C)(A+B+C)(A+B+C)(A+B+C)

(1). 含有三个变量,对应 A B C ABC ABC所有可能情况为 2 3 2^{3} 23种,则需要确定该表达式对应于这 8 8 8种情况中的哪种情况。 (2). 以 ( A + B + C ) (A+B+C) (A+B+C)为例,对 A 、 B 、 C A、B、C A、B、C三个输入执行或操作,只要其中任意一个输入为 1 1 1,则输出为 1 1 1,反过来,当输出为 0 0 0时, A 、 B 、 C A、B、C A、B、C输入唯一确定且全为 0 0 0。这就意味着,可以通过输出为 0 0 0的状态唯一确定输入值 (3). 现通过给定输出值来写出POS表达式对应真值表 将输出定为 0 0 0,对于每一项例如 ( A + B + C ‾ ) (A+B+\overline{C}) (A+B+C),此项其中每一项输入给 0 0 0,反求 A 、 B 、 C A、B、C A、B、C,反求结果为 A = 0 , B = 0 , C = 1 A=0,B=0,C=1 A=0,B=0,C=1,并将结果写入下表中 上式求得输出为 0 0 0的几种情况分别为 000 、 001 000、001 000、001

ABCOutput XProduct Term0000 ( A + B + C ) (A+B+C) (A+B+C)0010 ( A + B + C ‾ ) (A+B+\overline{C}) (A+B+C)0100 ( A + B ‾ + C ) (A+\overline{B}+C) (A+B+C)0111000 ( A ‾ + B + C ) (\overline{A}+B+C) (A+B+C)101110111

除了输出为 0 0 0的所有状态,剩下状态即为输出为 1 1 1的所有状态 原理上述已给出,输入值满足输出为 0 0 0的条件,不满足即输出为 1 1 1

补全上述真值表

ABCOutput XProduct Term0000 ( A + B + C ) (A+B+C) (A+B+C)0010 ( A + B + C ‾ ) (A+B+\overline{C}) (A+B+C)0100 ( A + B ‾ + C ) (A+\overline{B}+C) (A+B+C)01111000 ( A ‾ + B + C ) (\overline{A}+B+C) (A+B+C)101111011111 三. SOP/POS的相互转换

在给出真值表后,根据下述两种真值表

表1 ABCOutput XProduct Term0000001001000111 A ‾ B C \overline{A}BC ABC10001011 A B ‾ C A\overline{B}C ABC1101 A B C ‾ AB\overline{C} ABC1111 A B C ABC ABC 表2 ABCOutput XProduct Term0000 ( A + B + C ) (A+B+C) (A+B+C)0010 ( A + B + C ‾ ) (A+B+\overline{C}) (A+B+C)0100 ( A + B ‾ + C ) (A+\overline{B}+C) (A+B+C)01111000 ( A ‾ + B + C ) (\overline{A}+B+C) (A+B+C)101111011111

可由SOP/POS求得POS/SOP 转换方法: ① 根据给定的表达式类型列全真值表 ② 根据需要求取的类型逐一列每一项的表达式 例如需要由SOP求POS,则依据真值表中Output X为 0 0 0的部分,写出其对应每一项的表达式(如由从表一转换为表二) ③ 将项与项之间依据表达式相整合

最后给出所求表达式类型 据此,通过非标准形式的SOP/POS表达式可以求得标准形式的POS/SOP表达式并给出对应真值表

希望能够帮到迷途之中的你,知识有限,如有学术错误请及时指正,感谢大家的阅读

(^^)/▽ ▽\(^^)

Output X表示表达式输出值 ↩︎



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3