Pontifcia Universidade Catlica do Rio Grande do Sul

  • Slides: 25
Download presentation
Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação

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 Chip. Scope Pro Tutorial sobre o uso da ferramenta de depuração de FPGAs da Xilinx Guilherme Montez Guindani Fernando Ghem Moraes Baseado no tutorial de Chip. Scope elaborado por: Alceu Luis Carara

2 O que é o Chip. Scope Pro? - Analisador de sinais internos a

2 O que é o Chip. Scope 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,

3 Visão Geral do Projeto • PC executando a análise de um determinado HW, através da GUI do Chip. Scope • 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 Chip. Scope associados ao projeto inicial

4 Antes de usar o Chip. Scope - Crie um projeto no ISE normalmente.

4 Antes de usar o Chip. Scope - 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 Chip. Scope - No menu de propriedades, selecione a

5 Antes de usar o Chip. Scope - 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 Chip. Scope no projeto - Clique em project, e

6 Adicionando o módulo do Chip. Scope no projeto - Clique em project, e depois em new source. - Selecione a opção relacionada ao Chip. Scope, e dê um nome para este módulo (Instância do Chip. Scope).

7 Adicionando o módulo do Chip. Scope no projeto - Selecione a entidade de

7 Adicionando o módulo do Chip. Scope 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 Chip. Scope - Na aba de fontes (sources), dê

8 Configurando o módulo do Chip. Scope - Na aba de fontes (sources), dê um duplo clique no módulo do Chip. Scope recém criado. - Será exibida a janela de configuração do módulo do Chip. Scope contendo informações sobre o FPGA utilizado e a síntese realizada sem a configuração do Chip. Scope. - Clique em Next.

9 Configuração do ICON - Nesta janela pode ser configuradas opções para o ICON

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

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 Chip. Scope) - 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

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 Chip. Scope 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

12 Configuração do ILA - continuação - Nesta janela são realizadas as conexões entre o core do Chip. Scope (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

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 Chip. Scope. - Agora deverão ser conectados os sinais a serem monitorados no Chip. Scope. - Troque para a aba Trigger/Data Signals

14 Configuração do ILA - continuação - Agora serão conectados os sinais monitorados pelo

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

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

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 Chip. Scope. - 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 Chip. Scope Pro.

17 Chip. Scope Pro Analyser - É o analisador lógico do Chip. Scope. -

17 Chip. Scope Pro Analyser - É o analisador lógico do Chip. Scope. - 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 Chip. Scope Pro Analyser - Após inicializado a seqüência do JTAG, os dispositivos

18 Chip. Scope Pro Analyser - Após inicializado a seqüência do JTAG, os dispositivos presentes na cadeia irão ser exibidos. - Clique em OK.

19 Chip. Scope Pro Analyser - Com os dispositivos identificados, pode-se executar o download

19 Chip. Scope 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 XC 3 S 200, e depois em Configure.

20 Chip. Scope Pro Analyser - Clique em Select New File e adicione o

20 Chip. Scope 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 Chip. Scope irá adicionar os sinais monitorados pelo ILA.

21 Chip. Scope Pro Analyser - Repare que todos os sinais estão sem os

21 Chip. Scope 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 Chip. Scope, clique em File -> Import. A seguir adicione o arquivo do Chip. Scope (*. cdc) para importar os nomes associados a estes sinais.

22 Chip. Scope Pro Analyser - Veja que agora os sinais já estão com

22 Chip. Scope 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 Chip. Scope Pro Analyser - Com a GUI configurada, pode-se iniciar a análise.

23 Chip. Scope 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 00 H que é o valor inicial. - Repare que o campo Radix está configurado para HEX. - Após preencher este campo, pode-se disparar o Chip. Scope. - Para disparar o Chip. Scope basta clicar no botão de play logo abaixo do View.

24 Chip. Scope Pro Analyser - Quando o valor do trigger for igual ao

24 Chip. Scope 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 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

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? ?