Categorii: Tot - software - hardware

realizată de Flávia Kay 13 ani în urmă

558

Tradutor VHDL

VHDL, ou Very High Speed Integrated Circuits Hardware Description Language, é uma linguagem utilizada para projetar circuitos digitais em FPGAs e ASICs. Os FPGAs são chips reconfiguráveis cujas funcionalidades são definidas pelo usuário, ao contrário dos chips tradicionais que já vêm pré-programados de fábrica.

Tradutor VHDL

Tradutor VHDL

Monografia

Firmware

Hardware

Software

Ferramenta de comparação
Ferramenta de tradução
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.

Gerador de código

Compara as entradas e transforma em código VHDL.

Semântica

Erros semânticos, comparação de tipos diferentes.

Sintática

Sequência de caracteres correta, estrutura gramatical correta segundo a gramática formal.

Precedência

4. Adição, Subtração +,-

3. Multiplicação, Divisão, Resto e Divisão inteira *,/, mod, div

2. Potenciação **

1. Parêntesis ( )

Regras

Operador -> + | - | * | / | **

Variável -> x

*Pode ser maiúsculo ou minúsculo

Num -> [0-9]+

Numérico -> Num | Num,Num

*Num,Num apenas se implementado ponto flutuante

Operando -> Numérico | Variável

Básica -> Operando Operador Operando | Operando Operador Básica

Raíz -> Raiz(Operando\Operando) | Raiz(Operando\Básica)

Trigonometria -> Sen(Operando) | Sen(Básica) | Cos(Operando) | Cos(Básica) | Tg(Operando) | Tg(Básica)

Exponencial -> e ** Operando | e **( Básica)

I.D -> S(Num \ Num) Básica dx | (Básica) dx

*I.D - Integral/Derivada

Equação 2 -> Operador I.D. | Operador Exponencial | Operador Trigonométrica | Operador Raiz | Operador Básica | Operador Operando | Equação2 Equação2 | Vazio

Equação 1 -> I.D. Equação2| Exponencial Equação2| Trigonométrica Equação2 | Raiz Equação2 | Básica Equação2

Léxica

Caracteres: Integral, Derivada, Exponencial, Seno, Cosseno, Tangente, Raíz, Soma, Subtração, Multiplicação, Divisão, Variável, Número.