SystemVerilog Flashcards

1
Q

always_comb

A
  • zum Zeitpunkt 0, nachdem alle initial und always Blöcke gestartet sind
  • immer wenn Wert von right hand side sich ändert
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

always Blöcke

A
  • führt eine Instruktion als Endlosschleife aus
  • wird durch begin…end zusammengefasst
  • alle always Blöcke werden parallel ausgeführt
  • ohne explizite Verzögerungsangabe wird die simulierte Systemzeit durch die Ausführung nicht erhöht
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

@

A

Wartet auf Änderung von kombinatorischem Ausdruck

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

@(posedge)

A

wartet auf steigende Flanke von expr
(0 -> 1, x -> 1, 0 -> x)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

@(negedge)

A

wartet auf fallende Flanke von expr (1 -> 0, x -> 0, 1 -> x)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

@*

A

wartet auf Änderung eines der im always Block gelesenen Signale

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Blockierende Zuweisungen

A

signal = expr

expr wird ausgewertet und an signal zugewiesen, bevor nächste Zuweisung behandelt wird (sequentiell)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Nicht-blockierende Zuweisungen

A

signal <= expr

expr wird ausgewertet aber noch nicht an signal zugewiesen
-> erst bei Fortschreiten der Systemzeit erfolgt Zuweisung an signal
-> werden parallel abgehandelt

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Arten von Testrahmen

A
  • Einfach: Testdaten an UUT ablegen und Ausgaben anzeigen
  • Selbstprüfend: Ausgaben zusätzlich auf Korrektheit prüfen
  • Selbstprüfend mit Testvektoren: variable Testdaten
How well did you know this?
1
Not at all
2
3
4
5
Perfectly