两个4位二进制全加器串联怎么编程实现?

两个4位二进制全加器串联怎么编程实现?,第1张

把多个一位全加器级联后就可以做成多位全加器。复

依次将低位全加器的“进位输出端”接到高位全加器的“进位输入端”就可以。最终的结果是由最高位全加器的“进位输出端”和每一位全加器的“本位和输出端”组成,从高位到低位依次读出。比方说四位二进制加法器,结果就是五位数。

全加器是用门电路实现两个二进制数相加并求出和的组合线制路,称为一位全加器。一位全加器可以处理低位进位,并输出本位加法进位。

library ieee

use ieee.std_logic_1164.all

entity f_adder is

port(ain,bin,cin :in std_logic

cout,sum :out std_logic)

end entity f_adder

architecture f1 of f_adder is

component h_adder

port(a,b:in std_logic

co,so:out sud_logic)

end component

component or2a

port(a,b:in std_logic

c:out sud_logic)

end component

signal d,e,f:in std_logic

begin

u1:h_adder port(ain,bin,d,e)

u2:h_adder port(e,cin,f,sum)

u3:or2a port(d,f,cout)

end architecture f1

//一位二进制全加器

library ieee

use ieee.std_logic_1164.all

entity f_adder_4 is

port(a[3,b[3],c[3]] :in std_logic_vector(3 downto 0)

q[3],cout [3]:out std_logic_vector(3 downto 0))

end entity f_adder_4

architecture f2 of f_adder_4 is

component f_adder

port(ain,bin,cin :in std_logic

cout,sum :out std_logic)

end component

sigal a,b,c:std_logic

begin

f1:f_adder port map(a[0],b[0], ,q[0],a)

f2:f_adder port map(a[1],b[1],a,q[1],b)

f3:f_adder port map(a[2],b[2],b,q[2],c)

f4:f_adder port map(a[3],b[3],c,q[3],cout_4)

end architeture f2//四位全加器


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存