Tradutor VHDL
Software
Ferramenta de tradução
Léxica
Caracteres: Integral, Derivada, Exponencial, Seno, Cosseno, Tangente, Raíz, Soma, Subtração, Multiplicação, Divisão, Variável, Número.
Sintática
Sequência de caracteres correta, estrutura gramatical correta segundo a gramática formal.
Regras
Equação 1 -> I.D. Equação2| Exponencial Equação2| Trigonométrica Equação2 | Raiz Equação2 | Básica Equação2
Equação 2 -> Operador I.D. | Operador Exponencial | Operador Trigonométrica | Operador Raiz | Operador Básica | Operador Operando | Equação2 Equação2 | Vazio
I.D -> S(Num \ Num) Básica dx | (Básica) dx
*I.D - Integral/Derivada
Exponencial -> e ** Operando | e **( Básica)
Trigonometria -> Sen(Operando) | Sen(Básica) | Cos(Operando) | Cos(Básica) | Tg(Operando) | Tg(Básica)
Raíz -> Raiz(Operando\Operando) | Raiz(Operando\Básica)
Básica -> Operando Operador Operando | Operando Operador Básica
Operando -> Numérico | Variável
Numérico -> Num | Num,Num
*Num,Num apenas se implementado ponto flutuante
Num -> [0-9]+
Variável -> x
*Pode ser maiúsculo ou minúsculo
Operador -> + | - | * | / | **
Precedência
1. Parêntesis ( )
2. Potenciação **
3. Multiplicação, Divisão, Resto e Divisão inteira *,/, mod, div
4. Adição, Subtração +,-
Semântica
Erros semânticos, comparação de tipos diferentes.
Gerador de código
Compara as entradas e transforma em código VHDL.
Código VHDL
VHDL ou "VHSIC Hardware Description Language" (Linguagem de descrição de hardware VHSIC "Very High Speed Integrated Circuits") é uma linguagem usada para facilitar o design (projeto/concepção) de circuitos digitais em FPGAs e ASICs.
FPGA - A grande maioria dos chips que encontramos em nosso dia-a-dia, circuitos que acompanham as televisões, celulares, etc., já vêm todos pré-programados, isto é, com as suas funcionalidades todas definidas no ato de fabricação. Surgiu então uma categoria nova de hardwares reconfiguráveis, os quais têm as suas funcionalidades definidas exclusivamente pelos usuários e não pelos fabricantes. Dentre uma grande gama de hardwares reconfiguráveis podemos destacar o Arranjo de Portas Programável em Campo FPGA (Field Programmable Gate Array).
ASIC - Application Specific Integrated Circuit é um circuito integrado (CI) construído para executar uma tarefa específica, ou seja, customizado para um uso particular ao contrário dos CIs de uso geral. Por exemplo, um chip projetado somente para rodar um telefone celular é um ASIC.
Dentre os circuitos integrados cuja aplicação seja de uso geral, podem-se citar os processadores, microcontroladores e FPGAs.
Ferramenta de comparação