abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:11 | Bezpečnostní upozornění

    Red Hat řeší bezpečnostní incident, při kterém došlo k neoprávněnému přístupu do GitLab instance používané jejich konzultačním týmem.

    Ladislav Hagara | Komentářů: 0
    včera 23:33 | Nová verze

    Immich byl vydán v první stabilní verzi 2.0.0 (YouTube). Jedná se o alternativu k výchozím aplikacím od Googlu a Applu pro správu fotografií a videí umožňující vlastní hosting serveru Immich. K vyzkoušení je demo. Immich je součástí balíčků open source aplikací FUTO. Zdrojové kódy jsou k dispozici na GitHubu pod licencí AGPL-3.0.

    Ladislav Hagara | Komentářů: 0
    včera 22:33 | IT novinky

    Český telekomunikační úřad vydal zprávy o vývoji cen a trhu elektronických komunikací se zaměřením na rok 2024. Jaká jsou hlavní zjištění? V roce 2024 bylo v ČR v rámci služeb přístupu k internetu v pevném místě přeneseno v průměru téměř 366 GB dat na jednu aktivní přípojku měsíčně – celkově jich tak uživateli bylo přeneseno přes 18 EB (Exabyte). Nejvyužívanějším způsobem přístupu k internetu v pevném místě zůstal v roce 2024 bezdrátový

    … více »
    Ladislav Hagara | Komentářů: 0
    včera 12:11 | Nová verze

    Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2025-10-01. Přehled novinek v příspěvku na blogu Raspberry Pi a poznámkách k vydání. Jedná o první verzi postavenou na Debianu 13 Trixie.

    Ladislav Hagara | Komentářů: 0
    včera 05:22 | Nová verze

    Byla vydána nová verze 4.6 svobodného notačního programu MuseScore Studio (Wikipedie). Představení novinek v oznámení v diskusním fóru a také na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 02:22 | Komunita

    Společnost DuckDuckGo stojící za stejnojmenným vyhledávačem věnovala 1,1 milionu dolarů (stejně jako loni) na podporu digitálních práv, online soukromí a lepšího internetového ekosystému. Rozdělila je mezi 29 organizací a projektů. Za 15 let rozdala 8 050 000 dolarů.

    Ladislav Hagara | Komentářů: 4
    1.10. 20:11 | Nová verze

    Svobodný multiplatformní herní engine Bevy napsaný v Rustu byl vydán ve verzi 0.17. Díky 278 přispěvatelům.

    Ladislav Hagara | Komentářů: 0
    1.10. 16:11 | Nová verze

    Bylo vydáno openSUSE Leap 16 (cs). Ve výchozím nastavení přichází s vypnutou 32bitovou (ia32) podporou. Uživatelům však poskytuje možnost ji ručně povolit a užívat si tak hraní her ve Steamu, který stále závisí na 32bitových knihovnách. Změnily se požadavky na hardware. Leap 16 nyní vyžaduje jako minimální úroveň architektury procesoru x86-64-v2, což obecně znamená procesory zakoupené v roce 2008 nebo později. Uživatelé se starším hardwarem mohou migrovat na Slowroll nebo Tumbleweed.

    Ladislav Hagara | Komentářů: 3
    1.10. 16:00 | IT novinky

    Ministerstvo průmyslu a obchodu (MPO) ve spolupráci s Národní rozvojovou investiční (NRI) připravuje nový investiční nástroj zaměřený na podporu špičkových technologií – DeepTech fond. Jeho cílem je posílit inovační ekosystém české ekonomiky, rozvíjet projekty s vysokou přidanou hodnotou, podpořit vznik nových technologických lídrů a postupně zařadit Českou republiku mezi země s nejvyspělejší technologickou základnou.

    … více »
    Ladislav Hagara | Komentářů: 3
    1.10. 12:55 | Nová verze

    Radicle byl vydán ve verzi 1.5.0 s kódovým jménem Hibiscus. Jedná se o distribuovanou alternativu k softwarům pro spolupráci jako např. GitLab.

    Ladislav Hagara | Komentářů: 3
    Jaké řešení používáte k vývoji / práci?
     (40%)
     (47%)
     (14%)
     (16%)
     (18%)
     (14%)
     (18%)
     (14%)
     (14%)
    Celkem 159 hlasů
     Komentářů: 10, poslední dnes 01:37
    Rozcestník

    Programovatelná logika III: Vývojové prostředky (úvod)

    27.2.2013 15:28 | Přečteno: 1839× | Výběrový blog | poslední úprava: 27.2.2013 15:30

    Po delší odmlce konečně další pokračování seriálu o programovatelné logice. Tentokrát se jedná o úvod do vývojových prostředků pro programovatelné logické obvody. Informace nejsou kompletní, protože tato kapitola je poměrně dlouhá a bude dokončena až v příštím pokračování. Text opět navazuje na předchozí dva díly, které najdete zde a zde.

    2 Vývojové prostředky

    Programovatelné logické obvody se sebelepší vnitřní architekturou by nebyly prakticky použitelné bez odpovídající podpory vývojových prostředků. Teoreticky je při znalosti vnitřní architektury konkrétního PLD možné přímo vytvořit finální schéma propojení jednotlivých funkčních bloků. U jednoduchých PLD jako jsou obvody PAL nebo GAL je něco takového i prakticky realizovatelné, ale u dnešních složitých FPGA je to něco naprosto nereálného.

    2.1 Typy vývojových prostředků

    Základní vývojové prostředky pro programovatelnou logiku musí zajistit transformaci vstupního návrhu nebo popisu funkce do výstupního formátu použitelného pro konfiguraci nebo naprogramování konkrétní součástky. Ve skutečnosti je to pouze jedna z mnoha funkcí dnešních vývojových prostředků používaných pro aplikaci programovatelné logiky. Vývojová prostředí pro FPGA se stávají neustále složitější a komplexnější. Jsou často podobná velkým vývojovým systémů pro digitální integrované obvody a mnohé používané nástroje jsou totožné. Typické vývojové prostředky pro programovatelnou logiku je možné rozdělit do několika základních skupin podle jejich funkce:

    Implementační nástroje slouží pro převod návrhu funkce do výstupního formátu použitelného pro fyzickou konfiguraci programovatelné součástky. Do této skupiny patří nástroje pro syntézu a implementaci.

    Verifikační nástroje slouží pro ověření funkce jak samotného návrhu, tak i jednotlivých mezivýsledků implementačního procesu. Do této skupiny patří číslicové nebo smíšené simulátory a různé analytické nástroje. Může se jednat o nástroje pro statickou časovou analýzu (STA) nebo třeba analyzátory výstupů implementačních prostředků.

    Hardwarové prostředky slouží především pro verifikaci, ověření funkce výsledného obvodu a pro jeho charakterizaci. Jedná se například o různé vývojové a testovací desky, programátory, programovací adaptéry a JTAG adaptéry pro konfiguraci, měření, testování a ladění. Používají se často pro ověření funkce a charakterizaci před finálním návrhem vlastní desky plošných spojů. Některé z hardwarových prostředků slouží k produkčnímu programování PLD nebo jejich konfiguračních pamětí.

    2.2 Vývojové postupy

    Schéma typického postupu vývoje pro programovatelné logické obvody je znázorněno vývojovým diagramem na obrázku 2.1. Jedná se o zjednodušený postup vycházející z postupu vývoje číslicových integrovaných obvodů.


    Obr. 2.1: Postup vývoje pro FPGA

    V diagramu na obrázku 2.1 jsou použity anglické výrazy, protože některé z nich nemají české ekvivalenty. Význam jednotlivých bloků diagramu je popsán dále.

    2.3 Vstupní data

    Do procesu návrhu programovatelných logických obvodů vstupuje mnoho různých dat, sloužících pro popis funkce, pomocná data a skripty pro simulace a verifikace, pomocná data a skripty pro implementaci a další.

    2.3.1 Popis funkce

    Požadovaná výsledná funkce programovatelného obvodu může být popsána kombinací několika následujících základních metod:

    Nejrozšířenější metodou popisu logických obvodů je v dnešní době použití HDL. Prakticky se pro vstup syntézy používají jazyky VHDL, Verilog a SystemVerilog, což jsou specializované jazyky určené pro popis číslicových systémů od velmi nízké úrovně typu netlist až po vysokoúrovňový popis využívající metod objektově orientovaného programování a dalších vlastností převzatých z moderních programovacích jazyků. Výhodou použití HDL je univerzálnost a přenositelnost, protože jazyky jsou standardizovány organizací IEEE a všechny současné nástroje pro syntézu podporují alespoň VHDL a Verilog.

    Použití HLL pro návrh číslicových systémů není dosud příliš rozšířené, ale začínají se objevovat použitelné nástroje. Syntéza z HLL obvykle probíhá ve dvou krocích, kdy je zdrojový popis ve vysokoúrovňovém jazyce nejdříve přeložen do některého HDL a ten je následně předán syntéze. HLL pro popis hardware obvykle vycházejí až na výjimky z jazyka C nebo C++. Zvláštní kategorií jsou nástroje určené pro MATLAB, které převádějí M-kód na HDL.

    Obvodová i bloková schémata se v dnešní době používají již velmi zřídka. Současné programovatelné logické obvody poskytují takové množství logických prostředků, že typické návrhy jsou velmi rozsáhlé. Doba vývoje, přehlednost a udržovatelnost komplexních digitálních návrhů ve formě schémat jsou mnohem horší ve srovnání s HDL.

    Ostatní formy popisu jsou většinou specifické pro konkrétního výrobce nebo určité nástroje. Společnou typickou vlastností je, že se vždy před syntézou vygeneruje syntetizovatelný popis v HDL.

    2.3.2 Simulace

    Kromě popisu funkce obvodu potřebuje simulátor ještě další podpůrné soubory. Jde jednak o soubory generující vstupní hodnoty a vyhodnocující výstupy, které tvoří takzvaný testbench, a dále o pomocné skripty řídící vlastní proces simulace, jeho automatizaci a podobně.

    Testbenche se v dnešní době realizují buď v HDL nebo HVL (Hardware Verification Language). Speciální a vysokoúrovňové jazykové konstrukce vhodné pro simulace a verifikace nabízí z HDL především VHDL, SystemVerilog a SystemC. Nejpoužívanější HVL jsou PSL (Property Specification Language), e, OpenVera a opět SytemVerilog a SystemC, což jsou jazyky kombinující vlastnosti HDL a HVL. Důležitými vstupy pro časové simulace jsou soubory SDF (Standard Delay Format), které definují zpoždění jednotlivých prvků.

    Simulace funkčního popisu zapsaného v HLL se obvykle provádí ve stejném jazyce. Samozřejmě je ale možné převést popis z HLL do HDL a výsledek poté simulovat v běžném digitálním simulátoru s pomocí HDL/HVL testbenchů.

    Součástí vstupních souborů pro simulace a verifikace bývají často skripty pro řízení vlastních simulačních programů. Tyto pomocné soubory obvykle zajistí vytvoření potřebných knihoven, kompilaci funkčního popisu ve správném pořadí do správných knihoven, nastavení simulátoru, zobrazení požadovaných výstupů a spuštění simulace.

    2.3.3 Implementace

    Implementační nástroje potřebují kromě popisu funkce ještě další vstupní data, která ovlivňují výsledek implementačního procesu. Jedná se především o definici jednotlivých fyzických omezujících podmínek, tzv. constraints. Je nutné jednotlivým vstupně-výstupním signálům přiřadit konkrétní piny programovatelné součástky a nastavit elektrické parametry vstupních přijímačů a výstupních budičů. Další parametry, které mají vliv na implementaci jsou časové vlastnosti hodinových signálů, datových vstupů a výstupů, stejně jako některých interních signálů. Důležité je například správně ošetřit přechody mezi asynchronními hodinovými signály nebo delší kombinační logické cesty. Poslední oblastí je možnost ručního umístění některých funkčních bloků na čipu FPGA nebo vymezení oblastí, ve kterých smí být daný blok automaticky umístěn. Jedná se o takzvaný floorplannig.

    Další skupinou vstupů pro implementační proces je správné nastavení implementačních nástrojů. To je obvykle možné dělat interaktivně v GUI, pomocí konfiguračních souborů, nebo implementačních skriptů. Skriptování implementačních nástrojů pro programovatelnou logiku se provádí typicky v jazyce TCL, některé nástroje podporují i Perl.

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    gtz avatar 27.2.2013 22:33 gtz | skóre: 27 | blog: gtz | Brno
    Rozbalit Rozbalit vše Re: Programovatelná logika III: Vývojové prostředky (úvod)
    Super článek, děkuji
    - nejhorší jsou trpaslíci ... Ti Vám vlezou úplně všude
    28.2.2013 10:56 dumblob | skóre: 10 | blog: dumblog
    Rozbalit Rozbalit vše Re: Programovatelná logika III: Vývojové prostředky (úvod)
    Moc hezky napsane. Dekuji za oziveni.
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.