基于FPGA的Petri网的硬件实现

时间:2025-11-01  作者:Diven  阅读:0

Petri网是系统的、数学的和图形的描述和分析工具,具有强大的描述并发、异步、分布、并行、不确定/随机性的信息处理系统的能力,目前已被应用于计算机通讯系统、实时多媒体系统及离散事件系统的研究中。而Petri网的硬件实现将为并行控制器的设计提供一条有效的途径。其硬件实现成为许多专家、学者研究的热点。

基于FPGA的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库中,使设计具有很强的可读性、可重复性、及可修改性,大大提高了系统的开发效率。

猜您喜欢

呼气分析因其非侵入性和易于实时监测而成为一种很有前景的医学诊断方法。呼气中的某些挥发性有机化合物(VOC)被认为是特定疾病的潜在生物标志物。以纳米材料为传感界面...
2023-11-16 09:02:00

5084排阻封装是应用于电子设备中的重要元件,其主要功能是实现电路中的阻值分配和电流限制。电子技术的不断发展,5084排阻封装优越的性能和灵活的应用而受到越来越...
2025-04-13 22:30:37

工具车是多功能的工作助手,其作用不可小觑。为各种工具和设备提供了一个整齐有序的存放空间,避免了工具杂乱无章的情况,提升了工作效率。工具车通常配备了轮子,便于在不...
2009-04-16 00:00:00

现代电子设备中,连接器的作用非常重要。CONN_20.32X8.95MM_TM作为一种新型连接器,以其独特的设计和优越的性能,受到了广泛关注。本文将详细介绍这一...
2025-03-08 09:48:04

防浪涌电阻作为保护电路的重要元件,有着着非常重要的作用。禾伸堂(HEC)作为知名的电子元器件制造商,其防浪涌电阻产品以优异的性能和的应用赢得了市场的认可。本文将...
2024-03-04 03:20:06

L型扳手是常见的工具,应用于机械维修、家庭装修等领域。市面上的L型扳手种类繁多,主要有几种区别。材质不同。L型扳手多采用铬钒钢、不锈钢等材料,铬钒钢的耐磨性和强...
2012-07-08 00:00:00

计数器在电子设备和日常生活中是重要配件,但不同类型的计数器各有特点。数字计数器以数字形式显示计数结果,适合需要精确读数的场合,如电子表和计时器。机械计数器则通过...
2009-03-18 00:00:00

氮化镓有源相控阵雷达难点氮化镓(GaN)有源相控阵雷达是一种新型的雷达技术,相比传统的被动相控阵雷达具有更高的性能和灵活性。然而,它也面临一些挑战和难点,包括...
2023-08-08 15:04:00

1206贴片电阻是一种常用的电子元件,因其尺寸为1.2mm x 0.6mm而得名。了解其关键参数对于正确选择和使用至关重要。本文将简要介绍1206贴片电阻的主要...
2025-04-14 15:03:48

节流阀是用于控制流体流动的设备,应用于各种工业和机械系统中。通过改变流体的通道截面积,从而调节流量和压力,确保系统的稳定运行。节流阀的工作原理主要基于流体动力学...
2010-02-01 00:00:00