Pontifícia Universidade Católica do Rio Grande do Sul
Faculdade de Informática
Programa de Pós-Graduação em Ciência da
Computação
Xilinx ChipScope Pro
Tutorial sobre o uso da ferramenta de depuração
de FPGAs da Xilinx
Guilherme Montez Guindani
Fernando Ghem Moraes
Baseado no tutorial de ChipScope elaborado por: Alceu Luis Carara
2
O que é o ChipScope Pro?
- Analisador de sinais internos a um FPGA
- Funciona como um analisador lógico
- É uma ótima ferramenta de depuração do projeto em HW
- Utiliza as Block Rams (BRAMs) para armazenar amostragens
- Possui duas interfaces principais:
- ICON (Integrated Controller): Realiza a interface com o
boundary scan
- ILA (Integrated Logic Analyzer): Realiza o disparo
(trigger) e a captura dos dados
3
Visão Geral do Projeto
• PC executando a análise de
um determinado HW, através da
GUI do ChipScope
• Placa de prototipação
conectada ao PC através de
JTAG e de um cabo de
prototipação
• Lógica do usuário em teste, já
com os módulos de controle e
captura do ChipScope
associados ao projeto inicial
4
Antes de usar o ChipScope
- Crie um projeto no ISE normalmente.
- Na aba de processos, clique com o botão direito na ferramenta de
síntese lógica e entre no menu de propriedades.
5
Antes de usar o ChipScope
- No menu de propriedades, selecione a opção para manter a hierarquia do
projeto (Keep Hierarchy = Yes), esta ação evita que a ferramenta de síntese
agrupe lógica de módulos diferentes (perde-se o nome original dos sinais).
6
Adicionando o módulo do ChipScope no projeto
- Clique em project, e depois em new source.
- Selecione a opção relacionada ao ChipScope, e dê um nome para
este módulo (Instância do ChipScope).
7
Adicionando o módulo do ChipScope no projeto
- Selecione a entidade de mais alto nível hierárquico do
projeto (top level entity), neste caso é top.
8
Configurando o módulo do ChipScope
- Na aba de fontes (sources), dê um duplo clique no módulo do ChipScope
recém criado.
- Será exibida a janela de configuração do módulo do ChipScope contendo
informações sobre o FPGA utilizado e a síntese realizada sem a
configuração do ChipScope.
- Clique em Next.
9
Configuração do ICON
- Nesta janela pode ser configuradas opções para o ICON
- Na prática nada deve ser alterado nesta janela
- Clique em Next.
10
Configuração do ILA
- Nesta janela pode ser configuradas opções para o ILA
- Primeiro selecione o número de portas trigger (sinais a serem
monitorados pelo ChipScope)
- A seguir selecione a largura de cada sinal em bits (1 a 256)
- Neste caso, quero monitorar
apenas 1 sinal de 4 bits, logo
o número de portas é 1 e a
largura é 4.
- Clique em Next.
11
Configuração do ILA - continuação
- Nesta janela pode ser configuradas opções de captura para o ILA
- Primeiro selecione o tamanho do buffer de amostragem em Data
Depth, isto irá definir o número de amostras que o ChipScope irá
capturar.
- A seguir selecione a borda
do clock em que os dados
serão amostrados em
Sample On.
- Deixe marcado a opção
Data Same As Trigger
- Clique em Next.
12
Configuração do ILA - continuação
- Nesta janela são realizadas as conexões entre o core do ChipScope (ILA) e
os sinais do seu módulo.
- Enquanto todos os sinais não estiverem ligados as conexões
permanecem em vermelho.
- Selecione CLOCK PORT
e depois clique em Modify
Connections.
13
Configuração do ILA - continuação
- Nesta janela selecione o clock utilizado no ILA.
- Este clock somente pode ser do tipo BUFG (ou algo parecido ex: BUFGP).
- Selecione o clock e depois clique em Make Connections.
- O sinal de clock foi adicionado
ao canal 0 (CH:0) do sinal de
clock do ChipScope.
- Agora deverão ser conectados
os sinais a serem monitorados no
ChipScope.
- Troque para a aba Trigger/Data
Signals
14
Configuração do ILA - continuação
- Agora serão conectados os sinais monitorados pelo ILA.
- Cada sinal adicionado no slide 10, tem-se uma aba TP associado, nestas
abas serão associados os sinais do ILA com os sinais a serem monitorados.
- Selecione a serem monitorados
na lista, associe a um canal de
uma das abas (sinais) e clique
em Make Connections.
- Ao terminar de associar todos
os sinais propostos no slide 10,
clique em OK.
15
Configuração do ILA - continuação
- Se todos os sinais estiverem associados, as conexões aparecem em preto.
- Para salvar as alterações, clique em Return to Project Navigator.
16
Executar a síntese física no ISE
- De volta ao ISE, podemos executar o fluxo normal para fazer o download
do HW para o FPGA.
- A única alteração é que ao contrário do fluxo comum, que utiliza o IMPACT
para fazer o download, utiliza-se o Analyze Design Using ChipScope.
- Pode-se realizar um duplo clique neste processo, que o ISE irá executar a
síntese física e após terminado abrirá automaticamente o ambiente do
ChipScope Pro.
17
ChipScope Pro Analyser
- É o analisador lógico do ChipScope.
- Pode ser usado para fazer o download do bitsrteam para a FPGA.
- Para começar o download clique no ícone logo abaixo de File.
18
ChipScope Pro Analyser
- Após inicializado a seqüência do JTAG, os dispositivos presentes na cadeia irão ser
exibidos.
- Clique em OK.
19
ChipScope Pro Analyser
- Com os dispositivos identificados, pode-se executar o download do bitstream para
o FPGA.
- Clique com o botão direito no dispositivo, neste caso o XC3S200, e depois em
Configure.
20
ChipScope Pro Analyser
- Clique em Select New File e adicione o arquivo do bitstream gerado pelo ISE.
- Clique em OK.
- O dispositivo será configurado e a seguir a GUI do ChipScope irá adicionar os
sinais monitorados pelo ILA.
21
ChipScope Pro Analyser
- Repare que todos os sinais estão sem os nomes descritos no VHDL, este fato
dificulta a visualização do monitoramento.
- Para arrumar os nomes no ChipScope, clique em File -> Import. A seguir adicione
o arquivo do ChipScope (*.cdc) para importar os nomes associados a estes sinais.
22
ChipScope Pro Analyser
- Veja que agora os sinais já estão com os nomes corretos, mas os barramentos estão
com os sinais abertos (espalhados).
- Para agrupar estes sinais, selecione todos os sinais que se deseja agrupar, e clique
com botão direito em Add To Bus -> New Bus.
23
ChipScope Pro Analyser
- Com a GUI configurada, pode-se iniciar a análise. Primeiramente, deve-se setar o
valor que irá disparar a captura dos dados.
- Na janela de Trigger Setup, no campo Value configura-se este valor.
- Neste caso o valor escolhido foi 00H que é o valor inicial.
- Repare que o campo Radix está configurado para HEX.
- Após preencher este campo, pode-se disparar
o ChipScope.
- Para disparar o ChipScope basta clicar no
botão de play logo abaixo do View.
24
ChipScope Pro Analyser
- Quando o valor do trigger for igual ao valor escolhido, os dados são armazenados
em BRAM até o máximo definido no ISE.
- Ao completar o máximo de amostras o core envia via JTAG estas informações que
são visualizadas no GUI.
- Se os valores apresentados no
barramento estiverem muito ruins
pode-se tentar mudar a ordem dos
bits no barramento, clicando com
o botão direito no barramento e
escolhendo Reverse Bus Order.
Pontifícia Universidade Católica do Rio Grande do Sul
Faculdade de Informática
Programa de Pós-Graduação em Ciência da
Computação
Perguntas??
Download

chipscopepro2 - Faculdade de Informática