Flödesschema som visar hur man använder Quartus II. För att det skall bli lite enklare använder jag följande exempel: ut1 <= a xor b ut2 <= a xor b xor c Det är en två-ingångars XOR-grind, och en tre-ingångars XOR-grind. Börja med att skapa en tom katalog som skall innehålla hela projektet. Använd Din hemkatalog. ( Absolut inte C: på skolans datorer ). Här i exemplet heter katalogen VHDL9. Nedan visas olika beteckningar för: Fönsternamn, Rullgardinsmenyer och Knappar. Fönsternamn, ex.vis Quartus II File Save Visar menyer Knapp OK Starta Quartus II version 6.0 Quartus II File New Project Wizard 1. Hoppa över introduktionen. Klicka på 2. Arbetskatalog. Välj den katalog som Du skapat. ger tillgång till sökvägen. Ange namnet på projektet. Detta blir också namnet på Top-level design entity ( Jag kallar den test9 ) Viktigt. Quartus Flödesschema 1/8
3. Inga filer skall inkluderas i detta exempel. 4. Select the Family and Device Välj Cyclone och EP1C12Q240C 5. 6. Inga EDA Tools 7. Nu får Du en sammanfattning av Dina olika val. Finish Quartus II 8. Nu kommer Du tillbaka till Quartus II huvudmeny. File New Du får upp ett nytt fönster. Fönstrets namn är New. New Under fliken: Device Design Files Välj:VHDL File 9. Skriv in Din VHDL-kod. Entity-name måste vara det namn som Du valde i ruta 2. Det kan finnas flera entity, men en måste vara top-level. Nedanstående program använde jag vid provkörning. Quartus Flödesschema 2/8
-- My Documents\CL0090\VHDL9\test9.vhd -- Provkörning för flödesscheman. -- a SW3.1 FPGA 58 -- ut1 D3 FPGA 56 -- b SW3.2 FPGA 59 -- ut2 D6 FPGA 53 -- c SW3.3 FPGA 60 -- Library ieee; Use ieee.std_logic_1164.all; -- Entity test9 is --detta namn måste stämma överens med "top-level-entity" port( a,b,c: in std_logic; ut1,ut2: out std_logic); end entity test9; Architecture komp of test9 is -- intern signal, används bara för information signal int: std_logic; begin int<= a xor b; ut1<= int; -- utan int ut1 <= a xor b; ut2<= int xor c; -- utan int ut2 <= a xor b xor c; end architecture komp; 10. Spara. Du får förslag på filnamn. test9 dvs. samma som entity-name Du får välja annat om Du vill. 11. Nu är det dags att kompilera. Processing Start Compilation Ctrl + L Eller Knapp Rätta fel. Spara. (Kompilera igen ) Fungerar? Ja Nej Fel anges i fönstret längst ner. Message Du får inf. om vilken rad och vad som kan vara orsak 12. Du får upp ett nytt fönster med Flow Summery Detta kan Du stänga. Quartus Flödesschema 3/8
13. Dags att välja portar för signalerna. Skriv in dessa till att börja med som kommentarer i VHDL-koden. 14 Dags att ange portarna. Öppna Pin Planner med Assignements Pin Planner Ctrl+ Shift + N eller med snabbknapp. 15. Nytt fönster igen. Pin Planner Längst ner finns en förteckning över alla portar. Nod Name Direction Location I/O Bank 16. För varje nod ( insignal, utsignal eller intern signal ), dubbel-klickar Du i fältet under Location. Du får upp en lista med alla tillgängliga portar. Välj det FPGA nr som Du bestämt. Det finns i Din fil test9.vhd. Detta fönster finns också öppet. 17. Kompilera en gång till. Processing Start Compilation Ctrl + L Du får en fråga. Save changes to test9 YES 18. Provkör eller simulera. Quartus Flödesschema 4/8
Först visas provkörning 19. I fönstret Quartus II väljer Du. Tools Programmer Detta ger fönstret test9.cdf 20. Där visas: File Device Checksum Usercode Program/Configure test9.sof EP1C12Q240 00116CA2 FFFFFFFF 21. Det finns två olika filer för programmering,.sof som lägger programmet i SRAM och en fil med tillägget.pof som lägger programmet i EEPROM. Använd SRAM!!! När Du kryssar i rutan under Program/Configure kommer hela raden att markeras. 22. Se till att utvecklingskortet är påslaget och att USB Blaster är kopplad mellan kortet och datorn. Att kortet är i drift visas genom att den gröna lysdioden vid FPGA-kretsen är tänd. 23. test9.cdf Start I detta fönster finns knappen Knappen finns alldeles till vänster om File. Under programmeringen av kortet kommer en blå lysdiod i USB Blaster att tändas. På kortet kommer den gröna lysdioden vid FPGA-kretsen att släckas. När programmeringen är klar tänds den gröna dioden igen. Nu kan Du kontrollera om programmet fungerar. 24. Provkör. Fungerar det inte som tänkt är det bara att ändra i VHDLkoden Kompilera och ladda ner programmet igen. Quartus Flödesschema 5/8
Simulering. 25. Har Du provkört programmet, så är det lämpligt att stänga alla fönster utom det som innehåller källkoden. ( Spara fönstret test9.vhd ). 26. Quartus II Processing Simulator Tool Nytt fönster igen. Se till att Du ser hela fönstret. 27. Simulator Tool I Simulation mode: väljer Du - Functional- Klicka på knappen till höger Generate Functional Simulation Sedan på OK och till sist på Du få upp ett nytt fönster. Open Waveform1.vwf 28. Fönstret Waveforn1.vwf är tomt. Dubbelklicka i det prickade Området under Name Name Value at 11.45 ns 29. Nästa fönster heter Insert Node or Bus Klicka på knappen Node Finder Detta öppnar ett nytt fönster: 30. Node Finder Detta fönster tomt. Vid förstoringsglaset klickar Du på knappen List. Nu får Du en lista på alla noder i vänstra fönstret (Nodes Found:). För över de noder som är intressanta till högra fönstert. ( Selected Nodes: ) I det här fallet skall alla användas. OK Quartus Flödesschema 6/8
31. Du kommer tillbaka till fönstret Klicka OK Insert Node or Bus 32. Nu skall Du vara tillbaka i fönstret Waveform1.vwf Här finns nu alla signaler listade till vänster. Till höger det logiska värdet. Alla insignaler har det logiska värdet noll. Alla utsignaler markeras med ett rutmönster. Obestämt logiskt värde. 33. Nu skall Du definiera insignalerna. Detta görs med verktyget Detta finns i paletten till vänster. 34. Använd verktyget för att markera det område som skall vara ett för det olika insignalerna. 35. Spara. Du får ett förslag till filnamn. OK 36. Fönstret Simulator Tool finns fortfarande kvar i bakgrunden. Aktivera detta. Simulation input: Här måste Du ha sökväg och filnamn till filen enligt ruta 35 Sedan trycker Du på Knappen finns längst ner till vänster. Start 37. Aktivera fönstret test9.vwf ( Tidigare hette fönstret Waveform1.vwf ) Resultatet av simuleringen visas. Eventuellt får Du en fråga:. Do You want to reload? Svara Yes Nu uppdateras innehållet i fönstret test9.vwf Quartus Flödesschema 7/8
38. Nu kan Du kontrollera alla signaler. Vill Du ändra någon signal så görs detta med Spara och gå sedan till punkt 35 39. Den här programkörningen har resulterat i ett stort antal filer. Kontrollera katalogen VHDL9. Där finns 20 filer och en underkatalog. Underkatalogen innehåller 43 filer. Skapa alltså en ny katalog för varje projekt Quartus Flödesschema 8/8