Advertisement
Guest User

ptc

a guest
Dec 11th, 2018
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.81 KB | None | 0 0
  1. LIBRARY ieee;
  2. USE ieee.std_logic_1164.all;
  3. ENTITY reklama IS
  4. PORT ( SW : IN STD_LOGIC_VECTOR(17 DOWNTO 0);
  5. HEX0 : OUT STD_LOGIC_VECTOR(0 TO 6);
  6. HEX1 : OUT STD_LOGIC_VECTOR(0 TO 6);
  7. HEX2 : OUT STD_LOGIC_VECTOR(0 TO 6);
  8. HEX3 : OUT STD_LOGIC_VECTOR(0 TO 6);
  9. HEX4 : OUT STD_LOGIC_VECTOR(0 TO 6);
  10. HEX5 : OUT STD_LOGIC_VECTOR(0 TO 6);
  11. HEX6 : OUT STD_LOGIC_VECTOR(0 TO 6);
  12. HEX7 : OUT STD_LOGIC_VECTOR(0 TO 6)
  13. );
  14. END reklama;
  15.  
  16. ARCHITECTURE strukturalna OF reklama IS
  17. CONSTANT SPACJA: STD_LOGIC_VECTOR(2 DOWNTO 0):="000"; -- KOD SPACJI
  18. SIGNAL W0, W1,W2,W3,W4,W5,W6,W7 : STD_LOGIC_VECTOR(2 DOWNTO 0);
  19. --DEKLARACJA KOMPONENTÓW
  20. COMPONENT mux3bit8to1 -- muliptekser
  21. PORT ( S, U0, U1, U2, U3, U4, U5,U6,U7: IN STD_LOGIC_VECTOR(2 DOWNTO 0);
  22. --WEKTOR STERUJĄCY I 8 wektorów INFORMACYJNYCH
  23. M0 : OUT STD_LOGIC_VECTOR(2 DOWNTO 0));
  24. END COMPONENT;
  25. COMPONENT char7seg -- transkoder
  26. PORT ( C : IN STD_LOGIC_VECTOR(2 DOWNTO 0);
  27. Display : OUT STD_LOGIC_VECTOR(0 TO 6));
  28. END COMPONENT;
  29.  
  30. SIGNAL M : STD_LOGIC_VECTOR(2 DOWNTO 0);
  31. BEGIN
  32. -- KONKRETYZACJA UŻYCIA KOMPONENTÓW
  33. MUX0: mux3bit8to1 PORT MAP (SW(17 DOWNTO 15), SW(14 DOWNTO 12),
  34. SW(11 DOWNTO 9),SW(8 DOWNTO 6), SW(5 DOWNTO 3),SW(2 DOWNTO 0), SPACJA, SPACJA, SPACJA, M); --było M0
  35. MUX1: mux3bit8to1 PORT MAP (SW(17 DOWNTO 15), SW(14 DOWNTO 12),
  36. SW(11 DOWNTO 9),SW(8 DOWNTO 6), SW(5 DOWNTO 3),SW(2 DOWNTO 0), SPACJA, SPACJA, SPACJA, M);
  37. MUX2: mux3bit8to1 PORT MAP (SW(17 DOWNTO 15), SW(14 DOWNTO 12),
  38. SW(11 DOWNTO 9),SW(8 DOWNTO 6), SW(5 DOWNTO 3),SW(2 DOWNTO 0), SPACJA, SPACJA, SPACJA, M);
  39. MUX3: mux3bit8to1 PORT MAP (SW(17 DOWNTO 15), SW(14 DOWNTO 12),
  40. SW(11 DOWNTO 9),SW(8 DOWNTO 6), SW(5 DOWNTO 3),SW(2 DOWNTO 0), SPACJA, SPACJA, SPACJA, M);
  41. MUX4: mux3bit8to1 PORT MAP (SW(17 DOWNTO 15), SW(14 DOWNTO 12),
  42. SW(11 DOWNTO 9),SW(8 DOWNTO 6), SW(5 DOWNTO 3),SW(2 DOWNTO 0), SPACJA, SPACJA, SPACJA, M);
  43. MUX5: mux3bit8to1 PORT MAP (SW(17 DOWNTO 15), SW(14 DOWNTO 12),
  44. SW(11 DOWNTO 9),SW(8 DOWNTO 6), SW(5 DOWNTO 3),SW(2 DOWNTO 0), SPACJA, SPACJA, SPACJA, M);
  45. MUX6: mux3bit8to1 PORT MAP (SW(17 DOWNTO 15), SW(14 DOWNTO 12),
  46. SW(11 DOWNTO 9),SW(8 DOWNTO 6), SW(5 DOWNTO 3),SW(2 DOWNTO 0), SPACJA, SPACJA, SPACJA, M);
  47. MUX7: mux3bit8to1 PORT MAP (SW(17 DOWNTO 15), SW(14 DOWNTO 12),
  48. SW(11 DOWNTO 9),SW(8 DOWNTO 6), SW(5 DOWNTO 3),SW(2 DOWNTO 0), SPACJA, SPACJA, SPACJA, M);
  49. -- KONKRETYZACJE KOLEJNYCH MULTIPLEKSERÓW UKŁADU
  50. H0: char7seg PORT MAP (M, HEX0); --było M)
  51. H1: char7seg PORT MAP (M, HEX0);
  52. H2: char7seg PORT MAP (M, HEX0);
  53. H3: char7seg PORT MAP (M, HEX0);
  54. H4: char7seg PORT MAP (M, HEX0);
  55. H5: char7seg PORT MAP (M, HEX0);
  56. H6: char7seg PORT MAP (M, HEX0);
  57. H7: char7seg PORT MAP (M, HEX0);
  58. -- KONKRETYZACJE KOLEJNYCH TRANSKODERÓW
  59.  
  60. END strukturalna;
  61.  
  62. -- implementacja multipleksera 8 do 1 (wektor 3 bitowy)
  63. LIBRARY ieee;
  64. USE ieee.std_logic_1164.all;
  65. ENTITY mux3bit8to1 IS
  66. PORT (S, U0, U1, U2, U3, U4, U5, U6, U7: IN STD_LOGIC_VECTOR(2 DOWNTO 0);
  67. M : OUT STD_LOGIC_VECTOR(2 DOWNTO 0));
  68. END mux3bit8to1;
  69. ARCHITECTURE strukturalna OF mux3bit_8to1 IS
  70. begin process(S)
  71. begin
  72. case S is
  73. M <= U0 when "000";
  74. M <= U1 when "001";
  75. M <= U2 when "010";
  76. M <= U3 when "011";
  77. M <= U4 when "100";
  78. M <= U5 when "101";
  79. M <= U6 when "110";
  80. M <= U7 when "111";
  81. end case;
  82. end process;
  83.  
  84. END strukturalna;
  85. -- IMPLEMENTACJA TRANSKODERA
  86. LIBRARY ieee;
  87. USE ieee.std_logic_1164.all;
  88. ENTITY char7seg IS
  89. PORT ( C : IN STD_LOGIC_VECTOR(2 DOWNTO 0);
  90. Display : OUT STD_LOGIC_VECTOR(0 TO 6));
  91. END char7seg;
  92. ARCHITECTURE strukturalna OF char7seg IS
  93. begin process(S)
  94. begin
  95. case S is
  96. Display <= "1111111" when U0;
  97. Display <= "0100000" when U1;
  98. Display <= "1001000" when U2;
  99. Display <= "1001111" when U3;
  100. Display <= "1000111" when U4;
  101. Display <= "1110001" when U5;
  102. Display <= "1111111" when U6;
  103. Display <= "1111111" when U7;
  104. end case;
  105. end process;
  106. END strukturalna;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement