Kako ustvariti impulz v verilog?

K

kamejoko80

Guest
domnevati, da smo 3 signali: CLK, Pulse in Triger
V verilog, ne vem, kako, da se dobi impulz kot monostab vezja.
z:
Triger aktivno ga je posedge, širina impulza Triger brez učinka na Pulse.
In je širina signala Pulse, ki ga je število ciklov CLK.

 
Tukaj gre še asinhron soln!

Code:

modul utrip (/ * AUTOARG * /

/ / Outputs

pulse_out,

/ / Vhodi

CLK, reset_n, sprožiti

);

input CLK, reset_n, sprožiti;

output pulse_out;

reg [3:0] count;

reg count_en;parameter pulse_width = 7;wire rst_int_n = reset_n & (count! = pulse_width);dodeliti pulse_out = count_en;Vedno @ (posedge sprožiti ali rst_int_n negedge)

if (! rst_int_n) začnejo

count_en <= 1'b0;

end else začeti

count_en <= 1'b1;

konec/ / Števec za širino impulza

Vedno @ (posedge CLK ali rst_int_n negedge)

if (! rst_int_n) začnejo

count <= 0;

end else začeti

if (count_en)

count <= count 1'b1;

konec

endmodule / / impulz
 

Welcome to EDABoard.com

Sponsor

Back
Top