320 likes | 558 Views
LAB VHDL-programmering. Med ett breakoutboard kan man använda kopplingsdäck till komponenter som egentligen är avsedda för ytmontering på kretskort. Man kan enkelt prova olika kopplingar.
E N D
LAB VHDL-programmering Med ett breakoutboard kan mananvända kopplingsdäck till komponentersom egentligen är avsedda för ytmontering på kretskort. Man kan enkelt prova olika kopplingar. På så sätt använder vi samma teknik som i föregående laboration – trots att vi nu går över till mer komplexa så kallade CPLD-kretsar och programmerar dem med VHDL-språket. William Sandqvist william@kth.se
MAX-krets Macrocell William Sandqvist william@kth.se
MAX-krets Räcker inte grindarna till i en macrocell så kan kompilatorn ”låna in” resurser från ”granncellen”. William Sandqvist william@kth.se
MAX-krets 16 macroceller bildar en LAB. Vår labkrets innehåller 32 st makroceller, 2 st LAB. (LAB A LAB B) Blocket PIA används för att sammanbinda LAB-enheterna. William Sandqvist william@kth.se
Laborationsuppgift - kodlås Uppgift: att skriva VHDL kod för ett kodlås som öppnas med koden ”de fyra sista siffrorna i ditt personnummer”. Ledning: en VHDL ”mall” för ett förenklat kodlås som öppnas med koden ”siffran ett”. William Sandqvist william@kth.se
LAB utrustning med MAX-krets K3 K2 K1 R4 R3 R2 R1 Tangenterna avkodas som ”en av tre” Kolumner,och ”en av fyra” Rader. William Sandqvist william@kth.se
Quartus tutorial för MAX CPLD förskolans centralt administrerade datorer QuartusII Börja med att skapa ett projekt.File, New, New Quartus II Project William Sandqvist william@kth.se
New Project Wizard En New Project Wizard hjälper till att skapa projektet på rätt sätt. William Sandqvist william@kth.se
Project Name and Directory I skolan måste hela projektet ligga på ditt H:\ Name:codelock Top-Level Entity: codelock (OBS codelock måste ”matcha” det namn Du senare anger som entity i din VHDL-fil) William Sandqvist william@kth.se
Add Files Vi har inga gamla användbara filer att lägga till i projektet – därför går vi direkt vidare med Next>. William Sandqvist william@kth.se
Family and Device Settings Family: MAX3000A Available devices: EMP3032ALC44-10 William Sandqvist william@kth.se
EDA Tool Settings Vi kommer inte att använda några andra programmeringsverktyg än Quartus – därför går vi direkt vidare med Next>. William Sandqvist william@kth.se
Summary - sammanfattning Här sammanfattas dina val. Kontrollera, och avsluta därefter ”Wizard” med Finish William Sandqvist william@kth.se
Projektet har skapats William Sandqvist william@kth.se
VHDL koden • Skapa en blank fil för VHDL-koden. File, New, VHDL File • Mallprogrammet är komplett (men det är till ett förenklat kodlås). William Sandqvist william@kth.se
Skriv, eller klistra in VHDL koden Mappen måste ligga i H:\ Observera att entity i VHDL-filenska ”matcha” projektets Top Level Entity!Spara filen med: File, Save As William Sandqvist william@kth.se
Analysis and Synthesis När man har nyskriven kod är det onödigt att köra hela verktygs-kedjan – risken är stor att det finns felaktigheter längs vägen … Från början kör man bara Analysis & Synthesis. William Sandqvist william@kth.se
Analysis and Synthesis William Sandqvist william@kth.se
Labutrustningarna har olika ledningsdragning! K3 K2 K1 ___________ | | | | R4 | 1 | 2 | 3 | R3 | 4 | 5 | 6 | R2 | 7 | 8 | 9 | R1 | * | 0 | # | |___|___|___| Det är DB25 kontaktens stift nr 1… 10 som används av tangenterna. William Sandqvist william@kth.se
Så här identifierarDu pinne nr 1. Vad gäller för just din utrustning? 1 Pinne 1:s placering William Sandqvist william@kth.se
Pin Planner Så här väljer vi pinne 43 som klock-ingång. William Sandqvist william@kth.se
Pin Planner Vid lab är alla utrustningarna kopplade på olika sätt, så Du måste göra en egen pin-planering för din labutrustning. Bildens pinnplan kan bara ses som ett exempel. William Sandqvist william@kth.se
Start Compilation Start Compilation kör hela verktygskedjan. William Sandqvist william@kth.se
Compilation successful De 3 varningarna (fler med annan programversion) handlar om ”verktyg” som saknas i vår programversion men som vi inte behöver. William Sandqvist william@kth.se
Chip-programmering En JTAG kontakt är ansluten till MAX-chippet för ”in circuit programming”. Chip-programmering sker med en USB-blaster. William Sandqvist william@kth.se
Programmer William Sandqvist william@kth.se
Programmer William Sandqvist william@kth.se
Programmer Slå av spänningen till labutrustningen när Du kopplar i och ur USB-blastern. Ha spänningen inkopplad till labutrustningen när Du programmerar chippet! PowerOn/Off William Sandqvist william@kth.se
Programmer Successful William Sandqvist william@kth.se
Prova funktionen! PowerOn/Off Mall-programmet gäller ett förenklat kodlås som öppnar för tangenten ”1”, lite väl enkelt kan nog tyckas … ! William Sandqvist william@kth.se
Öppna låset med ditt personnummer! Nu är det dags att skriva om VHDL-koden så att låset öppnar för de fyra sista siffrorna i ditt personnummer! ( Om Du förbereder koden för ditt personnummer, så kan två i en laborationsgrupp bidraga med hälften av koden var vid laborationen ). William Sandqvist william@kth.se