Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
ELT013
Engenharia de Computao
Aula 3
LINGUAGENS DE
DESCRIO DE
HARDWARE
ELT013 - Eletrnica Digital II
Descrio de Circuitos
Lgicos
Exemplo (1)
Se o motorista estiver presente E NO estiver usando o
cinto E a ignio estiver acionada, ENTO, acenda a luz
de advertncia.
Exemplo (2)
Se o motorista estiver presente E NO estiver usando o
cinto E a ignio estiver acionada, ENTO, acenda a luz
de advertncia.
Importncia da Descrio de
Circuitos Lgicos
Padroniza a comunicao entre os profissionais
e fabricantes.
Permite o surgimento de ferramentas de
projeto, simulao e documentao e anlise
de circuitos lgicos.
LINGUAGENS DE
DESCRIO DE
HARDWARE
ELT013 - Eletrnica Digital II
Linguagens de Descrio de
Hardware (1)
Linguagens baseadas em texto para a
descrio de circuitos digitais
Nenhum dos mtodos (tabelas verdade, smbolos
lgicos tradicionais, expresses de lgica booleana e
diagramas de tempo) fcil de ser transmitido ao
computador
Linguagens de Descrio de
Hardware (2)
Assim como existem vrias linguagens de programao,
existem vrias linguagens de descrio de hardware.
HDL Hardware Description Language
1981
DoD patrocina o 1o encontro de especialistas com o
objetivo de discutir mtodos para descrio de
circuitos
1983
DoD define os requisitos de uma linguagem padro
Firmado contrato com IBM, Texas e Intermetrics
objetivo: desenvolvimento da linguagem e
programas
ELT013 - Eletrnica Digital II
10
1987
Aps revises propostas por acadmicos,
representantes deAulaindustrias
e governo dos
ELT013 - Eletrnica Digital II
3 - Linguagens de descrio de hardware
11
12
13
14
15
IMPLEMENTAO DE
CIRCUITOS LGICOS COM
PLDS
ELT013 - Eletrnica Digital II
16
17
18
Entradas
Operao
Sadas
19
Tipo
Refere-se como os bits so agrupados e interpretados
20
21
22
Elaborao da Descrio
Vrias formas de descrio so possveis com diferentes
nveis de abstrao
O cdigo inicial pode conter estruturas muito abstratas
para sntese direta logo:
Processo interativo permite atingir o grau de detalhamento
necessrio para sntese
23
Nveis de abstrao
Comportamental: Descrio utilizando construes de
alto nvel da linguagem
Behavioral VHDL: VHDL comportamental
24
Sntese da descrio
Nvel RTL
Inferncia das estruturas necessrias para gerar um
circuito nvel RTL
Emprega primitivas da ferramenta de sntese(portas lgicas,
somadores, comparadores etc.)
25
Sntese da descrio
Nvel Portas
Novo circuito considerando a tecnologia empregada
Emprega primitivas da tecnologia do hardware onde
ser embarcado o VHDL
26
Sntese A
PLD A
ELT013 - Eletrnica Digital II
Sntese B
PLD B
Sntese C
PLD C
27
DESCRIO BOOLEANA
USANDO VHDL
Arquitetura (Architecture)
Responsvel pela descrio
do comportamento do
circuito
29
Entity
Interface com o mundo externo
Especifica entradas, sadas e atrasos
Ports
Ports
Entity
30
31
Variveis
separadas por
vrgulas
32
(:) modo e
tipo da
varivel de
entrada
33
A
declarao
ARCHITECTURE usada
para
descrever
o
funcionamento de tudo
dentro do bloco.
ckt o nome da
descrio
da
arquitetura
OF e IS so palavrasELT013 - Eletrnica
Aula 3 - Linguagens de descrio de hardware
chaveDigital II
34
35
Sinais Intermedirios
Em muitos projetos, necessrio definir pontos
de sinal "dentro" do circuito de blocos
Chamados ns internos ou sinais locais.
So pontos do circuito que podem ser teis como
ponto de referncia.
No so entradas nem sadas.
36
Sinais Intermedirios em
VHDL
SIGNAL define
um sinal
intermedirio.
BIT define o
tipo do sinal
intermedirio
37
Comentrios em VHDL
Comentrios so precedidos de dois traos (--)
Assim como no desenvolvimento de software, documentao
muito importante.
38
OUTRAS CONSIDERAES
SOBRE A LINGUAGEM
ELT013 - Eletrnica Digital II
39
Package
Utilizado quando necessrio o uso de algo
no definido nas bibliotecas do VHDL padro.
Utilizado por meio dos comandos library e use
Ex: library IEEE;
use IEEE.Std_Logic_1164.all;
40
Sinais
Sinais representados por uma bit: BIT
Sinais representados por um vetor :
BIT_VECTOR
A direo de um sinal pode ser:
Entrada => input
Sada => output
Exemplos:
Bidirecional => inout
port (
RESULT
ARCHITECTURE ....
.
No h necessidade de definir a direo
.
de sinais internos
.
Signal x,y : bit
ELT013 - Eletrnica Digital II
41
Comentrios:
42
Atribuio de Sinais
43
Alguns Operandos
Lgicos
Comparao
Numricos
+
soma
diferena
*
multiplicao
/
diviso
**
expoente
abs
valor absoluto
rem
resto
mod modulo
etc...
=
/=
>
<
<=
>=
igual,
diferente,
maior do que,
menor do que,
menor ou igual,
maior ou igual
44
45
46
Declarao PROCESS
Objetivo: delimitar regies de cdigo sequencial
Incio: palavra reservada PROCESS
Lista de sensibilidade: identifica que sinais ativam a
execuo do processo
Declaraes dentro do
process so concorrentes
Delimita uma regio
contendo cdigo
sequencial
Processos so contnuos e
cclicos
47
PROCESS
Lista de sensibilidade em processos
Lista de sensibilidade:
Define quais sinais causam a execuo do processo
Execuo do processo ocorre se um sinal da lista tem
valor alterado
Iniciada a execuo:
Declaraes so avaliadas na sequncia
Ao trmino da avaliao da ltima declarao o
processo suspenso (aguarda uma nova alterao
de valor - sinais da lista)
48
49
Teste utilizando IF
Descrio Sequencial
Flip-flop : Process (D, CLK)
begin
if rising_edge (CLK) then
Q <= D;
endif;
end process Flip-flop;
Formato
Geral
50
51
52
53
Paralelismo de Processos
(1)
Processo 1
Processo 2
Processo 3
Arquitetura
Processo 4
Processo 5
ELT013 - Eletrnica Digital II
54
Paralelismo de Processos
(2)
Alterando A, os
processos P1 e P2 so
executados em paralelo
55
Paralelismo de Processos
(3)
Alterando B, os
processos P1 e P3 so
executados em paralelo
56
Paralelismo de Processos
(4)
Alterando C, apenas o
processo P2 executado
57
Comunicao entre
Processos (1)
Processo P1
Processo P2
Processo P3
58
Comunicao entre
Processos (2)
Processo P1
Processo P2
Processo P3
59
Comunicao entre
Processos (3)
Evento em A
Evento em D
Evento em E
60
Comunicao entre
Processos (4)
Evento em D
61
Comunicao entre
Processos (5)
62
63
64
Exerccios
Seo 3.17
Seo 3.18
65