基于FPGA的Petri网的硬件实现_第1页
基于FPGA的Petri网的硬件实现_第2页
基于FPGA的Petri网的硬件实现_第3页
基于FPGA的Petri网的硬件实现_第4页
基于FPGA的Petri网的硬件实现_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于FPGA的Petri网的硬件实现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∪TK,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语言描述源程序如下:entityp_misport(reset,clk:instdlogic;inl,in2,outl,out2:instdlogic;p:outstdlogic);endp_m;architecturebehofp_mis()Psignalp0,np0:stdlogic;beginnp0《-notp0;process(clk,reset)variablefstdlogic;beginf:=((inlorin2)andifclk‘eventandclk=’1ifreset=‘1’thenp0《=‘1’;elsiff=‘1’then(a)。(b)np0)or((outlorout2)andp0);.thenPO《=npO;endif;endif;endprocess;p《=p0;endbeh;图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_misport(inl,in2,outl,out2,x:instd_logic;t:outstdlogic);,endt_m;architecturebehoft_missignalt0:stdlogic;begint《-xandinlandin2and(notoutl)and(notout2)endbeh;库所元件P_M和变迁元件T_M均存放在Max+Plusll中建立的元件库中,可以调用使用的。2.2时EEPetriR的实IT2.2.1时延Petri网的定义定义2变迁时化Petri网(timedpetrinet)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语言实现计时器模块源程序如下ifclk‘eventandclk=’1‘thenifen=’l‘thenifq=nthenq《=0;co《=’1‘;elseq《=q+lco《=’0‘:endif;elseq《=0;co《=’0‘endif;endprocess;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网是异步并发现象建模的重要

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论