Hardwarebeschrijvingstalen en verificatie
Welke uitspraak over het soort reset en de werking in de bovenstaande beschrijving is juist?
always @(posedge clk or negedge rst_n)
if (!rst_n) q <= 0;
else q <= d;
- AEen synchrone reset, waarbij q alleen 0 wordt wanneer de klok stijgt terwijl rst_n 0 is
- BEen asynchrone reset, waarbij q direct 0 wordt zodra rst_n 0 wordt, zonder op de klok te wachten
- Cq wordt 0 wanneer rst_n 1 wordt
Antwoord en toelichting tonen
Antwoord: B. Een asynchrone reset, waarbij q direct 0 wordt zodra rst_n 0 wordt, zonder op de klok te wachten
Omdat 'negedge rst_n' in de sensitivity list staat, wordt het blok ook uitgevoerd op het moment dat rst_n van 1 naar 0 verandert, en wordt q onafhankelijk van de klok 0. Dit is een asynchrone reset. De '_n' in de naam is de conventie voor een signaal met negatieve logica dat bij 0 actief is. Een voordeel is dat ook resetten mogelijk is als de klok stilstaat, maar op het tijdstip waarop de reset wordt losgelaten moet worden gelet.
Verder: nog 9 vragen over Hardwarebeschrijvingstalen en verificatie