Úvod

Existují dva standardizované jazyky pro popis integrovaných obvodů. Jsou to Verilog a VHDL, přičemž v evropských firmách se převážně používá právě VHDL. Jazyk VHDL byl standardizován americkým instituem IEEE v roce 1987 (standard 87) a poté byl v roce 1993 aktualizován (standard 93). Tyto standardy jsou zpětně kompatibilní.

Důvodů, proč použít pro popis hardwaru právě jazyk VHDL je hned několik

  1. Popis pomocí VHDL není závislý na cílové technologii, tzn. že obvod napsaný VHDL kódem lze pomocísyntézních nástrojů převést do libovolné technolgie.
  2. Je možné vytvářet plně konfigurovatelná IP (Intellectual Property) makra, která mohou být použita několikrát v různých obvodech pro různé technologie. Návrh specifického obvodu potom může sestávat z vhodného pospojování těchto IP bloků.
  3. Modularita VHDL umožňuje popisovat celek pomocí menších částí. Tyto části mohou mít různé implementace a to umožňuje studium chování obvodu v závislosti na dané implementaci bloků. Modularita také dává kromě jiného možnost efektivní týmové práce.
  4. Pomocí jazyka VHDL můžeme simulovat jak funkci, tak chování obvodu v čase. Proto je možné používat jediný jazyk pro specifikaci zadání (jedna z nejdůležitějších částí návrhu IO), samotný design obvodu, funkční i časové simulace.

Úroveň abstrakce ve VHDL

Proces návrhu integrovaného obvodu nebo návrhu konfigurace CPLD, FPGA začíná specifikací návrhu. Daná funkce se popisuje nejprve tzv. behaviorálním popisem, u kterého nezáleží na vnitřní struktuře popisu, ale zkoumá a testuje se chování funkce. Takovýto popis se tedy porovnává se specifikací. Behaviorální popis se často vytváří v jiných programovacích jazycích (např. C).

Dalším krokem v návrhu je RTL (Register Transfer Level) popis obvodu. RTL popis lze chápat jako sadu registrů, mezi nimiž je realizována logická funkce. Popis již na úrovni hradel je většinou generován automaticky.

Přechod z RTL popisu na popis na úrovni logických hradel se nazývá syntéza. Tento popis v sobě zahrnuje zpoždění hradel. Díky znalosti zpoždění je možné zjistit maximální rychlost budoucího obvodu.

Posledním krokem je layout. Tento model již zahrnuje rozmístění součástek, propojek a všech ostatních součástí čipu.

Komunikační model jazyka VHDL

Proces je zpracováván konkurenčně, ale příkazy v procesu se provádějí skevenčně, tedy jeden po druhém. Všechny procesy ve VHDL designu běží paralelně a nezáleží na tom, ve které entitě nebo hladině hierarchie jsou umístěny. Procesy mezi sebou komunikují pomocí signálů, které musí být porty entit (vstupy/výstupy), pokud na sobě dva procesy různých entit závisí. Pokud je během procesu přiřazena signálu jiná hodnota, projeví se změna až na samotném konci procesu.