Upload
internet
View
116
Download
0
Embed Size (px)
Citation preview
2
SUMÁRIO
• Oque é ?, Benefícios e Características• Antes de Usar o ChipScope• Code Generator• Code Inserter• Analyser• CookBook
3
O que é ?
• Analisa sinais internos de um FPGA;• Funciona como um analisador lógico tornando
uma ótima ferramenta de depuração;• Usa Blocos de SelectRam para armazenar
amostragens (não funciona com XCXXXX);• ICON - Integrated CONtroller: interface com
boundary scan;• ILA - Integrated Logic Analyzer: provê trigger e
captura dos dados;
4
Visão Geral
5
Benefícios
• Diminui tempo para validação;• Rápida e fácil de usar;• Você gasta em torno de 15 minutos para começar
a depurar a lógica (inserção do core e download). Quanto tempo gastaria para configurar o analisador lógico (config + cabeamento) ?;
• cores gastam de 1.7% a 5.8% (para cada ILA) e 1.1% a 2.8% (para o ICON) de slices de uma virtex 300;
6
Características
• Taxa de captura de até 155Mhz;• buffer de amostragem de tamanho variável (256 a
4096)• múltiplos triggers, uso de trigger externo e de
fácil configuração;• até 15 ILAs;• 2 design flows:
– com vhdl - manual;– com edif - automática;
7
Fluxo de Projeto
VHDL EDIF
8
SUMÁRIO
• Oque é ?, Benefícios e Características• Antes de Usar o ChipScope• Code Generator• Code Inserter• Analyser• CookBook
9
Antes de Usar o ChipScope
• Crie um projeto no Foundation normalmente;• Execute a síntese lógica;• copie os arquivos xyz.edf e xyz.ucf para um outro
diretório;• crie um subdir neste diretório recém criado;
c:\minha_logica\out
• Começaremos agora a usar o ChipScope ...
10
SUMÁRIO
• Oque é ?, Benefícios e Características• Antes de Usar o ChipScope• Code Generator• Code Inserter• Analyser• CookBook
11
Code Generator - ICON
• Gera os cores ICON e ILA em formato EDIF (*.edn);
PASSOS:• Gerando o ICON:
– Selecione ICON;– Next– selecione o diretório de saída do
arquivo (mesmo dir onde está o xyz.edf e xyz.ucf);
– 3 selecione o nro de portas de controle (nro de ILAs);
– Normalmente não se seta nenhuma das opções
– Next
12
Gerando ICON
– selecione vhdl e a ferramenta de síntese;
– não gere arquivos de exemplo (não serve para nada);
– Gerado o ICON (icon.edn).
13
Code Generator - ILAs
• Gerando o ILA:– selecione ILA;– Next– selecione o diretório de
saída do arquivo (mesmo dir onde está o xyz.edf e xyz.ucf);
– selecione nome curto (mais legível);
– selecione o modo de trigger (geralmente será “same as data”) e a largura da palavra a ser monitorada;
14
Gerando ILA
– selecione o tamanho do buffer de amostragem (256 a 4096). Esse dado define o comprimento da sua monitoração no “analyzer”;
– Selecione o modo de “matching” (simples e extendido);
– Next
– selecione vhdl e a ferramenta de síntese;
– não gere arquivos de exemplo (não serve para nada);
– Gerado o ILA (ila.edn). • Como a dois slides atrás
15
SUMÁRIO
• Oque é ?, Benefícios e Características• Antes de Usar o ChipScope• Code Generator• Code Inserter• Analyser• CookBook
16
Core Inserter
• Concatena a descrição do usuário (xyz.edf) com os cores ICON e ILAs (*.edn);
PASSOS• selecione o diretório onde
está o xyz.edf, xyz.ucf, icon.edn e ila.edn ;
• selecione o diretório onde será criado os arquivos de saída (xyz_ila.ngo e xyz_ila.ucf) ;c:\minha_logica\OUT
• Next
17
Core Inserter
• nos parâmetros do ICON geralmente não precisa setar nada. Passe adiante.
• Next
18
Core Inserter
• Nos parâmetros do ILA você deve setar:– informações do trigger
(geralmente se usa “same as data”);
– largura da palavra monitorada;
– tamanho do buffer de amostragem (256 a 4096);
– parâmetros de “matching” (simples/extendido)
• conectando o core a sua descrição:– neste ponto ocorre
efetivamente a ligação do core ILA com a sua descrição;
19
Integrando sua lógica com ILA
• Dê dois clicks em CH0• Na tela que abrirá selecione
o sinal de clock• Siga esses passos para os
sinais restantes
20
Core Inserter
OBS.:
• para concatenar a descrição do usuário com ILA NÃO SE PODE USAR PINOS!!!!
• Ex.: se o nome do sinal de clock da descrição do usuário chama-se clk, não selecione da lista de sinais o sinal clk, pois ele é um pino. Você deve selecionar o sinal interno correspondente ao clk. (geralmente N_clk)
21
Core Inserter
• A descrição do usuário está pronta para passar pela síntese física;
• Os dois arquivos importante para a próxima etapa são xyz_ila.ngo e xyz_ila.ucf;
• no menu tools click em design manager;• crie um novo projeto tendo como entrada o
xyz_ila.ngo e como UCF xyz_ila.ucf;• selecione a opção de readback e implemente o
projeto.• Pronto. Foi gerado o xyz_ila.bit. Faça download
com o JTAG Prog (com Xchecker) ou Hardware Debugger (com MultLinx).
22
SUMÁRIO
• Oque é ?, Benefícios e Características• Antes de Usar o ChipScope• Code Generator• Code Inserter• Analyser• CookBook
23
Analyzer
• É o analisador lógico do ChipScope;
• PASSOS• Selecione o modo de comunicação (serial
MultLinx, USB MultLinx e Parallel*);• click em trigger setup e selecione o trigger
do sinal;• click em run para fazer aquisição de dados;
• os passos 2 e 3 devem ser repetidos para cada ILA, uma vez que cada ILA tem sua própria janela do Analyzer;
24
Selecionando cada ILA
• Para selecionar uma nova ILA, por exemplo ILA 1, click em Unit1 e assim por diante ...
25
Analyzer - características básicas
• O valor do trigger será comparado para iniciar uma aquisição de dados;
• Os valores possíveis para trigger são:– X,0,1,R,F e B;
• Estados do Sample buffer:– armed, <value>, full, stopped;
• plot value -> aplicado somente a bus;• tokens - labels atribuídos a valores específicos
de um bus;
26
Analisando Sinais
• Note que no instante 0, o valor do sinal monitorado é igual ao valor do trigger. Apartir deste instante, toda variação de x é gravado no buffer até que o mesmo esteja cheio. Neste caso o buffer tem 256 posições
27
SUMÁRIO
• Oque é ?, Benefícios e Características• Antes de Usar o ChipScope• Code Generator• Code Inserter• Analyser• CookBook
28
CookBook
• Gere os arquivos da descrição do user (síntese lógica);
• Copie os arquivos *.edf e *.ucf para outro dir;
• gere os arquivos icon.edn e ila.edn com o core generator no dir anterior;
• concatene a descrição do user com o core ILA usando o core inserter, colocando os arquivos gerados em outro dir;
• não esqueça que não se pode usar pinos para concatena-los;
• use os arquivos *_ila.ngo e *_ila.ucf como base de um novo projeto do design manager. Sete o readback, gere o .bit e dê o download;
• no Analyzer sete o modo de comunicação e o trigger para cada ILA;