Você está na página 1de 50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE

EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

SISTEMAS A EVENTOS
DISCRETOS
Aula 1 Laboratrio

Projeto de Sistemas Digitais Utilizando FPGA e


Implementao de Rede de Petri Segura em VHDL
com Equaes de Estado

Autores:
Prof Dr Silvana Gasparotto de Souza
Prof. MSc. Pedro Luiz Benko

Revisor:
Prof. Dr. Valter Fernandes Avelino

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

1/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
Aula 1 FPGA + ISE + VHDL Projeto de Sistemas Digitais utilizando FPGA e
implementao de Rede de Petri Segura em VHDL Equaes de estado

Sumrio
1
2

3
4
5
6
7

Objetivo ............................................................................................................................... 3
Projeto de Sistemas Digitais utilizando FPGAs com o auxlio da ferramenta de
desenvolvimento ISE da Xilinx (Verso 9.2)...................................................................... 3
2.1 Introduo .................................................................................................................... 3
2.2 Criao de um Projeto ................................................................................................. 4
2.2.1 Criar um novo modelo de Entidade de Projeto (Design Entity) no ISE ............... 4
2.3 Descrio do Projeto em VHDL ................................................................................ 13
2.4 Navegao pela plataforma de trabalho ..................................................................... 14
2.4.1 Verificando erros na opo Syntesis/Implementation ........................................ 16
2.4.2 Sntese do Projeto em VHDL ............................................................................. 18
2.4.3 RTL Viewer ........................................................................................................ 19
2.5 Simulao Comportamental do Projeto em VHDL ................................................... 21
2.5.1
Configurao do arquivo de simulao .............................................................. 21
2.5.2 Elaborao do testbench waveform (formas de onda de teste) .......................... 26
2.6 Implementao do Projeto em VHDL ....................................................................... 29
2.6.1 Atribuio de Pinos (pin-out) ............................................................................. 29
2.6.2 Implementao do projeto .................................................................................. 31
2.6.3 Simulao de Timing Post-Route Simulation .......................................... 32
Programao do FPGA (Download) .............................................................................. 33
ANEXO A Janela Principal do Project navigator....................................................... 39
ANEXO B - Condio do processo Process Status ...................................................... 40
ANEXO C- Tipos de Processos. ....................................................................................... 41
ANEXO D Placa Didtica (Genesys)............................................................................. 42
7.1 Memria DD2 ............................................................................................................ 42
7.2 Memria Flash ........................................................................................................... 43
7.3 Porta Ethernet ............................................................................................................ 44
7.4 Sada de vdeo ............................................................................................................ 45
7.5 Sada de udio ............................................................................................................ 46
7.6 Porta serial ................................................................................................................. 46
7.7 Osciladores e clocks .................................................................................................. 46
7.8 GPIOS ........................................................................................................................ 47
7.9 Display alfanumrico ................................................................................................. 48
Exp 01- Atividade: Implementar e simular a Rede de Petri segura. ................................. 49

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

2/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
1 Objetivo
O objetivo desta aula a familiarizao com o ambiente de desenvolvimento integrado - ISE
(Integrated Software Environment) da Xilinx Verso 9.2 e com a Linguagem de
Descrio de Hardware VHDL, no Projeto de Sistemas Digitais utilizando FPGAs.
Alm disso, pretende-se enfatizar, por meio da observao do RTL Viewer, que a Linguagem
VHDL descreve o hardware de um Sistema Digital atravs de um arquivo em formato texto,
possibilitando a implementao do mesmo por diferentes ferramentas de desenvolvimento, no
nosso caso, utilizando o ISE da Xilinx (Verso 9.2).

2 Projeto de Sistemas Digitais utilizando FPGAs com o auxlio da


ferramenta de desenvolvimento ISE da Xilinx (Verso 9.2)
Todos os projetos criados no ISE da Xilinx (Verso 9.2) seguem a mesma metodologia, a
qual ser detalhada nesta aula introdutria. O Projeto proposto bem simples, pois o enfoque
desta aula est em estabelecer um procedimento que pode ser posto em prtica para criao de
qualquer outro projeto, ou seja, uma referncia que pode ser consultada quando se fizer
necessrio.

2.1 Introduo
Utilizando o ISE da Xilinx (Verso 9.2) e a linguagem VHDL, criar o projeto de uma rede de
Petri segura como exemplo.
Lembrando que: Uma rede de Petri dita segura a partir de uma marcao inicial M0, se e
somente se, todos os lugares da rede so demarcados com N=1, ou seja: Cada lugar da rede
pode conter apenas uma ou nenhuma marca para qualquer marcao possvel da rede.
O procedimento adotado ser semelhante para a criao de todos os projetos que sero
desenvolvidos na disciplina.
O diagrama da rede de Petri em questo est exibido seguir.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

3/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

E0
At

E1

LED_0

Bt

LED_0
LED_1

E2

Ct

(A ou B) t

Fig. 1

LED_2

E3

O Projeto: rede de petri segura.

2.2 Criao de um Projeto

2.2.1 Criar um novo modelo de Entidade de Projeto (Design Entity) no ISE


a) Abrir o Project Navigator (Start Programs Xilinx ISE 9.2 Project Navigator).
b) Na janela Tip of the Day, selecionar < OK > (Figura 2).

Figura 2

Janela Tip of the Day.

c) Selecionar File New Project.


Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1
Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

4/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
d) Na janela New Project Wizard Create New Project (Figuras 3.1 e 3.2), completar os
campos especificados abaixo, na devida ordem:
d.1) Project
Location

escolher
o
diretrio
de
trabalho

C:\Alunos\Nome_do_Aluno;
d.2) Project Name inserir o nome do projeto AULA1_RPetri_seg;
d.3) Top-Level Source Type (o tipo de arquivo que descreve o nvel mais alto de
hierarquia do projeto) o tipo de arquivo HDL (Hardware Description
Language);
d.4) Selecionar < Next >;

