STALNEM Vpis: VERILOG

S

Sobakava

Guest
Imam problem z naslednjo kodo:

Modul ima clock input.To ustvarja nekatere
real.Na primer, Rabim okvir impulz
na proizvodnja (5 cikel traja) na vsaki
56 ciklov ure.Obstaja F1 proizvodnje.
To je High do
30. kroga, potem bo
se pol ure.

F2 je treba F1 & Clock signal.

Vendar pa obstajajo nekatere nezaželene kratkih impulzov (X) pojavijo na F2:............................a
| 11111111 |_________| 11111111 |_____ ura

_ | 111111111111111111 |_____________ F1

__ | 11111111 |_________| X |__________ F2/ / Upam, da ta shema izgleda globe po predložitvi

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Nasmeh" border="0" />

/ /

Mislim, da zaradi zamude uro na F1, F1 in ura
postane High (a).(potem F2 = F1 in ura postane visoka)

I sintetiziranimi to @ ltera FLEX EPF10K10 FPGA in I
prikaz (X) impulza (10ns širino in ~ amplitude 1V) @ 40Mhz clock
in z osciloskopa.Zdi se tudi s simulacijo.

Kako lahko odpravi takšnih nezaželenih signalov v Verilog design?

S spoštovanjemmodul generator (ura, okvir, cikel, F1, F2);

input uro;

output F1, F2;
reg F1;

output [12:0] ciklusu;
reg [12:0] ciklusu;

output okvir;
reg okvirja;

dodeliti F2 = F1 &clock;Vedno @ (posedge ura)
začeti
1 cikel = cikel;

if (cikel <30)
F1 = 1;
še
F1 = ~ F1;

if (cikel == 50)
frame = 1;

if (cikel == 55)
frame = 0;

if (cikel == 56)
cikel = 0;

konec
endmodule

 
Boste zagotovo dobili pulz, če ste jo videli.Je impulz bo sorazmerna z zamudo v register, ki je zajelo F1.Problem je, da je v izjavi:

F2 = F1 in CLK

F1 ne spremeni do predloga zakasnilni čas po CLK prispe.Torej, ko je proizvodnja F1 naj gredo od visokih na nizke, ne bo tako, dokler predloga čas zamude.V vmesnem času, F1 in CLK in visoka, zato je visoka F2.Čeprav ste simulira brez odlašanja, na simulatorju ni dovolj pameten, da veš, da bo prišlo do nekaj zakasnitve skozi Skljokati in prikaže napaka.

Radix

 

Welcome to EDABoard.com

Sponsor

Back
Top