You are on page 1of 24

237

FUNDAO DE ENSINO EURPIDES SOARES DA ROCHA CENTRO UNIVERSITRIO EURPIDES DE MARLIA UNIVEM BACHARELADO EM CINCIA DA COMPUTAO

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

DENISON MENEZES

DIEGO DA SILVA MARTINS

ILDEBERTO DE GENOVA BUGATTI


(ORIENTADOR)

MARLIA 2008

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

238

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD


1
2

Sumrio
Consideraes Iniciais.................................................................................... 220 2.1 2.2 Notas dos Autores ....................................................................................... 220 Necessrio .................................................................................................... 220 Conhecimento ..................................................................................... 220 Ferramentas .......................................................................................... 220 Hardware .............................................................................................. 220

2.2.1 2.2.2 2.2.3 3

FPGA ................................................................................................................. 221 3.1 3.2 3.3 Estrutura Interna de um FPGA ................................................................... 221 Conceitos sobre Roteamento ................................................................... 222 FPGA utilizado .............................................................................................. 222

Project Manager.............................................................................................. 224 4.1 4.2 Criando um novo Projeto........................................................................... 224 Schematic Editor ......................................................................................... 225 Adicionando componentes no diagrama e interligando eles..... 226 Criando Macros ................................................................................... 227 Buffers e PADs ....................................................................................... 229 Criando o Netlist................................................................................... 231 Functional Simulation.................................................................................. 232 Criando o Bitstream .................................................................................... 234

4.2.1 4.2.2 4.2.3 4.2.4 4.3 4.4 5 6

GXSLOAD ......................................................................................................... 237 Bibliografia ....................................................................................................... 240

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

239

Consideraes Iniciais

2.1 Notas dos Autores


Este guia se dispe em ensinar conceitos bsicos para a utilizao da FPGA1 na placa XS40. Para tal ser utilizado ferramenta da XILINX Project Manager, para criao dos diagramas esquemticos dos circuitos lgicos, teste e gerao do arquivo Bitstream. E a XSTOOLs para transferncia deste arquivo para FPGA.

2.2 Necessrio
2.2.1 Conhecimento

Conhecimento em lgica digital. 2.2.2 Ferramentas

Project Manager. XSTOOLs. 2.2.3 Hardware

Placa de desenvolvimento XS40 verso 1.2 do fabricante Xess Corporation. FPGA XC4010XLPC84 integrante da famlia XC4000XL do fabricante Xilinx.

Field Programmable Gate Array. Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

7/8/2008

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

240

FPGA

3.1 Estrutura Interna de um FPGA


Segundo Ordonez (2003), os FPGAs so circuitos programveis formados por conjuntos de clulas lgicas em arranjo matricial. Cada clula contm capacidade computacional para implementar funes lgicas e realizar roteamento para comunicao entre elas. O roteamento e as funes lgicas das clulas so configurveis via software. De acordo com Martins (2003), a estrutura bsica de um FPGA (Figura 1) composta pelos seguintes elementos: 1) CLB (Configurable Logic Block): unidade lgica configurvel. 2) IOB (In/Out Block): unidade de entrada e sada. 3) SB (Switch Box): unidade de conexo entre os diversos CLBs. 4) Canais de roteamento: interligam as unidades de conexo para formar a rede de interconexo programvel.

Figura 1 Elementos bsicos de um FPGA

Ordonez (2003) cita as seguintes configuraes para a arquitetura interna de um FPGA: 1) Matriz simtrica: possui canais de roteamento verticais e horizontais com grande flexibilidade. 2) PLD hierarquico: matriz de blocos lgicos interligados e que podem ser agrupados entre si. 7/8/2008
Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

241

3) Row-based: blocos lgicos em disposio horizontal com rea dedicada para o roteamento. 4) Sea of gates: blocos logicos de complexidade pequena dispostos em grande numero por unidade de area. Nao h area dedicada para o roteamento.

3.2 Conceitos sobre Roteamento


Segundo Ordonez (2003), a interconexo entre os blocos lgicos atravs de uma rede de camadas de metal chamada de roteamento. Fisicamente, transistores controlados por bits de memria (PIP) ou chaves de interconexo (switch matrix) so responsveis pelas conexes fsicas entre os blocos lgicos. Podem ser definidos ainda alguns elementos bsicos presentes na malha de roteamento da familia XC4000 (Xilinx), os quais seguem abaixo descritos. 1) Conexes globais: rede de interconexo entre linhas e colunas ligadas por meio de chaves de interconexo. 2) Matriz de conexo: chaves de interconexo para o roteamento entre blocos lgicos atraves de conexes globais. 3) Conexes diretas: interligao entre CLBs vizinhos que permite menores tempos de atraso, uma vez que no faz uso de recursos globais de roteamento. 4) Linhas longas: conexes que interligam sinais longos e percorrem todo o circuito sem passar pelas matrizes de conexo.