Observaes:

C:\ Alunos\ caminho obrigatrio.

Nomes de projetos e arquivos Seguir Padro Internacional:


devem comear com uma letra (A Z, a z) e conter apenas caracteres
alfanumricos e sublinha ( _ );
lembrar que espaos e acentuao no so permitidos;
procurar usar at dezesseis caracteres;
evitar utilizar nomes iguais para arquivos diferentes, e dar preferncia a
nomes com caracterstica mnemnica e padronizada.

d.1)
d.2)

d.3)

Sempre abre com


o caminho dado
para o ltimo
projeto criado.

d.4)

Figura 3.1 Janela New Project Wizard Create New Project


Antes de realizar o item d).

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

5/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

d.1)
d.2)

d.3)

Colocado
automaticamente
aps efetuar o item
d.2)

d.4)

Figura 3.2 Janela New Project Wizard Create New Project


Depois de realizar o item d)
e) Na janela New Project Wizard Device Properties (Figura 4), selecionar o dispositivo e
o tipo de projeto, conforme detalhado abaixo:
e.1. Product Category: ALL;
e.2. Family (famlia de FPGA): Virtex5;
e.3. Device (cdigo do componente): XC5VLX50T;
e.4. Package (encapsulamento): FF1136;
e.5. Speed Grade (velocidade da FPGA): -1;
e.6. Top-Level Source Type (tipo de descrio do mdulo mais alto da hierarquia): HDL;
e.7. Synthesis Tool (ferramenta de sntese): XST (VHDL / Verilog);
e.8. Simulator (ferramenta de simulao): ISE Simulator (VHDL / Verilog);
e.9. Preferred Language: VHDL
e.10. Desmarcar a opo: Enable Enhanced Design Summary;
e.11. Selecionar < Next >.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

6/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

Figura 4

Janela New Project Wizard Device Properties.

f) Na janela New Project Wizard Create New Source (Figura 5), selecionar < New
Source >.

Figura 5

Janela New Project Wizard Create New Source.

g) Na janela New Source Wizard Select Source Type (Figura 6), selecionar e completar
os campos especificados abaixo, na devida ordem:
g.1) No quadro a esquerda, selecionar VHDL Module;
g.2) No campo File Name inserir o nome do arquivo: RPetri_seg;
g.3) Deixar a opo Add to project selecionada;
g.4) Selecionar < Next >.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

7/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

g.2)

g.1)

g.3)
g.4)

Figura 6

Janela New Source Wizard Select Source Type.

h) Na janela New Source Wizard - Define Module (Figura 7), selecionar e completar os
campos especificados abaixo, na devida ordem:
h.1) Entity Name colocar RPetri_seg;
h.2) Architecture Name colocar PETRI_ARQ;
h.3) Esta janela possui uma tabela que nos permite definir os sinais externos de entrada e
sada (Interface com o ambiente externo) da nossa Entidade de Projeto. Basta
preencher a mesma de acordo com a figura abaixo;
h.4) Selecionar < Next >.
h.1)

h.2)

h.3)

h.4
))

Figura 7

Janela New Source Wizard Define Module.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

8/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
i) Na janela New Source Wizard - Summary (Figura 8), verificar se as especificaes do
modelo da nova entidade de projeto (design entity) esto corretas e selecionar < Finish >.

Figura 8

Janela New Source Wizard Summary.

j) Na janela New Project Wizard Create New Source (Figura 9), selecionar < Next >.

Figura 9

Janela New Project Wizard Create New Source.

k) Na janela New Project Wizard Add Existing Sources (Figura 10), selecionar < Next >.
Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1
Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

9/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

Figura 10

Janela New Project Wizard Add Exiting Sources.

l) Na janela New Project Wizard Project Summary (Figura 11), verificar se as


especificaes do modelo da nova entidade de projeto (design entity) esto corretas e
selecionar < Finish >.

Figura 11

Janela New Project Wizard Project Summary.

m) Aps esta etapa, na janela do Project Navigator, denominada Sources Sources for:
Synthesis \ Implementation (Anexo A), aparecero os nomes referentes aos arquivos do
Modelo da Descrio em VHDL da Entidade do Projeto, modelo este que gerado
automaticamente pelo ISE, mostrando a estrutura hierrquica. Ainda nesta etapa, observar
que no diretrio de trabalho (C:\Alunos\Nome_do_Aluno) ser criado um subdiretrio
10/50
Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1
Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
com o nome do projeto escolhido (C:\Alunos\Nome_do_Aluno\AULA1_Rpetri_seg),
que ir conter todos os arquivos necessrios deste projeto (observar a primeira linha da
janela do Project Navigator). Estes detalhes podem ser observados na Figura 12.

Nome do
arquivo do
Projeto

Especificaes
da FPGA

xc5vlx50t-1ff1136

Declarao
da
Identidade

Figura 12

Arquitetura da
Identidade

Entidade do
Projeto

Janela do Project Navigator e ampliao da janela Sources Sources


for: Synthesis \ Implementation.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

11/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
n) Para visualizar o Modelo da Entidade do Projeto gerado automaticamente pelo ISE, clicar
duas vezes no nome da entidade VHDL na janela Sources for: Synthesis \
Implementation:
(Figura 13).

Workspace

Script em VHDL da
Entidade do Projeto

Figura 13

Janela do Project Navigator e ampliao do Workspace.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

