Advertisement
Guest User

Step 3

a guest
Jan 24th, 2020
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VHDL 4.73 KB | None | 0 0
  1. library ieee;
  2. use ieee.std_logic_1164.all;
  3. entity four_i_mux is
  4.     port (
  5.         in1 : in std_logic;
  6.         in2 : in std_logic;
  7.         in3 : in std_logic;
  8.         in4 : in std_logic;
  9.         sel1 : in std_logic;
  10.         sel2 : in std_logic;
  11.         result : out std_logic
  12.         );
  13. end;
  14. architecture rt1 of four_i_mux is
  15.     signal temp1, temp2, temp3, temp4 : std_logic;
  16. begin
  17.    
  18.     temp1 <= in1 and (not sel1 and not sel2);
  19.     temp2 <= in2 and (sel1 and not sel2);
  20.     temp3 <= in3 and (not sel1 and sel2);
  21.     temp4 <= in4 and (sel1 and sel2);
  22.     result <= (temp1 or temp2) or (temp3 or temp4);
  23. end;
  24. library ieee;
  25. use ieee.std_logic_1164.all;
  26. entity tb is end;
  27. architecture tb_arch of tb is
  28.     component four_i_mux is
  29.         port (
  30.             in1 : in std_logic;
  31.             in2 : in std_logic;
  32.             in3 : in std_logic;
  33.             in4 : in std_logic;
  34.             sel1 : in std_logic;
  35.             sel2 : in std_logic;
  36.             result : out std_logic
  37.         );
  38.     end component;
  39.    
  40.     signal in1 :  std_logic;
  41.     signal in2 :  std_logic;
  42.     signal in3 :  std_logic;
  43.     signal in4 :  std_logic;
  44.     signal sel1 :  std_logic;
  45.     signal sel2 :  std_logic;
  46.     signal result :  std_logic;
  47.    
  48. begin
  49.     entity_instance_1: four_i_mux
  50.         port map(in1,in2,in3,in4,sel1,sel2,result);
  51.    
  52.     process is
  53.     begin
  54.        
  55.         in1 <= '0';
  56.         in2 <= '0';
  57.         in3 <= '0';
  58.         in4 <= '0';
  59.         sel1 <= '0';
  60.         sel2 <= '0';
  61.         wait for 10 ps;
  62.         in1 <= '1';
  63.         in2 <= '0';
  64.         in3 <= '0';
  65.         in4 <= '0';
  66.         sel1 <= '0';
  67.         sel2 <= '0';
  68.         wait for 10 ps;
  69.         in1 <= '0';
  70.         in2 <= '1';
  71.         in3 <= '0';
  72.         in4 <= '0';
  73.         sel1 <= '0';
  74.         sel2 <= '0';
  75.         wait for 10 ps;
  76.         in1 <= '0';
  77.         in2 <= '0';
  78.         in3 <= '1';
  79.         in4 <= '0';
  80.         sel1 <= '0';
  81.         sel2 <= '0';
  82.         wait for 10 ps;
  83.         in1 <= '0';
  84.         in2 <= '0';
  85.         in3 <= '0';
  86.         in4 <= '1';
  87.         sel1 <= '0';
  88.         sel2 <= '0';
  89.         wait for 10 ps;
  90.         in1 <= '0';
  91.         in2 <= '0';
  92.         in3 <= '0';
  93.         in4 <= '0';
  94.         sel1 <= '1';
  95.         sel2 <= '0';
  96.         wait for 10 ps;
  97.         in1 <= '0';
  98.         in2 <= '0';
  99.         in3 <= '0';
  100.         in4 <= '0';
  101.         sel1 <= '0';
  102.         sel2 <= '1';
  103.         wait for 10 ps;
  104.         in1 <= '1';
  105.         in2 <= '1';
  106.         in3 <= '0';
  107.         in4 <= '0';
  108.         sel1 <= '0';
  109.         sel2 <= '0';
  110.         wait for 10 ps;
  111.         in1 <= '0';
  112.         in2 <= '1';
  113.         in3 <= '1';
  114.         in4 <= '0';
  115.         sel1 <= '0';
  116.         sel2 <= '0';
  117.         wait for 10 ps;
  118.         in1 <= '0';
  119.         in2 <= '0';
  120.         in3 <= '1';
  121.         in4 <= '1';
  122.         sel1 <= '0';
  123.         sel2 <= '0';
  124.         wait for 10 ps;
  125.         in1 <= '0';
  126.         in2 <= '0';
  127.         in3 <= '0';
  128.         in4 <= '1';
  129.         sel1 <= '1';
  130.         sel2 <= '0';
  131.         wait for 10 ps;
  132.         in1 <= '0';
  133.         in2 <= '0';
  134.         in3 <= '0';
  135.         in4 <= '0';
  136.         sel1 <= '1';
  137.         sel2 <= '1';
  138.         wait for 10 ps;
  139.         in1 <= '1';
  140.         in2 <= '1';
  141.         in3 <= '1';
  142.         in4 <= '0';
  143.         sel1 <= '0';
  144.         sel2 <= '0';
  145.         wait for 10 ps;
  146.         in1 <= '0';
  147.         in2 <= '1';
  148.         in3 <= '1';
  149.         in4 <= '1';
  150.         sel1 <= '0';
  151.         sel2 <= '0';
  152.         wait for 10 ps;
  153.         in1 <= '0';
  154.         in2 <= '0';
  155.         in3 <= '1';
  156.         in4 <= '1';
  157.         sel1 <= '1';
  158.         sel2 <= '0';
  159.         wait for 10 ps;
  160.         in1 <= '0';
  161.         in2 <= '0';
  162.         in3 <= '0';
  163.         in4 <= '1';
  164.         sel1 <= '1';
  165.         sel2 <= '1';
  166.         wait for 10 ps;
  167.         in1 <= '1';
  168.         in2 <= '1';
  169.         in3 <= '1';
  170.         in4 <= '1';
  171.         sel1 <= '0';
  172.         sel2 <= '0';
  173.         wait for 10 ps;
  174.         in1 <= '0';
  175.         in2 <= '1';
  176.         in3 <= '1';
  177.         in4 <= '1';
  178.         sel1 <= '1';
  179.         sel2 <= '0';
  180.         wait for 10 ps;
  181.         in1 <= '0';
  182.         in2 <= '0';
  183.         in3 <= '1';
  184.         in4 <= '1';
  185.         sel1 <= '1';
  186.         sel2 <= '1';
  187.         wait for 10 ps;
  188.         in1 <= '0';
  189.         in2 <= '1';
  190.         in3 <= '0';
  191.         in4 <= '1';
  192.         sel1 <= '0';
  193.         sel2 <= '1';
  194.         wait for 10 ps;
  195.         in1 <= '0';
  196.         in2 <= '1';
  197.         in3 <= '0';
  198.         in4 <= '0';
  199.         sel1 <= '1';
  200.         sel2 <= '0';
  201.         wait for 10 ps;
  202.         in1 <= '0';
  203.         in2 <= '0';
  204.         in3 <= '1';
  205.         in4 <= '0';
  206.         sel1 <= '0';
  207.         sel2 <= '1';
  208.         wait for 10 ps;
  209.        
  210.        
  211.        
  212.         wait;
  213.    end process;
  214. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement