serial adder binary multiplier

19

Upload: pradyumna-bhat

Post on 15-Feb-2016

225 views

Category:

Documents


2 download

DESCRIPTION

it gives brief introduction to serial adder and binary multiplier with vhdl codewhich is very important to learn the basics of digital systems

TRANSCRIPT

Page 1: Serial Adder Binary Multiplier
Page 2: Serial Adder Binary Multiplier
Page 3: Serial Adder Binary Multiplier
Page 4: Serial Adder Binary Multiplier
Page 5: Serial Adder Binary Multiplier

● Add 1111 and 1111● Add 1000 and 0001

Page 6: Serial Adder Binary Multiplier
Page 7: Serial Adder Binary Multiplier

entity SA is

Port ( st : in std_logic; A,B: inout std_logic_vector ( 3 downto 0); clk : in std_logic; acc : out std_logic_vector(3 downto 0)); end SA;

Page 8: Serial Adder Binary Multiplier

architecture Behavioral of SA isType state is state0,state1,state2,state3;signal ps,ns: state;signal C,D: std_logic_vector (3 downto 0);signal ci,ciplus,si,sh:std_logic;

Page 9: Serial Adder Binary Multiplier

begin

si<=A(0) xor B(0) xor ci ; ciplus <=(A(0) and B(0)) or (A(0) and ci ) or ( B(0) and ci );

process(ps,st)begin case ps is when state0=>

if(st='0')then ns<=state0; else ns<=state1; sh<='1'; end if; when state1 =>

sh<='1'; ns<= ps+1;when state2 =>

sh<='1'; ns<= ps+1; when state3=>

sh<='1'; ns <=0; end case;end process;

Page 10: Serial Adder Binary Multiplier

process(clk,sh) begin if(clk 'event and clk ='1')then ps <= ns; ci<= ciplus; end if;

if(sh='1') then C<=si & A(3 downto 1) ; D<=B(0) & B(3 downto 1); end if;

end process;

acc<= C;

end Behavioral;

Page 11: Serial Adder Binary Multiplier
Page 12: Serial Adder Binary Multiplier
Page 13: Serial Adder Binary Multiplier
Page 14: Serial Adder Binary Multiplier

● 1111 * 1111● 1000 * 1000● 0001 * 1000● 0001 * 0001

Page 15: Serial Adder Binary Multiplier
Page 16: Serial Adder Binary Multiplier

Place it inside package and call the library

Page 17: Serial Adder Binary Multiplier
Page 18: Serial Adder Binary Multiplier
Page 19: Serial Adder Binary Multiplier