Sei sulla pagina 1di 32

Universidade Federal do Piau

Centro de Tecnologia
Curso de Engenharia Eltrica

PROJETO DE CIRCUITOS
INTEGRADOS VLSI
Introduo s Ferramentas de
Desenvolvimento da Altera
(Quartus II & ModelSim)
Prof. Marcos Zurita
zurita@ufpi.edu.br
www.ufpi.br/zurita

Teresina - 2013

Descrevendo o Projeto
(Quartus-II)

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

Prtica 1 Meio Somador

Inicialize o Quartus II
Se a tela de boas vindas aparecer, clique em Create a
New Project.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

Prtica 1 Meio Somador

Se a tela de boas vindas no aparecer, no menu


principal, acesse File New Project Wizard...

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

Prtica 1 Meio Somador

Na Janela do New Project Wizard, clique em Next.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

Prtica 1 Meio Somador

No primeiro campo, informe a pasta onde o projeto ser


armazenado.
Recomenda-se a adoo do padro:

<pasta_de_usurios>\<usurio>\vlsi\<nome_do projeto>
Ex: c:\users\zurita\vlsi\proj01

No segundo campo,
informe o nome do projeto.
Neste caso, half_adder.
O terceiro campo refere-se
ao nome do mdulo
principal. Por padro seu
nome o mesmo do
projeto, sendo preenchido
automaticamente.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

Prtica 1 Meio Somador

Clique em Next.
Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

Prtica 1 Meio Somador

Esta etapa permite a incluso de arquivos-fonte


preexistentes ao projeto. Neste exemplo no h
nenhum, clique em Next.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

Prtica 1 Meio Somador

Nesta etapa configura-se o dispositivo alvo do projeto


(FPGA ou CPLD), selecionando-se a famlia desejada
(Device family, tais como:

Cyclone, Cyclone II, Cyclone III, Cyclone IV, Cyclone V


MAX, MAX II, MAX V, MAX3000, MAX 7000
Stratix, Stratix GX, Stratix II, Stratix II GX
HardCopy

Configura-se em seguida o dispositivo especfico da


famlia selecionada.
Considere inicialmente que o projeto ser prototipado
em uma Cyclone II, modelo EP2C70F896I8.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

Prtica 1 Meio Somador

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

10

Prtica 1 Meio Somador

Clique em Next.
Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

11

Prtica 1 Meio Somador

A nova janela permite configurar a integrao do projeto


no Quartus II com ferramentas externas, bem como a
linguagem a ser adotada na simulao.
Neste projeto, apenas a simulao ser feita atravs de
uma ferramenta externa.
No campo Simulation selecione ModelSim-Altera
como ferramenta.
Ainda no campo Simulation selecione SystemVerilog
HDL como formato.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

12

Prtica 1 Meio Somador

Clique em Next.
Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

13

Prtica 1 Meio Somador

A ltima tela apresenta o resumo das configuraes do


novo projeto. Se estiver tudo correto, clique em Finish.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

14

Prtica 1 Meio Somador

Se tudo estiver correto, voc dever visualizar a janela


do Quartus, agora configurada para o projeto half_adder.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

15

Prtica 1 Meio Somador

Para criar o arquivo que conter a descrio em


SystemVerilog do meio somador, clique em:
File New...
Selecione a opo SystemVerilog
HDL File dentro do grupo Design
Files.
Clique em OK.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

16

Prtica 1 Meio Somador

No editor do Quartus II, introduza o cdigo do half_adder


tal como no exemplo abaixo.
Salve o arquivo.
half_adder.sv
module half_adder (
input logic A, B,
output logic Sum, Carry);
always_comb Sum <= A ^ B;
//^ significa XOR
always_comb Carry <= A & B; // & significa AND
endmodule

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

17

Prtica 1 Meio Somador

Para verificar se houve algum erro sinttico no cdigo,


selecione Processing Analyze Current File ou clique
no cone correspondente na barra do editor.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

18

Prtica 1 Meio Somador

Caso no hajam erros de sintaxe, ser exibida uma


janela informando que a anlise foi concluda com xito.
Clique em OK.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

19

Prtica 1 Meio Somador

Caso haja algum erro de sintaxe, ser exibida uma


janela informando que a anlise foi concluda sem xito
e reportando o nmero de erros encontrados.
Clique em Ok.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

20

Prtica 1 Meio Somador

Os erros so reportados na janela de mensagens, logo


abaixo do editor.

O mais importante depurar o primeiro erro encontrado.


Os demais so, muitas vezes, apenas consequncias do
primeiro.
Neste exemplo a primeira mensagem de erro :

10170: Verilog HDL syntax error at half_adder.sv(5) near text


"always_comb"; expecting ";"

D um duplo clique na mensagem.


Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

21

Prtica 1 Meio Somador

A mensagem de erro acusa a falta de um ponto e


vrgula, ;, antes do always_comb.

Observando-se o cdigo, nota-se que este ; faltante


deveria estar na linha acima, aps Carry).
Aps a correo do erro, uma nova anlise do cdigo
resulta em xito. Os outros dois erros, anteriormente
reportados, deixaram de existir.
Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

22

Prtica 1 Meio Somador

Tendo completado a anlise sinttica com sucesso,


possvel sintetizar o cdigo a fim de obter sua
representao em hardware.
Selecione Processing Start Compilation ou clique no
cone correspondente na barra do editor.

Este processo poder levar at 2 minutos para ser


concludo (depende do desempenho da mquina).
Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

23

Prtica 1 Meio Somador

Ao final uma janela informando que a compilao foi


concluda com xito dever ser exibida. Clique em OK.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

24

Prtica 1 Meio Somador

Relatrio da Compilao:

Resumo dos recursos


utilizados pelo projeto no
dispositivo alvo.
Relatrios da sntese do
projeto.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

25

Prtica 1 Meio Somador

Para visualizar o diagrama lgico do circuito sintetizado


a partir da descrio SystemVerilog, na janela de
relatrios da sintese de projeto, expanda o contedo do
item Netlist Viewers.
D um duplo clique em em RTL Viewer.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

26

Prtica 1 Meio Somador

Surgir a janela do Netlist Viewer com o diagrama do


circuito inferido na sntese.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

27

Simulando o Projeto
(ModelSim)

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

28

SystemVerilog HDL
Simples Testbench

Deve incluir o arquivo que contm o top level do


projeto a ser testado (`include);
Deve ter noo de tempo simulado ($time);
Deve gerar os sinais de entrada (estmulos) do
mdulo a ser testado;
Pode incluir instrues sintetizveis e no
sintetizveis.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

29

SystemVerilog HDL
Simples Testbench para o Meio Somador
`include "half_adder.sv" // inclui o arquivo do top level do projeto
module stimulus;
logic A, B, Sum, Carry, clk;
half_adder hAdder(.*); //instancia o mdulo a ser testado
initial clk = 0;
// inicializa clk com zero
always #5 clk = ~clk; // uma transio de clock a cada 5 unidades de tempo
initial begin
for (int ab = 0; ab < 4; ab++) begin
A = ab[0];
// sinal de estimulo para a entrada A
B = ab[1];
// sinal de estimulo para a entrada b
@(posedge clk); // aguarda transio de subida do clock
if ({Carry,Sum} != (A+B))
$display("ERRO em %t: Sum=%0d, esperado %0d", $time, Sum, (A+B));
repeat(2) @(posedge clk); //aguarda 2 transies de subida do clock
end
@(posedge clk); $stop; //aguarda transio de subida do clock e para a simulao
end
endmodule

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

30

Incompleto...

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

31

Bibliografia

S. Sutherland, S. Davidmann, P. Flake,


SystemVerilog for Design, 2nd Ed., Springer,
2006.
Seetharaman Ramachandran, Digital VLSI
Systems Design, Springer, 2007.
Karim, M.A., Chen, X., Projeto Digital: Conceitos e
Princpios Bsicos, LTC, 2009.
Elmar Melcher, SystemC para Verificao
Funcional, 2003.

Projeto de Circuitos Integrados VLSI Prof. Marcos Zurita

32

Potrebbero piacerti anche