Simulera med ModelSim

Relevanta dokument
LAB VHDL-programmering

Simulering med ModelSim En kort introduktion

Simulering med ModelSim En kort introduktion

Juni 2003 PlanCon Viewer Handledning PlanCon PROJEKT

Laboration VHDL introduktion

Paneler - VCPXX.2. Programmeringsmanual för VCP-paneler. Revision 2

Flödesschema som visar hur man använder Quartus II.

Installationsanvisning för Su Officemallar 2007 För PC Word och PowerPoint

Introduktion till syntesverktyget Altera Max+PlusII

Användarhantering Windows 7 I denna laboration kommer vi att skapa nya användare och grupper och titta på hur man hantera dessa.

E-post. A. Windows Mail. Öppna alternativ. Placera ikonen på skrivbordet.

Laboration 1 Introduktion till Visual Basic 6.0

Visa/Dolj knappar i Webeditor 8

Operativsystem - Windows 7

Gran Canaria - Arbetsbeskrivning knapplänkar (Mediator 8)

Till flera av ovanstående finns det dessutom varianter, vilka kommer att presenteras i de olika avsnitten.

Kom igång med Etikettskrivaren 1. Ladda ner följande installationsprogram Ladda ner Drivrutiner för etikettskrivare Zebra

Datum Ert datum Vår beteckning Banförvaltningen Vidmakthållande SE Borlänge Besöksadress: Jussi Björlings väg 2

BaraTrav Prenumeration och Installation Version 1.3.4

-c wc. Pre- Next state Out- Vi ser att tillstånden är redan sorterade i grupper med olika utsignaler,

Steg 16 Video Debut video capture Video pad editor Windows 7/8

Kapitel 16 Situationsplan... 3

Din guide till. Klientinstallation MS Driftservice

Starta Egenrapportering automatiskt i Mac

Myndigheten för samhällsskydd och beredskap 1 (10) Datum Installationsguide ROPA

Kom igång med. Windows 8. DATAUTB MORIN AB

Introduktion till Xilinx CPLD och ISE WebPack 6.2 Version NV

PSpice hemma. Som simuleringsprogramvara använder vi Orcad PSpice, samma program kommer sedan att användas I elektronikkurserna.

SKAPA DET FÖRSTA PROJEKTET I mikrobasic PRO for AVR

Installationsanvisning för Su Officemallar 2007 För PC

Labora&on 1 Introduk&on &ll utvecklingsmiljön övningar/uppgi<er

Manual till Båstadkartans grundläggande funktioner

Administratörsrättigheter i Windows krävs för att genomföra installationen.

Patrik Calén

Lathund länkar. Skapa en intern länk som en sida

Chalmers Tekniska Högskola Institutionen för Data- och Informationsteknik. EDA 321 Digitalteknik syntes Laboration 1 - VHDL

Arbetsinstruktion. Platina light. Syfte. Dokumenthistorik

Så här skriver du ditt första program i C++

BLI VÄN MED DIN DATOR ENHETER MAPPAR FILER

INSTALLATION...3 ATT KOMMA IGÅNG...3 PROGRAMMETS DESIGN...4 LÄGGA TILL TABELL...4 EDITERA TABELL...4 EDITERA RELATION...5 SPARA OCH AVSLUTA...

Administration av lagets arbetsrum lathund

Visma Proceedo. Att logga in - Manual. Version 1.3 /

Installationsanvisningar för abc Datorövningar

Beställning till Husfoto. Handledning

Om Mappar Uppgift 1: Skapa en mapp på Skrivbordet... 2 Om enheter... 3 Uppgift 2: Byt namn på din nya Höst -mapp till Vår...

Manual till Båstadkartans grundläggande funktioner

Ibruktagande av Statistikcentralens gränssnittstjänster i QGISprogrammet

FIRSTCLASS. Innehåll:

Innehåll i detta dokument

Microsoft. Access Grundkurs.

Lägga till bild i e- handeln

Installationsanvisning för kursens programvara på egen dator

Verktyg och Utvecklingsmiljö. Föreläsning 2 Eclipse

Manual GISportalen (MapGuide) På Internet

NetBeans 5.5. Avsikt. Projektfönster

Väl installerat får du en ikon som du förhoppningsvis också hittar Så du klickar på den och startar upp programmet:

Code-Lite tutorial ( /RoJ)

Komponenter med COM (och COM+/VC++ 7.0)

Administration av lagets arbetsrum. Lathund

Instruktion för installation av etikettskrivare 2.27

RACCOON DEVELOPMENT AB

Laboration Fuzzy Logic

INSTÄLLNINGAR FÖR IRONCADS 2D-RITNING

Föreläsning 3. Programmering, C och programmeringsmiljö

På servern För att registrera och köra en Topocad 17 nätverkslicens krävs att man installerar den senaste Licensservern

WinStudio - Uppstart. Drifttagning av operato rspanel med IndraWorks och WinStudio. IndraWorks 14. Version

