Petri网是一种体系的、数学的和图形的描绘和剖析东西,它具有强壮的描绘并发、异步、散布、并行、不确定/随机性的信息处理体系的才能,现在已被广泛运用于计算机通讯体系、实时多媒体体系及离散事情体系的研讨中。而Petri网的硬件完成将为并行控制器的规划供给一条有用的途径。因而,其硬件完成成为许多专家、学者研讨的热门。
现场可编程门阵列FPGA是美国Minx公司于1984年首要开发的一种通用型用户可编程逻辑器件。它具有容量大、速度高、价格低的长处,一起,硬件描绘言语VHDL具有的强壮的行为描绘才能及与硬件行为无关的特性,完成了硬件电路规划的软件化,这为Petri网的硬件完成供给了有力的东西。
本文探讨了Petri网根据VHDL言语的FPGA完成。
2、Petri网根本类型的完成
2.1根本Petri网的完成
2.1.1根本Petri网简介
界说1 六元组Z=(P,T,F,K,W,M0)称为一个网体系,其间N=(P,T,F)是一个有向网,满意:
1)P∪T≠φ
2)P∪T=φ
3)F∈PxT∪TxP,只能从P-》7或T-》P,禁绝P-》P或T-》T.
4)Dom(F)∪cod(F)=P∪T
K,W,M0依次是N上的容量函数,权函数和标识,M0称为∑的初始标识。根本Petri网便是K=1,W=1,这时库所内的标识数要么是0,要么是1,并且一切的弧权都是1。关于根本的Petri网,变迁的激起便是一个瞬时事情。
2.1.2根本Petri网的元件完成
图1(a)是一个简略的根本Petri网体系,库所P具有两个输入变迁和两个输出变迁,当库所P中没有托肯且库所PO或P1中有托肯时,变迁t0或11激起,则托肯从库所PO或P1移动到库所P;当P中有托肯且库所P2或P3中没有托肯时,变迁t2或0激起,则托肯从库所P移动到库所P2或P3。
完成库所P的模块如图1(b),元件几M有两个输入变迁inl,in2和两个输出变迁。outl,out2,当变迁使能时,其值为逻辑1,否则为逻辑0;reset为复位信号,用来置库所的初始状况。clk为大局时钟。P的值表明库所中是否意义托肯,若含有托肯,取值为逻辑1,否则为逻辑。。元件PM是在EDA软件Max+PlusII中选用VHDL言语描绘,通过编译、仿真后构成模块。
用VHDL言语描绘源程序如下:
entity p_mis
port(reset,clk:instdlogic;
inl,in2,outl,out2:instdlogic;
p:outstdlogic);
end p_m;
architecture beh ofp_m is()P
signal p0,np0:stdlogic;
begin
np0《-not p0;
process(clk,reset)
variablefstdlogic;
begin
f:=((inlorin2)and
ifclk‘eventandclk=’1
ifreset=‘1’then
p0《=‘1’;
elsiff=‘1’then
(a)。(b)
np0)or((outlorout2)andp0);
.then
PO《=npO;
endif;
endif;
endprocess;p《=p0;
end beh;
图2(a)是一个简略的根本Petri网体系,其激起规则是当库所PO和P1中有托肯,变迁T具有两个输入库所PO和P1,P3,而库所P2和P3中没有托肯,且事情x两个输出库所P2和产生时,变迁激起。图2(b)是树立的变迁元件T_M,inl,in2,outl,out2别离表明输入库所和输出库所中含有托肯的状况,若含有托肯,则取值为逻辑1,否则为逻辑0,x是外部事情。T表明变迁的激起状况,若可激起则取值为逻辑1。
用VHDL言语描绘源程序如下:
enTItyt_mis
port(inl,in2,outl,out2,x:in std_logic;
t:out stdlogic);,
end t_m;
architecture beh of t_m is
signal t0:stdlogic;
begin
t《-x and in land in2 and (notoutl) and (notout2)end beh;
库所元件P_M和变迁元件T_M均存放在Max+Plusll中树立的元件库中,能够调用运用的。
2.2时EEPetriR的实IT
2.2.1时延Petri网的界说
界说2变迁时化Petri网(TImed petri net)TN={P,T,F,I‘],其间I’:T-》0∪R+,规则TPetri网中的每一个变迁的持续时刻。{T,P,F}的界说与PN共同。
在变迁时化Petri网中,每个变迁均有一为零或任一正实数的持续时刻。而库所中没有持续时刻,只需和它相连的变迁产生,库所就可失掉或取得托肯。当变迁的输入库所中含有托肯时,变迁是可激起的,但要真实激起需求通过一段持续时刻。
2.2.2变迁时化Petri网元件的完成
变迁时化Petri网中库所元件与根本Petri网共同。
变迁时化Petri网中变迁元件的完成是在根本Petri网中变迁元件的基础上规划了一个计时器TIME,如图3(b),clk为计时频率,决议了计时的精度;en为其使能端,当变迁可激起时,en为1,计时器开端计时,计时结束时co输出为t。图3(a)是一个简略的变迁时化Petri网,变迁T与时延D=n相连,当库所PO和P1中各有一个托肯时,变迁T取得产生权,但到T产生,需有n个单位的延时。调用元件几M和计时元件TIME,树立逻辑电路如图3(c)示,并通过编译构成图3(d)所示逻辑模块时化变迁元件。
用VHDL言语完成计时器模块源程序如下
if clk‘event and clk=’1‘then
if en=’l‘then
if q=nthenq《=0;co《=’1‘;
elseq《=q+lco《=’0‘:
end if;
else q《=0;co《=’0‘
end if;
end process;
endbeh;
3、运用举例
两台计算机运用一个公共存储器,(a)不需求该存储器,(b)需求存储器但还没有运用它;(c)正在运用存储器。
则对其树立Petri网模型如图5示。各库所和变迁的意义解释为:P1,P4别离表明CPI,CP2宣布需求该存储器恳求;P2,P5别离表明CPI,CP2占用该存储;P3,P6别离表明CPI,CP2不需求该存储器;P7表明存储器;变迁中与时刻相关的是T2.T5,别离表明cp占用存储器的时刻。这是一个时延Petri网体系。别离调用元件库中所构成的库所元件、变迁元件和时延变迁元件,作出该体系的逻辑电路图,并在EDA软件Max+PlusI中对其编译、仿真下载,仿真波形如图示。
4、定论
Petri网是异步并发现象建模的重要东西,Petri网的硬件完成将为并行控制器的规划供给一种有用的途径。这使Petri网的硬件完成显得尤为重要。本文给出了根本Petri网体系的硬件完成计划,选用VHDL言语分模块完成,描绘元件的功用并将元件存入WORK库中,使规划具有很强的可读性、可重复性、及可修改性,大大提高了体系的开发功率。