Je eerste VHDL-programma: Stap-voor-stap Hello World tutorial
Wanneer je een nieuwe taal leert, is het printen van een simpel bericht een klassieke sanity-check. Het beheersen van de output van "Hello World!" bevestigt dat je omgeving correct ingesteld is en geeft een blik op de kernsyntaxis van de taal.
VHDL is een hardwarebeschrijvingstaal, geen traditionele softwaretaal, dus je kunt je afvragen hoe het tekst kan tonen. Het trucje is dat VHDL-code uitgevoerd wordt in een simulator, die een digitaal circuit kan emuleren en diagnostische berichten naar je scherm kan sturen. Deze tutorial focust puur op de taal, niet op FPGA of ASIC-hardware.
Dit artikel is onderdeel van de serie Basistutorials VHDL.
Denk aan VHDL als een parallelle programmeertaal: je beschrijft hoe een circuit zich gedraagt, en een simulator draait die beschrijving in een virtuele omgeving. Binnen die omgeving kun je eenvoudig console-output produceren, waardoor "Hello World!" een ideaal startpunt is.
Hoe je gratis een VHDL-simulator en editor installeert
Oefening
Deze videotutorial leidt je door het maken van je allererste VHDL-programma:
De uiteindelijke code die we produceerden:
entity T01_HelloWorldTb is end entity;
architecture sim of T01_HelloWorldTb is
begin
process is
begin
report "Hello World!";
wait;
end process;
end architecture;
De simulator-console-output na het drukken op de run-knop in ModelSim:
VSIM 2> run # ** Note: Hello World! # Time: 0 ns Iteration: 0 Instance: /t01_helloworld
Analyse
Aan het begin declareren we een entiteit. De entiteit definieert de interface van een module – zijn inputs en outputs. Voor een simpele testbench die alleen een bericht print, zijn er geen poorten nodig, dus de entiteit is bewust leeg gelaten.
Vervolgens specificeren we de architectuur, die de interne implementatie van de module vertegenwoordigt. De architectuur is waar de daadwerkelijke logica woont; een enkele entiteit kan meerdere architecturen hebben, maar dat is een geavanceerde functie die we later behandelen.
Binnen de architectuur wordt een proces gedefinieerd. In VHDL gedraagt een proces zich als een thread, die statements sequentieel uitvoert. Hier bevat het proces twee statements:
report "Hello World!"– dit stuurt de tekst naar de simulator-console.wait;– dit schort het proces oneindig op, waardoor de simulator niet verder gaat.
Wanneer we het ontwerp in ModelSim simuleren, toont de console onmiddellijk het bericht "Hello World!", wat bevestigt dat de code syntactisch correct is en de simulator functioneert.

Kernpunten
- In VHDL werkt een
processals een programma-thread. - Het
report-statement geeft tekst weer op de simulator-console. - Een
wait;-statement pauzeert het proces voor altijd, nuttig voor een eenvoudige testbench.
Ga naar de volgende tutorial »
VHDL
- Productie versnellen: Hoe prototyping uw productieproces verbetert
- C# Hello World – Uw eerste C# applicatie bouwen
- Uw Eerste FPGA Bouwen: LED Knipper Tutorial (VHDL & Verilog)
- Dynamische string-lijsten in VHDL: Best Practices & Voorbeeld
- Een Tcl-gedreven testbench maken voor een VHDL code-lock module
- Een PWM-controller implementeren in VHDL: Ontwerp, Simulatie en FPGA-demo
- Ontwerpen van een robuuste VHDL-ringbuffer FIFO in blok-RAM
- Een dynamische gelinkte lijst in VHDL implementeren met protected types en access pointers
- In-process procedures benutten voor schonere VHDL FSM-ontwerpen
- VHDL-functies onder de knie krijgen: een praktische gids voor efficiënt ontwerp
- Java Hello World: je eerste programma