Advertisement
Guest User

Untitled

a guest
Mar 9th, 2019
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //module Zadanie1(SW, LEDR);
  2. //  input [9:0] SW;
  3. //  output [9:0] LEDR;
  4. //  assign LEDR = SW;
  5. //endmodule
  6.  
  7. //module Zadanie1 (
  8. //  input [3:0] KEY,
  9. //  output [3:0] LEDR);
  10. //  assign LEDR = ~KEY;
  11. //endmodule
  12.  
  13. module mux_2_1_1_bit (
  14.     input x, y, s,
  15.     output m);
  16.    
  17.     assign m = (~s & x) | (s & y);
  18.  
  19. endmodule
  20.  
  21. //module part1 (
  22. //  input [1:0] SW,
  23. //  input [0:0] KEY,
  24. //  output [0:0] LEDR);
  25. // 
  26. //  Zadanie1 nazwa (SW[0], SW[1], KEY[0], LEDR[0]);
  27. // 
  28. //endmodule
  29.  
  30. module mux_2_1_4_bits (
  31.     input [3:0] X, Y,
  32.     input s,
  33.     output [3:0] M
  34. );
  35.  
  36.     mux_2_1_1_bit ex0 (X[0], Y[0], s, M[0]);
  37.     mux_2_1_1_bit ex1 (X[1], Y[1], s, M[1]);
  38.     mux_2_1_1_bit ex2 (X[2], Y[2], s, M[2]);
  39.     mux_2_1_1_bit ex3 (X[3], Y[3], s, M[3]);
  40.  
  41. endmodule
  42.  
  43.  
  44. //module part1 (
  45. //  input [7:0] SW,
  46. //  input [0:0] KEY,
  47. //  output [3:0] LEDR
  48. //);
  49. //
  50. //  mux_2_1_4_bits ex (SW[3:0], SW[7:4], KEY[0], LEDR[3:0]);
  51. // 
  52. //endmodule
  53.  
  54.  
  55. module mux_4_1_1_bit (
  56.     input [3:0] X,
  57.     input [1:0] S,
  58.     output [0:0] M
  59. );
  60.     wire [1:0] P;
  61.  
  62.     mux_2_1_1_bit ex0 (X[0], X[1], S[0], P[0]);
  63.     mux_2_1_1_bit ex1 (X[2], X[3], S[0], P[1]);
  64.     mux_2_1_1_bit ex2 (P[0], P[1], S[1], M[0]);
  65.  
  66. endmodule
  67.  
  68. //module part1 (
  69. //  input [3:0] SW,
  70. //  input [1:0] KEY,
  71. //  output [0:0] LEDR
  72. //);
  73. //
  74. //  mux_4_1_1_bit ex (SW[3:0], KEY[1:0], LEDR[0]);
  75. // 
  76. //endmodule
  77.  
  78. module mux_4_1_2_bits (
  79.     input [1:0] U,
  80.     input [1:0] V,
  81.     input [1:0] W,
  82.     input [1:0] X,
  83.     input [1:0] S,
  84.     output [1:0] M
  85. );
  86.    
  87.     mux_4_1_1_bit ex0 ({X[0], W[0], V[0], U[0]}, S[1:0], M[0]);
  88.     mux_4_1_1_bit ex1 ({X[1], W[1], V[1], U[1]}, S[1:0], M[1]);
  89.    
  90. endmodule
  91.  
  92. //module part1 (
  93. //  input [7:0] SW,
  94. //  input [1:0] KEY,
  95. //  output [1:0] LEDR
  96. //);
  97. //
  98. //  mux_4_1_2_bits ex (SW[7:0], KEY[1:0], LEDR[1:0]);
  99. // 
  100. //endmodule
  101.  
  102.  
  103. module decoder_7_seg (
  104.     input [1:0] C,
  105.     output [6:0] H
  106. );
  107.  
  108.     assign H[0] = ~C[0] | C[1];
  109.     assign H[1] = C[0];
  110.     assign H[2] = C[0];
  111.     assign H[3] = C[1];
  112.     assign H[4] = C[1];
  113.     assign H[5] = ~C[0] | C[1];
  114.     assign H[6] = C[1];
  115.    
  116. endmodule
  117. //
  118. //module part1 (
  119. //  input [1:0] SW,
  120. //  output [6:0] HEX0
  121. //);
  122. //
  123. //  decoder_7_seg ex (SW[1:0], HEX0[6:0]);
  124. //
  125. //endmodule
  126. //
  127. //module part1 (    //  zad 8
  128. //  input [9:0] SW,
  129. //  output [6:0] HEX0,
  130. //  output [9:0] LEDR
  131. //);
  132. // 
  133. //  wire [1:0] P;
  134. //
  135. //  mux_4_1_2_bits ex0 (SW[7:6], SW[5:4], SW[3:2], SW[1:0], SW[9:8], P[1:0]);
  136. //  decoder_7_seg ex1 (P[1:0], HEX0[6:0]);
  137. //
  138. //  assign LEDR = SW;
  139. // 
  140. //endmodule
  141.  
  142.  
  143. module word_4_symbols (
  144.     input [1:0] W1,
  145.     input [1:0] W2,
  146.     input [1:0] W3,
  147.     input [1:0] W4,
  148.     output [6:0] H1,
  149.     output [6:0] H2,
  150.     output [6:0] H3,
  151.     output [6:0] H4
  152. );
  153.  
  154.     decoder_7_seg d1 (W1[1:0], H1[6:0]);
  155.     decoder_7_seg d2 (W2[1:0], H2[6:0]);
  156.     decoder_7_seg d3 (W3[1:0], H3[6:0]);
  157.     decoder_7_seg d4 (W4[1:0], H4[6:0]);
  158.    
  159. endmodule
  160.  
  161. //module part1 (
  162. //  input [7:0] SW,
  163. //  output [6:0] HEX0,
  164. //  output [6:0] HEX1,
  165. //  output [6:0] HEX2,
  166. //  output [6:0] HEX3
  167. //);
  168. // 
  169. //  word_4_symbols ex (SW[1:0], SW[3:2], SW[5:4], SW[7:6], HEX0[6:0], HEX1[6:0], HEX2[6:0], HEX3[6:0]);
  170. // 
  171. //endmodule
  172. //
  173. //module
  174.  
  175. //module word_4_symbols_with_spaces (
  176. //  input [1:0] SPACE_POS,
  177. //  output reg[6:0] H1, H2, H3, H4, H5
  178. //);
  179. //
  180. //  always @(*)
  181. //      case(SPACE_POS[1:0])
  182. //          2'o0: begin
  183. //              H1  = 7'b1111111;
  184. //              H2 = 7'b1000010;
  185. //              H3 = 7'b0110000;
  186. //              H4 = 7'b1001111;
  187. //              H5 = 7'b1000010;
  188. //          end
  189. //          2'o1: begin
  190. //              H1 = 7'b1000010;
  191. //              H2 = 7'b1111111;
  192. //              H3 = 7'b0110000;
  193. //              H4 = 7'b1001111;
  194. //              H5 = 7'b1000010;
  195. //          end
  196. //          2'o2: begin
  197. //              H1 = 7'b1000010;
  198. //              H2 = 7'b1000010;
  199. //              H3 = 7'b1111111;
  200. //              H4 = 7'b1001111;
  201. //              H5 = 7'b1000010;
  202. //          end
  203. //          2'o3: begin
  204. //              H1 = 7'b1000010;
  205. //              H2 = 7'b1000010;
  206. //              H3 = 7'b0110000;
  207. //              H4 = 7'b1111111;
  208. //              H5 = 7'b1000010;
  209. //          end
  210. //      endcase
  211. // 
  212. //
  213. //endmodule
  214. //
  215. //module part1 (
  216. //  input [9:0]SW,
  217. //  output [6:0] HEX0, HEX1, HEX2, HEX3, HEX4, HEX5
  218. //);
  219. //
  220. //  word_4_symbols_with_spaces(SW[1:0], SW[9:2]);
  221. //
  222. //endmodule
  223.  
  224. module part1(
  225.     input [9:0] SW,
  226.     output reg [0:6] HEX0,HEX1,HEX2,HEX3,HEX4,HEX5);
  227.     always @(*)
  228.         case (SW[9:7])
  229.             3'o0: begin
  230.             HEX0 = 7'b0000001;
  231.             HEX1 = 7'b1001111;
  232.             HEX2 = 7'b0110000;
  233.             HEX3 = 7'b1000010;
  234.             HEX4 = 7'b1111111;
  235.             HEX5 = 7'b1111111;
  236.             end
  237.             3'o1: begin
  238.             HEX1 = 7'b0000001;
  239.             HEX2 = 7'b1001111;
  240.             HEX3 = 7'b0110000;
  241.             HEX4 = 7'b1000010;
  242.             HEX5 = 7'b1111111;
  243.             HEX0 = 7'b1111111;
  244.             end
  245.             3'o2: begin
  246.             HEX2 = 7'b0000001;
  247.             HEX3 = 7'b1001111;
  248.             HEX4 = 7'b0110000;
  249.             HEX5 = 7'b1000010;
  250.             HEX0 = 7'b1111111;
  251.             HEX1 = 7'b1111111;
  252.             end
  253.             3'o3: begin
  254.             HEX3 = 7'b0000001;
  255.             HEX4 = 7'b1001111;
  256.             HEX5 = 7'b0110000;
  257.             HEX0 = 7'b1000010;
  258.             HEX1 = 7'b1111111;
  259.             HEX2 = 7'b1111111;
  260.             end
  261.             3'o4: begin
  262.             HEX4 = 7'b0000001;
  263.             HEX5 = 7'b1001111;
  264.             HEX0 = 7'b0110000;
  265.             HEX1 = 7'b1000010;
  266.             HEX2 = 7'b1111111;
  267.             HEX3 = 7'b1111111;
  268.             end
  269.             3'o5: begin
  270.             HEX5 = 7'b0000001;
  271.             HEX0 = 7'b1001111;
  272.             HEX1 = 7'b0110000;
  273.             HEX2 = 7'b1000010;
  274.             HEX3 = 7'b1111111;
  275.             HEX4 = 7'b1111111;
  276.             end
  277.         endcase
  278. endmodule
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement