VHDL

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania

VHDL (ang. Very High Speed Integrated Circuits Hardware Description Language) – język opisu sprzętu używany w komputerowym projektowaniu układów cyfrowych typu FPGA i ASIC.

Historia[edytuj | edytuj kod]

Język powstał w latach 80. w ramach projektu finansowanego przez Departament Obrony USA. Miał być używany do dokumentowania zachowania układów ASIC. W 1987 roku stał się standardem IEEE. Język ten ma rozbudowaną składnię, dzięki czemu jest bardzo elastyczny.

VHDL ma składnię podobną do języka Pascal i Ada[1]. Jest niejako potomkiem języka ALGOL. VHDL nie jest case sensitive, tzn. nie rozróżnia wielkości liter w kodzie.

Początkowo języka używano do dokumentowania układów ASIC, ale pomysł symulowania układów opisanych językiem VHDL był na tyle kuszący, że szybko opracowano symulatory logiczne mogące czytać pliki VHDL. Zmieniła się więc funkcja języka, gdyż zaczęto używać go do tworzenia i testowania modeli układów ASIC. Obecnie można układ zdefiniowany przy pomocy VHDL nie tylko zasymulować, ale także stworzyć jego fizyczną aplikację, np. w ramach architektury FPGA. W razie potrzeby nie nastręcza trudności zmiana technologii docelowej, gdyż jest ona niezależna od samego opisu projektu w VHDL.

Standard języka był rewidowany trzykrotnie: w latach 1993, 2002 i 2008. Wersja z roku 1993 (IEEE Std 1076-1993) jest obecnie najpopularniejsza (większość narzędzi jest zgodna z tym standardem). Na początku roku 2009 opublikowano najnowszą wersję standardu – IEEE Std 1076-2008[2], popularnie zwaną VHDL 2008. Ten dokument prezentuje nową, znacznie usprawnioną wersją języka, zawierającą rozszerzoną składnię, większy zestaw operatorów, uporządkowane standardowe pakiety biblioteczne, dołączony interfejs proceduralny dla C/C++ (VHPI), podzbiór języka PSL, itp.

VHDL a język programowania[edytuj | edytuj kod]

VHDL jest przede wszystkim językiem opisu sprzętu. Może być jednak używany jako język programowania ogólnego przeznaczenia, pod warunkiem że ma się dostęp do symulatora, na którym można uruchomić kod.

Struktura języka VHDL[edytuj | edytuj kod]

Obiekty[edytuj | edytuj kod]

Do zapisu i pamiętania danych w języku VHDL służą obiekty. Podstawowymi obiektami języka VHDL są sygnały, zmienne, stałe i pliki. Podczas deklarowania obiektów muszą być także zdefiniowane typy, które służą do wyrażania wartości obiektów.

Sygnały są funkcjami czasu, co oznacza, że wartości sygnałów są przyporządkowane wartościom na osi czasu podczas symulacji działania opisywanych układów. W części deklaracyjnej jednostki wprowadzane są nazwy sygnałów zewnętrznych. Wartości sygnałów wejściowych są wprowadzane do wykorzystania w modułach przez porty wejściowe w sposób podobny.

Zmienne nie są funkcjami czasu i mogą być stosowane pomocniczo tylko w obrębie procesu lub podprogramu do zapamiętywania wyników pośrednich.

Stałe umożliwiają przypisanie nazwy wartościom stałym określonego typu. Do tego celu stosuje się deklarację constant o składni

variable nazwa_zmiennej : nazwa_typu [ograniczenie] [:=wyrazenie];

Pliki służą do trwałego przechowywania danych, co wykorzystuje się głównie przy wykonywaniu testów.

Zobacz też[edytuj | edytuj kod]

Przypisy[edytuj | edytuj kod]

  1. Marc Schlickling: Timing Model Derivation: Static Analysis of Hardware Description Languages. Saarbrücken: Universität des Saarlandes, 2012, s. 62–63. ISBN 978-3-8442-4513-4. [dostęp 2016-02-07]. (ang.)
  2. IEEE Standard VHDL Language Reference Manual

Bibliografia[edytuj | edytuj kod]

Linki zewnętrzne[edytuj | edytuj kod]