华为2021数字IC笔试题:异或门最少使用几个2选1 mux

今年的华为IC笔试有一个这样的题:
用2选1MUX搭出异或门最少用几个?
假设输入为A,B,输出为Y,那么我们知道,如果A、B相同时,Y=1;A、B不同时,Y=0,真值表如下:
A B Y
0 0 0
1 1 0
0 1 1
1 0 1
由真值表画出卡诺图,

从卡诺图可以看出,当A = 1时,Y= B';当A = 0时,Y= B,即:Y = A'B + A'B。
很自然的,可以通过Verilog把逻辑表达式写出来,
Y = A ?~B : B;
用2选1MUX电路表示如下:
现在我们只要用2选1MUX实现B'(非门)即可,
当B = 0时,取1
当B = 1时,取0,
即:
输出 = B ? 0: 1;
用2选1MUX表达出来,如下,把输出和B'连接起来,即为异或门的2选1MUX实现
也就是,实现异或门至少需要2个2选1MUX实现
同理,如果这里我们要实现同或门,
Y = A‘B’ + AB,
即:当 A = 0时,Y = B'
当A = 1时, Y = B
电路如下:

#华为##笔试题目#
全部评论

相关推荐

20 37 评论
分享
牛客网
牛客企业服务