UMEÅ UNIVERSITET
Tillämpad fysik och elektronik
Digitalteknik
Lars Wållberg/Håkan Joëlson
|
|
2001-01-26
v 2.1
|
ELEKTRONIK
Digitalteknik
Laboration D152
Kombinatoriska nät, VHDL, PLD
Namn:
Datum:
Epostadr:
Kurs:
Studieprogram:
Innehåll:
Kombinatoriska nät beskrivna med VHDL och realiserade med PLD
Uppgift 1 EXOR-grind med kommentar
2 Enbits heladderare
3 Enbits komparator
4 4/1 multiplexer
5 Kombinatoriskt nät med 7-segment-display
Uppgift 1 (introduktion/övning)
Använd en PLD (Programmable Logic Device) för att realisera en EXOR grind.
1. Läs om Warp i häftet "Vägledning till Warp".
2. Beskriv grinden med VHDL. (Använd kod från något av exemplena nedan om du vill.)
3. Simulera funktionen
4. Programmera en kapsel (PALCE 22V10-PC eller GAL22V10)
5. Koppla upp och testa funktionen.
Kommentar
Uppgiften är mycket enkel, men är tänkt att ge grundkunskaper om VHDL och utvecklingsverktyget Warp.
Följande exempel på lösning är ett typiskt exempel på VHDL-kod med BOOLEAN EQUATIONS:
ENTITY exor IS PORT(
a,b :IN bit;
ut :OUT bit);
END;
ARCHITECTURE beh_exor OF exor IS
BEGIN
ut <= ((NOT b) AND a) or (b AND (NOT a));
END;
En annan lösning kunde kort och gott vara
ARCHITECTURE beh_exor OF exor IS
BEGIN
ut <= a XOR b;
END;
VHDL har en bestämd syntax, d.v.s. det finns fasta regler för hur man skriver VHDL-kod. Det finns en bestämd ordning för hur man ska skriva instruktionerna, så att programvaran kan "förstå" den uppgift/funktion man vill ha utförd. Denna syntax är något man måste lära sig.
De tre följande uppgifterna behöver inte redovisas, och programmering av kapsel är inte nödvändig. Uppgift 5 däremot ska redovisas (se nedan).
Uppgift 2
Beskriv en enbits heladderare med insignalerna a0, b0 och Cin samt utsignalerna sum och Cut. med VHDL-kod.
Uppgift 3
Figuren visar en enbits komparator. Beskriv en sådan i VHDL-kod med 2 ingångar, a och b, och tre utgångar som visar resultatet av komparationen enl. diagrammet. (Bara en utgång kan bli aktiv åt gången.)
a>b
a
a=b
a
b
Uppgift 4
En 4/1 multiplexer ska beskrivas med VHDL-kod. Välj själv benämningar på in och utsignaler.
Uppgift 5
Realisera sista uppgiften i laboration D151 med enbart en 22V10-kapsel och en 7-segmentdisplay. BCD/7-segments-omvandlare ska inte användas.
Minst tre insignaler ska "räknas" och visas på en 7-segments display. (Glöm inte att skydda kretsarna med strömbegränsande resistorer till displayen.)
Redovisning Skriftligt: Förarbete (inkl. kodning av in- och utsignaler)
VHDL-kod
simuleringsresultat (inkl. alla insignalskombinationer) med tolkande kommentarer
Praktiskt: Visa upp en fungerande koppling för labhandledare.
|