NCVer | log probleem.

J

jelydonut

Guest
dit is het probleem met im ..

Ik heb een klok lopen en op hetzelfde tijdstip van de simulatie als de stijgende flank stort ik een 1 om te zeggen "signaal".Dan probeer ik het creëren van een oneshot uit het ..dus ..

altijd @ (posedge clk)
signal_dly <= signaal;

signal_os toewijzen = signaal & ~ signal_dly;

wat er al is, is dat omdat de im 1 storten op de posedge zowel signaal en signal_dly krijgen toegewezen van de 1 op hetzelfde moment ..Hense geen oneshot wordt geproduceerd ..Ik weet m0dels | m doet dit niet ..

Is er een instelling of iets wat ik moet veranderen of ik gewoon kick mijn systeem door de kamer en hoop dat het werkt?

jelydonut

 
hi, jelydonut

Ik denk dat de sturcture van DFF:
altijd @ (posedge clk)
signal_dly <= signaal;

wordt als hetzelfde als de
toewijzen signal_dly = signaal;

Het is een opmerkelijk punt in de meeste Codestijl.

U kunt de DFF naar:
altijd @ (posedge CLK of possedge rst)
if (rst)
signal_dly <= Default Values;
anders
signal_dly <= signaal;

signal_os toewijzen = signaal & ~ signal_dly;

Dan doe uw simulatie.

Succes!

 
Is

altijd @ (posedge clk)
signal_dly <= signaal;

als het echt dezelfde is als de
toewijzen signal_dly = signaal;

??????????????????

 
cnspy schreef:

Isaltijd @ (posedge clk)

signal_dly <= signaal;als het echt dezelfde is als de

toewijzen signal_dly = signaal;??????????????????
 
Ik denk het niet.

vóór clk.rising, het signaal waarde verandert.

gebruik "asssign" de signal_dly zal het de waarde te veranderen.
Maar in steeds blok met CLK, de signal_dly niet
veranderen.

 
cnspy schreef:

Ik denk het niet.

vóór clk.rising, het signaal waarde verandert.

gebruik "asssign" de signal_dly zal het de waarde te veranderen.

Maar in steeds blok met CLK, de signal_dly niet

veranderen.
 
Hi, jelydonut,
Je hebt gelijk dit is een oneshot circuit.The oneshot puls wordt generateing in de stijgende flank van 'signalen'.Ik gesimuleerd en de broncode is bijgevoegd.
Ik gesimuleerd in NC-verilog, dus bepaalde wijzigingen kunnen worden aangebracht in modelsim.

cac

module oneshot;
reg signal_dly, signaal, clk;
parameter vertraging = 1;

aanvankelijke
beginnen
# 5;
CLK = 0;
voor altijd
clk = # 10 ~ clk;
eindigen

aanvankelijke
beginnen
# 7;
signaal = 0;
voor altijd
signaal = # 20 ~ signaal;
eindigen

altijd @ (posedge clk)
signal_dly <= # vertraging signaal;toewijzen # vertraging signal_os = signaal & ~ signal_dly;

aanvankelijke
beginnen
$ shm_open ( "waves.shm");
$ shm_probe ( "AS");
eindigen

endmodule

 

Welcome to EDABoard.com

Sponsor

Back
Top