VHDL é uma linguagem de descrição de hardware utilizada na automatização de design electrónico para descrever sistemas digitais e de sinais mistos. VHDL também pode ser usada como linguagem de programação de uso geral.
A VHDL foi originalmente desenvolvida a pedido do Departamento de Defesa dos Estados Unidos a fim de documentar o comportamento dos ASIC que as empresas fornecedoras estavam a incluir no equipamento. A ideia era que se o governo quisesse verificar se o equipamento funcionava como especificado, poderia fazê-lo lendo a documentação. A língua foi introduzida pela primeira vez em 1981, e a norma mais recente foi publicada em 2008.
VHDL é uma linguagem declarativa, o que significa que o programador não especifica a ordem em que as operações devem ser realizadas. Isto contrasta com línguas imperativas, como a C, em que o programador deve especificar a ordem das operações.
O VHDL é utilizado principalmente de duas maneiras:
* Para conceber novo hardware digital
* Para verificar a funcionalidade do hardware digital existente
Quando usado para desenho, o código VHDL é sintetizado num circuito lógico. Este circuito pode então ser implementado numa FPGA ou ASIC.
Quando usado para verificação, o VHDL pode ser usado para simular o comportamento do hardware digital. Isto permite a detecção de bugs e o teste de novos desenhos antes de o hardware ser realmente construído.
A VHDL tem uma série de características que a tornam bem adequada para utilização na automatização da concepção electrónica:
* O hardware pode ser descrito em múltiplos níveis de abstracção, desde o nível de comportamento até ao nível de portão.
* VHDL é uma linguagem baseada em texto, tornando-a fácil de usar com editores de texto e ferramentas existentes.
* O código VHDL pode ser reutilizado, tornando fácil a concepção de sistemas complexos.
* VHDL é independente de plataforma, o que significa que o código pode ser executado em qualquer computador.
A VHDL é uma linguagem complexa, e pode demorar algum tempo a aprender. Contudo, há uma série de recursos disponíveis para ajudar, incluindo livros, tutoriais online, e cursos.