12/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
2.3 Descrio do Projeto em VHDL
No Modelo da Descrio em VHDL da Entidade do Projeto (Rpetri_seg), mostrado na Figura 13, o
script foi gerado automaticamente pelo ISE, est faltando apenas descrever o funcionamento do nosso
Projeto em questo, ou seja, est faltando a descrio em VHDL que cria o Projeto.
Uma rede de Petri em VHDL pode ser descrita por equaes de estado (aplicada para redes seguras) ou
por estruturas de controle IF THEN ELSIF ELSE (que pode ser aplicada tanto para redes seguras,
como no seguras). Nesse projeto utilizaremos como exemplo a aplicao por equaes de estado. A
descrio em VHDL encontra-se abaixo:
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity RPetri_seg is
Port ( RESET : in STD_LOGIC;
CLOCK : in STD_LOGIC;
A : in STD_LOGIC;
B : in STD_LOGIC;
C : in STD_LOGIC;
LED_0 : out STD_LOGIC;
LED_1 : out STD_LOGIC;
LED_2 : out STD_LOGIC);
end RPetri_seg;
architecture PETRI_ARQ of RPetri_seg is
SIGNAL E: std_logic_vector (3 downto 0);
begin
process (CLOCK,RESET)
begin
if RESET = '1' then E <= "0001"; -- marcao inicial
elsif CLOCK'EVENT AND CLOCK = '1' THEN
E(0) <= (E(0) AND NOT A) OR (E(2) AND (A OR B)) OR E(3);
E(1) <= (E(0) AND A) OR (E(1) AND NOT B AND NOT C);
E(2) <= (E(1) AND B) OR (E(2) AND NOT (A OR B));
E(3) <= (E(1) AND C);
end if;
end process;
LED_0 <= E(1) OR E(2);
LED_1 <= E(2);
LED_2 <= E(3);
end PETRI_ARQ;
Embora voc possa copi-lo e col-lo, no o faa. Procure digitar o programa para se familiarizar com
a descrio em VHDL. Isso ser muito til durante a execuo dos projetos.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

13/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
Salvar o arquivo (File Save As ...): salva apenas o arquivo; ou salvar o Projeto (File Save Project
As ...): salva todo o Projeto.
Tambm, possvel usar os cones de atalho, conforme mostra a Figura 14. Ainda nesta figura,
observar que, enquanto o arquivo ou Projeto no for salvo, um * fica sobrescrito na extenso do
arquivo como lembrete.

Salvar o
Projeto

Salvar o
Arquivo

Figura 14

*
Significa
Arquivo no salvo

Janela do Project Navigator Workspace aps incluso da descrio


em VHDL:

2.4 Navegao pela plataforma de trabalho


A navegao ocorre pelas janelas SOURCES e PROCESSES. Na janela SOURCES pode-se
selecionar as opes de:
Sntese/implementation para tarefas de descrio, compilao, atribuio de pinos etc.
Behavioral simulation para simulaes comportamentais
Post-route simulation para simulaes com atrasos de propagao temporal. Deve ser
realizado aps atribuio dos pinos do FPGA.

Figura 15

Janela Processes para seleo de Sources.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

14/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
Cada opo de tipo de Source acompanhada por uma seleo de tarefas possveis na janela
PROCESSES, conforme exemplificado nas Figuras 16 e 17.

Figura 16

Figura 17

Janela Processes para a opo: Synthesis/Implementation

Janela Processes para a opo: Behavioral Simulation

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

15/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
2.4.1 Verificando erros na opo Syntesis/Implementation
a) Depois de descrever o Projeto, possvel fazer a simulao comportamental do mesmo, aps a
Sntese (prxima etapa do desenvolvimento do Projeto). Nesta simulao possvel verificar o
comportamento do sistema e tambm comprovar se a partio do projeto efetuada no incio foi
eficiente. (No vamos fazer esta simulao neste momento).

b) Antes de continuar, seria bom ler os Anexos A, B e C.


c) Aps digitar e salvar a descrio do projeto em VHDL uma boa prtica, verificar se existem
erros de Sintaxe, e caso existam, corrigi-los antes da prxima etapa do desenvolvimento do Projeto
(Sntese do Projeto). Para isto, basta seguir os passos descritos abaixo, na devida ordem (Figura
18 at Figura 20):

c.1) Na janela do Project Navigator, denominada Sources Sources for: Synthesis \


Implementation, selecionar o cone que faz referencia a descrio, em VHDL, da
Entidade do Projeto.
c.2) Na janela do Project Navigator, denominada Processes (Anexo A), abrir o processo
denominado Synthesize XST e clicar duas vezes no sub-processo chamado de Check
Syntax (Figuras 18 e 19);
c.3) Se no existirem erros de Sintaxe, na janela do Project Navigator (Figura 18):

c.3.1) Process Synthesize XST ser mostrado

c.3.2) Na janela Transcript (Anexo A) guia Console aparecer a frase:


Process "Check Syntax" completed successfully.

c.1)
c.2)

c.3.1)

Figura 18

c.3.2)
O sub-processo
Check Syntax
foi concludo
com sucesso

Janela do Project Navigator Item c) sub-itens:

c.1) selecionar o cone que faz referencia a descrio, em VHDL, da Entidade do Projeto;
c.2) Project Navigator Process, abrir o processo denominado Synthesize XST sub-item Check
Syntax.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

16/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
d) Caso haja erros de sintaxe, a indicao Check Syntax apresentar o seguinte aspecto:

c.2)

Figura 19

Janela do Project Navigator Item c sub-item: c.2) com Erro.

e) Para auxilio a correo, clique na aba inferior ERRORS e um descritivo do tipo do erro
apresentado, bem como a sua localizao no cdigo VHDL (Figura 20). Essa localizao no
muito precisa e talvez no aponte para o local exato, mas nas proximidades. Comece pelo primeiro
erro assinalado, pois frequentemente os demais erros so consequncia do primeiro.

Local do erro
Descrio
dos erros

Figura 20

Janela do Project Navigator com descrio de Erros

f) Para corrigir, basta digitar o comando VHDL correto, salvar o cdigo VHDL e repetir os passos
descritos no item c para realizao de nova verificao da sintaxe do cdigo:

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

17/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
2.4.2 Sntese do Projeto em VHDL
Uma vez que os erros de sintaxe foram corrigidos, proceder com o prximo passo que a Sntese do
Projeto.
A Sntese do Projeto consiste na gerao de uma lista de ligaes (netlist) dos vrios elementos
lgicos responsveis pelas funes de cada bloco do projeto. Estes elementos lgicos so os blocos
bsicos presentes no FPGA escolhido. Para sintetizar o projeto atravs do ISE, basta:
a) Na janela do Project Navigator, denominada Sources Sources for: Synthesis \
Implementation, selecionar o cone que faz referencia a descrio, em VHDL, da Entidade do
Projeto;
b) Na janela do Project Navigator, denominada Processes, clicar duas vezes no processo
denominado Synthesize XST.
b.1) O cone prximo ao processo Synthesize XST, fica no estado Running
(Executando), at o final do processo. Na janela Transcript, aparece Started:
Sinthesize.
b.2) O cone prximo ao processo Synthesize XST, fica no estado Up-to-date
(Atualizado)
, quando na janela Transcript, aparece Process "Synthesize"
completed successfully.
c) Depois da sntese possvel realizar a simulao do Projeto, mas ainda sem informao relativa
aos tempos de propagao reais de cada sinal (Timing) contido no mesmo (Simulao
Comportamental). Tambm, pode-se visualizar o RTL (Register Transfer Level) Viewer ( o que
ser feito nas prximas etapas).

Figura 21

Janela do Project Navigator Item b):

b.2) O processo de Sntese do Projeto foi executado e concludo com sucesso.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

18/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

2.4.3 RTL Viewer


O RTL Viewer permite visualizar a lista de ligaes (netlist) no nvel RTL (Register Transfer Level)
como um esquema eltrico. O circuito gerado no nvel RTL, emprega primitivas disponveis na
ferramenta (ISE) como comparadores, somadores, registradores e portas lgicas. O circuito gerado
neste nvel no est associado a nenhuma tecnologia de fabricao particular, e no est,
necessariamente otimizado. Para visualizar o esquema eltrico do Projeto descrito nas etapas
anteriores em VHDL, basta:
a) Na janela do Project Navigator, denominada Sources Sources for: Synthesis \
Implementation, selecionar o cone que faz referencia a descrio, em VHDL, da Entidade do
Projeto. Veja a figura anterior (Fig. 21)
b) Na janela do Project Navigator, denominada Process, abrir o processo denominado
Synthesize XST e clicar duas vezes no sub-processo chamado de View RTL Schematic. Na
janela Transcript, aparece
Started : "Launching RTL Schematic Viewer for
RPetri_seg.ngr".
c) Aps esta etapa, aparecer um bloco lgico referente ao Projeto na janela Workspace (Figura
22). Explore este esquema eltrico do circuito com o mouse Clique duas vezes no boto
esquerdo do mouse sobre este bloco lgico e aparecer o esquema eltrico do circuito, no nvel
RTL, do cdigo VHDL que foi descrito e sintetizado nas etapas anteriores. Esta operao permite
visualizar a representao, em nvel de Portas Lgicas, da descrio em VHDL da Entidade do
Projeto. Dessa forma, fica claro que o VHDL uma linguagem que descreve o hardware do
Projeto.
Observao: Para mudanas na cor de fundo das telas (entre escuro e claro) utilizar a aba do menu
principal: Edit/Preferences. Selecionar a categoria de janela e a mudana do esquema de cores, por
exemplo: RTL/Technology Viewers / Color Scheme onde possvel selecionar:: Dark Backgroud
ou Light Background Scheme.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

19/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

Clicar duas
vezes no boto
esquerdo do
mouse

b)

Figura 22 Janela do Project Navigator Workspace Bloco Lgico da Entidade


do Projeto.

Figura 23 Janela do Project Navigator Workspace Detalhamento do Bloco


Lgico da Entidade do Projeto Clicar duas vezes sobre o Bloco Lgico com o boto
esquerdo do mouse.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

20/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
2.5 Simulao Comportamental do Projeto em VHDL

2.5.1 Configurao do arquivo de simulao


A Simulao Comportamental no leva em conta os aspectos de implementao do Projeto, ou seja,
no considera informao relativa aos tempos de propagao reais de cada sinal (Timing) contido no
mesmo.
Para a Simulao Comportamental o ISE utiliza a Ferramenta Simulate Behavioral Model e no
precisa implementar o sistema totalmente, apenas sintetizar e simular o comportamento do mesmo, que
foi obtido da descrio em VHDL. A simulao comportamental realizada da seguinte maneira:
a) Na janela do Project Navigator, denominada Sources Sources for: Synthesis \
Implementation, selecionar o cone que faz referencia a descrio, em VHDL, da entidade do
Projeto.

xc5vlx50t-1ff1136

a)

b) Na Barra de Menu selecionar Project New Source (Figura 24).


c) Na janela New Source Wizard Select Source Type, selecionar o tipo Test Bench WaveForm,
no campo File Name colocar, como nome do arquivo, TBC_RPetri_seg, deixar a opo Add
to project selecionada, e clicar em <Next> (Figura 25). Qualquer nome pode ser atribudo ao
arquivo Test Bench no formato de forma de onda (respeitando a conveno para nomes de
arquivos j citada anteriormente); contudo, recomenda-se, por normas internacionais, que o nome
deste arquivo esteja ligado pelo cdigo VHDL que se deseja testar, precedido da indicao TBC.
Assim, nossa opo foi TBC_RPetri_seg.
d) Na janela New Source Wizard Associate Source, clicar em < Next > (Figura 26).
e) Na janela New Source Wizard Summary, clicar em < Finish > (Figura 27).
f) Na janela Initial Timing and Clock Wizard Initialize Timing (Figura 28):
f.1) No campo Clock Information marcar a opo Add Asynchronous Signal Support para
que se tenha um controle efetivo dos sinais envolvidos;
f.2) No campo Initial Length of Test Bench, ajustar o intervalo de tempo para realizao da
simulao, de modo a cobrir todas as possveis combinaes de entrada de forma clara.
Neste caso, manter o valor em 3000 ns;
f.3) clicar em < Finish > (Figura 28).

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

