BI-SAP.21 Struktura a architektura počítačů
Jdi na navigaci předmětu

Stručný návod na prostředí Vivado

1. Instalace

Návod na instalaci prostředí Vivado 2018.3 a knihovny lib_SAP je k dispozici zde.

2. Spuštění vývojového prostředí

Pro práci s logickými obvody budeme používat prostředí Vivado 2018.3. Prostředí spustíte buď z plochy (ikona Vivado - Ikona), nebo pomocí vyhledávání vedle tlačítka Start.

3. Založení projektu

Projekt lze založit dvěma způsoby:

  • Menu FileProjectNew

nebo

  • Pole Quick StartCreate Project

V průvodci založením nového projektu:

  • Projekty ukládejte vždy do svého domácího adresáře (síťový disk X:). V adresářové cestě se nikde nesmějí vyskytovat mezery. Raději nepoužívejte ani diakritiku a speciální znaky. Názvy (čehokoliv) nesmí začínat číslicí.
  • Zkontrolujte, zda je nastaven RTL Project.
  • Zkontrolujte, zda jsou Target i Simulation language nastaveny na VHDL.
  • Na kartě Boards vyberte vývojový kit FPGA Basys 3.

4. Import knihovny základních prvků (lib_SAP)

  • Stáhněte knihovnu lib_SAP a rozbalte ji na disk X: (např. do X:\BI-SAP).
  • Otevřete katalog IP jader (IP Catalog)
  • Přidejte knihovnu lib_SAP do katalogu pomocí volby Add Repository…​.

Knihovna lib_SAP by nyní měla být vidět v seznamu IP Catalog jako User RepositoryUserIP.

5. Vytvoření nového schématu a práce se schématickým editorem

  • V levé části (Flow Navigator) v sekci IP Integrator vyberte Create Block Design.
  • V pravé horní části prostředí si přepněte layout na IP Integrator. Tím se otevře nový panel obsahující katalog IP jader. Po rozbalení složky UserIP pak můžete vybírat prvky (hradla) jediným kliknutím a přidávat do schématu prostým přetažením myši.
  • Vlastnosti hradel (např. počet vstupů a negace na vstupech a výstupech) můžete upravit pomocí dvojkliku (nebo pravým tlačítkem a volbou Customize Block…​, nebo Customize Block) na hradlo.
  • Jednotlivá hradla můžete propojit tak, že kliknete na vstup/výstup hradla. Tím se spustí propojovací mód, v němž se pomocí malých zelených zatržítek zvýrazní možnosti, kde je možné spojovací vodič ukončit (systém např. neumožní spojit dva zdroje signálu do sebe).
  • Pokud potřebujete spojovací vodič smazat, pak jej vyberte a vymažte jej klávesou Delete.
  • Pokud potřebujete k již vytvořenému vodiči připojit další vstupní pin, pak klikněte na daný pin a poté kamkoli na propojovací vodič.
  • Pokud byste naopak potřebovali smazat jen část vodiče (odbočku k pinu), pak označte daný pin, klikněte pravým tlačítkem a vyberte volbu Disconnect pin.
  • Abyste mohli ovládat hradla pomocí přepínačů na vývojovém kitu a sledovat jejich výstupy na LED diodách, je třeba ve schématu připojit hradla na vstupy/výstupy pomocí volby Make External (nebo Make External).
    • Můžete vybrat i více hradel najednou. Buď pomocí Ctrl + levé tlačítko (nebo Select Area). Volba Make External pak doplní vstupní/výstupní porty ke všem nezapojeným vstupům/výstupům všech označených hradel.
  • Porty můžete přidat i kliknutím pravým tlačítkem myši na plochu schématu (Diagram) a volbou Create Port…​. Zde musíte zvolit název a správný typ portu (Input, Output). Ostatní volby ponechte beze změny. Tento "visící" port pak připojíte pomocí nástroje kreslení, stejně jako hradla.
  • Před zahájením překladu schématu si zkontrolujte, zda v něm nejsou chyby pomocí ikony Validate Design (Validate Design).

6. Překlad schématu

  • Pro překlad schématu je nejprve třeba jej převést pomocí skriptu bd2vhd na VHDL soubor pomocí ikony bd2vhd. Pokud ikonu nevidíte, je potřeba ji přidat dle následující poznámky:
  • V levé části vyberte volbu Run Synthesis.
Varování:

Varování: Syntéza (stejně jako další části překladu) běží na pozadí, v jejím průběhu (viz točící se kolečko v pravé horní části) raději neprovádějte žádné další akce. Průběh jakékoli akce na pozadí můžete sledovat ve spodní části v kartě Design Runs.

  • Před implementací je třeba vstupům a výstupům schématu přiřadit přepínače a LEDky na vývojovém kitu.
    • V levé části v sekci Synthesis vyberte Open Synthesized Design.
    • Nyní můžete vstupům a výstupům schématu přiřadit periferie na vývojovém kitu. Přepněte layout na I/O Planning. Ve spodní části se zobrazí karta I/O Ports a v ní seznam vstupů a výstupů schématu.
      • Pomocí ikony Group by Interface and Bus ve spodní části vypněte třídění portů podle rozhraní – porty se vám tak zobrazí přímo pod sebou.
      • Celou tabulku propojení pinů FPGA a periferií na vývojovém kitu můžete najít zde.
      • Nastavení pinů uložte.
  • Po přiřazení pinů dokončete překlad.
    • Spusťte Run Implementation v levé části (Flow Navigator).
    • Po dokončení implementace pokračujte generováním bitstreamu (Generate Bitstream)

7. Nahrání návrhu do vývojového kitu

  • Pro nahrání do vývojového kitu zvolte možnost Open Hardware Manager (buď v okně Bitstream Generation Completed nebo v levé části Flow NavigatorOpen Hardware Manager).
  • V zeleném pruhu v horní části (nebo v levé části Flow NavigatorProgram and DebugOpen Hardware Manager) pak vyberte volbu Open TargetAuto Connect, která by měla detekovat vývojový kit.
    • Pokud je kit detekován úspěšně, pak by se jeho identifikace a čip měly objevit v prostřední sekci Hardware.
    • Pokud se objeví chybová hláška, zkontrolujte, zda je kit připojen a zda je zapnutý (přepínačem Power vedle micro USB portu).
  • Po úspěšné detekci kitu vyberte volbu Program Device v zeleném pruhu (nebo v levé části). Okno Program Device by mělo obsahovat předvyplněnou cestu k bitstreamu. V tom případě okno beze změn, jinak zkuste prohledat adresář [nazev_projektu].runs/impl_[cislo]/[nazev_vhdl].bit případně vygenerujte bitstream ještě jednou.

8. Simulace chování obvodu

Podrobnější verzi včetně obrázků naleznete na stránce Simulace chování obvodu.

  • Pro simulaci schématu je nejprve třeba jej převést pomocí skriptu bd2vhd na VHDL soubor. Převod je totožný pro simulaci i syntézu (pokud jste soubor už převedli, pak tento krok vynechejte).
  • Import testovacího souboru
    • Stáhněte si testovací soubor. Každý obvod používá jiný testovací soubor – testbench. Pokud je v zadání požadována simulace, pak je testbench na stránce ke cvičení k dispozici.
  • V levé části (Flow Navigator) v sekci Project Manager vyberte položku Add Sources. V otevřeném okně vyberte položku Add or create simulation sources a okno potvrďte.
    • Klikněte na Add Files a najděte stažený soubor. Pokud už není zaškrtnuta, vyberte volbu Copy sources into project, aby se vytvořila kopie souboru přímo v adresáři projektu. Okno potvrďte.
  • Ověřte, že v části SourcesSimulation Sources je nově přidaný soubor na nejvyšší úrovni hierarchie.
Varování:

Převod na VHDL soubor je nutný při každé změně schématu, jinak se schéma neodsimuluje vůbec, nebo se odsimuluje neaktuální verze. Pro jistotu proveďte převod před každou simulací.

  • Simulaci můžete spustit v levé části (Flow Navigator) – v sekci Simulation vyberte Run Simulation a poté Run Behavioral Simulation.
  • V okně simulace nyní můžete sledovat časové průběhy vstupních i výstupních portů vašeho návrhu.
    • Ve výchozím zobrazení vidíte zpravidla jen posledních několik pikosekund simulace, ve kterých se už neděje nic zajímavého. Oddalte si tedy průběhy pomocí ikony Zoom Out nebo ještě lépe zobrazte celý průběh pomocí Zoom Fit.
    • Žlutou svislou čáru si zobrazíte kliknutím do okna simulace. Vlevo od průběhů (sloupec Value) se vám poté zobrazí hodnoty vstupů a výstupů v daném čase.
    • Pokud mají výstupní signály hnědou barvu, pak se simulace nezdařila. Typicky je problém ve špatném pojmenování schématu a/nebo portů.