我必须设计一个接受 4 位数字并生成其三元组的组合电路,这是什么意思?有人可以给我一个特定输入及其输出的示例,以便我理解这个问题吗?
如果你能给我任何关于设计这个电路的提示,我将不胜感激。
谢谢你。
我必须设计一个接受 4 位数字并生成其三元组的组合电路,这是什么意思?有人可以给我一个特定输入及其输出的示例,以便我理解这个问题吗?
如果你能给我任何关于设计这个电路的提示,我将不胜感激。
谢谢你。
您需要制作一个真值表,然后从布尔代数(真值之和)或 k-map 导出组合逻辑。
例如,如果输入是0100
十进制 4,那么三元组将是 12,或者1100
. 由于最高数字是1111
(15),那么您的输出必须能够表示 45 或101101
(6 位)。
因此,您将拥有类似的东西:
Input | Output
-----------------
abcd uvwxyz
0000 | 000000
0001 | 000011
0010 | 000110
0011 | 001001
0100 | 001100
0101 | 001111
0110 | 010010
0111 | 010101
1000 | 011000
1001 | 011011
1010 | 011110
1011 | 100001
1100 | 100100
1101 | 100111
1110 | 101010
1111 | 101101
从中,您可以为每个输出位构建一个 k-map,并找到每个输出位所需的最小组合逻辑。
例如,要查找 bit 的组合逻辑,u
您将使用以下 k-map:
AB
00 01 11 10
CD 00 0 0 1 0
01 0 0 1 0
11 0 0 1 1
10 0 0 1 0
这减少到ACD + AB
对其他 5 位 (vz) 重复此操作,您将拥有实现解决方案所需的完整组合逻辑。
从真值表开始:
IN OUT
0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 1 3 0 0 0 0 1 1
2 0 0 1 0 6 0 0 0 1 1 0
3 0 0 1 1 9 0 0 1 0 0 1
4 0 1 0 0 C 0 0 1 1 0 0
5 0 1 0 1 F 0 0 1 1 1 1
6 0 1 1 0 12 0 1 0 0 1 0
7 0 1 1 1 15 0 1 0 1 0 1
8 1 0 0 0 18 0 1 1 0 0 0
9 1 0 0 1 1B 0 1 1 0 1 1
A 1 0 1 0 1E 0 1 1 1 1 0
B 1 0 1 1 21 1 0 0 0 0 1
C 1 1 0 0 24 1 0 0 1 0 0
D 1 1 0 1 27 1 0 0 1 1 1
E 1 1 1 0 2A 1 0 1 0 1 0
F 1 1 1 1 2D 1 0 1 1 0 1
然后使用诸如卡诺图之类的标准技术来推导输入/输出表达式。