Advertisement
RybaSG

Untitled

May 16th, 2017
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.19 KB | None | 0 0
  1. module Preskaler_1Hz(CLK, CE, Q_preskaler, CEO_preskaler);
  2.  
  3. input CLK, CE;
  4. output reg [27:0] Q_preskaler;
  5. output CEO_preskaler;
  6.  
  7. always @(posedge CLK)
  8. begin
  9. if(CE)
  10. if(Q_preskaler != 28'd149999999)
  11. Q_preskaler <= Q_preskaler + 1;
  12. else
  13. Q_preskaler <= 28'd0;
  14. end
  15.  
  16. assign CEO_preskaler = CE & (Q_preskaler == 28'd149999999);
  17.  
  18. endmodule
  19. /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  20. module Memory_counter(CLK, CE, Q_mem_cnt);
  21.  
  22. input CLK, CE;
  23. output reg [3:0]Q_mem_cnt;
  24.  
  25. always @(posedge CLK)
  26. begin
  27. if(CE)
  28. if(Q_mem_cnt != 4'd15)
  29. Q_mem_cnt <= Q_mem_cnt + 1;
  30. else
  31. Q_mem_cnt <= 4'd0;
  32. end
  33.  
  34. endmodule
  35. /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  36. module register(CLK,CE,IN_reg, OUT_reg);
  37.  
  38. input CLK, CE;
  39. input [7:0]IN_reg;
  40. output reg [7:0]OUT_reg;
  41.  
  42. always @(posedge CLK)
  43. begin
  44. if(CE)
  45. OUT_reg <= IN_reg;
  46. else
  47. OUT_reg <= 8'd0;
  48. end
  49.  
  50.  
  51. endmodule
  52. /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  53. module dwojka(CLK, CE,OUT);
  54.  
  55. input CLK, CE;
  56. output reg OUT;
  57.  
  58. always @(posedge CLK)
  59. begin
  60. if(CE)
  61. OUT <= OUT +1;
  62.  
  63. end
  64.  
  65. endmodule
  66. /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  67. module TOP(CLK, CEO_preskaler, Q_mem_cnt, douta, OUT);
  68.  
  69. input CLK;
  70. output CEO_preskaler, OUT;
  71. output [3:0]Q_mem_cnt;
  72. output [7:0]douta;
  73.  
  74. //module Preskaler_1Hz(CLK,CE, Q_preskaler, CEO_preskaler);
  75. Preskaler_1Hz Hz_1(CLK, 1'b1, , CEO_preskaler);
  76. //module Memory_counter(CLK,CE, Q_mem_cnt);
  77. Memory_counter counter(CLK, CEO_preskaler, Q_mem_cnt );
  78. //module register(CLK,CE,IN_reg, OUT_reg);
  79. register reg_mem(CLK, 1'b1, douta[7:0] , );
  80. //module dwojka(CLK, CE, OUT);
  81. dwojka dw(CLK, CEO_preskaler, OUT);
  82.  
  83. VGA_ROM your_instance_name
  84. (
  85. .clka(CLK), // input clka
  86. .addra(Q_mem_cnt), // input [3 : 0] addra
  87. .douta(douta) // output [7 : 0] douta
  88. );
  89.  
  90. endmodule
  91. /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement