VŠB Technická Univerzita Ostrava Fakulta Elektrotechniky a Informatiky Katedra Informatiky. Srovnání vývojových prostředí pro návrh pomocí VHDL



Podobné dokumenty
Programovatelná logika

Metody návrhu systémů na bázi FPGA

MODERNÍ TRENDY V PROGRAMOVATELNÉ LOGICE, APLIKACE V AUTOMATIZAČNÍ A MĚŘICÍ TECHNICE

FPGA + mikroprocesorové jádro:

PK Design. MB-S2-150-PQ208 v1.4. Základová deska modulárního vývojového systému MVS. Verze dokumentu 1.0 ( )

Integrované obvody. Obvody malé, střední a velké integrace Programovatelné obvody

Uživatelská příručka

Paměťové prvky. ITP Technika personálních počítačů. Zdeněk Kotásek Marcela Šimková Pavel Bartoš

Zvyšování kvality výuky technických oborů

CHARAKTERISTIKY MODELŮ PC

PROCESOR. Typy procesorů

Hardware. Z čeho se skládá počítač

XD Routing a vstupní I/O systém. Digitální broadcast technologie

E.C.S. řada nová generace obrat o 360 ( Systém vyvinut ve Florencii v r.2009 )

Základní deska (1) Parametry procesoru (2) Parametry procesoru (1) Označována také jako mainboard, motherboard

software Ruční měřicí přístroje Zobrazovače / Regulátory Loggery / EASYBus GDUSB FastView EASYControl net EASYBus Configurator GSOFT 3050 GSOFT 40k


Uživatelská příručka pro program

BankKlient. FAQs. verze 9.50

2N Helios IP Manager Software pro konfiguraci a správu dveřních komunikátorů 2N Helios IP.

Řešení problému batohu dynamickým programováním, metodou větví a hranic a aproximativním algoritmem

Technické prostředky počítačové techniky

Principy činnosti sběrnic

Paměti a jejich organizace

OPERAČNÍ PROGRAM PRAHA ADAPTABILITA & EU:

Konfigurace pracovní stanice pro ISOP-Centrum verze

Počítačové experimenty s podporou SPICE

Paměti EEPROM (1) Paměti EEPROM (2) Paměti Flash (1) Paměti EEPROM (3) Paměti Flash (2) Paměti Flash (3)

nutné smazat zároveň i všechna ostatní zainteresovaná paměťová místa přepisovaném

MONITORING A ANALÝZA KVALITY ELEKTŘINY

České vysoké učení technické v Praze

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

X-Sign Basic Uživatelská příručka

Strana Strana 27-7

Způsoby realizace paměťových prvků

ROZVOJ ICT A PDA ZAŘÍZENÍ THE DEVELOPMENT OF ICT AND PDA DEVICES Jiří Vaněk

XC3000(A) / XC3100(A)

Organizace předmětu, podmínky pro získání klasifikovaného zápočtu

Data Sheet Fujitsu LIFEBOOK AH552/SL Notebook

VZDĚLÁVACÍ MATERIÁL III/2

InTouch 8.0 Subsystém distribuovaných alarmů

Datasheet Fujitsu LIFEBOOK A512 Notebook

QuarkXPress soubor ReadMe

Popis programu: Popis přípon důležitých souborů: *.qpf projektový soubor Quartusu

Technologie počítačových sítí 1. cvičení

ARCHITEKTURA AMD PUMA

ZPRACOVÁNÍ NEURČITÝCH ÚDAJŮ V DATABÁZÍCH

WinTV-HVR-930C-HD WinTV-HVR-930C WinTV-HVR-900-HD WinTV-HVR-900

QuarkXPress soubor ReadMe


GRAFICKÉ ROZHRANÍ V MATLABU PRO ŘÍZENÍ DIGITÁLNÍHO DETEKTORU PROSTŘEDNICTVÍM RS232 LINKY

Představení: Luxusní notebook - tablet Toshiba v akci

Data Sheet Fujitsu LIFEBOOK AH531 Notebook

PAMĚTI ROM, RAM, EPROM, EEPROM

Inovace bakalářského studijního oboru Aplikovaná chemie. Reg. č.: CZ.1.07/2.2.00/

M I S Y S - W E B. Intranet řešení systému MISYS. Verze Příručka uživatele

Základní deska (mainboard, motherboard)

Varování: před aktualizací odpojte ipod, během aktualizace nevypínejte přístroj a neodpojujte flash disk s aktualizačními soubory!

Česky. Pen Tablet. Uživatelská příručka. Windows 2000 / XP / Vista

Registrační číslo projektu: CZ.1.07/1.5.00/ Název projektu: Moderní škola 21. století. Zařazení materiálu: Ověření materiálu ve výuce:

Řadiče periferií pro vývojovou desku Spartan3E Starter Kit Jaroslav Stejskal, Jiří Svozil, Leoš Kafka, Jiří Kadlec.

PŘEVODNÍK SNÍMAČE SIL NA USB PRO ZOBRAZENÍ V PC DSCUSB. KRÁTKÁ PŘÍRUČKA PRO OBSLUHU A KONFIGURACI Revize červenec 2014

Nasazení EIS JASU CS v rezortu Ministerstva zdravotnictví ČR vč. všech podřízených OSS

Neuropočítače. podnět. vnímání (senzory)

emachines D620 řady Stručné pokyny

FPGA intimně. Marek Vašut March 6, 2016

Office podrobný průvodce. Tomáš Šimek

Pojem architektura je převzat z jiného oboru lidské činnosti, než počítače.

Práce s velkými sestavami

Profilová část maturitní zkoušky 2014/2015

O aplikaci Parallels Desktop 7 for Mac

MLE2 a MLE8. Datalogery událostí

Ovladač Fiery Driver pro systém Mac OS

SCS Data Manager. Poznámky k verzi. Verze 3.00

Acronis Backup Advanced Version 11.7

VYUŽITÍ REGIONÁLNÍCH FUNKCÍ A WWW ROZHRANÍ V INTEGROVANÉM KNIHOVNÍM SYSTÉMU KPWINSQL

Výklad učiva: Co je to počítač?

Instalujeme a zakládáme databázi Oracle Database 11g

VYUŽITÍ KNIHOVNY SWING PROGRAMOVACÍHO JAZYKU JAVA PŘI TVORBĚ UŽIVATELSKÉHO ROZHRANÍ SYSTÉMU "HOST PC - TARGET PC" PRO ŘÍZENÍ POLOVODIČOVÝCH MĚNIČŮ

Zprovoznění kitu Xilinx Spartan-6 FPGA Industrial Video Processing Kit

ORGANIZACE A REALIZACE OPERAČNÍ PAMĚTI

MATURITNÍ PRÁCE dokumentace

Katalog produktů Lexmark

Využití volně dostupných simulátorů pole v elektromagnetické kompatibilitě

Datasheet Fujitsu LIFEBOOK AH502 Notebook

ADDAT HEAT Control - Návod k použití - verze 2.07 (firmware 1.44)

Úvod Používané konvence Seznámení s Outlookem...17

Helios RED a Internetový obchod

HW počítače co se nalézá uvnitř počítačové skříně

Architektura počítače

Stručný obsah KAPITOLA 1 KAPITOLA 2 KAPITOLA 3 KAPITOLA 4 KAPITOLA 5 KAPITOLA 6 KAPITOLA 7 KAPITOLA 8 KAPITOLA 9 KAPITOLA 10 KAPITOLA 11 KAPITOLA 12

Cílem kapitoly je seznámit studenta s pamětmi. Jejich minulostí, současností, budoucností a hlavními parametry.

SYSTÉM PRO KONFIGURACI KOMUNIKAČNÍCH TERMINÁLŮ A VIZUALIZACI STAVOVÝCH DAT Z KOLEJOVÝCH VOZIDEL

ZoomText 10.1 pro Windows. Dodatek k uživatelské příručce

Školní deska s FPGA XILINX Spartan 3AN. Milan Horkel

Odborný styl. Yvona Řepová. Integrace odborného jazyka do výuky odborných předmětů

Chcete jednodušší a efektivnější automatizaci u-remote maximalizuje váš výkon Let s connect.

Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky. referát do předmětu: Pokročilé architektury počítačů.

Transkript:

VŠB Technická Univerzita Ostrava Fakulta Elektrotechniky a Informatiky Katedra Informatiky Srovnání vývojových prostředí pro návrh pomocí VHDL Květen 2008 Kratochvíl Karel

Poděkování Děkuji Mgr. Pavlu Moravčíkovi za odborné vedení bakalářské práce, za jeho hodnotné rady a poskytnutí potřebných podkladů pro tuto bakalářskou práci.

Prohlášení Prohlašuji, že tato bakalářská práce je mým původním autorským dílem, které jsem vypracoval samostatně. Nemám závažný důvod proti užití tohoto školního díla ve smyslu 60 Zákona č.121/2000 Sb., o právu autorském, o právech souvisejících s právem autorským a o změně některých zákonů (autorský zákon). V Ostravě dne... Karel Kratochvíl

Abstrakt Tato bakalářská práce se zabývá srovnáváním vývojových prostředí pro návrh pomocí jazyka VHDL. Popisuje vývojová prostředí konkrétních výrobců z hlediska technologie FPGA. Dále ukazuje, jak se vytvořený jednoduchý model chová v těchto vývojových prostředích a popisuje výhody a nevýhody jednotlivých prostředí. Dále může také sloužit, jako pomůcka pro začátečníky, kteří se chtějí naučit s jednotlivými prostředími určenými pro VHDL pracovat. Součástí práce je taky návrh čtyřbitového jednosměrného čítače, který je doplněn dekodérem stavů na 7-segmentový displej. Klíčová slova : FPGA, VHDL, LIBERO IDE, ACTEL, ATMEL, XILLINX, QUICKLOGIC, HRADLOVE POLE,

Abstract This baccalaureate work deal with juxtaposition evolutionary environment for proposal by the help of language VHDL. Describes evolutionary environment concrete producers on the part of technology FPGA. Describes evolutionary environment concrete producers on the part of technology FPGA. Further shows, how created simple pattern of behaviour in these evolutionary environments and describes benefits and disavantages single environment. Further is able to also be of service, like help for beginners that the want to learn with single environments, intended for VHDL work. Part of work is so proposal four - bit unidirectional scaler that the be coupled decoder states on 7-segment display. Key words: FPGA, VHDL, LIBERO IDE, ACTEL, ATMEL, XILLINX, QUICKLOGIC, HRADLOVE POLE,

Obsah 1. Úvod... 1 2. Jazyk VHDL... 2 2.1 Popis jazyka VHDL... 2 2.2 Základní vlastnosti VHDL... 2 2.3 Struktura modelu jazyka VHDL... 2 2.4 Jednotlivé etapy tvorby aplikace do FPGA... 3 3. Programovatelná logická pole FPGA... 4 Vnitřní struktura FPGA různých výrobců... 6 3.1. Výrobce Altera... 6 3.2. Výrobce Xilinx... 7 3.3 Výrobce Actel... 9 3.4 Výrobce Quicklogic... 10 4. Vývojové prostředí... 12 4.1 Vývojové prostředí Libero od Actel... 12 4.2 Vývojové prostředí ISE WebPack 9.2i od Xilinxu... 13 4.3. Quartus II Web Edition Software Version 7.2... 14 4.4. Další vývojové protředí... 15 5. Výhody a nevýhody vývojových prostředí... 16 6. Implementace a testování čtyřbitového jednosměrného čítače... 19 6.1. Rozbor úlohy... 19 6.2. Realizace úlohy... 20 Ukázka časového průběhu... 21 Výsledky Syntézy ve vývojových prostředích Libero, ISE WebPACK a Quartus... 21 7. Závěr... 23 8. Použitá literatura... 24

Úvod 1. Úvod Číslicové systémy tvoří v současné době převážnou většinu elektronických zařízení. Jedná se o personální počítače, systémy na zpracování signálu, řídící systémy v automobilech, televizní přijímače atd., až po jiná zařízení, která se vyskytují v domácnosti. K takovému nárůstu použití číslicových systémů přispělo, hned několik vlivů. Číslicové systémy pracují s číslicovými signály. Tyto signály mají tu vlastnost, že nabývají jen konečného počtu hodnot a tak se liší od signálů analogových, které jsou spojité a nabývají nekonečného počtu hodnot. Tyto rozdíly jsou podstatné pro snížení nároků na přesnost obvodů a tím i na cenu a možnost dosažení vysokého stupně integrace. S rostoucí složitostí číslicových systémů nabývají na důležitosti prostředky pro jejich počítačový návrh a simulaci EDA (Elektronic Design Aid). Počítačové zpracování vychází, převážně z popisu systému některým speciálním jazykem HDL (Haedware Description Language). V dnešní době jsou známy a nejrozšířenějšími jazyky jsou VHDL a Verilog. V této bakalářské práci se zabývám jazykem pro hardwarový návrh VHDL. Pro práci s tímto jazykem existuje mnoho vývojových prostředí, většinou určených pro programovatelná logická hradlová pole (FPGA) jednoho konkrétního výrobce. Existuje však i vývojové prostředí zvané (např. Leonardo Spectrum), které umí pracovat s FPGA různých výrobců. Bakalářskou práci jsem rozdělil do několika kapitol. A to na popis programovatelného logického pole FPGA, popis struktury FPGA různých výrobců, které se od sebe liší svojí technologií a popis existujících vývojových prostředí. Úkolem bakalářské práce bylo sestrojení jednoduchého obvodu, simulací a popisem syntézy ve vývojových prostředích pro hardwarový návrh VHDL. Dalším úkolem, bylo srovnání výhod a nevýhod vývojových prostředí, určených pro programovatelné logická pole FPGA. K úspěšnému využívání vývojových prostředí jsou potřebné alespoň základní znalosti, proto jsem se rozhodl některé z nich popsat, aby mohla moje bakalářská práce popřípadě sloužit jako příručka pro začátečníky, kteří se chtějí naučit ve vývojových prostředích pro logická pole FPGA pracovat. 1

Jazyk VHDL 2. Jazyk VHDL 2.1 Popis jazyka VHDL VHDL je zkratka z VHSIC Hardware Description Language (jazyk pro popis hardware), kde VHSIC je zkratka z Very-High-Speed Integrated Circuit (velni rychlé integrované obvody). Jazyk VHDL je jazyk na vysoké úrovně navržený speciálně pro účely popisu a simulace velmi rozsáhlých číslicových obvodů a systémů. Jedná se o programovací jazyk, který popisuje hardware. Výhodou tohoto jazyka jsou bohaté vyjadřovací schopnosti a značná nezávislost číslicového systému popsaného jazykem VHDL na cílové technologii jeho realizace. Nejčastější použití je k návrhu obvodů pro programovatelná hradlová pole (FPGA). Od roku 1987 je VHDL standardem IEEE a byl revidován v roce 1997. Jazyk VHDL má prostředky pro popis paralelismu, konektivity a explicitní vyjádření času. Jazyk VHDL byl vyvinut pro modelování a simulaci rozsáhlých systému, které se mají vyrábět. Vedle jazyka VHDL se ještě setkáme také s jazykem Verilog, který má podobné použití. 2.2 Základní vlastnosti VHDL Je třeba zdůraznit, že popis číslicového systému v jazyce VHDL je činnost značně odlišná od programování v klasických programovacích jazycích typu C nebo Pascal. Při popisu číslicového systému jazykem VHDL je důležité myslet na to, že popisujeme číslicový systém, který většinou chceme realizovat. Tzn., že námi vytvořený odbude muset nakonec projít syntézou, jejímž výsledkem bude zapojení z hradel a klopných obvodů učené pro programovatelný logický obvod [1]. * Jedná se o otevřený standard k jeho použití pro tvorbu návrhových systémů není potřeba licence jeho vlastníka, jakož je to u jiných HDL jazyků. Díky tomu je tento jazyk v návrhových systémech často používán.[ 2 ] * Dovoluje pracovat na návrhu obvodu, aniž je zvolen cílový obvod. Tento cílový obvod může být zvolen až, když jsou známy definitivní požadavky na prostředí, v němž má navrhovaný systém pracovat. [ 2 ] * Umožňuje provádět simulaci navrženého obvodu na základě téhož zdrojového textu, který se pak použije pro syntézu a implementaci cílového obvodu. Zdrojový text lze zpracovávat v různých simulátorech a v syntetizérech různých výrobců. [ 2 ] 2.3 Struktura modelu jazyka VHDL Konstrukce neboli (model) má v jazyce VHDL dvě základní části: Deklarace entity a tělo architektury. Entita popisuje rozhraní (vstupy a výstupy) objektu, který může představovat pouhé logické hradlo, celý obvod nebo velký systém. Entita také může obsahovat identifikátory, jimiž lze entitu parametrizovat. Entitu můžeme přirovnat ke schematické značce, která pojmenovává vstupy a výstupy, definuje jejich typ a směr přenosu dat. Architektura definuje vlastní chování a funkci entity (např. vztahy mezi porty entity). Architektura též definuje vnitřek entity. Architektura je tzv. sekundární (závislá) návrhová jednotka. Každá entita musí mít, vždy alespoň jednu architektura z toho plyne, že je možné ke každé entitě definovat více architektur. Takže architektura stejné entity musí mít jiné jméno (identifikátor). 3

Jazyk VHDL 2.4 Jednotlivé etapy tvorby aplikace do FPGA 1. Návrh v prvním kroku etapy je potřeba vytvořit si teoreticky rozbor dané úlohy, aby bylo možné zadanou úlohu dále naprogramovat. 2. Simulace v této etapě, probíhá kontrola, zda je daný kód správně naprogramovaný a po jeho úspěšném zkompilování lze provést simulaci. Simulace je možnost, že se lze předem podívat na časový průběh, jak bude daný naprogramovaný program fungovat na hradlovém poli. 3. Syntéza v tomto kroku etapy se mapují virtuální logické prvky popsané jazykem pro hardwarový návrh na základní logické prvky, jenž obsahuje konkrétní programovatelné logické pole. 4. Implementace v posledním kroku etapy se děje to, že po úspěšné kompilaci, simulaci a syntéze lze naprogramovaný kód ve vývojovém prostředí převést na potřebný typ hradlového pole. 3

Logická pole FPGA 3. Programovatelná logická pole FPGA Obvody architektury FPGA patří do skupiny elektricky reprogramovatelných PLD obvodů a prakticky všechny FPGA obvody jsou přímo v cílovém systému, nesou tedy označení ISP. Obvody architektury FPGA jsou založeny na malých generátorech logických funkcí s paměťmi (LUT tabulkách), klopných obvodech a mnoha horizontálních a vertikálních propojeních.[ 1 ] Nynější FPGA obsahují několik stovek tisíc LUT tabulek i klopných obvodů. U architektury FPGA se používá technologie SRAM (obvody firem Altera, Xilinx a Lattice Semiconductor). Další výrobci používají technologie na bázi průrazu izolantu Anti Fuse (firma Actel). Obvody architektury FPGA kombinují výhody PLD obvodů s výhodami plně zákaznických VLSI obvodů a umožňuje implementaci rozsáhlých číslicových systémů. Díky tomu, že zákaznické obvody jsou si plně podobné, využívá se dnes pro návrh a simulaci jak FPGA obvodů, tak obvodů plně zákaznických. Velkou výhodou FPGA obvodů je i poměrně snadný přechod s návrhem k plně zákaznickým obvodům, jestliže byl ozkoušen v obvodu FPGA. Blokové schéma FPGA obvodu je na obr. 1. Obr.1 - Blokové schéma FPGA [ 1 ] 4

Logická pole FPGA Základ obvodu tvoří tři stavební prvky: 1. Programovatelné logické obvody jsou tvořeny: - Logickými prvky - Lokálním propojovacím polem 2. Programovatelné horizontální a vertikální propojení 3. Programovatelné vstupní/výstupní bloky K těmto základním prvkům přibyly ještě v poslední době tzv. specializované bloky, k nimž patří násobičky, paměti, bloky na úpravu hodinových signálů aj. Jmenované prvky mají u různých výrobců různá označení, ale jejich funkce je podobná. Logické bloky obsahují několik logických prvků a lokální propojovací pole, které tyto logické prvky může propojovat mezi sebou a umožňuje jejich propojení s logickými prvky v nejbližších logických blocích. V logických prvcích lze realizovat jednoduché kombinační nebo sekvenční obvody. Na obrázku 2 je znázorněno blokové schéma logického prvku. Obr.2 Příklad blokového schématu logického prvku [ 1 ] 5

Vnitřní struktura FPGA Vnitřní struktura FPGA různých výrobců V dnešní době existuje mnoho výrobců, kteří se zabývají programovatelnými logickými poli. V mé bakalářské práci jsem popsal, největší a nejznámější výrobce FPGA obvodů, mezi tyto výrobce patří firmy Altera, Xilinx, Actel, Quicklogik. Dále jsou i firmy, které nejsou tak známy, proto jsem je ve své práci nepopisoval. Mezi tyto firmy patří Atmel, Cypress Semiconductor, Achromix, Lattice Semiconductor, Aldec. 3.1. Výrobce Altera Společnost Altera je průkopníkem programovatelných řešení logiky, která umožňuje systému a společnosti, vyrábět rychle polovodiče za příznivé ceny. Po vynaleznutí technologie v roce 1983, je Altera stále v popředí programovatelné logiky. Dnes, Altera nabízí FPGAs, CPLDs, ASICs. Firma také nabízí softwarovou soupravu Quartus II, která je zaměřena na design a simulaci logických obvodů. Jedná se o softwarový nástroj, který Altera produkuje pro analýzu a syntézu HDL návrhu, který slouží vývojáři k tomu, aby sestavoval návrhy, vykonával časovou analýzu, zkoumal RTL schémata, simuloval reakci na design a konfiguroval cílová zařízení s programátory. Ačkoli jejich softwarová souprava značně podporuje VHDL a Verilog jako primarní jazyky, Altera je také vývojářem Hardwarového jazyku známého jako AHDL. Altera dělí své zařízení na výkonné a levné třídy FPGA. Do výkonných tříd patří všechny zařízení Stratix a do levné třídy Arria, Cyclone. Stratix, Stratix II, Stratix III Stratix FPGAs je Alterovou první generací FPGAs. Stratix FPGAs se používal pro armádní a letecké aplikace, kde byl požadován široký operační rozsah teplot. Stratix II FPGAs je zařízení uvádějící Alterovu patentovanou technologii, která zvyšuje a snižuje přístrojové výdaje. Stratix II FPGAs je optimalizován pro celkovou přístrojovou sílu. Stratix III FPGAs poskytuje vysoký výkon a vysoké schopnosti integrace potřebné pro základní stavy příští generace,sít infrastruktury a pokročilé zobrazovací vybavení. Stratix GX, Stratix II GX Stratix GX je určen pro vysokorychlostní aplikace, které potřebují spolehlivou technologii přenosu dat. Stratix II GX je Alterovou třetí generací FPGAs se začleněnými kombinacemi přístroje. Poskytuje bohatý roztok pro rostoucí množství aplikací a protokolů vyžadující multi gigabit seriový I/O. Tyto kombinace přístroje poskytují robustní odolnost proti rušení a chvění. Arria Je Alterovou odpovědí jak snadno spojit existující jednotky a zařízení nových čipů podporovány PCI Expres, Gigabit Ethernet a Seriál RapidIO protokoly. 6

Vnitřní struktura FPGA Cyclone, Cyclone II, Cyclone III Cyclone série FPGAs jsou tzv. postaveny ze země nahoru pro svoji nízkou cenu. Tyto levná zařízení poskytují aplikaci soutředěné rysy jako jsou začleněná pamět, externí připojení paměti a hodinové schéma. Cyclone II zařízení zahrnují FPGA rys, který stanový levné aplikace včetně širokého okruhu hustoty, paměti. Podporují široký okruh běžných externích připojení pamětí a I/O protokoly běžných a levných aplikací. Cyclone III nabízí nebývalé kombinace malého výkonu, vysoké funkčnosti a nízké ceny k tomu, aby maximalizovala konkurenční okraj. Jsou vyráběny pro používání Tchajwanského Semiconductor Manufacturing Company. 3.2. Výrobce Xilinx Firma Xilinx je největším světovým výrobcem programovatelných logických polí. Xilinx má bezkonkurenčně nejširší sortiment. Všechny FPGA Xilinx používají konfiguraci pomocí statické paměti RAM. To znamená, že po připojení napájení je nutné vždy nahrát konfiguraci znovu. Výhodou tohoto řešení je téměř nekonečná reprogramovatelnost FPGA a také rychlost. Konfigurační propojky pracují na principu paměti RAM jsou rychlejší než přepínače založené na principu např.eeprom. Pro využití obvodů FPGA u nás je důležitý údaj o podpoře ve vývojovém systému WebPACK. Firma Xilinx nabízí svůj vývojový systém v několika verzích. Řada XC2000 Historicky první FPGA, v současnosti se již nedodává. Principy použité pro její konstrukci byly natolik geniální, že jsou na nich postaveny (samozřejmě s řadou zásadních inovací ) i nejnovější FPGA. Řada XC3000 (A) / XC3100 (A) Se stala na začátku 90.let prakticky průmyslovým standardem. Řada XC4000 (A / D / E / ) Přinesla zásadní novinky v architektuře FPGA. Výsledkem je vysoká flexibilita hustota a integrace. Jejími přímými následníky, v mnoha ohledech kompatibilními jsou nové preferované řady Spartan a Virtex. Řada XC5200 Byla optimalizována na nízkou cenu při zachování všech důležitých vymožeností. 7

Vnitřní struktura FPGA Spartan, Spartan II, Spartan IIE Doporučen pro nové konstrukce. Nabízí velmi nízkou cenu při hustotě logiky do 600 tisíc ekvivalentních hradel. Spartan Je první druh zboží v nízké cenové skupině FPGAs, díky čipovým RAM a široké podpoře pro předdeklarovaná jádra. Produkty jsou dostupné v hustotě v rozsahu od 5.000 40.000 systémových hradel. Spartan II Je implementovaný s regulérní, flexibilní programovatelnou architekturou Configurable Logic Block(CLBs), který je obklopen programovatelnými vstupními a výstupními bloky (IOBs), spojeny vzájemně silnou hierarchií všestranných směrujících zdrojů. Architektura také poskytuje pokročilé funkce jako Block RAM a hodinové řídící bloky. Spartan IIE Dává rychlý, spolehlivý výkon, a nejnižší cenu za IO v průmyslu. Zde už není žádná rychlejší, bezpečnější, nebo nižší cenová cesta jak vyvinout spotřební zboží příští generace. Doporučuje flexibilní řešení designu, které můžete přeprogramovat jak v laboratoři, tak i u zákazníka na místě. Virtex V dnešní době nejdokonalejší FPGA na světě. Nabízejí obrovskou hustotu logiky až miliony ekvivalentních hradel při zachování mimořádného vysokého výkonu. 8

Vnitřní struktura FPGA 3.3 Výrobce Actel Firma ACTEL vyvíjí FPGA, které jsou používány v komerční, průmyslové, armádní a vesmírné aplikaci. Zabývá se dvěma technologiemi, jsou to Antifuse (řada Axcelerator) a Flash (řada ProASIC). Antifluse technologie poskytuje mnohem vyšší využití křemíkové podložky, jelikož se jedná o jednotlivé spoje mezi jednotlivými moduly a jsou realizovány ve druhé a třetí metalizační úrovni. Obr. 3 Antifluse technologie [ 4 ] Tímto způsobem je možné vypustit propojovací kanály mezi řadami buněk a využít i tuto plochu křemíku pro síť logických modulů. Toto opatření nese sebou i menší rozměry daných čipů a i jeho nižší pořizovací cenu. Propojení mezi logickými moduly umožňují propojovací elementy Kov Kov. Tyto elementy bývají vloženy mezi vrstvy metalizace. Jestliže, nejsou elementy naprogramovány, nacházejí se ve stavu rozpojeném. Po naprogramování elementů se vytvoří vodivé spojení. Vlastní propojka je vytvořena kombinací amorfního křemíku, dielektrického materiálu a kovu (wolfram). Při programování dojde k průrazu dielektrické vrstvy a vytvoří se tak vodivý spoj s odporem asi 25Wa s kapacitou asi 1,6 ff. Extrémně malé rozměry propojovacího elementu umožňují jejich vysokou koncentraci na čipu a tudíž i vysoké využití plochy čipu. Navíc tyto propojky poskytují jedinečnou ochranu před kopírováním, neboť se neprovádí žádná konfigurace z přídavné paměti. Z výše uvedeného vyplývá, že kapacita a odpor spojek technologie Antifuse včetně obou metalizací jsou výrazně nižší než u jiných použitelných technologií. Řada SX Jedná se o vysoce rychlou řadu, která je dána totální odlišnou architekturou od standardních FPGA. Odlišná je především v těchto bodech: - programovatelnými propojkami - jiným typem logické buňky a jejího uspořádaní - vlastním uspořádáním čipu 9

Vnitřní struktura FPGA Řada MX Je tvořena řadami A40MX a A42MX a jsou postaveny na technologii CMOS, které umožňují při napájení 5V dosažení plného výstupního rozkmitu. Řada ProAsic Je vyráběna standardní čtyřvrstvou Flash/CMOS technologií, která kombinuje vysokou hustotu hradel s malou spotřebou a díky Flash disponuje permanentním a přitom reprogramovatelným uložením konfiguračních dat přímo na čipu. A snaží se též konkurovat konvečním neprogramovatelným obvodům ASIC. Řada ProAsic Plus Vychází z předchozí řady ProAsic a je její vylepšenou verzí. Vyrábí se se standardní čtyřvrstvou Flash/CMOS technologií, která zvyšuje maximální počet ekvivalentních hradel na 1M. 3.4 Výrobce Quicklogic ArcticLink Programovatelná platforma navržená k tomu, aby se setkávala s jedinečnými požadavky zařízení počítače do ruky, např. mobilní telefony, PDA, osobní multimediální přehrávače, GPRS a ExpressCard. Jedná se o platformu, která dává vývojářům schopnost rychle spojit širokou škálu technologií k jejich aplikačním procesům, aniž by se snižoval výkon a použití CPU. Inovační vnitřní struktura dovoluje hlavnímu procesoru, aby ustanovil trvalé a souběžné přesuny dat mezi různými hostitelskými kontrolery bez dalšího zakročení. PolarPro PolarPro technologie byla navržena k tomu, aby se daly vzájemně spojit systémové požadavky a přenosné aplikace. Tato technologie má v sobě zabudovanou FIFO řídící logiku. Eclipse II Jedná se o architekturu, která uvádí výkonnou logiku, SRAM bloky a flexibilní hodinovou architekturu. Nabízí vícenásobná řešení pro aplikace, které požadují ultra-nízký příkon a vysokou bezpečnost designu. Eclipse Plus Kombinuje výkonné začleněné DSP funkce s vysokorychlostní programovatelnou logikou, aby vytvořila jedinečnou systémovou úroveň řešení. Eclipse Plus zařízení se svou integrací rovnají, výkonovým úrovním standardních produktů s flexibilitou programovatelné logiky. 10

Vnitřní struktura FPGA Eclipse Nabízí systémové rysy ideální pro telekomunikaci, připojení do sítě, počítání a testuje aplikace, které požadují kombinaci vysokého výkonu, vysoké hustoty. QuickRAM Nabízí jedinečnou kombinaci RAM, které jsou ideální pro návrhy s extrémními výkonnými RAM, ROM a FIFO požadavky. Pasic 3 Je dostupný v komerčních, průmyslových a armádních teplotních stupních. 11

Vývojové prostředí 4. Vývojové prostředí 4.1 Vývojové prostředí Libero od Actel Předtím než si začneme popisovat vývojové prostředí, je třeba si jej nainstalovat. Instalační soubor lze stáhnout z internetových stránek výrobce www.actel.com, kde je třeba se zaregistrovat, aby bylo dovoleno si instalační soubor stáhnout. Pro spuštění prostředí, je ještě potřeba licence. O tuto licenci lze žádat jen pomocí internetu, kde se musí vyplnit malý dotazník a zadat sériové číslo disku, jelikož se tato licence generuje pro každý disk zvlášť, aby se předešlo kopírování jedné licence do více vývojových prostředí. Tato licence je spolu s návodem jak ji nastavit v path, zaslána na email, který zadáte při registraci. Na obrázku je vidět, jak vypadá úvodní stránka vývojového prostředí LIBERO IDE. Obr. 3 - Úvodní stránka Libera Jelikož, kdybych zde popisoval jak se s prostředím pracuje, zabralo by to hodně místa, proto podrobnější nápovědu, jak se s vývojovým prostředím Libero pracuje naleznete na mých www stránkách, které zní www.axista.webz.cz, v sekci vývoj. prostředí. A určitě taky na přiloženém DVD 12

Vývojové prostředí 4.2 Vývojové prostředí ISE WebPack 9.2i od Xilinxu Dříve než, se začnu vývojové prostředí ISE WebPACK 9.2i od firmy Xilinx, testovat a popisovat jak se s ním pracuje, je zapotřebí vývojové prostředí stáhnout a nainstalovat. Instalační soubor lze stáhnout z internetových stránek výrobce www.xilinx.com, kde výrobce dovoluje volně stáhnout instalační soubor, jen se musí provést registrace. U tohoto vývojového prostředí se už nemusí žádat o žádný licenční soubor. Vše se děje v průběhu instalace, kde se vše nastaví, pro správný běh vývojového prostředí. Na následujícím obrázku je vidět, jak vypadá spuštěné vývojové prostředí ISE WebPack 9.2i s naprogramovaným programem. Obr. 4 - Vývojové prostředí ISE WebPACK 9.2i Vzhledem k rozsáhlému popisu práce s uvedeným vývojovým prostředím, který by zde byl velmi obsáhlý, rozhodl jsem se, že podrobnější nápovědu jak se s vývojovým prostředím ISE WebPACK 9.2i pracuje, uložím na mých internetových stránkách www.axista.cz, v sekci vývojové prostředí a také na DVD, které je přílohou mé bakalářské práce. 13

Vývojové prostředí 4.3. Quartus II Web Edition Software Version 7.2 Další vývojové prostředí, které jsem testoval a popisoval je Quartus II Web Edition Software. Toto vývojové prostředí je od Altery, která se taky zabývá programovatelnými logickými poly. Vývojové prostředí, je možno stáhnout jako free verzi a nainstalovat, ale jen na dobu určitou. To znamená, že po dobu 30 dní je možno vývojové prostředí používat bez licence. Jestliže chceme používat vývojové prostředí déle po dobu 150 dní je už potřeba požádat o licenční soubor. Abychom mohli vývojové prostředí nainstalovat, otestovat a popsat je potřeba se zaregistrovat na stránkách firmy, které zní www.altera.com. Na následujícím obrázku je vidět jak vypadá spuštěné vývojové prostředí Quartus II 7.2sp2 Web Edition. Vzhledem k rozsáhlému popisu práce s uvedeným vývojovým prostředím, který by zde byl velmi obsáhlý, rozhodl jsem se, že podrobnější nápovědu, jak se s vývojovým prostředím Quartus II 7.2sp2 Web Edition pracuje, uložím na mých internetových stránkách www.axista.cz, v sekci vývojové prostředí a také na DVD, které je přílohou mé bakalářské práce. 14

Vývojové prostředí 4.4. Další vývojové protředí Existují samozřejmě i další vývojové prostředí od dalších výrobců, kteří se zabývají programovatelnými logickými poli. Jedná se o vývojové prostředí JTAG Configurator od ATMEL, CyberClocks od CYPRESS, QuickWorks VHDL od QUICKLOGIC. Tyto vývojové prostředí lze stáhnout a vyzkoušet, pouze pokud za ně zaplatíte určitou částku, která je po Vás žádaná při registraci na jejich firemních stránkach. 15

Výhody a nevýhody 5. Výhody a nevýhody vývojových prostředí Popsané výhody a nevýhody, jsou popsány z hlediska práce návrháře se softwarem. Pro praxi se vybírají prostředí, které nezávisí od návrhářova pohodlí, ale od toho do jaké FPGA se bude syntetizovat. Toto vše ovlivňuje cena programovatelného pole a také zaběhlé zvyklosti v dané firmě tzn., že jestliže má firma programátory pro Actel, nebude provádět implementaci pro Xilinx apod. 1. První nevýhoda je, že obě vývojová prostředí Libero, ISE WebPACK 9.2i a Quartus zabírají po nainstalování na disku hodně místa. 2. Další nevýhoda je, aby bylo možno Libero používat je třeba, žádat o licenční soubor přes Internet na jejich internetových stránkách. Kdo Internet nemá, vývojové prostředí Libero nerozjede. Licenční soubor dojde na váš email spolu s návodem jak jej nastavit v path. 3. Výhodou u vývojového prostředí ISE WebPACK 9.2i je, že se nemusí žádat o žádný licenční soubor, vše potřebné se nastaví při instalaci. Jestliže, ale se bude při instalovávat ModelSim XE III je potřeba o licenční soubor zažádat u výrobce Xilinx na jeho internetových stránkách. 4. U vývojového prostředí Quartus, je rozdíl jakou dobu jej budeme používat. Jestliže, jen měsíc není potřeba žádat o licenční soubor, pokud však jej budeme používat déle je potřeba požádat o licenční soubor. 5. Po spuštění Libera vyskočí okna s kroky, které se mají provádět. U ISE WebPACK 9.2i tomu tak není a pro začátečníka uživatele to může být pěkný zmatek a musí vyhledat nějaký manuál a ovládaní. U Quartusu je to obdobné jak u vývojového prostředí ISE WebPACK 9.2i, je potřeba prostudování manuálu. 6. Výhodou je, že ISE WebPACK 9.2i sobě obsahuje základní manuál ovládání. Quartus obsahuje též základní manuál, ale je udělán ve flashové podobě. 7. Vývojové prostředí Libero je přehlednější oproti ISE WebPACK 9.2i i Quartusu, které jsou nepřehledné, a v prvotních krocích může uživatele odradit od používání. Ale jakmile si na ně alespoň trochu zvykne, je možno v něm efektivně a rychle pracovat. 8. Výhoda ISE WebPACK 9.2i i Quartusu je, že po vyplnění vstupních hodnot a kontrole nadefinovaných údajů se automaticky vygeneruje název entity a architektury. V Liberu taková možnost není, tam se musí vše vyplnit ručně, kdo neví, jak má daná struktura vypadat, může lehce udělat chybu. 9. Výhodou u ISE WebPACK 9.2i i Quartusu je, že než se něco vytvoří, vždy si na konci dané akce, lze zkontrolovat zadané data, které se mají v projektu vytvořit. 10. Další rozdílností vývojových prostředí je to, že pro Simulaci (Spuštění ModelSim) v Liberu stačí stisknout dané tlačítko (Modul) a při varovaní zatrhnou volbu Start ModelSim, ale u ISE WebPACK 9.2i je potřeba vytvoření nového kódu, který má koncovku *tbw(test Bench WaveForm). To samé je i u Quartusu, kde je potřeba založení nového kódu, který má koncovku *.vwf. 11. Další rozdíl u vývojových prostředí je při kompilaci projektu. Když se má zkompilovat kód v Liberu je zapotřebí nejdříve kód naimportovat do stimulusu a potom spustit modelsim a tam až provést kompilaci, přičemž u ISE Webpack 9.2i lze kompilaci provádět po každém uložení a úpravě kódu a není potřeba, žádné importace. V quartusu se kompilace provádí, tak že se vytvářejí sumární hodnoty jak pro kompilaci, tak pro syntézu. 12. Při simulaci kódu ve vývojových prostředích, dochází k tomu, že u LIBERA vyskočí další okno, kde je vidět průběh signálů, takže je třeba se přepínat mezi okny. U ISE WebPACK 9.2i 16

Výhody a nevýhody se v prostředí vytvoří další záložka, takže se lze přepínat mezi záložkami, je to pohodlnější a pohotovější. 13. Dle mého uvážení je vytváření nového projektu ve vývojovém prostředí ISE WebPACK 9.2i zdlouhavé jelikož se musí projít mnoha okny, než se nový projekt vytvoří, u vývojového prostředí LIBERO tomu tak není. 14. Obě vývojové prostředí nabízejí možnost, podívat se do jazykové šablony, tato šablona ukazuje, jak má správně vypadat syntaxe (konstrukce) jazyka VHDL. 15. Při simulaci v ISE WebPACK 9.2i se vytvoří simulační kód, který je možno potom sledovat jakmile si spustíme krokování. 16. Po simulaci jsem v ISE WebPACK 9.2i nezjistil, jak se dají měnit hodnoty vstupních hodnot, jsou zadány natvrdo. V Liberu se vstupní hodnoty dají měnit libovolně, takže je potom možnost vidět v ModelSlim průběh. 17. Jak v Liberu tak i ISE WebPACK 9.2i se zkompilovaný kód ukládá do adresáře work odkud je potom spouštěn. 18. Všechny vývojové prostředí, aby v nich mohlo bez problému fungovat naprogramované obvody, musí obsahovat nadefinované knihovny, jinak při kompilaci hlásí chyby. 17

Výhody a nevýhody Obecné shrnutí výhod a nevýhod : Vývojové prostředí LIBERO Klady + Lépe graficky zpracované a přehlednější, usnadňuje ovládání. + Součástí prostředí je ModelSim. + Možnost měnit vstupní hodnoty v ModelSim. + Nabízí šablonu, jak má vypadat základní syntaxe jazyka. Zápory - Po nainstalování na disku zabírá 1.5 GB místa na disku. - Pro spuštění prostředí potřeba mít licenční soubor. - Pro tvorbu syntézy zdlouhavý způsob => proklikání přes mnoho oken - Zdlouhavá kompilace vytvořeného kódu. - Neexistuje automatické vygenerování základní struktury. - Nelze zkontrolovat vytvořené kroky, které se stanou součástí projektu. Vývojové prostředí ISE WebPACK 9.2i Klady + Pro tvorbu syntézy stačí dvojklik na daný odkaz a vyskočí výsledek + Nabízí šablonu, jak má vypadat základní syntaxe jazyka + Pro spuštění prostředí není potřeba, žádný licenční soubor. + Při zakládání nového kódu automatická generace základní struktury. + Při zakládání nějakého kódu možnost kontroly. Zápory - Graficky nepřehledné. - Součástí prostředí není ModelSim, potřeba doinstalovat. - Prostředí, ale obsahuje něco jako ModelSim, ale nelze v něm měnit vstupní hodnoty. - Po nainstalování na disku zabírá 3.2 GB místa na disku - Nemá přehledné kroky postupu, potřeba nastudovat manuál. Vývojové prostředí Quartus II 7.2sp2 Web Edition Klady + Vývojové prostředí graficky na první pohled přehledné. + Jednoduché ovládání prostředí, přes ikony ve vývojovém prostředí. + Tutoriál v mluvené formě doplněn ukázkami co jak se zakládá. + Vytváření sumárních tabulek, jak pro kompilaci tak pro synthézu Zápory - Vývojové prostředí jen na dobu určitou k používání. - Zdlouhavé zakládání nového projektu. - Při prvním uložení kódu, dotaz kam se má vytvořený kód uložit. - Po nainstalování na disku zabírá 1.6 GB místa na disku - Po každé nové kompilaci se tvoří nová struktura Compilacion Report. 18

Implementace a testování 6. Implementace a testování čtyřbitového jednosměrného čítače 6.1. Rozbor úlohy Jedním z dalších úkolu bakalářské práce je implementace a testování obvodu ve vývojových prostředích. Daný obvod se jmenuje čtyřbitový jednosměrný čítač, který je doplněn dekodérem stavů na 7 - segmentový displej. Výstup na displeji se zobrazuje hexadecimálně, tzn. 0 9, A, b, c, d, E, F. Na uvedeném obrázku, je vidět jak vypadá daný displej a jak se zobrazují hexadecimální čísla na 7 segmentovém displeji. 7 - segmentový displej Čítač slouží k počítání impulzů. Stavem čítače je soubor hodnot n výstupních signálů. Čítač při každém vstupním impulzu změní stav a postupně tak prochází cyklem M stavů. Po M impulzech se cyklus opakuje, ale počet opakování již nelze samotným čítačem zjistit. Během cyklu se žádné dva stavy neopakují. [1] Dekodér jeho úkolem je dekódovat vstupní vektor tvořený několika málo signály na výstup, který zpravidla tvoří mnohem více signálů. Adresový dekodér Nejčastěji používaným dekodérem je adresový dekodér, který na základě vstupní adresy generuje povolávací signály např. pro jednotlivé segmenty, paměťové banky, periférie apod. 19

Implementace a testování 6.2. Realizace úlohy Ještě předtím než začneme daný obvod programovat v jazyce VHDL, je zapotřebí sestrojit pravdivostní tabulku, aby bylo vidět, jak se budou postupně zobrazovat čísla v jednotlivých krocích. Vstupní hodnoty proměnných budou v binárním tvaru nabývat postupně taky těchto hodnot, tzn. vyjádříme-li číslo v šestnáctkové soustavě dostaneme postupně na displeji 0,1,2,3.. E, F. Př. Přijdeli na vstup signál 0100 což je (4) 16 musí se rozsvítit segmenty - X,T,Z,U. Pro tento postup se nastavilo na příslušných segmentech logická 1 a na ostatních logická 0. Pravdivostní tabulka: Programová část: Při programování jsem použil aritmetickou knihovnu use IEEE.STD_LOGIC_ARITH.ALL, která obsahuje základní operace nad bitovým vektorem. V prvotním, kroku bylo zapotřebí nadefinovat vstupní a výstupní hodnoty. V dalším kroku jsem vytvořil tělo programu, které ukazuje chování čtyřbitového čítače. Naprogramovaný kód, lze spatřit v příloze. 20

Implementace a testování Ukázka časového průběhu Obr. 6 - Ukázka časového průběhu Výsledky Syntézy ve vývojových prostředích Libero, ISE WebPACK a Quartus Co to vlastně je syntéza? Při tvorbě syntézy se mapují virtuální logické prvky, popsané jazykem pro hardwarový návrh na základní logické prvky, jenž obsahuje konkrétní programovatelné logické pole. Po úspěšném provedení syntézy se vytvoří textový soubor, který obsahuje všechny informace týkající se daného naimplementovaného kódu a na jeho konci se nachází tabulka, kde jsou tyto elementy vypsány. Na obrázcích v příloze jsou ukázány, jak taková tabulka vypadá ve vývojových prostředích různých výrobců FPGA. Xilinx ISE 9.2i Při syntéze ve vývojovém prostředí se vytvoří synthesis report (adresář), který popisuje obecné informace jako: pro jaký vstupní soubor, byla syntéza vykonána, jméno programovatelného log. pole atd. Pro syntézu bylo použito programovatelné logické pole v50bg256-6, které vývojové prostředí nabízí spolu s dalšími možnostmi volby. Na úplném konci synthesis report je tabulka, která ukazuje, kolik je potřeba elementu. Libero Vývojové prostředí Libero vytváří synthesis report ve speciálním okně Synplify, kam se načte jméno projektu a potom za pomoci tlačítka RUN, se vytvoří příslušný report k danému naprogramovanému programu. Po vytvoření reportu se je možno podívat pomocí tlačítka View Log, které nám ukazuje, kolik je potřeba elementu. Pro syntézu ve vývojovém prostředí Libero bylo použito programovatelné logické pole ProASIC3 A3PO30, které jsem si navolil při zakládání nového projektu. Předchozí výpis se oproti Liberu liší, jak ve výpisu elementů, tak v jeho délce. 21

Implementace a testování Quartus II 7.2sp2 Web Edition Poslední synthesis report byl vytvořen ve vývojovém prostředí Quartus II. Při jeho tvorbě se postupně vytvářejí sumarizační tabulky, které vývojové prostředí vytváří a informuje o celkových počtech. Pro syntézu ve vývojovém prostředí Quartus II jsem si navolil programovatelné logické pole Cyclone II EP2C5F256C6. Po srovnání reportů z jednotlivých vývojových prostředí, jsem došel k závěru, že virtuální prvky, které se namapovaly, se početně moc neliší. Z toho plyne, že při tvorbě jakéhokoliv programu a vytvoření synthesis reportu, dostaneme vždy výsledný počet, který se bude lišit, jen v některých namapovaných virtuálních logických prvcích. V příloze naleznete ukázku, jak vlastně takový synthesis report vypadá u jednotlivých vývojových prostředí. 22

Závěr 7. Závěr V této bakalářské práci jsem popisoval co je to jazyk VHDL, programovatelná logická pole FPGA různých výrobců, kteří se zabývají tímto jazykem a především implementací zadaného programu. Dále jsem srovnával a popisoval vývojová prostředí, určená pro jazyk VHDL. Některé tyto prostředí, lze stáhnout zdarma z internetových stránek výrobců stačí pouhá registrace (XILINX, ACTEL, ALTERA). K dispozici, jsem měl následující vývojová prostředí (ISE WebPACK, LIBERO, QUARTUS), které jsem nainstaloval. Ale existují i další výrobci, kteří mají své vývojové prostředí, ale chtějí za jeho použití zaplatit (ATMEL, CYPRESS, QUICKLOGIC, aj.). Při práci s vývojovými prostředími a jazykem VHDL, jsem narazil na pojem Behaviorální styl. Behaviorálním stylem se rozumí popis na vysoké úrovni abstrakce, kde nemusejí být uvažovány konkrétní hodnoty šířky datových a adresových sběrnic, kde nejsou specifikovány hodinové signály. V implementační části jsem se zaměřil, jak vlastně vypadá čtyřbitový čítač, který byl doplněn dekodérem stavů na 7 segmentový displej. Hlavním úkolem bylo daný program naprogramovat a vyzkoušet jeho chování ve vývojových prostředích. Při programování a studování jazyka VHDL, jsem zjistil, že daný jazyk je dosti upovídaný a jeho jazykové konstruktory, jsou navrženy tak, aby zdrojový text byl co nejkratší. Dalším zjištěním bylo, že jazyk VHDL obsahuje prostředky, díky nimž můžeme zapsat popis modelovaných subsystémů s určitou obecností a v některých konkrétnějších případech zpřesnit implementaci jednoduchým zadáním číselné hodnoty parametrů. Po úspěšném naprogramování a odladění chyb, přišlo na řadu zkoušení a testování daného programu ve vývojových prostředích, abych zjistil, jak se daný program bude jevit v těchto prostředích a především, abych mohl popsat jednotlivá prostředí z hlediska funkčnosti a práce s nimi. Postupem času jsem přicházel na to, že se jednotlivá prostředí od sebe liší různými výhodami a nevýhodami, které jsem popsal výše. Co se týče samotné instalace vývojových prostředí, tak výrobci FPGA udávají, že lze vývojová prostředí nainstalovat jen Windows Vista Business a Windows XP Profesional. Musím jen říct, že to není pravda, jelikož jsem je nainstaloval a testoval i na ostatní Operačních Systémech, kromě LINUXU tento operační systém jsem nezkoušel, jelikož jej nemám nainstalovaný. V následující tabulce uvádím na jakých PC a pod jakými operačními systémy, byly vývojové prostředí spouštěny, popisovány a testovaný. Notebook Toshiba Stolní počítač OS Windows Vista Home Premium Windows XP Home Edition verze 2002 Procsor Intel Core 2 Duo 1.66 Ghz AMD 1.3 Ghz Paměť 2 GB 512 GB Díky této bakalářské práci jsem mohl proniknout do tajů číslicových systémů, které se v dnešní době vyskytují v našem blízkém okolí a pomáhají nám při každodenní práci. Dále my pomohla rozšířit si nabyté zkušenosti, které jsem měl ze střední školy, co se týče číslicových systémů, které jsme probírali jen teoreticky, a nebyla nám předvedena žádná ukázka. Zde jsem si mohl danou problematiku vyzkoušet na konkrétní úloze (čtyřbitový jednosměrný čítač) a simulovat průběhy signálů v čítači na počítačích, ještě před jeho implementací do programovatelného hradlového pole (FPGA). 23

Použita literatura 8. Použitá literatura [ 1 ] Pinker, J.- Poupa, M. : Číslicové systémy a jazyk VHDL. BEN, Praha 2006 [ 2 ] Musil, V. : Návrh digitálních integrovaných obvodů a jazyk VHDL.[Skriptum Brno] Brno 2002 [ 3 ] Bartoň, Z., Drobek, J., Kolouch, J., Kovalský, J., Mitrych, J., Musil, V., Vlček, K.: Návrh digitálních integrovaných obvodů, Jazyk VHDL, Cvičení. VUT v Brně, (2000) [ 4 ] Firemní stránky www.actel.com [ 5 ] Firemní stránky www.xilinx.com [ 6 ] Firemní stránky www.altera.com [ 7 ] Firemní stránky www.quicklogic.com [ 8 ] Firemní stránky www.atmel.com [ 9 ] Firemní stránky distributora FPGA Actel pro ČR http://www.phobos.cz [ 10 ] http://www.asicentrum.cz 24

Příloha PŘÍLOHA DVD: Obsah: Adresář Kra409 obsahuje: I. Text textová část práce ve formátu PDF. II. Program Adresář s čítačem a dekodérem. III. Uživatelské příručky vývojových prostředí ve formátu HTML. IV. Instalační soubory vývojových prostředí

Na obrázku vidíme část syntezis report z vývojového prostředí LIBERO: Příloha

Příloha Na obrázku vidíme část syntezis report z vývojového prostředí ISE WebPACK: Na obrázku vidíme část syntezis report z vývojového prostředí Quartus: Ukázka naprogramovaného kódu

Příloha