Hardwarebeschrijvingstalen en verificatie
Welke uitspraak over het verschil tussen het wire-type en het reg-type in Verilog is juist?
- AEen reg wordt altijd een flipflop en een wire altijd een combinatorische schakeling
- BEen wire stelt bedrading voor die bijvoorbeeld met een assign-statement wordt aangedreven, en een reg stelt een signaal voor waaraan in een always-blok een waarde wordt toegekend, maar een reg wordt niet altijd een flipflop
- CEen wire is een type voor getallen en een reg een type voor tekens
Antwoord en toelichting tonen
Antwoord: B. Een wire stelt bedrading voor die bijvoorbeeld met een assign-statement wordt aangedreven, en een reg stelt een signaal voor waaraan in een always-blok een waarde wordt toegekend, maar een reg wordt niet altijd een flipflop
In Verilog geldt de regel dat een signaal dat door een assign-statement of een module-uitgang wordt aangedreven als wire wordt gedeclareerd en een signaal waaraan in een always-blok wordt toegekend als reg. Een reg lijkt een afkorting van 'register', maar als erin always @(*) aan wordt toegekend, ontstaat een combinatorische schakeling en geen flipflop. Of het een flipflop wordt, hangt ervan af of de waarde op een klokflank wordt bijgewerkt. In SystemVerilog kunnen beide met het logic-type worden geschreven.
Verder: nog 9 vragen over Hardwarebeschrijvingstalen en verificatie