《超前进位加法器(共2页)》由会员分享,可在线阅读,更多相关《超前进位加法器(共2页)(2页珍藏版)》请在金锄头文库上搜索。
1、精选优质文档-倾情为你奉上8位超前进位加法器设计说明书超前进位加法器就是使各位的进位直接由加数和被加数来决定,而不需要依赖低位进位。即有如下逻辑表达式:当第i位被加数Ai和加数Bi均为1时,有,不论低位运算结果如何本位必然有进位输出(),所以定义为进位产生函数。当Ai和Bi中只有一个为1时,有,使得,所以定义为进位传递函数。将Pi和Gi代入全加器的“和”及“进位”表达式有:从而构成超前进位加法器。VHDL示例程序如下:(本程序在MAXPLUSII V9.6上编译通过)-*8位超前进位加法器*LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE. S
2、TD_LOGIC _ARITH.ALL;USE IEEE. STD_LOGIC _UNSIGNED.ALL;ENTITY ADDER8BIT ISPORT(A, B: IN UNSIGNED(7 downto 0);CI,clk: IN STD_LOGIC;Y_OUT: OUT STD_LOGIC_VECTOR(7 downto 0);CO_OUT: OUTSTD_LOGIC);END ADDER8BIT;ARCHITECTURE doing OF ADDER8BIT ISSIGNAL CO,Y: STD_LOGIC_VECTOR(7 downto 0);BEGINY(0)=A(0) xor
3、B(0) xor CI;CO(0)=(A(0) and B(0) or (B(0) and CI) or (A(0) and CI);GEN:for i in 1 to 7 GENERATEY(i)=A(i) xor B(i) xor CO(i-1); -CO(i)=(CO(i-1) and A(i) or (CO(i-1) and B(i) or (A(i) and B(i);- end GENERATE;process(clk)beginif clkevent and clk=1 thenY_OUT=Y(7) & Y(6) & Y(5) & Y(4) & Y(3) & Y(2) & Y(1) & Y(0);CO_OUT=CO(7);end if;end process;END doing;附:仿真时序波形专心-专注-专业