Kompendium - Datorteknik

Kompendium - Datorteknik Kompendium - Datorteknik

da.isy.liu.se
from da.isy.liu.se More from this publisher
12.07.2015 Views

Innehåll1 Introduktion till VHDL 41.1 Inledning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.2 Programmerbara kretsar . . . . . . . . . . . . . . . . . . . . . . . 41.2.1 Exempel på PAL, 16R8 . . . . . . . . . . . . . . . . . . . 51.2.2 22V10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.2.3 CPLD Xilinx 9572 . . . . . . . . . . . . . . . . . . . . . 71.2.4 Minimikrav och goda råd . . . . . . . . . . . . . . . . . . 71.3 En första smak på VHDL . . . . . . . . . . . . . . . . . . . . . . 81.4 Kombinatoriska nät med VHDL . . . . . . . . . . . . . . . . . . 91.5 Sekvensnät med VHDL . . . . . . . . . . . . . . . . . . . . . . . 101.5.1 PORT-satsen: IN, OUT, INOUT och BUFFER . . . . 151.6 Lite grundläggande definitioner . . . . . . . . . . . . . . . . . . . 151.6.1 Identifierare . . . . . . . . . . . . . . . . . . . . . . . . . 151.6.2 Signaler och variabler . . . . . . . . . . . . . . . . . . . 161.7 Datatyper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161.7.1 Numeriska datatyper . . . . . . . . . . . . . . . . . . . . 171.7.2 Konstanter . . . . . . . . . . . . . . . . . . . . . . . . . 171.7.3 Uppräkningsbara datatyper och egendefinierade datatyper 171.7.4 Grupperade signaler: array och record . . . . . . . . . . . 181.8 Mer kombinatorik . . . . . . . . . . . . . . . . . . . . . . . . . . 191.8.1 Utanför PROCESS: WITH-SELECT-WHEN . . . . . . . . 191.8.2 Utanför PROCESS: WHEN-ELSE . . . . . . . . . . . . . 201.9 Mer sekvensnät . . . . . . . . . . . . . . . . . . . . . . . . . . . 201.9.1 Inuti PROCESS: IF-THEN-ELSE . . . . . . . . . . . . 201.9.2 Inuti PROCESS: CASE-WHEN . . . . . . . . . . . . . . . 211.9.3 En utvidgning . . . . . . . . . . . . . . . . . . . . . . . . 221.10 Lite extra för att prata med omvärlden . . . . . . . . . . . . . . . 241.10.1 Att använda externa bibliotek . . . . . . . . . . . . . . . 241.11 Syntetiserbar VHDL . . . . . . . . . . . . . . . . . . . . . . . . 242 Utvecklingsverktyget ISE 262.1 En snabblektion i Project Navigator . . . . . . . . . . . . . . . . 262.2 Simulering i ModelSim . . . . . . . . . . . . . . . . . . . . . . . 311

2.2.1 COMPONENT-satsen . . . . . . . . . . . . . . . . . . . 333 Ett miniprojekt: Personnummerkontroll 353.1 Inledning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353.2 Kravspecifikation . . . . . . . . . . . . . . . . . . . . . . . . . . 353.3 Designskiss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363.4 Översättning till VHDL . . . . . . . . . . . . . . . . . . . . . . . 393.4.1 Synkronisering och enpulsning . . . . . . . . . . . . . . . 393.4.2 10-räknare . . . . . . . . . . . . . . . . . . . . . . . . . 393.4.3 Register . . . . . . . . . . . . . . . . . . . . . . . . . . . 403.4.4 X2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403.4.5 Adderare . . . . . . . . . . . . . . . . . . . . . . . . . . 413.4.6 Register med mod-10 på ingången . . . . . . . . . . . . . 413.4.7 Nätet K . . . . . . . . . . . . . . . . . . . . . . . . . . . 413.4.8 Kommentar . . . . . . . . . . . . . . . . . . . . . . . . . 413.5 Simulering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423.6 Programmering av CPLD 9572 . . . . . . . . . . . . . . . . . . . 424 Laborationsuppgift: IR-mottagare 444.1 Inledning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444.2 Sändaren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444.3 Mottagaren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454.4 Uppgifter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46A Kopplingsscheman 48A.1 Blockschema 9572 . . . . . . . . . . . . . . . . . . . . . . . . . 48A.2 Pinnar 9572 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48B VHDL-kod 50B.1 Komplett VHDL-kod för personnummermaskinen . . . . . . . . . 50B.2 Testbänk för personnummermaskinen . . . . . . . . . . . . . . . 52C Projektkatalog för DK/IT 2005 55D Virteknik 61E Logikanalysatorn HP54620A 63F Att bygga en liten dator 66F.1 En ackumulatormaskin . . . . . . . . . . . . . . . . . . . . . . . 66F.1.1 Allmänt . . . . . . . . . . . . . . . . . . . . . . . . . . . 66F.1.2 Programmerarmodell . . . . . . . . . . . . . . . . . . . . 66F.1.3 Instruktionsrepertoar. . . . . . . . . . . . . . . . . . . . . 67F.1.4 Adresseringsmoder . . . . . . . . . . . . . . . . . . . . . 69F.1.5 Indexerad adresseringsmod. . . . . . . . . . . . . . . . . 712

2.2.1 COMPONENT-satsen . . . . . . . . . . . . . . . . . . . 333 Ett miniprojekt: Personnummerkontroll 353.1 Inledning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353.2 Kravspecifikation . . . . . . . . . . . . . . . . . . . . . . . . . . 353.3 Designskiss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363.4 Översättning till VHDL . . . . . . . . . . . . . . . . . . . . . . . 393.4.1 Synkronisering och enpulsning . . . . . . . . . . . . . . . 393.4.2 10-räknare . . . . . . . . . . . . . . . . . . . . . . . . . 393.4.3 Register . . . . . . . . . . . . . . . . . . . . . . . . . . . 403.4.4 X2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403.4.5 Adderare . . . . . . . . . . . . . . . . . . . . . . . . . . 413.4.6 Register med mod-10 på ingången . . . . . . . . . . . . . 413.4.7 Nätet K . . . . . . . . . . . . . . . . . . . . . . . . . . . 413.4.8 Kommentar . . . . . . . . . . . . . . . . . . . . . . . . . 413.5 Simulering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423.6 Programmering av CPLD 9572 . . . . . . . . . . . . . . . . . . . 424 Laborationsuppgift: IR-mottagare 444.1 Inledning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444.2 Sändaren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444.3 Mottagaren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454.4 Uppgifter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46A Kopplingsscheman 48A.1 Blockschema 9572 . . . . . . . . . . . . . . . . . . . . . . . . . 48A.2 Pinnar 9572 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48B VHDL-kod 50B.1 Komplett VHDL-kod för personnummermaskinen . . . . . . . . . 50B.2 Testbänk för personnummermaskinen . . . . . . . . . . . . . . . 52C Projektkatalog för DK/IT 2005 55D Virteknik 61E Logikanalysatorn HP54620A 63F Att bygga en liten dator 66F.1 En ackumulatormaskin . . . . . . . . . . . . . . . . . . . . . . . 66F.1.1 Allmänt . . . . . . . . . . . . . . . . . . . . . . . . . . . 66F.1.2 Programmerarmodell . . . . . . . . . . . . . . . . . . . . 66F.1.3 Instruktionsrepertoar. . . . . . . . . . . . . . . . . . . . . 67F.1.4 Adresseringsmoder . . . . . . . . . . . . . . . . . . . . . 69F.1.5 Indexerad adresseringsmod. . . . . . . . . . . . . . . . . 712

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!