Gebruik Quartus II
-
Upload
yanni-moralyanessiadis -
Category
Documents
-
view
33 -
download
2
description
Transcript of Gebruik Quartus II
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
1
1 Een nieuw project aanmaken
1.1 Opstartscherm
Figuur 1: opstartscherm
In het lege opstartscherm kan men volgende zaken onderscheiden:
De menubar en toolbar voor het opstarten en uitvoeren van opdrachten of functies.
Project navigator Window geeft een overzicht van de verschillende files.
Tasks Window geeft een alternatieve manier voor het opstarten van diverse taken.
Messages Window toont resultaten en boodschappen die bij het uitvoeren van de
verschillende taken gegenereerd worden.
1.2 Een nieuw project aanmaken
Het aanmaken van een nieuw design binnen Quartus II is een projectmatig gebeuren. Start
de “Project Wizard” op via “ File New Project Wizard”. Op deze wijze komen we in
stap 1 van 5 van de wizard terecht:
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
2
Figuur 2: Stap 1 van 5 van de project wizard: directory, naam en top level design
Geef allereerst de plaats op waar je het project op je schijf wil bewaren. Vervolgens geef je
een naam aan je project. Standaard krijgt je top-level design dezelfde naam. Ga vervolgens
naar stap 2 van de project Wizard via de next knop.
Stap 2 laat toe reeds bestaande files aan je project toe te voegen. Vermits dit ons eerste
project is klikken we vervolgens op next.
Stap 3 Identificatie van de te programmeren component. In functie van het gekozen
ontwikkelplatform kan je de correcte gegevens selecteren voor de component. Voor het
DE0 demobord is dit de Cyclone III EP3C16F484C6. Je kan het zoeken vereenvoudigen
door de parameters package en pincount in combinatie met de juiste familie in te geven.
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
3
Figuur 3: Stap 3 van 5 van de project wizard: selectie van de targetcomponent.
Figuur 4: Stap 4 van 5 van de project wizard: selectie van alternatieve EDA tools.
Aangezien we met de standaard ontwikkelomgeving werken laten we alle pull down
velden op <None> staan. We klikken vervolgens Next.
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
4
Figuur 5: Stap 5 van 5 van de project wizard: samenvatting van de projectinstellingen.
Als laatste stap krijgen we een overzicht van het pas aangemaakte project. Indien gewenst
kan men nog terugkeren naar de vorige stappen om eventuele wijzigingen door te voeren.
Het projectnavigatie window ziet er als volgt uit, bemerk de dummy design entity in de
project tree:
Figuur 6: De projectnavigator na het aanmaken van een nieuw project.
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
5
2 Een design aan het project toevoegen
2.1 Een top level design toevoegen aan het project via een schematic file
Figuur 7: Een schematic file toevoegen
Via File New kan je een schematic file toevoegen. Om de link te leggen tussen het
schema en het project is het belangrijk dat de naam van het schema overeenkomt met naam
van het toplevel design (zie stap 1 van de projectwizard). Het is dus aangeraden
onmiddellijk na de aanmaak van het blanco design er de naam van het topleveldesign aan
toe te kennen via Save as.
Figuur 8: De naam van het schematic design moet overeenkomen met het topleveldesign in het project.
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
6
Om vlot te kunnen werken maken we het schema eerst los uit de Quartus omgeving door
het klikken van de detach button. Maximaliseer vervolgens de schemaeditor zodanig dat
hij het volledige werkvlak inneemt.
Figuur 9: Via de detach button komt de schemaeditor los uit de Quartusomgeving.
Vervolgens kan je met de symbol tool ( knop met And poort) de gewenste symbolen
plaatsen.
Logische poorten (AND, OR, …) kan je terug vinden onder primitives logic.
Bemerk de typische naamgeving: het cijfer op het einde staat voor het aantal ingangen, een
b voor de naam staat voor geïnverteerde ( bolded ) ingangen.
De in- en uitgangspinnen kan je terugvinden onder primitives pin. Door te
dubbelklikken op de pinnen kan je de namen wijzigen.
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
7
Figuur 10: De symbol tool laat toe om via een browser de gewenste componenten te kiezen.
Figuur 11: Plaats de componenten op het schema
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
8
Figuur 12: Plaats van pinnen via de symbol tool
.
Figuur 13: Hernoem de pinnen door middel van een dubbelklik
Met behulp orthogonal tool kan je de nodige verbindingen leggen. Met behulp van de
rubberbandig kan je componenten en hun bedrading verplaatsen. Wanneer je
rubberbanding inschakelt kan je 2 componenten verbinden door hun pinnen tegen mekaar
te brengen. Het schema is nu afgewerkt en kan bewaard worden.
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
9
Figuur 14: Verbinden van de componenten met de orthogonal tool
2.2 Het ontwerp koppelen aan de component
2.2.1 Het project compileren
Start het compilatieproces met behulp van de toolbar:
Figuur 15: Start van het compilatieproces
Dit proces neemt even tijd in beslag. Kijk naar de rondraaiende blauwe zandloper onderaan
in het scherm. Als alles goed gaat eindigt de compilatie met volgende window:
Figuur 16: Einde van het compilatieproces
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
10
Tijdens het compilatieproces wordt het schema geanalyseerd, gesynthetiseerd en
vervolgens wordt een mapping op onze component gemaakt. Het is altijd handig eens de
warnings te controleren.
Figuur 17: Warnings na het compilatieproces
Wanneer er zich fouten voordoen kan je op de tekstlijnen dubbelklikken en wordt de fout
in het schema aangewezen.
2.2.2 Pinposities toekennen via pin assignments
Via assignments pins open je de pinplanner. Uiteraard is nu de info van onze hardware
onontbeerlijk. Deze vinden we terug in de User manual van ons ontwikkelingsbord.
Dubbelklik hiervoor op de gewenste pin in de Pin planner. Kies de overeenkomstige node
uit de pull down list. De reeds gedefinieerde poorten kleuren rood.
Als alle pinnen gedefinieerd zijn sluiten we de pinplanner en hercompileren we ons
schema nog eens. Bemerk ook de veranderingen in het schema:
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
11
Figuur 18: Pin planner
Figuur 19: Het schema na gebruik van de Pin planner
3 Simulatie
3.1 Functionele simulatie
Om een simulatie te kunnen uitvoeren moeten we eerst een testvectorfile aanmaken. Hierin
beschrijven we grafisch de onderlinge variaties van de verschillende ingangsignalen
zodanig dat we alle mogelijk ingangstoestanden bestrijken.
Kies hiervoor eerst File New en selecteer Vector Waveform file. Klik vervolgens met
de rechtermuisknop onder Name en selecteer Insert Node
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
12
Figuur 20: Een vector waveform aanmaken
Figuur 21: Nodes toevoegen aan de Waveform editor
Klik vervolgens op de Node finder button. Klik op de knop list en transfereer de
ingangssignalen vervolgens naar de “Selected Node List”. Klik vervolgens op OK en
nogmaals op OK.
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
13
Figuur 22: De Node finder
Je krijgt nu de waveform editor met een aantal ingangen. Bedoeling is dat we aan elke
signaal een klokvormig signaal aanbrengen. Door de periode telkens te verdubbelen zorgen
we ervoor dat we alle mogelijke ingangscombinaties voorkomen. Selecteer hiervoor eerst
het gewenste signaal en klik vervolgens op de “overwrite klok” button.
Figuur 23: Test signalen editeren met de Waveform editor
Bewaar de files met de extensie *.vwf. Deze wordt toegevoegd aan het project.
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
14
Dubbelklik op het root symbool in het project ( gele driehoek gevolg door
componentnaam) en controleer of de simulatie mode op Functional staat : Je kan hier ook
een alternatieve input wavevorm kiezen.
Figuur 24: Simulator settings instellen
Maak vervolgens een functionele netlist aan :
Figuur 25: Aanmaken van een Functional simulation netlist
Start vervolgens de simulatie:
Figuur 26: Simulatie starten
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
15
Figuur 27: Resultaat van de functionele simulatie
Aan de hand de functionele simulatie kan men controleren of ons schema de te verwachten
resultaten geeft.
3.2 Simulatie van de Timing
Wanneer we de functionele werking van onze schakeling geverifieerd hebben dan kan je
vervolgens een simulatie uitvoeren rekening houdend met de interne vertraginstijden van
de CPLD. Wijzig hiervoor de simulator setting( Figuur 24: Simulator settings instellen)
door de simulation mode op timing te zetten. Run vervolgens opnieuw de simulator. Bij
complexere schakelingen stellen we een vertragingstijd vast.
Figuur 28: Resultaat van en simulatie met timing info
Programmeerbare logica gebruik Quartus II Pagina
Robotica - ICT 1
ste leerjaar 3
de graad Elektriciteit - Elektronica VTI Torhout
16
4 Programmeren
Start het programmeren via de knop in de toolbar.
Figuur 29: Opstarten van de programmer
Figuur 30: Het scherm van de programmer
Controleer of de juiste programmer geselecteerd is (wijzig indien nodig met de
Hardwaresetup button) en vink Program aan. Druk vervolgens start. Zolang de
programmatie duurt, brandt het programmatieledje op het bord.