vhdl
vhdl basis fragen
vhdl basis fragen
Kartei Details
Karten | 20 |
---|---|
Sprache | Deutsch |
Kategorie | Elektronik |
Stufe | Universität |
Erstellt / Aktualisiert | 26.02.2017 / 25.11.2017 |
Weblink |
https://card2brain.ch/box/20170226_vhdl
|
Einbinden |
<iframe src="https://card2brain.ch/box/20170226_vhdl/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Lernkarteien erstellen oder kopieren
Mit einem Upgrade kannst du unlimitiert Lernkarteien erstellen oder kopieren und viele Zusatzfunktionen mehr nutzen.
Melde dich an, um alle Karten zu sehen.
Ergänze Signaldeklaration mysignal und mysignal2
mysiganl1 <= 2#1100#;
mysignal2 <= b"1100";
signal mysignal1 : integer;
signal mysignal2 : bit_vector(3 downto 0);
welcher Wert wird c zugewiesen? warum?
A := "111"
B := "1000"
if (A<B) then
c <= 1;
else
c <= 2;
end if;
A ist größer als B
weil der Vergleich
zweier unterschiedlich langer Vektoren bitweise von links erfolgt
c <= 2;
Welche Art von wait-statements kennen sie?
Kommentiere diese im bezug auf Synthetisierbarkeit
wait for 20 ns; --wait for a time (nicht synthetisierbar)
wait; --terminierendes wait (nicht synthetisierbar)
wait on clk; --wait on signal event (synthetisierbar)
wait until clk = `1`; --wait until true condition (synthetisierbar)
Warum müssen in kombinatorischen Prozessen Wertezuweisungen vollständig in allen Verzweigungen erfolgen?
Gibt es eine kürzere alternative Beschreibung?
Wenn ja, welche?
Fehlende Zuweisungen führen zu speicherndem Verhalten -> synthetiserten Latches.
(in kombinatorischen Prozessen ist dies nicht gewünscht)
Abhilfe: Default-Zuweisungen, vor der Verzweigung.
Für eine zusätzliche Abtaktung des Ausgangs (registered output) bei einem Mealy-Automaten gilt:
Gültige Ausgangswerte liegen grundsätzlich erst nach einer weiteren Taktperiode an.
Es wird zusätzlicher Hardware-Aufwand für die Ataktung notwendig.
Feedback-Schleifen werden sicher verhindert.
Was ist in einem postponed process nicht zulässig?
wait-statements und wertzuweisungen an Signale, ohne Verzögerungszeit
Nennen Sie (vier)
logische Reduktionsoperatoren
(unary reduction logical operators)
and/nand
or/nor
xor/xnor
Welchem Zweck dienen assert-Anweisungen?
Ausnahmebehandlung i.d.R. nur für Simulationszwecke.
Geprüft werden kann damit, ob die Modellierung den erwarteten Bedingungen entspricht.
um die Simulation zu beenden z.B.:
assert now < 100*PERIOD
report "End of simulation"
serverity failure;
package für das Unterprogram - Vorteil?
zusätzlicher body - Vorteil?
Verbesserung der Modularisierung und Wiederverwendbarkeit.
Fehler bzw. Änderungen im Body führen nicht zur Recompilierung der gesamten Hierarchie.
Wieso wird (hier) neben dem Paramter UEBRLF zusätzlich eine Variale UEBRTRG verwendet? -> entity schauen wie Parameter deklariert?!
UEBRLF ist als Ausgang festgelegt -> kann nicht gelesen werden.
Erklären Sie den Begriff
mode
class
im Bezug auf die Paramter des Unterprogramms.
Parametermodus bestimmt die Datenflussrichtung (in, out, inout)
Objektklasse (constant, variable, signal) muss der des Aufrufs entsprechen
Was sind generics?
= Konstante, die bei der Initialisierung ein individueller Wert zugewiesen wird
Alternative zu generics? unterschiede?
constants, haben üerall ihren fixen Wert
in welcher Phase werden generics aufgelöst?
in der elaboration phase ( beim compilieren)
beschreibe Syntheseergebnis einer assert-Anweisung?
es gibt kein syntheseergebnis. assert-anweisungen sind ausnahmebehandlungen, und können in synthese und simulation nur als meldung verwendet werden.
Gründe für unerwünschte Latches in gewollten kombinatorischen Schaltung?
Variablen werden gelesen, bevor sie geschrieben werden, z.B. auch durch eine fehlende Initialisierung.
Unvollständige Anweisungen oder fehlende Default-Zuweisung (z.B. fehlendes else / when others)
package body - wann notwendig?
wenn ein Unterprogramm über ein package definiert werden soll
(Das Verhalten des Unterprogramms steht dann im package body)
port modes - benennen und erläutern
IN -> Port kann nur gelesen, nicht geschrieben werden
OUT -> Port kann nur geschreiben werden (auch mehrere Treiber)
INOUT -> Port kann beliebig gelesen und geschrieben werden
BUFFER -> Port kann gelesen und von einem Treiber geschrieben werden
Historische Entwicklung von programmierbaren Geräten
die ersten reconfigurierbaren Verbindungen zwischen den ICs, durch die Technologien PAL/PLA oder CPLD
Technologische/grundlegende Voraussetzung des FPGAs
Die Verbindungen der Hardwareblöcke muss configurierbar sein.
Und um die Blöcke nicht nur ein einziges mal zu verschalten müssen Sie auch reconfigurierbar sein.
-
- 1 / 20
-