Académique Documents
Professionnel Documents
Culture Documents
Profa.Luiza Mourelle
Profa.Luiza Mourelle
Profa.Luiza Mourelle
Profa.Luiza Mourelle
Profa.Luiza Mourelle
Redes de Petri
So uma ferramenta para a modelagem e projeto de sistemas,
utilizando uma representao matemtica do sistema, sendo uma
extenso das mquinas de estados finitos.
A anlise da rede de Petri permite avaliar a estrutura e o
comportamento dinmico do sistema modelado. O resultado desta
avaliao pode levar a melhorias ou mudanas no sistema.
Vamos considerar, inicialmente, o modelo de mquinas de estados
finitos, representado pelo seguinte diagrama:
A passagem de um estado para outro,
representada pelos arcos, determinada
pela ocorrncia de certos eventos.
estado
arco
3
Profa.Luiza Mourelle
3
Controle de Processos por Computador
3
Profa.Luiza Mourelle
um conjunto de sadas O : T P.
C = (P, T, I, O)
Profa.Luiza Mourelle
Profa.Luiza Mourelle
p1
p5
t4
p4
t1
t2
p3
t3
Profa.Luiza Mourelle
Profa.Luiza Mourelle
p1
p5
t4
p4
t1
t2
p3
t3
Profa.Luiza Mourelle
Profa.Luiza Mourelle
2
3
aps o disparo
3
2
2
Profa.Luiza Mourelle
O estado de uma rede de Petri definido por sua marcao. Dada uma
rede de Petri C = {P, T, I, O} e uma marcao inicial 0, pode-se
executar a rede de Petri pelo disparo sucessivo de transies.
Duas seqncias resultam da execuo de uma rede de Petri: a seqncia
de marcaes (
0, 1, 2, ...) e a seqncia de transies (tj0, tj1, tj2, ...).
Para a rede de Petri abaixo e a marcao inicial 0 = (1,0,0), duas
marcaes so imediatamente alcanveis: (0,1,0) e (1,0,1). Da primeira
nenhuma marcao alcanvel. Da segunda pode-se chegar a (0,1,1) e
(1,0,2).
p3
t1
p1
t2
Profa.Luiza Mourelle
p2
Profa.Luiza Mourelle
Profa.Luiza Mourelle
Exemplo: Considere uma mquina que espera at que uma ordem surja
e, ento, prepara o pedido e o despacha.
As condies para o sistema so:
a - A mquina est esperando;
b - Uma ordem chega e est esperando ser atendida;
c - A mquina est executando a ordem;
d - A ordem completada.
Os eventos seriam:
1 - Um ordem chega;
2 - A mquina comea a executar a ordem;
3 - A mquina termina de executar a ordem;
4 - A ordem despachada.
Controle de Processos por Computador
Profa.Luiza Mourelle
pr-condies
ps-condies
1
2
3
4
nenhuma
a, b
c
d
b
c
d, a
nenhuma
Profa.Luiza Mourelle
uma ordem
chega
comea a
executar
execuo
completada
a ordem est
completada
a ordem est
sendo executada
mquina esperando
por uma ordem
Controle de Processos por Computador
Profa.Luiza Mourelle
a ordem
despachada
Profa.Luiza Mourelle
pr-condies
ps-condies
1
2
3
4
nenhuma
a, b
c
d
a
c
d, b
nenhuma
um programa
espera para ser
executado
um programa
posto na fila de
entrada
um programa
comea a
ser executado
um programa est
sendo executado
Profa.Luiza Mourelle
um programa
despachado
Profa.Luiza Mourelle
Profa.Luiza Mourelle
tj
tk
Profa.Luiza Mourelle
pi
tj
tk
Profa.Luiza Mourelle
Modelagem de Hardware
O hardware pode ser dividido em vrios nveis e as redes de Petri
podem modelar cada um desses nveis:
Profa.Luiza Mourelle
1/1
q1
0/1
q2
R/R
R/R
1/0
Profa.Luiza Mourelle
1/1
0/0
q1
0/0
q2
1/1
R/0
R/1
Profa.Luiza Mourelle
Profa.Luiza Mourelle
1/1
0/0
R/1
1/0
q11
q22
R/0
0/1
R/1
0/1
q21
1/0
Para uma mquina em rede de Petri, a composio feita sobrepondose os lugares de sada da primeira rede com os lugares de entrada
da segunda.
Se duplicarmos as fichas de entrada, alimentando ambas as submquinas da rede de Petri, teremos uma composio paralela,
permitindo que as sub-mquinas executem simultaneamente.
Controle de Processos por Computador
Profa.Luiza Mourelle
Pipeline
Sistemas computacionais so construdos de muitos componentes e
muitos projetos tentam aumentar a capacidade computacional atravs
da execuo paralela de funes. Isto torna as redes de Petri
particularmente apropriadas para representar estes sistemas.
Um pipeline composto por um nmero de estgios, que podem estar
em execuo simultaneamente. Quando o estgio k termina, ele
passa o resultado para o estgio k+1 e olha para o estgio k-1 para
nova tarefa.
Se cada estgio leva t unidades de tempo e h n estgios, ento a
operao completa para um operando levar nt unidades de tempo.
No entanto, mantendo-se o pipeline suprido com novos operandos,
ele poder fornecer resultados razo de um a cada t unidades de
tempo.
Controle de Processos por Computador
Profa.Luiza Mourelle
comparar os expoentes;
somar as fraes;
normalizar;
Profa.Luiza Mourelle
Profa.Luiza Mourelle
unidade ocupada;
unidade livre;
unidade k-1
registrador de
sada k-1
registrador de
entrada k
unidade k
registrador de
sada k
registrador de
entrada k+1
Profa.Luiza Mourelle
Profa.Luiza Mourelle
Profa.Luiza Mourelle
Profa.Luiza Mourelle
unidade u
livre
despacha
isntruo
registrador i
livre
registrador j
livre
registrador k
livre
Profa.Luiza Mourelle
Software
A modelagem de software tem se concentrado na anlise,
especificao e descrio de programas sequenciais. Pouco tem sido
feito no que diz respeito a sistemas compostos por processos
concorrentes. dentro deste contexto que as redes de Petri se mostram
adequadas para a modelagem do software.
A representao de um sistema composto por processos concorrentes
parte da combinao de redes de Petri que representem processos
simples.
Um processo simples descrito por um programa, que representa dois
aspectos separados do processo: computao e controle.
Profa.Luiza Mourelle
Profa.Luiza Mourelle
V
F
V
d
f
Profa.Luiza Mourelle
interpretao
input(y1);input(y2);y3:=1;
y1 > 0?
odd(y1)?
y3:=y3*y2; y1:=y1-1;
y2:=y2*y2; y1:=y1/2;
output(y3);
Profa.Luiza Mourelle
computation r
aj
aj
decision
F
aj
Profa.Luiza Mourelle
ak
Profa.Luiza Mourelle
Profa.Luiza Mourelle
pi
pi
pj
FORK
pj
JOIN
pk
pk
parbegin
.
.
.
S2
.
.
.
Sn
Controle de Processos por Computador
Profa.Luiza Mourelle
Profa.Luiza Mourelle
Profa.Luiza Mourelle
regio
crtica
.
.
p2
regio
crtica
Profa.Luiza Mourelle
Profa.Luiza Mourelle
.
remove
do buffer
produz
b
consome
coloca
no buffer
Profa.Luiza Mourelle
Profa.Luiza Mourelle
Profa.Luiza Mourelle
limitada e segura
ilimitada
Profa.Luiza Mourelle
.
1
prpria
no prpria
Profa.Luiza Mourelle
t4
Exemplo:
t1
p2
2
t3
p1
t2
p3
Profa.Luiza Mourelle
.
.
rede no conservativa
rede conservativa
.
2
2
Controle de Processos por Computador
Profa.Luiza Mourelle
rvore de Alcanabilidade
t1 (1,0,0)
p2
t1
t3
.
p1
p3
t2
t1
t1
(1,1,0) t
2
(1,2,0) t
2
(1,3,0)
(0,3,1)
t2
(0,1,1) t
3
(0,2,1) t
3
(0,0,1)
(0,1,1)
Profa.Luiza Mourelle
=>
[z]i = w;
Profa.Luiza Mourelle
t3
.
p1
t2
p3
t1 (1,0,0)
t1
(1,w,0)
(1,w,0) t
2
t2
(0,1,1) t
3
(0,w,1) t
3
(0,w,1)
Profa.Luiza Mourelle
(0,0,1)
Outro exemplo:
p2
t2
p1
p4
t1
t3
p3
t1
(1,0,1,0)
t3
(1,0,0,1)
t2
(1,w,1,0)
(1,w,0,0)
Profa.Luiza Mourelle
t3
(1,w,0,1)
t2
(1,w,1,0)