Wat is Sensitivity list?

Reeks signalen achter always in @( ) in Verilog die bepaalt wanneer het blok wordt uitgevoerd. Bij een combinatorische schakeling leidt een vergeten signaal tot een verschil tussen simulatie en schakeling.

Japanse benaming: センシティビティリスト

“Sensitivity list” komt voor in 4 oefenvragen uit 1 onderwerpen, bijv. Hardwarebeschrijvingstalen en verificatie.

Vakgebied: Hardwarebeschrijvingstalen en verificatie

Nu oefenen: vragen over Sensitivity list

Welke uitspraak over de betekenis van 'always @(*)' in Verilog is juist?

  1. AHet stelt een flipflop voor die bij elke stijgende klokflank wordt uitgevoerd
  2. BHet wordt één keer aan het begin van de simulatie uitgevoerd
  3. CHet stelt een combinatorische schakeling voor die wordt uitgevoerd telkens wanneer een van de signalen die in het blok worden gelezen verandert
Antwoord en toelichting tonen

Antwoord: C. Het stelt een combinatorische schakeling voor die wordt uitgevoerd telkens wanneer een van de signalen die in het blok worden gelezen verandert

Wat na always tussen @( ) staat heet de sensitivity list en geeft aan bij welke signaalwijzigingen het blok wordt uitgevoerd. Met '*' worden automatisch alle in het blok gelezen signalen opgenomen, zodat een combinatorische schakeling juist wordt voorgesteld. Handmatig opsommen leidt gemakkelijk tot weglatingen, dus voor combinatorische schakelingen is '@(*)' of always_comb van SystemVerilog het veiligst.

Welke uitspraak over de rol van lint-tools die bij HDL-verificatie worden gebruikt is juist?

  1. AEen apparaat dat pluisjes uit de chip verwijdert
  2. BEen hulpmiddel dat de golfvormen van de simulatie mooi weergeeft
  3. CZonder simulatie de beschrijving onderzoeken en problemen vinden zoals niet-overeenkomende bitbreedtes, onbedoelde latches en niet te synthetiseren schrijfwijzen
Antwoord en toelichting tonen

Antwoord: C. Zonder simulatie de beschrijving onderzoeken en problemen vinden zoals niet-overeenkomende bitbreedtes, onbedoelde latches en niet te synthetiseren schrijfwijzen

Een lint-tool onderzoekt de HDL-beschrijving statisch aan de hand van regels en wijst op schrijfwijzen die grammaticaal juist zijn maar gemakkelijk problemen geven. Voorbeelden zijn toekenning van signalen met verschillende breedte, weglatingen in de sensitivity list, het afleiden van latches, het mengen van blokkerende en niet-blokkerende toekenning en fouten in de omgang met klokken. Omdat het zonder het maken van tests kan worden uitgevoerd, kan het vroeg in het ontwerp de moeite van latere verificatie verminderen.

“Sensitivity list” in de toelichting

Vragen met “Sensitivity list” (4)

  1. Welke uitspraak over de betekenis van 'always @(*)' in Verilog is juist?
  2. Dit is zoals hierboven geschreven als een combinatorische schakeling bedoeld. Welk mogelijk probleem is juist?
  3. Welke uitspraak over het soort reset en de werking in de bovenstaande beschrijving is juist?
  4. Welke uitspraak over de rol van lint-tools die bij HDL-verificatie worden gebruikt is juist?

Vergelijkingen met deze term

Verwante termen

Combinatorische schakeling Verilog Numerieke apertuur (NA) SystemVerilog Logische synthese Asynchrone reset Lint Hardwarebeschrijvingstaal (HDL) Blocking assignment Combinatorische lus (combinational loop)

Naar de woordenlijst