Lab1 Introduktion. 1 Syfte. 2 Innehåll Win32API Skapa trådar Kritiska sektioner Mailslothantering. 3 Förberedelse & Tips

MANUAL. fotoklok designer 3.5. Startskärmen

INTRODUKTION TILL VIVADO

15 Skapa en Start-Diskett

Inledande programmering med C# (1DV402) Ditt första C#-program med Visual Studio

Manual till webbkartornas grundläggande funktioner

Universitetskanslersämbetets Högskoleutforskare. En introduktion till analysvyn exemplet måluppfyllelse

Installationsanvisningar VisiWeb. Ansvarig: Visi Closetalk AB Version: 2.3 Datum: Mottagare: Visi Web kund

Visa stora ikoner utan text i Command Manager = Större arbetsyta

Flytt av. Vitec Mäklarsystem

Lathund för BankID säkerhetsprogram

6. Nu skall vi ställa in vad som skall hända när man klickar på knappen samt att markören skall ändra sig till en hand när markören är på knappen.

Chalmers ekniska Högskola Institutionen för Data- och Informationsteknik. EDA 321 Digitalteknik syntes Laboration 2 - VHDL

Lathund länkar. Skapa en intern länk som en sida

Programutveckling med Java Development Kit. (JDK 1.1.x) och Programmers File Editor (PFE 7.02)

Datorlaboration 0, Programmering i C++ (EDA623)

Referens till. WeavePoint 6 Mini

Länka in bilder från webben hjälper dig att använda bilder som du inte har sparade på din egen dator.

Sekvensnät i VHDL del 2

Spara filer eller mappar från ett kursrums filhanterare i Blackboard 9.1

Övning: Arbeta med Azure Explorer

Symprint Snabbstartsguide

Kopplingar via datalänk från Winbas till Excel samt Pivottabell 1 (13)

Mappar och filer för webbsidor

Thermoground 1.0 LTH Manual

Handhavande manual problemhantering

Skapa mapp. * Gör så här: Det finns många sätt att skapa mappar, men det enklaste sättet brukar vara följande.

Labora&on 1 Introduk&on &ll utvecklingsmiljön övningar/uppgi<er

Sync Master startas via Task Scedule (schemaläggaren). Programmet kan köras på servern utan att någon är inloggad på servern.

Grundkurs 1 IKT Filhantering

BILAGA 5 Fi2Utrymmen Bilaga till CAD-kravspecifikation med förvaltningsinformation Version 1.0

Kortkommandon Allmänna i Windows 7

Lathund grundkurs datorutbildning

Transkript:

Simulera med ModelSim ModelSim - simuleringsprogramvara ModelSim kan användas till att simulera VHDL-kod, för att avgöra om den är "rätt" tänkt. Alteras version av ModelSim är också kopplad till en "databas" med fakta om Altera-kretsar, tex. MAX-kretsarna, så man kan också göra simuleringar som tar hänsyn till "tidsfördröjningar" och andra fenomen inuti den tänkta målkretsen. ( Så länge som målkretsen är av Altera's fabrikat... ). Välj rätt programversion - i skolan finns flera olika installerade under startmenyn! Altera 13.0.1.232 Web edition\ ModelSim-Altera Starter Edition 13.0.1.232\ ModelSim-Altera 10.1d(Quartus II 13.0sp1) Starta ModelSim. I fönstret "important information" klickar man på Jumpstart för att få hjälp med att sätta upp ett projekt. 1

Därefter klickar man på länken "Create a Project" i välkomstfönstret. Skapa ett projekt. Project Name MAXsim kan vara ett lämpligt namn Project location H:/MAXwork bläddra dig fram till samma arbetsmapp som Du använde för Quartus Default Library Name work behåll det föreslagna namnet, det är standard vid VHDL-simulering Klicka på OK. 2

Vi väljer "Add Existing File" för att lägga till en VHDL-fil till projektet. "Bläddra" fram till filen codelock.vhd som vi tidigare skapade med Quartus. Klicka på OK. Därefter klicka på Close. Kodlåskoden i ModelSim ModelSim har en egen kompilator för att ta fram simuleringen ur VHDL-koden. Fast vi har kompilerat VHDL-koden i Quartus måste vi trots det kompilera den igen för ModelSim. Välj Compile menyn, alternativet Compile All. 3

Nu är VHDL-koden också kompilerad för Modelsim. Statussymbolen ändras från ett blått frågetecken till en grön bock! Simulera kodlås-mallen! Simuleringen går till så att vi ger olika komandon i Transcript-fönstret, och sedan följer ett utvalt antal signaler i fönstret Wave. Transcript-fönstret är ett klassiskt teckenbaserat terminalfönster där man ger kommandon, men man kan även ge de flesta kommandon genom menyval, eller genom att klicka på knappar. Kommandon skrivs dock ut i ut Transcript-fönstret, oavsett hur dom givits. Ladda Designen till simulatorn. Välj fliken Library, och öppna mappen work. Dubbelklicka på "Entity" codelock. En serie kommandon utförs nu som resulterar i att designen laddats in till simulatorn. I Transcript-fönstret kan man följa vilka kommandon det är som utförts. 4

Förberedelser inför simuleringen Vi behöver ha ett antal fönster öppna för att kunna följa simuleringen. Ge komnmandon i Transcript-fönstret eller klicka för i View-menyn. VSIM> view objects VSIM> view locals VSIM> view source VSIM> view wave -undock Modelsim består av ett otal "fönster". Det kan vara svårt att se allt på en gång. Med knappen Zoom/Unzoom förstorar man fönstret (på andra fönsters bekostnad). Med knappen Dock/Undock kan fönstret flyttas till valfri plats, det alternativet valde vi för Wavefönstret. Med knappen Close kan man stänga fönster som inte behövs för tillfället. Signaler i Wave Nästa steg är att ange för simulatorn vilka signaler Du vill följa i Wave-fönstret. Har man många signaler är det en bra idé att välja ut de signaler man är intresserad av, men här väljer vi att följa alla: add wave * Det finns flera alternativa sätt att lägga till signaler till Wave-fönstret: Välj signaler i Object-fönstret (Shift+Vänster Musknapp) och "dra och släpp" urvalet till Wave-fönstret. Högerklicka i Object-fönstret och välj Add to Wave. Ett Add to Wave dialog-fönster nås från menyraden under Add. 5

Format, Radix, Hexadecimal Tillståndsvariabeln q har 32 olika tillstånd, en sådan variabel är lättare att följa om den anges som en hexadecimal siffra, 00... 1F i stället för som ett femsiffrigt binärtal. Vi föreslår därför att Du markerar den variabeln och byter den till Hexadecimal. UUUUU byts då mot XX i Wave-fönstret. Övriga variabler passar bäst som binärtal. Skapa stimuli Den förinställda tidsupplösningen i Wave är nanosekunder, ns. En lämplig klockfrekvens för ett kodlås kan däremot vara så låg som 5 Hz, dvs. en periodtid om 0,2 sek. Enklast, för att inte behöva göra omfattande omställningar av programmet, är att "skala" om 6

problemet till en högre klockfrekvens med periodtiden 20 ns. Vi får i så fall då också tänka oss att det är "flinka" fingrar som trycker på knapparna. Stimuli, dvs. insignaler som klockpulser eller knapptryckningar, kan skapas med kommandot force i Transcript-fönstret. force codelock/clk 1 0ns, 0 10ns -repeat 20ns Genererar klockpulser för evigt. force codelock/k 000 force codelock/r 0000 Initierar variablerna r och k. run 100ns Kör simuleringen i 100 ns, dvs. fem hela perioder. Simulera knapptryckningen force codelock/k 001 force codelock/r 0001 run 30ns force codelock/k 000 force codelock/r 0000 run 800ns 30 ns (20+10) innebär att knapptryckningen med säkerhet kommer i mellanrummet mellan klockflankerna. Hela simuleringstiden 100 ns +30ns + 800 ns = 930 ns motsvarar 46,5 klockpulsperioder. Detta räcker för att visa låsets hela öppningsförlopp. 7

Do-file I stället för att skriva kommandon direkt i Transcript-fönstret, kan man köra många kommandon i följd som står i en sk. Do-file. Alternativt kan man i Windows kopiera text (Ctrl-C) och klistra in den (Ctrl-V) i Transcript. delete wave * add wave codelock/clk add wave codelock/k add wave codelock/r add wave codelock/q add wave codelock/unlock force codelock/clk 1 0ns, 0 10ns -repeat 20ns force codelock/k 000 force codelock/r 0000 run 100ns force codelock/k 001 force codelock/r 0001 run 30ns force codelock/k 000 force codelock/r 0000 run 800ns Så här skapar man en Do-file. Klistra in textkommandona ovan i filen. Spara den sedan bland de övriga filerna (i MAXwork) med filnamnstillägget.do. Du kör sedan en Do-file med dessa kommandon (i Transcript): restart -f do lock.do Hitta i Wave-fönstret Det kan vara svårt att hitta det man söker efter i Wavefönstret. Det finns därför en hel rad med hjälpverktyg som Zoom, Expanded time, Cursors mm. Add, Cursor. 8

En Cursor kan användas tillsammans med funktionen Edit, Wave Signal Search. Nu pekar Cursorn ut vad som händer (tydligen inget speciellt!) när q har tillståndet 07. Ägna nu lite tid åt att prova olika verktyg som finns för att orientera sig i Wavefönstret! Simuleringen har visat att låset öppnar för den tilltänkta knapptryckningen, men detta är inte tillräckligt - det behövs mycket mer "testande" innan man törs lita på konstruktionen! William Sandqvist william@kth.se 9