Advertisement
Guest User

dc_comp2

a guest
Nov 12th, 2019
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VHDL 1.78 KB | None | 0 0
  1.  library ieee;
  2.  
  3. use ieee.std_logic_1164.all;
  4.  
  5. use ieee.std_logic_arith.all;
  6.  
  7.  
  8.  
  9. entity dc_comp2 is
  10.  
  11.   port
  12.  
  13.   ( d      : in std_logic_vector (3 downto 0);
  14.  
  15.     q      : out std_logic_vector (3 downto 0);
  16.  
  17.     sign   : out std_logic );
  18.  
  19. end dc_comp2;
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29. ARCHITECTURE behv OF dc_comp2 IS
  30.  
  31. Signal  m   : std_logic_vector (15 downto 0);
  32.  
  33.  
  34.  
  35. BEGIN
  36.  
  37.  
  38.  
  39.   -- q <= "1110";
  40.  
  41.   -- sign <= '1';
  42.  
  43.  
  44.  
  45.   m(0)  <=(NOT d(3) AND NOT d(2) AND NOT d(1) AND NOT d(0));
  46.  
  47.   m(1)  <=(NOT d(3) AND NOT d(2) AND NOT d(1) AND     d(0));
  48.  
  49.   m(2)  <=(NOT d(3) AND NOT d(2) AND     d(1) AND NOT d(0));
  50.  
  51.   m(3)  <=(NOT d(3) AND NOT d(2) AND     d(1) AND     d(0));
  52.  
  53.   m(4)  <=(NOT d(3) AND     d(2) AND NOT d(1) AND NOT d(0));
  54.  
  55.   m(5)  <=(NOT d(3) AND     d(2) AND NOT d(1) AND     d(0));
  56.  
  57.   m(6)  <=(NOT d(3) AND     d(2) AND     d(1) AND NOT d(0));
  58.  
  59.   m(7)  <=(NOT d(3) AND     d(2) AND     d(1) AND     d(0));
  60.  
  61.   m(8)  <=(    d(3) AND NOT d(2) AND NOT d(1) AND NOT d(0));
  62.  
  63.   m(9)  <=(    d(3) AND NOT d(2) AND NOT d(1) AND     d(0));
  64.  
  65.   m(10) <=(    d(3) AND NOT d(2) AND     d(1) AND NOT d(0));
  66.  
  67.   m(11) <=(    d(3) AND NOT d(2) AND     d(1) AND     d(0));
  68.  
  69.   m(12) <=(    d(3) AND     d(2) AND NOT d(1) AND NOT d(0));
  70.  
  71.   m(13) <=(    d(3) AND     d(2) AND NOT d(1) AND     d(0));
  72.  
  73.   m(14) <=(    d(3) AND     d(2) AND     d(1) AND NOT d(0));
  74.  
  75.   m(15) <=(    d(3) AND     d(2) AND     d(1) AND     d(0));
  76.  
  77.  
  78.  
  79.   q(0)  <= m(1) OR m(3) OR m(5) OR m(7) OR m(9) OR m(11) OR m(13) OR m(15);
  80.  
  81.   q(1)  <= m(2) OR m(3) OR m(6) OR m(7) OR m(9) OR m(10) OR m(13) OR m(14);
  82.  
  83.   q(2)  <= m(4) OR m(5) OR m(6) OR m(7) OR m(9) OR m(10) OR m(11) OR m(12);
  84.  
  85.   q(3)  <= m(8);
  86.  
  87.   sign  <= m(8) OR m(9) OR  m(10) OR  m(11) OR  m(12) OR  m(13) OR  m(14) OR m(15);
  88.  
  89.  
  90.  
  91. END behv;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement