Omkopplare, inverterare och LED



Relevanta dokument
Tärning med ABEL-macro

Räknare med sjusegmentdisplay

SKAPA DET FÖRSTA PROJEKTET I mikrobasic PRO for AVR

Introduktion till Xilinx CPLD och ISE WebPack 6.2 Version NV

Word Grunderna 1. Om du kan det allra enklaste i Word, hoppa över uppgifterna A-E.

Simulering med ModelSim En kort introduktion

Lunds Universitet LTH Ingenjörshögskolan IDa1, IEa1 Helsingborg. Laboration nr 4 i digitala system ht-15. Ett sekvensnät. grupp. namn.

Introduktion till syntesverktyget Altera Max+PlusII

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

3. Hämta och infoga bilder

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.

Simulera med ModelSim

Kom igång. Readyonet Lathund för enkelt admin. Logga in Skriv in adressen till din webbsida följt av /login. Exempel:

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.

DK-serien. Enklare bildredigering med Irfanview

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

FIRSTCLASS. Innehåll:

Gran Canaria - Arbetsbeskrivning knapplänkar (Mediator 8)

Skapa mappar, spara och hämta dokument

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

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

Verktygsfält. Hantering av webbkarta Grundinstruktion. Sida 1 av 6. De olika verktygen och delarna förklaras i detalj längre ner i dokumentet.

Workshop PIM 2 - PowerPoint

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

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

Välj bort om du vill. 96 Internet och e-post. 2. Mail-programmet finns i datorn. 1. Skriv mail i sökrutan. Windows Live Mail i Aktivitetsfältet.

Workshop IBA internet based assessment

Programmets startmeny ser ut så här. För att få fram menyerna Avsluta, Inställningar och Användare måste du föra markören upp till det blåa fältet.

Innehåll Uppgifter ipad utbildning

IT-körkort för språklärare. Modul 9: Rätta skrivuppgifter

ANVÄNDARGUIDE. ViTex

Kortlaboration DIK. Digitalteknik, kombinatorik.

Vilken version av Dreamweaver använder du?

Simulering med ModelSim En kort introduktion

Skapa innehåll. Logga in och administrera hemsidan. Inloggningslänk: Byta lösenord

INTRODUKTION TILL VIVADO

Laboration 1 Introduktion till Visual Basic 6.0

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

Manual för användare av Nya Readsoft Online

Hur skriver man ett textdokument med bild i OpenOffice?

TILLÄMPNINGAR INOM DATORTEKNIK

Introduktion till xdigiflex-simulatorn

1 Photo Story Steg 1 - Hämta och fixa dina bilder

Träff 1 Skissa & Extrudera

UngO teket. Banläggning i OCAD. ungoteket.se

Juni 2003 PlanCon Viewer Handledning PlanCon PROJEKT

Manual för Readsoft Online- User/användare

TUTORIAL 3: ATT STARTA ETT NYTT PROJEKT, IMPORTERA ELLER DIGITALISERA MATERIAL, SAMT SORTERA DET.

skapa genvägar till andra sidor (externa och interna)

Här hittar du ett exempel på ritprogrammet:

Datakurs, grund. Thor Stone Education. Datakurs, grund. (Windows 7) Copyright Torsten Nilsson

Lathund till Publisher TEXT. Skriva text. Importera text. Infoga text. Dra och släpp

15 Skapa en Start-Diskett

Monitor Pro V7.x SCADA. Förstå och skapa symboler

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

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

Användarmanual Onepix Foto SVENSK

Manual

Operativsystem - Windows 7

Se till att posten är i Ändringsläge. Gå till rullgardinsmenyn under Föremål och välj Lägg in bild.

USB styrt DMX gränssnitt

1(15) Bilaga 1. Av Projekt Neuronnätverk, ABB Industrigymnasium, Västerås Vt-05

Lathund för BankID säkerhetsprogram

Om du behöver hjälp. Telia Simka Bruksanvisning

Bruksanvisning Bläckfisken USB

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

Grundkurs 1 IKT Filhantering

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

Komma igång med 3L Pro Komma igång med 3L. Copyright VITEC FASTIGHETSSYSTEM AB

Lathund för Novell Filr

TIPS OCH IDÉER för Windows XP och Word 2003

Guide till användande av interaktiv bok på ipad

INTRODUKTION TILL OrCAD

Handhavande manual problemhantering

Programsnickaren. Grunderna för hur du kommer igång och arbetar med Programsnickaren till Micro Rolltalk. Habilitering & Hjälpmedel

Gör så här för att rapportera:

Photo Story. Sara Eriksson IKT A, HT 2007

Guide till användande av interaktiv bok på Mac

D/A- och A/D-omvandlarmodul MOD687-31

Lathund CallCenter 2010

Instruktion för konvertering av e-post i Lotus Notes med Swing PDF Converter

Öppna EndNote varje gång när du vill samla referenser till ditt bibliotek.

Steg 1 Minnen, mappar, filer Windows 7

Guide till att använda Audacity för uttalsövningar

För att använda Windows på enklaste sätt använder du musen. Musen syns Som en pil på skärmen.

Text och galleri på fotoklubbens nya hemsida

Innehåll i detta dokument

Allt du behöver för crowdsourcing

SLUNIK manual. SLUNIK version

Dokument i klassens aktivitet

Vad är en UART? Universal Asynchronous Receiver Transmitter parallella seriella parallell åttabitars signal mest signifikant bit

Använda Internet. med hjälp av Internet Explorer. Nybörjarguide

INSTALLATIONSGUIDE PC

FC-kurs Röbäcks skolområde femmor och sexor

BLI VÄN MED DIN DATOR ENHETER MAPPAR FILER

Ladda ner en talbok på biblioteket.stockholm.se

XP-els Kretskortskurs LED DIMMER

Användarhandbok. Nero BackItUp. Ahead Software AG

Grund. Markera Användaren och välj Användarinställningar till vänster i Grids utforskare. Välj Talinställningar

Transkript:

Omkopplare, inverterare och LED En ganska fånig digital funktion, kanhända, men idén är att du ska ha en enkel krets att testa med. Du får möjlighet att kolla alla funktioner hos utvecklingssystemet utan att bekymra dig om att tänka rätt när det gäller själva designen. Så här gör du alltid när du kör igång ett nytt projekt : Starta Xilinx Foundation Project Manager. Välj File och New Project. Hitta på ett passande projektnamn och skriv in det i första rutan, i detta fall t ex invert. Välj sedan Family XC9500, Part 95108PC84 och Speed 15 ns (det är nämligen den kretsen som sitter på testkortet du använder). Klicka på OK. Sådär, nu är du redo att sätta igång med själva designandet! Projektmanagern ser nu ut så här, I den vänstra rutan kan du se att det automatiskt skapats en filstruktur som kommer att innehålla bibliotek, scheman och alla andra filer som kommer att uppstå: 1

Schemaritning Rutan till höger består av ikoner som möjliggör val av olika funktioner när du klickar på dem. Du har tre metoder att göra din design på. I rutan Design Entry hittar du ikoner för HDL, d v s högnivåspråk, tillståndsmaskin och schema. Det är meningen att du ska rita ett schema, så klicka på schema-ikonen. Ett blankt schema kommer upp. Längs vänstra marginalen finns ett antal ikoner, som används för att välja olika funktioner. En av ikonerna är en AND-grind: Den används för att placera ut logiska element av allehanda slag. Klicka på den, så får du upp en lång tabell som innehåller alla tillgängliga logikfunktioner. Skrolla i tabellen tills du hittar IPAD, klicka på IPAD och placera den längst till vänster i schemat. Vad i allsin dar är en IPAD för ett logiskt element? Jo, det är helt enkelt en ingångspinne till din krets. Så småningom ska vi se hur du kan tilldela 2

den ett pin-nummer. Så fort du har en ingång till din krets måste du använda en IPAD. I den här designen går det ju åt en ingång att koppla tryckknappen till. Så fort du använder en IPAD måste du koppla den till en ingångsbuffer, kallad IBUF. Placera därför en IBUF till höger om din IPAD, men lämna lite mellanrum, så att det går att dra en ledning mellan dem. Det blir inte kontakt mellan två logikelement om du låter deras anslutningar nudda varandra eller överlappa, du måste dra en ledning! Strunta dock i ledningen just nu, vi återkommer till hur man gör alldeles strax. Funktionen hos din design skulle ju vara en inverterare. Inverteraren heter INV. Hämta en INV och placera den till höger om IBUF. En utpinne kallas OPAD, och precis som vid ingångspinnarna går det åt en speciell buffer, OBUF, för att göra kontakt med innanmätet i kretsen. Placera en OBUF till höger om inverteraren och slutligen en OPAD till höger om OBUF. Har du varit riktigt petig med placerandet ser det ut så här snyggt: Om det blev lite snett kan du lätt korrigera. Klicka på pek-ikonen som ligger två snäpp ovanför AND-ikonen: Du kan nu grabba tag i de kretsar på schemat som du vill flytta. Utvald krets omges en röd rektangel. Klicka var som helst där det är tomt för att de-selektera. 3

Nu är det dags att koppla ihop kretsarna. Klicka på ledningsdragningsikonen: Du kopplar ihop två kretsar genom att först klicka på ena ledningen, sedan på andra. Det brukar krävas lite övning innan det här går riktigt smärtfritt och schemat brukar till att börja med innehålla ledningar som inte alls var tänkta att hamna just där! Misströsta icke, du kommer snart in i metodiken. När något gått snett kan du lätt fixa det genom att först klicka på pek-ikonen, sedan klicka på det du vill ta bort (som då rödfärgas) och slutligen trycka på delete-tangenten. Misstaget är borta! Gå sedan tillbaka till ledningsdragningen igen genom att klicka på ledningsdragnings-ikonen. När alla ledningar är dragna ser ditt schema ut så här: Det är nu dags att tillordna pin-nummer till in- och utgångspinnarna. Det gör du genom att först klicka på pek-ikonen och sedan dubbelklicka på den IPAD eller OPAD som ska få sitt pin-nummer tilldelad. Dubbelklicka först på IPAD. Ett fönster med en mängd information kommer upp: 4

Klicka på pilen vid Name och skrolla ner tills du hittar ordet LOC. Klicka på LOC. Flytta markören till fönstret Description. Skriv P56 (vi vill nämligen att ingången ska vara pinne 56), klicka på Add och Apply. Så här ser fönstret ut: Klicka slutligen på OK. Fönstret försvinner och ditt schema ser ut så här: 5

Gör nu samma sak med utgångspinnen, OPAD, och ge den pin-nummer 55 (skriv alltså P55). Vi ska nu döpa in- och utsignalerna genom att tillordna nätnamn till dem. Detta är en god idé inför simuleringen, det blir då lätt att komma ihåg vilka signaler man tittar på. Klicka på nätnamn-ikonen: Ett nytt fönster kommer upp: Skriv nätnamnet IN och klicka på OK. Markören byter form till en penna med en liten röd fyrkant nära spetsen. Fyrkanten innehåller texten IN och du ska nu placera den alldeles mitt på ledningen mellan IBUF och IPAD. Klicka när den ligger rätt. Klicka åter på nätnamn-ikonen, skriv nätnamnet UT och placera det på ledningen mellan OBUF och OPAD. Så här ser det ut när du är klar: 6

Vill du zooma in och kolla i närbild går det bra. Ikonraden längst upp innehåller zoom-ikonen, med vars hjälp du kan förstora eller förminska: Behöver du korrigera något är sista chansen nu! Använd i så fall pekikonen och radéra eller flytta. Nu ska schemat göras om till en s k nätlista. Klicka på Options och Create Netlist i menyn. Denna nätlista är en fil som har samma namn som ditt projekt, med tillägget.alb. Din nätlista får alltså namnet invert.alb. När nätlistan är klar kommer detta fönster upp: Kvittera genom att klicka på OK. Nätlistan ska också konverteras till s k Edif-format, för att det ska vara möjligt för Xilinx programvara att jobba vidare med den. Klicka därför på Options och Export Netlist i menyn. 7

Längst ned står Files of type: Där ska det stå Edif 200 (*.EDN). Klicka på pilen och skrolla tills det står så. Klicka på Open. Nu är filen konverterad till Edif-format. Simulering OK, hur vet man nu om designen kommer att fungera? Jo, man simulerar sin krets, lägger in olika insignaler och kollar att utgångarna beter sig som man tänkt. Den här kretsen är ju egentligen bara en inverterare, så den borde vara lätt att verifiera. För att starta simulatorn gör du så här: Gå först tillbaka till Projektmanagern, som ligger bakom ditt schema. Om du inte ser den kan du bläddra fram den med <Alt-Tab> på vanligt Windowsmanér. Ett par detaljer har ändrats sedan du såg Projektmanagern sist. På Design Entry -ikonen står det nu en bock istället för ett frågetecken. Likaså står det en bock i vänstra rutan, på filen invert1.sch. Bockarna talar om att ditt schema är klart och att du är redo för nästa operation. Så här ser det ut: 8

Simuleringen startar du genom att klicka på ikonen Simulation: Simulatorfönstret kommer då upp: På menyraden längst upp hittar du kommandot Signal. Klicka på Signal och Add Signals. Resultatet blir ett fönster som visar vilka signaler som finns: Du känner igen dina egna nätnamn IN och UT i vänstra rutan. Signalen SimGlobalReset har simulatorn själv lagt dit för att ge dig möjlighet att påverka hur din simulerade krets ska bete sig vid start. Detta har sitt intresse vid räknare och andra sekvenskretsar, men är inte intressant för oss just nu. Vi vill titta på både IN och UT vid simuleringen. Välj dem 9

genom att dubbeklicka först på IN, sedan på UT. Röda bockar indikerar att de har valts. Stäng fönstret genom att klicka på Close. Simulatorfönstret har nu placerat IN och UT i tidsdiagrammet Waveform Viever i simulatorn: Det behös nu ett stimuli, d v s en insignal för att du ska kunna kolla funktionen. Det finns många olika sätt att mata in ett stimuli. Ett enkelt sätt är att lägga in en fyrkantsignal på IN. Välj IN genom att klicka på den så den blåmarkeras. Gå till menyn igen, klicka på Signal och Add Stimulators. Följande fönster kommer upp: De tre raderna Bc, NBc och Form med gula och röda lysdioder utgör utgångar från en binärräknare, som kan användas som stimuli. Du behöver bara en enda utgång, klicka på lysdioden längst till höger i raden Bc och stäng fönstret genom att klicka på Close. I kolumnen till höger om IN står det nu B0, vilket indikerar att räknarens minst signifikanta bit kommer att användas som stimuli. 10

Det går lätt att välja frekvens på B0. Gå till menyn, klicka på Options och Preferences. Välj frekvensen på B0 till 100MHz: Stäng fönstret genom att klicka på OK. Nu ska du slutligen välja rätt tidskala i tidsdiagrammet. Aktuell tidskalan står angiven alldeles ovanför signalnamnen i Waveform Viewern. Knapparna med kam-ikoner till vänster respektive till höger om tidskaleuppgiften använder du för att ändra skalan. Se till att tidskalan blir 1 ns/div. Nu är simulatorn färdigjusterad. Kör en simulering genom att klicka på steg-ikonen alldeles under menyraden: Simulatorn kör då ett antal perioder av fyrkantsignalen och du kan beundra resultatet av simuleringen i tidsdiagrammet. Jodå, man kan välja hur lång tid som ska simuleras, se rutan till höger om steg-ikonen. Du kan också skrolla tidsdiagrammet i tidsled. Simulatorn är extremt kraftfull och det är lätt att skräddarsy stimuli till alla tänkbara situationer. Så här ser det ut efter simulering, med 100ns simuleringstid: 11

Din krets beter sig som en inverterare, inte sant! Implementering Begreppet implementering innebär i detta sammanhang att Edif-filen konverteras till en fil som beskriver hur logikelementen inne i din CPLD ska kopplas ihop för att kretsen ska bete sig så som din design beskriver. Det går åt en kraftfull programvara, men för användaren handlar det bara om att klicka på lämpliga ikoner. Gå tillbaka till Projektmanagern, som ligger bakom simulatorn och ditt schema. Om du inte ser den kan du förstås bläddra fram den med <Alt-Tab>. Klicka på implementeringsikonen: Implementeringsfönstret kommer upp: 12

Kolla att texten i Device -rutan stämmer, liksom Speed -rutan. Klicka sedan på Options. Se till att fönstret ser ut så här: Klicka på OK. Du kommer nu tillbaka till Implementerings-fönstret. Klicka på Run. Du kommer till Flödes-fönstret, där nu implementeringen automatiskt startas. Du kan grafiskt följa de fyra etapperna i implementeringen. De kallas Translate, Fit, Timing och Bitstream. Det tar en liten stund innan implementeringen är klar. Så här ser Flödesfönstret ut när implementeringen är klar: 13

Vid implementeringen genereras en mängd filer. Slutresultatet är emellertid den s k JEDEC-filen, invert.jed, som kan användas om du vill programmera din Xilinkrets med hjälp av en normal programmerare. Det genereras också en fil, invert.rpt, som bl a anger hur stor del av kretsen som använts. En annan fil innehåller beräknade fördröjningar i kretsen. Data om fördröjningarna kan användas i simulatorn för att du ska se hur in- och utsignaler förhåller sig tidsmässigt till varandra. Programmering En finess med Xilinx 95-serie av CPLD-er är att kretsarna är av ISP-typ. ISP betyder In System Programmable och innebär rent praktiskt att det inte behövs någon speciell brännare för att programmera. Kretsarna kan programmeras när de sitter inlödda i systemet de ska användas i, med hjälp av 3 signaler i det s k JTAG-gränssnittet. Det finns vissa krav på signalernas stigtid, något som tillgodosetts på labkortet CPLD95 som du ska labba på. Kortet ansluts till parallellporten på din PC via en 25- ledarkabel. Du kan nu programmera din CPLD genom att köra ett speciellt program som laddar ner en fil i den. För att det hela ska fungera måste först JEDEC-filen konverteras till fil som är lämplig för nerladdning, en s k SVF-fil. Allra först ska du emellertid skapa ett nytt bibliotek, där dina SVF-filer ska placeras. Starta därför Windows Utforskaren och klicka på C-driven. Flytta musen till högra fältet och klicka höger musknapp. Välj Nytt Bibliotek och ge det nya biblioteket namnet CPLD. Nu har du en praktisk plats för dina CPLD-designer! Gå nu tillbaka till Xilinx Projektmanager och klicka på Programmings-ikonen: 14

Du hamnar i JTAG-fönstret: Bilden symboliserar schematiskt hur kretsen programmeras. Om du klickar på bilden blir den ömsom svart, ömsom vit. Se till att bilden är svart. Gå till menyraden högst upp i JTAG-fönstret och klicka på Output och Create SVF File. Ett fönster SVF Options kommer upp. Klicka på OK. Fönstret Create New SVF File kommer upp. Programmet vill automatiskt lägga din fil på en plats som blir svår att hitta. Du ska istället placera filen direkt I foldern Invert, som du kommer till genom att klicka tre gånger på folder-ikonen. Se till att foldern Invert står i rutan Save In och klicka på Save. Den nya filen kommer alltså att få namnet invert.svf. Du kommer tillbaka till JTAG-fönstret. Klicka på Operations och Program. Ett fönster Options kommer upp. Längst upp till vänster ska 15

det stå en bock för Erase Before Programming. Kvittera genom att klicka på OK. Ett fönster Operation Status visas och du kan följa tillkomsten av filen invert.svf. Det hela tar en liten stund, när det är klart visas texten All operations were completed successfully och du kvitterar genom att klicka på OK. Din fil invert.svf är nu äntligen klar! Stäng programmeringsfönstret. Du får frågan om du ska spara ändringarna i invert. Klicka på No. Ett steg återstår innan SVF-filen kan laddas ned i kortet. Du ska nämligen flytta SVF-filen till foldern CPLD. Starta Utforskaren, leta rätt på SVF-filen som ligger i folden C-Fndtn-Active-Projects-Invert och flytta den till CPLD-foldern. När det är gjort är det äntligen dags att ladda ned din konstruktion i CPLD-modulen. Nu återstår att koppla in testkortet CPLD95 till parallellporten, ansluta en plug-in-modul MOD687-40 till det 32-poliga kontaktdonet på CPLD95 och ansluta matningsspänningen. MOD687-40 innehåller en tryckknapp, en sjusegmentdisplay och strömbegränsningsmotstånd. Du kan studera kopplingsschemat för CPLD95 i Appendix A och MOD687-40 i appendix B. Öppna ett DOS-fönster, byt bibliotek till C:\CPLD, skriv xsload sjuseg och tryck på Enter. Nedladdningen tar ungefär 15 sekunder, tiden markeras med en rad plustecken. När nedladddningen är klar kan du testa din design genom att trycka på tryckknappen. Nedladdningsprogrammet är ett DOS-program, så du måste öppna ett DOS-fönster genom att klicka på START, Programs och MS-DOS Prompt. När du är i DOS ska du byta bibliotek till C:\CPLD>. Om du inte redan har nedladdningsprogrammet XSLOAD.EXE istallerat är det hög tid att göra det nu! Du hittar det på Didact s websida, på adressen <http://www.didact.com/xsload.exe>. Ladda ned programmet och se till att det hamnar i biblioteket CPLD. Låt oss nu gå tillbaka till nedladdningen av SVF-filen i din CPLD. Skriv XSLOAD INVERT och tryck på ENTER. Nedladdningen startar, det tar en stund, för SVF-filer är rätt stora. När allt är klart ser skärmen ut så här: 16

I och med att nedladdningen blev klar ska mittsegmentet i LED-displayen på MOD687-40 börja lysa. Om du trycker ner knappen slocknar det, släpp knappen tänds det igen. Hmm Kan det stämma? Ja, det gör det! Tryckknappen är normalt en ETTA och blir NOLL vid nedtryckning. LED-displayen är kopplad så att den lyser då den får en NOLLA (se schemat). Alltså: Normalt ETTA in, inverteras av inverteraren till en NOLLA ut, lysdioden lyser! OK, men visst vore det trevligt om funktionen var tvärt om! Gå tillbaka till schemat, ta bort inverteraren och ersätt den med en ledning och gör om alltihop, d v s generera nätlista, konvertera till Edif-fil, simulera, implementera och programmera! Testa! Visst känns det bättre så? Sammanfattning Nu har du lärt dig hantera systemet, gratulerar. I princip kan du nu bygga upp förvånansvärt stora digitala system med hjälp av CPLD, simulera, programmera och testa. Lycka till! Revision B 14 januari 2001 Anders Andersson 17