Hardwarebeschrijvingstalen en verificatie
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?
- AOptellen van twee 8-bits waarden kan in Verilog niet worden geschreven
- BHet resultaat wordt automatisch tot 16 bits verbreed
- CAls de som groter is dan 255, wordt de overdracht naar het 9e bit weggegooid, dus als de overdracht nodig is, moet s 9 bits zijn
Antwoord en toelichting tonen
Antwoord: C. Als de som groter is dan 255, wordt de overdracht naar het 9e bit weggegooid, dus als de overdracht nodig is, moet s 9 bits zijn
De som van twee 8-bits waarden is maximaal 255+255=510, wat 9 bits vereist. Als de bestemming s 8 bits is, wordt de overdracht naar het bovenste bit stilzwijgend weggegooid, zodat bijvoorbeeld 200+100 gelijk wordt aan 44. Als ook de overdracht nodig is, wordt s als 9 bits gedeclareerd. Verilog geeft bij toekenning van signalen met verschillende breedte geen fout maar kapt af of verbreedt, dus het is effectief breedteverschillen met een lint-tool op te sporen.
Verder: nog 9 vragen over Hardwarebeschrijvingstalen en verificatie