3.3 FPGA utilizado


Foi utilizado o FPGA XC4010XLPC84 integrante da famlia XC4000XL do fabricante Xilinx, para a implementao do circuito. Trata-se de um FPGA com encapsulamento PLCC (Plastic Lead Chip Carrier) de 84 pinos, sendo 61 deles disponveis para entrada e sada. Para auxiliar o teste funcional de validao, foi utilizada a placa de desenvolvimento XS40 verso 1.2 do fabricante Xess Corporation (Figura 2). A placa contm basicamente uma FPGA XC4010XLPC84 funcionando a 3.3 V, um microcontrolador 80C31, uma memria RAM esttica de 32 Kbytes, um oscilador de 12 MHz, um display de 7 segmentos e um conector VGA para leitura de sinais de vdeo. A programao do FPGA feita via PC atravs da porta paralela.

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

242

Figura 2 Placa de desenvolvimento XS40

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

243

Project Manager

O Software Project Manager do ambiente Xilinx Foundation F3.1i, Build 3.1.177. um sistema de desenvolvimento que consiste da integrao de um conjunto de ferramentas de softwares e hardware para criar, simular e implementar projetos digitais em FPGA ou CPLD. O Project Manager tambm capaz de gerar os bits de configurao para diversos dispositivos reconfigurveis da Xilinx. Para isso, a ferramenta faz o mapeamento da soluo no dispositivo, e gera os bits de configurao (bitstream) que podem ser enviados para o dispositivo reconfigurvel.

4.1 Criando um novo Projeto


Ao abrir o Project Manager surgir janela da figura 3 nela esto, as opes de criar um novo projeto ou abrir um j existente.

Figura 3 Criando novo projeto

Escolhendo a opo Create a New Project ou pelo caminho File / New Project aparecer janela da figura 4.

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

244

Nome do

Famlia da

Figura 4 Criando um novo projeto opes

FPGA

Para construir o diagrama esquemtico do circuito lgico abra o editor esquemtico Schematic Editor. Observe a figura5:

Editor Editor Editor HDL

de

Simulao Simulao de

Implementa Programan do o

Figura 5 Ambiente Project Manager da Xilinx

4.2 Schematic Editor


Atravs deste editor podemos desenvolver de maneira grfica um circuito lgico. Onde possvel selecionar diversos componentes a partir das bibliotecas, fazer as interligaes entre eles, bem como agrup-los em blocos criando macros para reutilizao de funes.

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

245

Nosso exemplo um circuito que apresentar no visor de sete seguimentos o valor de um at nove. 4.2.1 Adicionando componentes no diagrama e interligando eles

Para adicionar um componente clique no cone (Symbols toolbox). Ir abrir a caixa da Figura 6, digite o nome do componente no campo de busca, e selecione-o caso encontre.

Component

Descrio

Busca

Figura 6 Caixa de componentes (Symbols toolbox)

Para interligar os componentes selecione o cone caso o

(Draw wires) ou se for o

(Draw buses). Como demonstrado na figura 7.

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

246

Figura 7 Interligando Componentes

4.2.2

Criando Macros

Ao construir um circuito pode ser necessrio criar macros, para reutilizar algum circuito especifico, por exemplo, um contador, ou simplesmente para tornar mais fcil sua compreenso. Para construir macros utiliza Hierarchy Connector, que um terminal I/O, mas no um dispositivo fsico, portanto deve ser usado somente para fornecer conexo entre nveis hierrquicos, correspondendo aos pinos no smbolo da macro. Para adicionar clique no cone ou clique com o boto direito do mouse diretamente no Draw wires quando o mesmo estiver selecionado e escolhendo a opo add Terminal, em seguida ser apresentada uma tela para a configurao do terminal a ser criado conforme a figura 8.

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

247

Nome do Terminal

Nome do Terminal

Figura 8 configurao do Hierarchy Connector

Depois de criado o circuito com os terminais de entrada e sada poder ser criada a macro, para isso clique na opo da barra de ferramentas Hierarchy-> Create Macro Symbol from Current Sheel... conforme demonstrado na a figura 9, ento ser apresentado a tela da figura 10.