21/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
b)

a)

Figura 24

Criao de um novo arquivo fonte.

c)

Figura 25

Seleo do tipo do novo arquivo fonte: tipo Test Bench no formato de


Forma de Onda.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

22/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

d)

Figura 26

Associar o novo arquivo fonte com um arquivo j existente.

e)

Figura 27

Resumo da nova estrutura de arquivos fonte.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

23/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

f.2)

f.1)

f.3)

Figura 28

Definio de parmetros para o Test Bench no formato de forma de onda.

g) Na prxima tela escolha o sinal que representa o clock ou os clocks se houver mais de um
sinal de clock;

Figura 29

Definio dos sinais que devem receber o sinal de clock na forma de onda
para simulao
Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1
Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

24/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
h) Na prxima tela selecione os sinais assncronos que faro parte da simulao, e clique <ADD>.
Em seguida <NEXT>

Figura 30

i)

Definio dos sinais de entrada e sada que devem fazer parte das formas
de onda simuladas

Na ltima tela de configurao, pode-se escolher as caractersticas do sinal de clock: perodo


alto, perodo baixo, atuar na borda de subida, descida ou ambas as bordas, bem como o seu
perodo e atrasos (no caso de existir mais de 1 sinal de clock). Clique em < Finish >.

Figura 31

Definio das caractersticas do sinal declock nas formas de onda


simuladas
j) Salvar o arquivo (File Save ou cone de atalho).
Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1
Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

25/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
2.5.2 Elaborao do testbench waveform (formas de onda de teste)
O procedimento a seguir gera os sinais de simulao para exercitar o componente lgico descrito em
VHDL.
a) Na janela do Project Navigator, denominada Sources selecione Sources for: Behavioral
Simulation, e selecionar o arquivo TBC_RPetri_seg.tbw. Clicar duas vezes nesse arquivo
e verificar a ocorrncia de link com vhdl: UUT-Rpetri_seg-Petri_Arq(Rpetri_seg_vhd).
UUT significa Unity Under Test (Figura 32).
b) Com o auxlio do mouse, modificar os valores das formas de onda das entradas (clicar na
forma de onda para mudar seu estado lgico), de tal forma que se obtenha nas sadas, a
progresso total da Rede de Petri segura que se deseja simular (Figura 32).
c) Salvar o arquivo (File Save ou cone de atalho).
d) Na janela do Project Navigator, denominada Process, abrir o processo denominado
Xilinx ISE Simulator. A tela do Project Navigator apresentada ser (Figura 32).

Figura 32

Edio das formas de onda de teste (Test Bench Waveform) para a


simulao funcional

e) Clicar duas vezes no sub-processo chamado de Simulate Behavioral Model.


f) O resultado do Test Bench apresentado na abaSimulation e apresenta as formas de onda
da simulao comportamental das sadas do projeto em uma nova tela (Figura 33).
g) Para se observar o comportamento dos sinais internos, no caso os lugares E(0), E(1), E(2) e
E(3), navegue na tela pela aba Sim hierarchy-TBC_RPetri_seg abrindo a opo UUT
RPetri_seg PETRI ARQ e com o mouse, clique e arraste o sinal e[3:0] para o workspace
do resultado de test bench. Feche esse arquivo e execute o test bench novamente, que esse
sinal ser atualizado. Outra opo clicar no cone na barra superior de ferramentas, clicar
duas vezes com o boto esquerdo do mouse na ferramenta
clicar duas vezes com o boto esquerdo do mouse na ferramenta

Restart simulation. E aps


Run All.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

26/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
h) De volta no workspace da forma de onda resultado, posicione o mouse sobre o sinal e[3:0]
e clique com o boto direito. Escolha a opo Binary que a marcao da rede ser exibida
na tela de resultado do test bench. (Figura 34).

resultado

Figura 33

Tela com o resultado da simulao do Test Bench

mouse

arraste

Figura 34

marcao

Tela com o resultado da simulao do Test Bench aps arrastar sinal


interno E(3:0) e executada novamente a simulao

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

27/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
i) Para alterar o tempo total de simulao: na janela do Project Navigator, denominada
Process, abrir o processo denominado Xilinx ISE Simulator (Figura 32). Clicar com o
boto direito do mouse no sub-processo Simulate Behavioral Model e selecionar a opo
Properties e alterar o valor da opo Simulation Run Time para o valor desejado (por
exemplo: 3.000 ns), selecionar OK (Figura 35). Executar novamente a simulao (Run)
para obteno dos resultados.

Figura 35

Alterao do tempo de simulao do Test Bench

j) Para mudanas na cor de fundo da janela de simulao (entre escuro e claro) utilizar a aba do
menu principal: Edit/Preferences. Selecionar a categoria de janela e a mudana do esquema
de cores, neste caso: ISE Simulator/Simulation Waveform Colors onde possvel
selecionar: Classic Simulation. Executar novamente a simulao (Run).
k) Vrios
arquivos
Test
Bench
no
formato
de
Forma
de
Onda
(TBC_Nome_do_Arquivo_VHDL.tbw) podem ser criados para simular, por partes, todas as
situaes previstas para o Projeto. Contudo, deve ser enfatizado que o arquivo que fica
guardado, na Pasta do Projeto, o de excitao das Formas de Onda, no o resultado da
Simulao. Entretanto isto no se constitui um problema, pois para obter novamente a
simulao desejada, basta seguir os passos descritos acima, lembrando de selecionar o
respectivo arquivo Test Bench no formato de forma de onda.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

28/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
2.6 Implementao do Projeto em VHDL
A prxima etapa a implementao do Projeto no FPGA. Esta fase composta por trs passos:
I.
II.

III.

Translate: combina os vrios arquivos gerados durante a sntese em um nico arquivo de


ligaes (netlist);
Map: mapeia o arquivo gerado pelo Translate nos componentes fsicos presentes no FPGA;
Place & Route: posiciona os componentes no FPGA, roteia os sinais de interligao e gera os
arquivos com relatrios e base de dados utilizada na simulao.

2.6.1 Atribuio de Pinos (pin-out)


A implementao do Projeto s tem sentido se a definio dos pinos de sada e entrada do FPGA
forem definidos. A definio desses pinos pin-out tambm necessria para a simulao PostRoute.
Assim preciso atribuir cada um dos sinais do projeto a pinos especficos do chip. No ISE esta
atribuio pode ser feita atravs de um arquivo do tipo texto, com extenso UCF (User Constraint
File). Para editar este arquivo necessrio primeiro configurar a janela: Sources para
Synthesis/implmentation e navegar pelo menu User Constraints e abrir a opo Edit
Constrainsts. (Figura 36)

xc5v1x50t-1ff1136

Figura 36

Seleo do arquivo de restries de projeto: User Constraints

Caso aparea a mensagem abaixo, explicando que ser criado um arquivo UCF e acrescentado
hierarquia de projeto, basta clicar em <SIM>.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

29/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

Um editor de textos se abre para atribuio de pinos do FPGA aos sinais de entrada e sada. A sintaxe
utilizada no arquivo UCF para atribuir um sinal a um pino do chip a seguinte:
NET "nome_do_sinal" LOC = "coordenada_do_pino" ;
Por exemplo, para atribuir ao sinal LED_0 ao pino K12 do chip, utiliza-se a seguinte
linha:
NET "LED_0" LOC = "K12";
O anexo A possui a numerao completa para atribuio de pinos na placa didtica Xilinx Genesys.
Exemplo arquivo de pinagem para o projeto: (Figura 37)

Figura 37

Edio do arquivo com a atribuio de pinos ao projeto

# indica comentrio

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

30/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
2.6.2 Implementao do projeto
a) Aps definio do arquivo de configurao de pinos (pinagem). Salvar e passar para a
implementao do projeto.
b) Na janela do Project Navigator, denominada Processes, clicar duas vezes no processo
chamado de Implement Design.
b.1) O cone prximo ao processo Implement Design, fica no estado Running
(Executando), at o final do processo. Na janela Transcript, aparece Started:
Translate.
b.2) O cone prximo ao processo Implement Design, fica no estado Up-to-date
(Atualizado)
, quando na janela Transcript, aparece Process "Gerate Post-Place
& Route Static Timing completed successfully.
c) Na janela do Project Navigator Process Implement Design detalhando a estrutura
hierrquica, mostrado os trs passos que integram a etapa de implementao do Projeto no
FPGA: Translate, Map e Place & Route (Figura 38).

xc5v1x50t-1ff1136

b.1)

Figura 38 Etapas da Implementao do Projeto.


d) Aps esta etapa, pode-se realizar a simulao do Sistema denominada de Simulao de Timing
ou Pos-Route Simulation.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

31/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
2.6.3 Simulao de Timing Post-Route Simulation
Aps a etapa de Implementao do Projeto, pode-se realizar a simulao do mesmo, denominada de
Simulao de Timing ou Post-Route Simulation. Nesta simulao, visualizam-se os tempos de
propagao reais de cada sinal contido no projeto implementado.
a) Criar um arquivo de Test Bench Waveform conforme procedimentos exibidos no item 2.5
referente simulao funcional. Colocar como nome do arquivo TBT_Rpetri_seg e aps criar as
formas de onda de excitao, salve. Pode-se executar o mesmo arquivo de Test Bench funcional,
caso haja preferncia. A denominao TBC_xxxx ou TBT_xxxx no necessria, apenas torna o
projeto mais facilmente rastrevel quando diversas entidades compem o projeto, e ajuda a
identificar o tipo de Test Bench realizado.
b) Na janela do Project Navigator, denominada Sources Sources for:, selecionar PostRoute Simulation (Figura 39).
c) Salvar o arquivo (File Save ou cone de atalho). O arquivo Test Bench no formato de
Forma de Onda (obtido com o Test Bench WaveForm) tem extenso tbw.
d) Agora, para realizar a Post-Route Simulation do Projeto, basta proceder da mesma forma que
para a simulao comportamental do item 2.5: (Figura 39).

Selecione

Selecione

Execute

Figura 39

Etapas da simulao temporizada (Post route simulation).

A simulao Post-Route permite visualizar os atrasos de propagao de sinais no FPGA.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

32/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
3 Programao do FPGA (Download)
Interface de configurao: JTAG (Joint Test Action Group)
JTAG
Interface padronizada para testar (boundary scan) e configurar dispositivos digitais, de
diferentes fabricantes segundo padro IEEE 1149.1. Nessa aplicao, ser utilizada apenas
para configurar o FPGA atravs do software de configurao Digilent Adept.
Os seguintes 4 sinais JTAG so popularmente utilizados para configurar CPLDs e FPGAs
em cascata:
TDI
(test data In)
TDO (test data out)
TCK (test clock)
TMS (test mode select)
Conexo padro para configurar dispostivos (Devices) em cascata via JTAG

Em nossa conexo, h somente um FPGA e uma PROM de configurao, sendo que


somente vamos configurar o FPGA, para que a programao seja apagada ao desligarmos
a alimentao da placa.
Assim, vamos gerar somente o arquivo de configurao do FPGA
Formato do arquivo: XXXXX.bit

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

33/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
Placa Xilinx Genesys
Frontal

Procedimento:
Conecte o cabo de alimentao na placa (Power Jack)
Conecte o cabo USB PC e no conector Digilent Adept USB Port detalhe

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

34/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

No menu Iniciar clique em todos os programas > Digilent > Adept. Voc deve ver uma tela
semelhante a esta:

Selecione a Genesys no campo Connect no canto superior direito conforme a figura abaixo.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

35/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

Aps isso voc deve ver uma tela semelhante a seguinte figura:

Clique em Browse e selecione o arquibo .bit gerado pela Xilinx ISE, geralmente contido na
pasta raiz do projeto criado pela Xilinx ISE.
Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1
Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

36/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
Com o arquivo selecionado clique em Program.

Uma barra de progresso deve aparece no canto inferior, aguarde at a concluso do processo.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

37/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
Ao fim do processo verifique se a programao foi bem sucedida atravs da mensagem
Programming Successful.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

38/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
4 ANEXO A Janela Principal do Project navigator
A figura abaixo mostra a janela principal do Project Navigator, a qual permite gerenciar o projeto,
desde a criao do projeto at a gravao no FPGA escolhido.

Toolbar 1
Sources window 2
Processes window 3
Workspace 4
Transcript window 5

Figura A.1

Janela principal do Project Navigator.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

39/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
5 ANEXO B - Condio do processo Process Status
Enquanto estamos elaborando nosso projeto, algumas mudanas podem ser necessrias, de forma que,
alguns ou todos os processos tenham que ser executados novamente. Por exemplo, quando se edita um
arquivo fonte, isto pode exigir que o processo de Sntese e todos os processos subsequentes sejam
executados novamente. O Project Navigator mantm informao das mudanas realizadas e mostra
a condio de cada processo com cones de condio (status icons), os quais so descritos a seguir.

Running

Este cone mostra que o processo est em execuo.

Up-to-date
Este cone mostra que o processo foi executado e concludo com sucesso, sem erros ou
advertncias, e no h necessidade de execut-lo novamente, ou seja, ele est atualizado.
Se este cone estiver junto a um processo do tipo Reports, o relatrio est atualizado;
contudo, tarefas associadas podem conter erros ou advertncias. Se isto ocorrer, pode-se
ler o relatrio para determinar a causa dos erros ou advertncias.

Warnings reported
Este cone mostra que o processo foi executado e concludo com sucesso, mas que foram
encontradas advertncias.

Errors reported
Este cone mostra que o processo foi executado, mas que um ou mais erros foram
encontrados.

Out-of-Date
Este cone mostra que foram realizadas mudanas no projeto, as quais exigem que o
processo seja executado novamente, ou seja, ele est desatualizado.
Se este cone estiver junto a um processo do tipo Reports, pode-se executar novamente o
processo do tipo Tasks associado para criar uma verso atualizada do Reports.

No icon
Se no houver nenhum cone, isto mostra que o processo nunca foi executado.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

40/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
6 ANEXO C- Tipos de Processos.
Os seguintes tipos de processos esto disponveis no ISE da Xilinx (Verso 9.2):

Tasks
Quando um processo do tipo Task executado, o ISE executa no batch mode, ou seja,
o ISE processa o arquivo fonte, mas no abre qualquer ferramenta no Workspace. A
sada do processo aparece na janela Transcript.

Reports
A Maior parte dos Tasks incluem sub-processos, os quais geram um Summary ou
Status Report, por exemplo, o Synthesis Report ou Map Report.
Quando um processo do tipo Report executado, o relatrio aparece na janela
Workspace.

Tools
Quando um processo do tipo Tools executado. A respectiva ferramenta inicia ou
aparece na janela Workspace onde se pode visualizar ou modificar o projeto do arquivo
fonte.
Os cones para os processos do tipo Tools variam dependendo da ferramenta. Por
exemplo, o cone mostrado acima se refere ao Timing Analyzer.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

41/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
7

ANEXO D Placa Didtica (Genesys)

Este manual apresenta um resumo das caractersticas da placa didtica da Xilinx. Para se obter o
manual original, basta acessar o link:
https://reference.digilentinc.com/_media/genesys:genesys_rm.pdf

A figura a seguir ilustra os mdulos disponveis na placa Genesys:

A seguir um pequeno resumo dos recursos disponveis na placa de desenvolvimento e a


pinagem em que eles se encontram disponveis no FPGA.

7.1 Memria DD2


Um mdulo de memria DDR2 est disponvel na placa para uso, este mdulo possui
capacidade de 256MB e opera em 400MHz, outros mdulos podem ser substitudos na placa
conforme a necessidade do projeto. A seguir a pinagem do modulo DDR2:

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

42/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

7.2 Memria Flash


Uma memria Flash paralela est disponvel na placa, ela possui 256Mb, organizados em
16bit por 16M de endereos. Esta memria prov ao FPGA a capacidade de armazenamento
no voltil, sendo 16Mb em uso para as configuraes do FPGA e 240Mb disponveis ao
usurio.
Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1
Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

43/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

7.3 Porta Ethernet


Uma porta Ethernet est disponvel na placa, a placa possui PHY j disponvel e suporta
velocidades de 10/100/1000 Mb/s. A seguir a sua pinagem:

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

44/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
Porta USB Host
Uma porta USB Host est disponvel a aplicao, a seguir a sua pinagem:

7.4 Sada de vdeo


Uma sada de vdeo HDMI est disponvel na placa, ela suporta resoluo de 1600x1200 /
24bit. A seguir a sua pinagem:

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

45/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

7.5 Sada de udio


Uma sada de udio AC97 com codec est disponvel na placa. A seguir a sua pinagem:

7.6 Porta serial


A placa possui duas portas seriais RS232, uma conectada ao conector DB-9 e outra conectada
ao header J4.

7.7 Osciladores e clocks


A placa dispe de um sistema gerador de clock que fornece 25MHz para a comunicao de
Ethernet; 24,576MHz para o sistema de udio; 12 MHz para as portas USB, e ainda fornece
duas sadas de clock diferencias conectadas ao FPGA sendo uma de 200MHz e outra de
100MHz. Um oscilador de 100MHz conectado diretamente ao FPGA e h tambm a opo
de um oscilador DIP para fornecer outras opes de clock. A seguir a pinagem do sistema:

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

46/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

7.8 GPIOS
A placa possui um conjunto de 8 chaves deslizantes, 8 Leds, 1 joystick e 3 push-buttons. A
seguir a pinagem dessas conexes:

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

47/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS

7.9 Display alfanumrico


Um display alfanumrico est disponvel na placa. A seguir a pinagem do display:

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

48/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
8 Exp 01- Atividade: Implementar e simular a Rede de Petri segura.
Como o objetivo dessa aula familiarizar-se com a ferramenta de desenvolvimento ISE Xilinx 9.2 e a
plataforma composta pelo Kit Placa Didtica (Genesys) Xilinx, a qual contm um FPGA Virtex5, a
codificao para a rede de Petri segura do diagrama fornecida. Embora o copy-paste do cdigo possa
ser feito, no o faa. Procure copiar o cdigo e corrigir os eventuais erros para familiarizar-se com os
recursos da ferramenta. Isso ser muito til mais tarde.
Procedimento:
Seguindo as instrues contidas nesse manual, criar um projeto para implementar a Rede de Petri
segura, cujo grafo fornecido na figura abaixo, em VHDL por equaes de estado.

E0
At

E1

LED_0

Bt

E2

LED_0
LED_1
(A ou B) t

Ct

LED_2

E3

Os lugares so representados pelos sinais E0, E1, E2 e E3 que em VHDL sero implementados com
um array de dados E[3:0]. Assim a marcao inicial E[0001].
As transies sero as entradas lgicas A, B e C. A varivel t representa o clock que rege a
temporizao de evoluo da rede, j que se trata de um sistema sncrono com o clock.
As sadas lgicas, ativadas pelos lugares E[3:0] sero representadas pelo LEDs: LED_0, LED_1 e
LED_2.
Todas as entradas e sadas lgicas devem ser codificadas como STD_LOGIC em VHDL, j que essa
atribuio representa os pinos do FPGA que podem assumir mais valores do que apenas 0 ou 1.
Se for utilizado BIT, embora o VHDL esteja correto, o compilador Xilinx apresentar erros.
Para as equaes de estado, considera-se cada lugar (E(i)) da rede, verificando-se quando ele ir ser
marcado em funo das possveis marcaes anteriores que levam a marca ao lugar considerado, ou
que mantm a marca no lugar considerado.

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

49/50

CURSO DE ENGENHARIA DE AUTOMAO E CONTROLE


EL7710
LABORATRIO DE SISTEMAS A EVENTOS DISCRETOS
Descrio em VHDL:
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity RPetri_seg is
Port ( A : in STD_LOGIC;
B : in STD_LOGIC;
C : in STD_LOGIC;
Led_0 : out STD_LOGIC;
Led_1 : out STD_LOGIC;
Led_2 : out STD_LOGIC;
CLOCK: in STD_LOGIC;
RESET : in STD_LOGIC);
end RPetri_seg;
architecture PETRI_ARQ of RPetri_seg is
SIGNAL E: std_logic_vector (3 downto 0);
begin
process (CLOCK,RESET)
begin
if RESET = '1' then E <= "0001";
-- marcao inicial
elsif CLOCK'EVENT AND CLOCK = '1' THEN
E(0) <= (E(0) AND NOT A) OR (E(2) AND (A OR B)) OR E(3);
E(1) <= (E(0) AND A) OR (E(1) AND NOT B AND NOT C);
E(2) <= (E(1) AND B) OR (E(2) AND NOT (A OR B));
E(3) <= (E(1) AND C);
end if;
end process;
LED_0 <= E(1) OR E(2);
LED_1 <= E(2);
LED_2 <= E(3);
end PETRI_ARQ;
Relatrio:
1. O relatrio deve ser postado no Moodle e pode ser editado em Microsoft Word, mas deve ser
apresentado no Moodle no formato PDF. Deve conter o cdigo da matria, a turma, o ttulo
da atividade e o nome e numero de matrcula do aluno.
2. Contedo
a. Apresentar, em figura adicionada no relatrio, o diagrama da rede de Petri e sua
marcao inicial;
b. Apresentar em figura adicionada no relatrio o resultado de simulao da rede de
Petri cobrindo todas as marcaes da rede.
c. Apresentar, em figura adicionada no relatrio, o esquema do RTL view da rede, na
sua forma mais detalhada.
Para adicionar a figura, no relatrio, fazer um PRINT SCREEN da tela do Xilinx que apresenta o
resultado de simulao (no enviar a tela de test bench formato tbw), em seguida abrir essa figura no
PAINT BRUSH e recortar as formas de onda ou no caso do RTL View, o esquema. Salve essa figura
no diretrio C:\Alunos\XX em formato jpg. Adicione a figura no relatrio em Word utilizando a opo
INSERIR IMAGEM do ARQUIVO ou INSERT-> PICTURE do Word. (A figura ocupar menos
espao).

Apostila de Laboratrio de Sistemas a Eventos Discretos Aula 1


Prof Dr Silvana Gasparotto de Souza - Prof. MSc. Pedro L. Benko

50/50