Hardwarebeschrijvingstalen en verificatie

Wat wordt count bij de bovenstaande 4-bits teller wanneer de klok stijgt terwijl count 15 is?

reg [3:0] count;
always @(posedge clk)
    count <= count + 1;
  1. A16
  2. B0
  3. CBlijft 15
Antwoord en toelichting tonen

Antwoord: B. 0

Een reg van 4 bits kan alleen 0 tot 15 weergeven. Bij het optellen van 1 bij 15 (binair 1111) ontstaat 10000, maar het bovenste bit past niet en wordt weggegooid, dus count wordt 0000, oftewel 0. Met deze eigenschap kunnen tellers worden gemaakt die na een vast aantal herhalen. Daar staat tegenover dat onbedoeld overlopen op een onverwachte plaats een bron van fouten is, dus de bitbreedte van signalen vraagt steeds aandacht.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Hardwarebeschrijvingstalen en verificatie

  1. In Verilog worden de 8-bits signalen a en b opgeteld en wordt het resultaat aan het 8-bits signaal s toegekend (assign s = a + b;). Welk aandachtspunt is juist?
  2. Als a zoals hierboven is geschreven als een ondertekende -1, werd gt 1. Welke reden is juist?
  3. Welke combinatie van waarden van de vierwaardige logica die in Verilog-simulatie wordt gebruikt is juist?
  4. In de simulatie was de waarde van een register zonder reset eerst X. Wat wordt aangenomen dat er in een echte chip gebeurt?
  5. Als sel in de bovenstaande beschrijving X (onbepaald) is, wordt in Verilog-simulatie b voor y gekozen. Welke reden waarom deze eigenschap bij verificatie een probleem is, is juist?

Vergelijkingen bij dit onderwerp