Figura 9 criando macro

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

248

Nome do

Comentrio Terminais de

Terminais de

Figura 10 configurao da macro

Feito os passos anteriores estar disponvel a macro criada no Symbols toolbox, o smbolo criado no nosso exemplo est na figura 11.

Figura 11 Macro SETE-SE1

4.2.3

Buffers e PADs

BUFFERS
Buffers so necessrios para sinais de entradas e sadas que vo para pinos de seu dispositivo (FPGA). Esto disponveis no Symbols toolbox, para os buffers de entrada escolhe-se IBF (figura 13) e os de sada OBUF (figura 12). No esquea de adicionar BUFFERS no seu esquemtico ou seu esquemtico no ir compilar.

Figura 12

Figura 13

PADs
Voc ir tambm precisar adicionar pads I/O para buffers de entrada e sada. Estes pads (blocos) representam os pinos atuais no dispositivo XILINX. Os blocos so componentes fsicos na biblioteca XILINX e colocado semelhante a 7/8/2008
Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

249

qualquer outro componente. Os nomes dos Pads so IPAD (entrada), OPAD (sada) e IOPAD(bidirecional).TODOS OS DISPOSITIVOS DEVEM SER REPRESENTADOS COM UM DESTES PADS! Os Pads devero ser dados um nome e possivelmente um nmero de pino (localizao dos pinos). Estes podem ser feitos dando um clique duplo no pad ou pressionando o boto direito do mouse na opo Symbol Properties... conforme demonstrado na figura 14, para aparecer a janela Symbol Properties.

Figura 14 inserindo OPAD

Na janela Symbol Properties, na rea Paramaeters, no campo Name, selecione LOC e em Description, e informe o nmero do pino da FPGA como pXX, onde XX representa o nmero do pino.Como na figura 15 o pino 19, e depois pressione o boto Add.

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

250

Figura 15 Symbol Properties

No nosso exemplo iremos utilizar apenas opads, para selecionar os LEDs do display de sete segmentos, os pinos correspondentes so demonstrados na figura 16.

Figura 16 display de sete segmentos

4.2.4

Criando o Netlist

Aps a construo do circuito lgico, deve ser criado e exportado o netlist utilizado para compilar o circuito para o FPGA escolhido. A gerao do netlist fornece informaes importantes para o desenvolvimento, como avisos e mensagens de erro. Aps a gerao e exportao do netlist. Para cri-la basta clicar no Menu em OPTIONS pressionando Shift+F2. CREATE NETLIST ou

Quando terminar, uma boa prtica verificar tem erros de projeto ou no. Isto feito clicando no Menu em OPTIONS INTEGRITY TEST. 7/8/2008
Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

251

Voc pode tambm gerar um netlist EDIF clicando no Menu em OPTIONS EXPORT NETLIST. Se voc no fizer isto, no h problema, o sistema pedir para que seja feito posteriormente.

4.3 Functional Simulation


Abra o Funtional Simulation clicando no cone Manager (ver figura 5). ou pelo ambiente Project

O primeiro passo adicionar os sinais necessrios para a visualizao, isto pode ser feito clicando no boto (Select Components) ou pelo menu signal Add Signal. Abrir a janela da figura 17, de dois clique no componente desejado na rea Chip Selection, aparecer seus pinos no quadro do lado direito, e ento selecione os pinos que sero visualizados na simulao, depois aperte no boto Close para retornar ao simulador. Caso voc utilize Hierarchy Connector seu sinal se encontra na rea Signals Selection sendo possvel seleciona-lo.

Pinos do componente

Lista com todos os sinais habilitados

Componente selecionado

Figura 17 Select Components

Tambm possvel adicionar pontos de prova no esquemtico do circuito clicando no cone (Simulation Toolbox), depois clique no componente, aparecer a janela da figura 18, selecione o pino desejado e clique no boto Add.

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

252

Figura 18 Simulation Toolbox

O segundo passo adicionar estmulos, para isso abra o Select Stimulators clicando no cone . Aparecer a janela da figura 19. Selecione o pino de entrada e selecione a ao desejada no Select Stimulators. Voc pode associar teclas como estimulos para sinais no seu projeto. Depois de voc associar este estmulo, o sinal varia entre 1 e 0 sempre que voc pressionar a tecla correspondente no teclado.

Estimulo pelo teclado

Sadas do contador

Complemento da sada

Figura 19 Select Stimulators

Depois de Ter entrado com as entradas e sadas a serem simuladas e associado estmulos s entradas resta realizar a simulao. Para iniciar a simulao clique em (Simulation Step), para definir o intervalo dos passos de simulao, selecione uma opo do combobox do seu lado direito.

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

253

4.4 Criando o Bitstream


Inicie clicando em Implementation no ambiente Project Manager (ver figura 5). O boto Implementation permite a entrada na funo de implementao, que ter como produto final o arquivo bitstream(com extenso .bit) para download no FPGA. Aps a entrada na funo de implementao (Implement Design), a mesma ativada clicando no boto Run. Observar que mostrado o tipo de dispositivo FPGA escolhido inicialmente para o projeto, bem como os nomes da verso e reviso.

FPGA escolhido

Nome da verso

Nome da reviso

Figura 20 Ativando a implementao

Os passos do processo de implementao so: traduo, mapeamento, roteamento, temporizao e configurao. Aps a ativao, os passos do processo de implementao seguem na seqncia indicada pelas setas ilustradas na figura 21.

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

254

Figura 21 Passos do processo de implementao

Ao trmino do processo de implementao, exibida mensagem na tela. Caso ocorram erros, ser exibida mensagem de alerta.

Figura 22 Fim do processo de implementao

Os relatrios gerados por cada fase da implementao podem ser visualizados para verificar estatsticas de ocupao do FPGA, temporizao e eventuais erros ocorridos.

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

255

Relatrios de implementao

Figura 23 Buscando os relatrios do processo de implementao

Figura 24 Relatrios gerados pelo processo de implementao

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

256

GXSLOAD

O GXSLOAD(figura 26) faz parte do software GXSTOOLs, e utilizado para fazer a transferncia do arquivo bitstream no FPGA da placa de desenvolvimento. O arquivo com extenso .bit carregado na ferramenta e transferido para o FPGA via porta paralela. Para descarregar o arquivo .bit no FPGA da placa de desenvolvimento XS40, basta buscar e arrastar para a rea FPGA/CPLD de uma janela aberta da ferramenta GXSLOAD, o arquivo .bit que o Project Manager automaticamente salva no caminho Xilinx\active\projects\setseg\xproj\ver1\rev1 dentro de seu diretrio de instalao. Observar que setseg o nome do projeto exemplo.

Figura 25 Buscando o arquivo .bit

Buscar o arquivo e arrastar para uma janela aberta do GXSLOAD

Na janela do GSXLOAD deve ser escolhido o tipo de placa de desenvolvimento e o nome da porta paralela a ser utilizada para descarregar o arquivo .bit no FPGA. Feito isso, basta clicar no boto LOAD para descarregar.

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

257

Tipo de placa de desenvolvimento e nome da porta paralela

Boto para descarregar arquivo bitstream

Arquivo bitstream arrastado

que

foi

Figura 26 GXSLOAD

Aps receber o arquivo .bit, a placa de desenvolvimento est pronta para os testes prticos.

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

258

Figura 27 Passos de desenvolvimento para projetos baseados em FPGA

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

259

Bibliografia

ORDONEZ, Edward David Moreno et al. Projeto, Desempenho e Aplicao de Sistemas Digitais em Circuitos Programveis (FPGAs). 1. ed. atual. Pompia, SP: Bless, 2003. 300p. MARTINS, Diego da Silva; MENEZES, Denison. AUTOMAO E CONTROLE DE PULVERIZAO EM MQUINAS AGRCOLAS. 2007. Projeto de Iniciao cientifica - CENTRO UNIVERSITRIO EURPIDES DE MARLIA UNIVEM, Marlia, SP, 2007. XS40, XSP Board V1.2 User Manual Dava Vanden Bout; Pragmatic Logic Design with XILINX Foundation 2.1i

Agradecimentos Agradeo aos alunos Denison Menezes e Diego da Silva Martins pela dedicao, eficincia, senso de responsabilidade, tica e companheirismo no desenvolvimento das atividades de iniciao cientfica intitulado Automao e Controle de Pulverizao em Mquinas Agrcolas que entre muitos outros relevantes resultados gerou tambm esse manual tcnico. Obrigado Ildeberto de Genova Bugatti

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

Guia para Utilizar as Ferramentas Project Manager e GXSLOAD

260

Que importa saber o que linha reta quando no se sabe o que retido

7/8/2008

Fundamentos de Lgica 2009-Anexo-Project Manager e GXSLOAD

You might also like