给出 1 位全减器的 VHDL 描述;最终实现 8 位全减器。要求:
1)首先设计 1 位半减器,然后用例化语句将它们连接起来,图 4-20 中 h_suber 是半减器,diff 是输出差
a
xin
yin
(diff=x-y),s_out 是借位输出(s_out=1,xxin,y=>yin,
u2: h_suber PORT MAP(x=>a,
diff=>a,
s_out=>b);
y=>sub_in, diff=>diff_out,s_out=>c);
sub_out <= c OR b;
END ARCHITECTURE fs1;
(2)以 1 位全减器为基本硬件,构成串行借位的 8 位减法器,要求用例化语句来完成此项设计(减法运算
是 x-y-sun_in=difft)。
a6
x7
y7
x1
y1
x0
y0
sin
sub_out
xin
u7
yin
sub_in
diff_out
……………….
……………….
xin
yin
sub_in
sub_out
u1
diff_out
xin
yin
sub_in
sub_out
u0
diff_out
sout
diff7
diff1
diff0
a1
a0
串行借位的 8 位减法器
ELSE CQI:=(OTHERS => '0');
--大于 65535,计数值清零