Advertisement
Guest User

Untitled

a guest
Mar 10th, 2019
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VHDL 1.42 KB | None | 0 0
  1. library IEEE;
  2. use IEEE.std_logic_1164.all;
  3. use IEEE.numeric_std.all;
  4.  
  5. entity g90_adder is
  6.     port(           A, B            : in std_logic_vector(4 downto 0);
  7.                     decoded_A   : out std_logic_vector(13 downto 0);
  8.                     decoded_B   : out std_logic_vector(13 downto 0);
  9.                     decoded_AplusB :out std_logic_vector(13 downto 0));
  10. end g90_adder;
  11.  
  12. architecture behavioral of g90_adder is
  13.  
  14.     component g90_lab1 is
  15.         port (  bcd             : in std_logic_vector(3 downto 0);
  16.                     segment7        : out std_logic_vector(6 downto 0));
  17.     end component g90_lab1;
  18.    
  19.     signal sum          : std_logic_vector(5 downto 0);
  20.     signal A_1          : std_logic_vector(3 downto 0);
  21.     signal B_1          : std_logic_vector(3 downto 0);
  22.     signal SUM_1        : std_logic_vector(3 downto 0);
  23.    
  24.     begin
  25.    
  26.     A_1         <= "000" & A(4);
  27.     B_1         <= "000" & B(4);
  28.     SUM_1           <= "00" & sum(5 downto 4);
  29.    
  30.     sum         <= std_logic_vector (unsigned('0' & A) + unsigned('0' & B));
  31.    
  32.     A0:                 g90_lab1 port map(bcd => A(3 downto 0),         segment7 => decoded_A(6 downto 0));
  33.     A1:                 g90_lab1 port map(bcd => A_1,                   segment7 => decoded_A(13 downto 7));
  34.     B0:                 g90_lab1 port map(bcd => B(3 downto 0),         segment7 => decoded_B(6 downto 0));
  35.     B1:                 g90_lab1 port map(bcd => B_1,               segment7 => decoded_B(13 downto 7));
  36.     SUM0:                   g90_lab1 port map(bcd => SUM(3 downto 0),   segment7 => decoded_AplusB(6 downto 0));
  37.     SUM1:                   g90_lab1 port map(bcd => SUM_1,                     segment7 => decoded_AplusB(13 downto 7));
  38.    
  39. end behavioral;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement