Jazyk popisu hardwaru

Hardware description language ( HDL od hardware description language ) je  specializovaný počítačový jazyk používaný k popisu struktury a chování elektronických obvodů , nejčastěji digitálních logických obvodů.

Jazyky pro popis hardwaru jsou navenek podobné programovacím jazykům , jako je C nebo Pascal , programy v nich napsané se také skládají z výrazů, operátorů, řídicích struktur. Nejdůležitějším rozdílem mezi konvenčními programovacími jazyky a jazyky HDL je explicitní zahrnutí konceptu času do jazyků pro popis hardwaru.

Jazyky pro popis hardwaru jsou nezbytnou součástí CAD , zejména pro složité obvody, jako jsou ASIC , mikroprocesory a programovatelná logická zařízení .

Hlavní jazyky pro popis hardwaru v praxi jsou Verilog a VHDL ; existuje také několik desítek alternativních jazyků.

Historie

První moderní HDL, Verilog , byl vytvořen Gateway Design Automation v roce 1985 k popisu VLSI. V roce 1987 byl na příkaz amerického ministerstva obrany vyvinut VHDL ( VHSIC HDL) [1] na základě jazyka Ada .

Zpočátku byly Verilog i VHDL používány k dokumentaci a modelování obvodových řešení implementovaných v jiné formě (například jako obvody). Modelování pomocí HDL umožnilo inženýrům pracovat na vyšší úrovni abstrakce než modelování na úrovni obvodů, a proto je snazší modelovat návrhy s tisíci nebo více tranzistory.

Zavedení syntézy logických obvodů z HDL z něj udělalo primární jazyk pro vytváření digitálních obvodů. Synthesis CAD systémy kompilují zdrojové soubory (zapsané v podmnožině HDL s názvem RTL - eng.  Register transfer level  - Register transfer level ) do popisu obvodu ve formě seznamů odkazů ( netlist , specifikující zapojení ventilů a tranzistorů . Zápis syntetizovaného RTL kód vyžaduje od konstruktéra praxi a dodržování řady pravidel. Ve srovnání s tradičním návrhem obvodů je tvorba syntetizovaných RTL méně pracná, ale často vede k poněkud větším a méně produktivním obvodům.

Během několika let se VHDL a Verilog staly hlavními HDL jazyky v mikroelektronickém průmyslu a rané jazyky se postupně přestaly používat. VHDL i Verilog však mají podobná omezení: nejsou vhodné pro analogové nebo smíšené digitálně-analogové simulace, nemají jazykové konstrukce pro popis rekurzivně generovaných logických struktur; v tomto ohledu vznikají různé specializované HDL, zaměřené na odstranění těchto omezení dvou hlavních jazyků. Alternativní jazyky jsou obvykle vytvářeny na základě univerzálních programovacích jazyků, například SystemC byl vyvinut na základě C ++ , JHDL na bázi Java  a Bluespec , HHDL , Hydra , Lava byly vyvinuty na základě Haskell .

Během desetiletí od svého vzniku byly oba hlavní jazyky výrazně upraveny a vylepšeny. Nejnovější verze jazyka Verilog, standardizovaná jako IEEE 1800-2005 SystemVerilog , má mnoho nových funkcí (třídy, náhodné proměnné, vlastnosti a ovládací operátory), které splňují rostoucí potřeby náhodného testování , hierarchického návrhu a opětovného použití kódu. Nejnovější standard VHDL byl zveřejněn v roce 2002.

Příklad

Popis zařízení na VHDL a Verilog lze provést na úrovni datových toků ( dataflow ), chování ( behavioral ), struktur ( strukturální ). Příklad popisu datových toků ve VHDL (popis entity "not1", která má 1 vstupní port 1 bit a 1 výstupní port 1 bit; tato entita neguje vstupní hodnotu):

knihovna iEEE ; použijte iEEE.STD_LOGIC_1164. VŠECHNY ; použijte iEEE.STD_NUMERIC_STD. VŠECHNY ; entita not1 je port ( a : in STD_LOGIC ; b : out STD_logic ); konec ne1 ; chování architektury not1 is begin b < = not a ; konec behaviorální ;

Poznámky

  1. Barbacci, M., Grout S., Lindstrom, G., Maloney, MP Ada jako jazyk popisu hardwaru: počáteční zpráva, Carnegie-Mellon Univ., Dept. informatiky, 1984

Odkazy