用 74LS153 设计一个一位全加器。
------------------
1. 根据全加器的功能要求,写出真值表。
全加器功能: C_S = X + Y + Z。
真值表,放在插图中了。
(用数据选择器设计时,卡诺图、化简、逻辑表达式,都是不需要的。)雀裂大
2. 选定输入输出顷竖接口端。
A、B,连接两个输入变量 Y、Z;
D0~D3,用于连接输入变量 X;
1Y,作为和的输出端 S;
2Y,作为进位的输出 C。
3. 分析真值表,确定各数据端的输入。
S:
YZ=00 时,S 等于 X,所以,应把 X 接到 1X0;
YZ=01 时,S 等于 /X,所以,应把 /X 接到 1X1;
YZ=10 时,S 等于 /X,所以,应把 /X 接到 1X2;
YZ=11 时,S 等于 X,所以,应把 X 接到 1X3。
C:
YZ=00 时,C 等于 0;
YZ=01 时,C 等于 X;
YZ=10 时,C 等于 X;
YZ=11 时,C 等于 1。
4. 画出逻辑图。
根据前面的分析,除了 74LS153,还需要一个非门。
用 153 设计电路,在分析各个输入端是什么信号时,只需使用真值表。
由于不是用逻辑门设计电路,卡诺图、逻辑表达式,就都是不需要的。
有源孝人,列出了“全加器的逻辑表达式”,明显是误入歧途。
一位全加前笑穗慧卜器源代码如升薯下:library ieee
use ieee.std_logic_1164.all
use ieee.std_logic_unsigned.all
use ieee.std_logic_arith.all
entity bit1adder is
port(
a,b,ci:in std_logic
s,co:out std_logic
)
end bit1adder
architecture func of bit1adder is
signal:x,y:std_logic
begin
x<=a xor b
y<=x and ci
s<=x xor ci
co<=y or (a and b)
end func
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)