Jy kan die nieblokkerende prosedureverklaring gebruik wanneer jy ook al verskeie registeropdragte binne dieselfde tydstap wil maak, sonder inagneming van orde of afhanklikheid van mekaar. Dit beteken dat nie-blokkerende stellings meer na werklike hardeware lyk as blokkeeropdragte.
Hoekom gebruik ons nie-blokkering in blok?
Blokkerende (=) en nie-blokkerende (<=) opdragte word verskaf om die uitvoeringsbevel te beheer binne 'n altyd blok stellinguitvoering. Nie-blokkerende opdragte blokkeer letterlik nie die uitvoering van die volgende stellings nie. Die regterkant van alle stellings word eers bepaal, dan word die linkerkante saam toegeken.
Wanneer sal jy blokkering vs nie-blokkerende opdragte gebruik wanneer jy opeenvolgende logika kodeer?
Riglyn 1: Wanneer jy opeenvolgende logika modelleer, gebruik nie-blokkerende opdragte Riglyn 2: Wanneer jy grendels modelleer, gebruik nieblokkerende opdragte. Daar is baie maniere om kombinasielogika met Verilog te kodeer, maar wanneer die kombinasielogika met 'n altyd-blok gekodeer word, moet blokkeeropdragte gebruik word.
Wat is blokkerende en nie-blokkerende opdragte?
blokke, met subtiel verskillende gedrag. • Blokkeeropdrag: evaluering en opdrag is onmiddellik. • Opdrag wat nie blokkeer nie: alle opdragte is uitgestel tot almal . regterkante is geëvalueer (einde van simulasie.
Waar word blokkerende en nieblokkerende Verilog gebruik?
Hier is 'n goeie reël vir Verilog: In Verilog, as jy wil hê om sekwensiële logika te skep, gebruik 'n geklokte altyd blok met nie-blokkerende opdragte As jy kombinasie-logika wil skep 'n altyd blok met blokkeeropdragte. Probeer om nie die twee in dieselfde blokkie altyd te meng nie.