• Kombinatoriska funktioner i VHDL
  • Kommentar
  • Uppgift 2 Heladderare
  • Uppgift 4
  • Digitalteknik




    Download 81 Kb.
    bet2/5
    Sana01.04.2020
    Hajmi81 Kb.
    #9565
    1   2   3   4   5

    Laboration D163

    Programmerbar logik (PLD)
    Programmeringsspråket VHDL
    Kombinatoriska funktioner i VHDL för PLD
    Sekvensfunktioner i VHDL för PLD


    Innehåll Kombinatoriska funktioner
    Uppgift 1
    Introduktion/övning
    Uppgift 2
    Heladderare
    Uppgift 3
    Komparator
    Uppgift 4
    Kodlås
    Sekvensfunktioner
    Uppgift 5
    Övningsexempel
    Uppgift 6
    Automat

    Namn
    Personnummer


    Studieprogram
    Epostadress
    Datum för visad koppling (signerad)
    Datum för inlämning

    Nyckelord (för sökning i databas) Basic Stamp, I/O, LED, 7-segment, LCD, display,
    tangentbord, drivrutin, ASCII, givare, Timer, EEPROM

    Inriktningen i denna laboration är att få en förståelse för hur mer eller mindre komplicerade digitala kretsar kan förverkligas genom att programmera generella icke funktionsbestämda digitala kretsar (Programmable Logic Devices - PLD). Programmeringsspråket som avses här är VHDL (Very high speed integrated circuit Hardware Definition Language). I laborationen ingår att programmera några olika typer av digitala funktioner.

    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 instruktio­nerna, så att programvaran man använder kan "förstå" den uppgift/funktion man vill ha utförd. Denna syntax är något man måste lära sig.

    Som förberedelse för denna laboration, läs om språket VHDL i häftet Grunderna i VHDL och om programvaran WARP i häftet Vägledning till Warp. Konsultera häftena vid behov i det fortsatta arbetet

    Digitala logiska kretsar och nät delar man in i kombinatoriska kretsar/nät och sekvenskretsar/nät.

    Kombinatoriska funktioner i VHDL


    Det som utmärker kombinatoriska kretsar och nät är att en viss utsignal alltid beror enbart av en viss specifik insignal.

    Uppgift 1 Introduktion/övning


    Använd en PLD (Programmable Logic Device) för att realisera en EXOR grind.

    1. Beskriv grinden med VHDL. (Använd kod från något av exemplena nedan om du vill.)

    2. Simulera funktionen

    3. Programmera en kapsel (PALCE 22V10-PC eller GAL22V10)

    4. Koppla upp och testa funktionen.

    Kommentar


    Uppgiften är mycket enkel, men är tänkt att ge grundkunskaper om VHDL och utveck­lingsverktyget 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;

    Uppgift 2 Heladderare


    Beskriv en enbits heladderare med insignalerna a0, b0 och Cin samt utsignalerna sum och Cut. med VHDL-kod.

    Uppgift 3 Komparator


    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.)



    Uppgift 4


    En 4/1 multiplexer ska beskrivas med VHDL-kod. Välj själv benämningar på in och utsignaler.

    Download 81 Kb.
    1   2   3   4   5




    Download 81 Kb.