Top Banner
19

Serial Adder Binary Multiplier

Feb 15, 2016

Download

Documents

Pradyumna Bhat

it gives brief introduction to serial adder and binary multiplier with vhdl code
which is very important to learn the basics of digital systems
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
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