V tomto výukovém programu VHDL probereme některé základní pojmy související s technologií VHDL a několik příkladů s kódováním. Výukový program VHDL je segmentován takto:
TÉMATA DISKUSE
A. Co je VHDL?
B. Historie a standardizace
C. Konstrukční postupy VHDL
D. Některá pravidla a základní informace o VHDL
E. Syntaxe a několik důležitých konceptů pro psaní kódů VHDL
F. Simulátory VHDL pro výuku VHDL
VHDL || Co je VHDL?
Plná forma VHDL znamená Very High Speed Integrated Circuit Hardware Description Language (VHSIC-HDL).
Jak název napovídá, VHDL je jazyk popisu hardwaru nebo speciální typ programovacího jazyka, který popisuje hardwarové implementace digitálního systému a obvodů. Jedná se o silně psaný jazyk a je třeba si uvědomit, že nejde o programovací jazyk.
Historie a standardizace
Americké ministerstvo obrany významně přispívá k moderní technologické oblasti. Zrodila příliš mnoho skvělých nápadů a inovací. Americká obrana vyvinula VHDL také v roce 1983. Byl vyvinut pro dokumentaci chování aplikačně specifických integrovaných obvodů.
Později byly některé nápady implementovány z programovacích jazyků Ada. VHDL se poprvé standardizovalo v roce 1987. Bylo přidáno několik datových typů několika typů, včetně řetězců a číselných a logických.
Standardizace
VHDL nebo VHSIC-HDL (Very High Speed Integrated Circuit Hardware Description Language) je standardizován standardem IEEE 1076. Aktualizuje se od narození a prošel mnoha revizemi. Podívejme se na některé standardní revize a hlavní aktualizace.
Revize | Zprávy |
IEEE 1076-1987 | Revize a standardizace z obrany USA. |
IEEE 1076-1993 | Přišel s největším vydáním a je to nejpoužívanější verze. |
IEC 61691-1 - 1- 1: 2004 | IEC přijala verzi IEEE 1076-2002 |
IEEE 1076-2008 | Aktualizováno několika zásadními změnami, jako je - Představení generik na balíčcích a použití externích jmen |
IEC 61691-1 - 1- 1: 2011 | IEC přijala verzi IEEE 1076-2008 |
Návrh VHDL
Návrh VHDL má některé konstrukční jednotky. Jsou známé jako - Entity, Architecture, Configuration a Package.
Subjekt: Entita definuje externí pohledy na model, který je symbolem.
Architektura: Architektura definuje funkčnost modelu, který je schematický.
Konfigurace: Konfigurace se používá pro přidružení architektury k entitě.
Balík: Balíček je soubor informací, na které lze odkazovat moduly VHDL. Balíček VHDL se skládá ze dvou částí. Jsou - prohlášení o balíčku a tělo balíčku.
Prohlášení subjektu
Obecná struktura deklarace entity je uvedena níže -
ENTITY < název_jednotky > IS
Obecná prohlášení
Prohlášení o přístavu
KONEC ENTITY <název_jednotky>;
- může být abecední / numerický nebo alfanumerický.
- Obecná prohlášení slouží k předávání informací do modelu.
- Deklarace portů slouží k popisu pinů vstupů a výstupů.
- Entitu lze uzavřít několika způsoby.
- KONEC ENTITY <název_jednotky>;
- KONEC ENTITY;
- KONEC;
Prohlášení o přístavu
Obecná struktura deklarací portů je uvedena níže -
ENTITY < název_jednotky > IS
Obecná prohlášení
- Prohlášení o přístavu:
PORT (
SIGNÁL CLK, CLR: V BITU;
q: OUT BIT
- všimněte si, že v posledním řádku deklarací není středník.
);
KONEC ENTITY <název_jednotky>;
Struktura prohlášení o přístavu: Název_objektu : ;
- Třída: Třída je to, co lze s objektem udělat. Tady je třída signál. Nezapomeňte, že SIGNÁL není zapsán během psaní programu; spíše se předpokládá a nevyžaduje.
- Název_objektu: Je to identifikátor.
- Mode: Určuje směr.
V - Vstup
VEN - Výstup
VSTUP - Obousměrný
Pufr - Výstup s interní zpětnou vazbou
- Typ: Typ určuje, co může být obsaženo uvnitř objektu.
Obecná prohlášení
Obecná struktura obecných prohlášení je uvedena níže -
ENTITYnázev_jednotky> IS
OBECNÝ (
KONSTANTNÍ tplh, tphl: čas := 5 ns;
tphz, tplz: ČAS := 3ns;
default_value: INTEGER: = 1;
cnt_dir: STRING := "NAHORU"
- všimněte si, že v posledním řádku deklarací není středník.
);
Prohlášení o přístavu
KONEC ENTITYnázev_jednotky>;
- Obecné hodnoty lze během kompilace přepsat.
- Generic musí mít během kompilace programu houževnatost na konstantu.
Všimněte si, že klíčové slovo CONSTANT se předpokládá a není nutné jej zapisovat.
Architektura
- Analogicko-schéma: Analogické schéma poskytuje popis funkčnosti modelu a načasování s ním spojeného.
- Architektura modelu by měla být přidružena k ENTITY.
- S entitou může být spojeno mnoho architektur.
- Příkazy architektury se spouštějí souběžně.
- Některé styly architektury -
- Behaviorální: Behaviorální model popisuje, jak fungují návrhy.
RTL: RTL popisuje, jak lze designy implementovat pomocí registrů.
Funkční: Nezahrnuje žádné načasování.
- Strukturální: Implementace struktury na úrovni brány.
- Datový tok: Implementace pravdivostní tabulky.
- Architektura končí -
- KONEC ARCHITEKTURY ;
- KONEC ARCHITEKTURY
- KONEC;
Obecná struktura psaní architektury:
ARCHITEKTURA <identifikátor> OF <identifikátor_entity> IS
SIGNÁL signal_1: INTEGER: = 1;
KONSTANTNÍ cnst: = BOOLEAN: = true;
Proces TYP JE (W, X, Y, Z);
- Deklarace atributů
- Specifikace atributů
- Deklarace podprogramu
- Tělo podprogramu
ZAČÍT
Zpracovat prohlášení
Souběžná procedurální volání
Přiřazení signálu
Generovat příkazy
KONEC ARCHITEKTURY <identifikátor>;
Konfigurace
Jak již bylo řečeno, dřívější configuration se používá pro přidružení architektury k entitě. Přidružení nebo kombinování je nutné, protože ENTITY nemůže fungovat, dokud k ní nebude přidružena architektura. Obecná struktura konfigurace je uvedena níže.
KONFIGURACE < identifikátor > OF < název_jednotky > IS
PRO < název_ architektury >
PRO < instance_name >: název_komponenty > POUŽITÍ < subjekty > ( architektura >)
KONEC PRO;
PRO < instance_name >: název_komponenty > POUŽITÍ < název_konfigurace >
Konec pro;
Konec pro;
KONEC KONFIGURACE < identifikátor >;
Balíčky
Balíčky VHDL jsou jedna celá jednotka celého systému. Je to hlavní cíl implementace VHDL. Balíček má dvě části. Jak již bylo řečeno, deklarace balíčku a tělo balíčku tvoří kompletní balíček.
VHDL poskytuje dva vestavěné balíčky.
Některá pravidla a základní informace o výukovém programu VHDL
Pojďme si promluvit o tom, abychom se podívali na některé základní informace, než se ponoříme a prozkoumáme tutoriál VHDL.
1. Vyhrazená klíčová slova: VHDL má některá klíčová slova jako rezervovaná (která nelze použít pro deklaraci proměnné).
2. Díly: VHDL má dva kroky nebo části pro vytvoření modelu. Jedním z nich je simulace a druhým syntéza a simulace.
3. Jazyk citlivý na velká a malá písmena: VHDL není jazyk citlivý na velká a malá písmena (ve většině případů).
4. Komentování: Chcete-li komentovat příkaz v editoru kódu VHDL, začněte větu s -, například:
- Toto je komentář ve VHDL.
5. Ukončení: Kódy VHDL a jednotlivé řádky kódů jsou ukončeny středníkem (kdykoli je potřeba).
6. Citlivost na prostor: VHDL není citlivé na prázdné místo.
Syntaxe a některé důležité koncepty výuky VHDL pro psaní kódů VHDL
- Pole s příklady
- Postup s příklady
- IF - POTOM - implementace ELSIF s příklady.
- Prohlášení CASE
- PRO smyčku
A. Pole
Pole ukládá hodnotu. Jedná se o uživatelem definovaný datový typ pro ukládání hodnoty. Pole může obsahovat proměnné signálu, konstanty typu.
Obecná struktura pro deklaraci pole je uvedena níže:
TYP název_ pole IS ARRAY (rozsah) OF datový typ;
Například
TYP lambdageeks JE POLE (0 až 9) OF std_logic_vector (0 AŽ 9);
B. Procesní prohlášení
Proces je simultánní a synchronizovaný příkaz. Představuje chronologická prohlášení. Pokud je model potřeba, běží paralelně více procesů.
Proces se skládá ze dvou částí. Jedná se o provedení procesu a poté čekají na další podmínku.
SYNTAX:
proces seznam_citlivosti
prohlášení
začít
chronologické_výpisy;
konečný proces;
C. POKUD - POTOM - Implementace ELSIF
Tyto příkazy se používají pro implementaci podmínky a pro jejich výsledek.
Podmínka if může mít nekonečný počet větví podle požadavku. Je také možné značné množství podmínek elsif. Ale ve smyčce if, může existovat pouze jedna další podmínka. Smyčka if je ukončena příkazem end if. Pokud je podmínka dána true, pak vstoupí do smyčky a provede příkaz. Pokud selže, přejděte na příkaz else nebo elsif.
Syntaxe příkazů je uvedena níže.
SYNTAX
if podmíněný_booleovský_výraz pak
prohlášení1
elsif podmíněný_booleovský_výraz pak
prohlášení2
. . .
jiný
prohlášení3
konec if;
D. Případ CASE
Příkaz Případ zjistí, který příkaz bude proveden. Příkaz case lze také větvit jako smyčky IF-ELSE.
SYNTAX
[označení]: případ < podmíněný výraz > is
kdy < výběr> =>
prohlášení1
kdy <výběr> =>
prohlášení2
...
kdy <výběr> =>
prohlášení
konec případ [označení];
E. PRO smyčku
Smyčka for je nepřetržité provádění příkazů podle mezních podmínek.
Pro každou smyčku FOR potřebujeme iterátor, který bude provádět operace ve smyčce for. Je také známý jako identifikátor. Ve výchozím nastavení se jedná o celé číslo a není třeba deklarovat iterátor. Jedná se o jednu z nejčastěji používaných smyček pro výrobu složitých modelů. Je to známější než smyčky while.
SYNTAX
[označení]: for iterátor in rozsah smyčka
Prohlášení1
Prohlášení2
...
Prohlášení č
koncová smyčka [označení];
VHDL simulátory pro výuku VHDL
Níže jsou uvedeny některé slavné simulátory VHDL používané k implementaci VHDL.
- Xilinx Vivado: Nejznámějším simulátorem pro VHDL je Xilinx Vivado. Xilinx poskytuje programovatelná logická zařízení. Tento simulátor použijeme pro další část výukového programu VHDL.
- Cadence Incisive: Předchozí verze byla známá jako NC-VHDL.
- VHDL podobné: Symphony EDA to vyvíjí. Je to pro spotřebitele zdarma.
- GHDL: Jeden ze slavných bezplatných simulátorů VHDL.
- Bota: Organizace Freerangefactory vyvinula simulátor.
- NVC: Nick Gasson vyvinul kompilátor opensource VHDL.
- Hřiště EDA: Další bezplatná verze založená na webovém prohlížeči.
- Synopse VCS-MX.
Vytvořte svůj první projekt pomocí VHDL. Podívejte se na další část výukového programu VHDL.
Další článek o elektronice získáte kliknutím zde!
Ahoj, jsem Sudipta Roy. Udělal jsem B. Tech v elektronice. Jsem nadšenec do elektroniky a v současnosti se věnuji oboru Elektronika a komunikace. Mám velký zájem o objevování moderních technologií, jako je AI a strojové učení. Moje práce se věnují poskytování přesných a aktualizovaných údajů všem studentům. Pomáhat někomu při získávání znalostí mi přináší nesmírnou radost.
Spojme se přes LinkedIn –