Escolar Documentos
Profissional Documentos
Cultura Documentos
HDLS PDF
HDLS PDF
Descrio de Hardware
(Verilog, VHDL)
1
Alex Vidigal Bastos
alexvbh@gmail.com
Objetivos da Aula
Apresentar o conceito gerais de Linguagens de Descrio de
Hardware (Verilog / VHDL)
Apresentar o Fluxo de Projeto utilizando HDLs
Mostrar alguns ambientes de desenvolvimento para Verilog e
VHDL
Requisitos
Portas lgicas / Circuitos Digitais
Lgica Programao
Mercado de Trabalho
O que pedem?
Conhecimentos em HDL (geralmente VHDL ou Verilog);
Experincia com FPGA (Field programmable gate array);
Conhecimentos em alguma ferramenta tanto de sntese quanto
de testes;
Quanto pagam?
O piso salarial em torno de R$ 3.000,00
Salrios podem ir at R$ 15.000,00
Quem so eles?
Ceitec (Porto Alegre); http://www.ceitec-sa.com/
Freescale (So Paulo);
http://www.freescale.com/webapp/sps/site/overview.jsp?cod
e=BRAZIL
Ao final da aula
Deve estar claro para o aluno onde deve ser utilizado linguagens de
descrio de hardware.
Deve estar claro os conceitos bsicos sobre as linguagens Verilog e
VHDL e algumas de suas diferenas.
O aluno deve estar apto para iniciar o aprendizado de linguagens de
descrio de hardware ( Verilog / VHDL).
Agenda
Agenda
Linguagens de Descrio de Hardware (HDLs)
Fluxo de Projetos
Verilog
VHDL
Ambientes de Desenvolvimento
Linguagens de Descrio de
Hardware (HDLs) - Viso Geral
Linguagens de Descrio de Hardware (HDLs) so usadas
extensivamente na indstria para projetos de sistemas digitais
variando de microprocessadores para componentes dentro
de aparelhos de consumo;
So utillizadas para projetar hardware. Tal como o nome
implica, uma HDL tambm pode ser usada para descrever a
funcionalidade do hardware, bem como a sua aplicao;
Diferena entre uma linguagem de programao de software:
paralelismo;
Linguagens de Descrio de
Hardware (HDLs) - Exemplos
Linguagens de Descrio de
Hardware (HDLs) - ASICs
Linguagens de Descrio de
Hardware (HDLs) - Vantagens
10
Sumrio
Linguagens de Descrio de Hardware (HDLs)
Fluxo de Projetos
Verilog
VHDL
Ambientes de Desenvolvimento
11
12
13
14
15
16
Agenda
Linguagens de Descrio de Hardware (HDLs)
Fluxo de Projetos
Verilog
VHDL
Ambientes de Desenvolvimento
17
Verilog - Introduo
Foi projetada primeiramente em 1984/1985;
Permite representar a hierarquia de um projeto. As estruturas
de Verilog que constrem a hierarquia so:
Mdulos;
Portas
18
Verilog - Hierarquia
Um modelo em Verilog composto de mdulos.
19
Verilog - Hierarquia
A maneira mais comum de representar uma relao
hierrquica :
20
Verilog Mdulos
A maneira mais comum de representar uma relao
hierrquica :
21
Verilog Portas
Portas so estruturas em Verilog onde os dados passam entre
mdulos pai e filho;
Podem ser pensadas como fios de ligao dos mdulos;
As conexes fornecidas pelas portas podem ser de entrada,
sada ou bidirecioanais.
Portas so listadas em uma lista de portas na definio do
mdulo e sua direo declarada aps a instruo do mdulo;
22
Verilog Mdulos
Um mdulo definido como:
module <module_name_1> (<portlist>);
..
<module_name_2> <instance_name> (<portlist>);
..
endmodule
23
Verilog Mdulos
Um mdulo definido como:
module top(<portlist>);
..
type2 childB(<portlist>);
..
endmodule
24
Verilog Portas
25
Verilog Instanciao
Instanciao do mdulo tambm contm a lista de portas.
Este o meio de ligao de sinais entre o mdulo pai e o
mdulo filho;
26
Verilog Instanciao
Na instanciao de um mdulo, a lista de portas pode ser
baseada no nome da porta ou de acordo com a posio da
porta na definio do mdulo;
Posio - foo f1 (source1, , sink1, , bus);
27
28
Verilog Exemplo
module and2 (a, b, y);
input a,b;
output y;
assign y = a & b;
endmodule
29
Verilog Exemplo
30
Verilog Exemplo
31
Verilog Exemplo
32
Agenda
Linguagens de Descrio de Hardware (HDLs)
Fluxo de Projetos
Verilog
VHDL
Ambientes de Desenvolvimento
33
VHDL - Introduo
Surgiu em 1987 com o padro IEEE 1076-1987;
Suportar projetos com mltiplos nveis de hierarquia, podendo
a descrio consistir na interligao de outras descries
menores;
Com exceo de regies especficas do cdigo, todos os
comandos so executados concorrentemente;
VHDL no foi originalmente concebida para sntese de
circuitos, assim, nem todas as construes so suportadas
pelas ferramentas de sntese;
34
35
36
: INTEGER := 5 );
37
38
VHDL Exemplo
ENTITY comb IS
PORT ( e0, e1 : IN Bit;
s0
: OUT Bit);
End comb;
ARCHITECTURE prt_E OF comb IS
BEGIN
s0 <= e1 Nand e2;
END prt_E;
ARCHITECTURE prt_OU OF comb IS
BEGIN
s0 <= Not e1 ou Not e2;
END prt_OU;
39
VHDL Exemplo
40
VHDL Exemplo
ENTITY portas IS
PORT ( a, b, c : IN Bit;
x, y : OUT Bit);
End portas;
ARCHITECTURE teste OF portas IS
BEGIN
x <= a AND b;
y <= c OR b;
END
41
Agenda
Ambientes de Desenvolvimento
42
Ambientes de
Desenvolvimento
Altera Quartus II Windows / Linux
43
Ambientes de
Desenvolvimento
ISE Design Suite / Project Navigator
44
Ambientes de
Desenvolvimento
Linux
IDE Eclipse;
GTKWave;
Compilador Verilog;
Windows
IDE Eclipse;
GTKWave;
Compilador iVerilog;
MinGW;
45
Bibliografia
www.verilog.com, acessado em 10/12/2012.
K. COFFMAN; Real World FPGA Design with Verilog. Prentice
Hall; 2000
Smith, Douglas, J. HDL chip design: a practical guide for
designing, synthesizing and simulating ASICs and FPGAs using
VHDL or Verilog. Madison : Doone, c1996. 448p. (621.38173
S645h)
LEE, Weng Fook. Verilog Coding for Logic Synthesis. Wiley.
2003
46
Prxima Aula
Reviso Conceitos Verilog (referente a aula anterior);
Sintaxe, Convenes Lxicas, Tipos de Dados e Memria em
Verilog;
Spartan 3 Decoder Tutorial Verilog
www.decom.ufop.br/alex/tutorial_decoder.pdf
47
Perguntas
48