Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
DB_JS
/
Verilog
:
clock.v
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
http://www.xilinx.com/itp/3_1i/data/fise/xst/chap02/xst02005.htm module clock (input CCLK, input [31:0] clkscale, output reg clk); // CCLK master crystal clock oscillator 50 MHz reg [31:0] clkq = 0; // clock register, initial value of 0 always@(posedge CCLK) begin clkq = clkq + 1; // increment clock register if (clkq >= clkscale) // clock scaling begin clk = ~clk; // output clock clkq = 0; // reset clock register end end endmodule module clocktest (input CCLK, output LD0, LD1, LD2); clock M0 (CCLK, 25000000, LD0); // 1 Hz clock clock M1 (CCLK, 12500000, LD1); // 2 Hz clock clock M2 (CCLK, 6250000, LD2); // 4 Hz clock endmodule module pbdebounce (input clk, input button, output reg pbreg); reg [3:0] pbshift; always@(posedge clk) // local clock event driven begin pbshift = pbshift << 1; // shift register pbshift[0] = button; // read button if (pbshift == 0) // if a bounce occurs pbreg = 0; // clear the register if (pbshift == 15) // 15 local clock tics without a bounce pbreg = 1; // sets the register end endmodule module counter ( clk, reset, result, ena ); input clk; input reset; input ena; output [7:0] result; reg [7:0] result; always @(posedge clk or posedge reset) begin if (reset) result = 0; else if (ena) result = result + 1; end endmodule reg clock, A, B; initial begin clock = 0; A = 0; B = 1; #11 A = 1; #10 B = 0; A = 0; end always #5 clock = ~clock;