怎样设计一位全加器?

怎样设计一位全加器?,第1张

用74LS153设计一个一位全加器,方法如下:

1.首先根据全加器真值表,写出和S、高位进位C1的逻辑函数:S=A⊕B⊕C0;

2.A1、A0作为两个输入变量即加数和被加数A、B,D0~D3作为第三个输入变量即低位进位C0,

1Y为全加器的和S,2Y为全加器的高位进位C1,于是就可以令数据选择器的输入为:

A1=A,A0=B,1DO=1D3=C0,1D1=1D2=C0反,2D0=0,2D3=1,2D1=2D2=C0,1Q=S1,

2Q=C1

3.根据对应的管脚连接电路。

图:一位全加器原理图

扩展资料携岩答:

一位全加器的逻辑函数:S=A⊕B⊕Cin,Co=ACin+BCin+AB;

其辩慧中枣态A,B为要相加的数,Cin为进位输入;S为和,Co是进位输出。

如果要实现多位加法可以进行级联,就是串起来使用,比如:32位+32位,就需要32个全加器,这

种级联就是串行结构速度慢;如果要并行快速相加可以用超前进位加法;超前进位加法前查阅相关

资料;

如果将全加器的输入置换成A和B的组合函数Xi和Y(S0…S3控制),然后再将X,Y和进位数通过全加

器进行全加,就是ALU的逻辑结构结构,即 :

X=f(A,B);

Y=f(A,B)。

不同的控制参数可以得到不同的组合函数,因而能够实现多种算术运算和逻辑运算。

一位全加前笑穗慧卜器源代码如升薯下:

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


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12301146.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存