<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁(yè) > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 基于Petri網(wǎng)的并行控制器的VHDL實(shí)現(xiàn)

          基于Petri網(wǎng)的并行控制器的VHDL實(shí)現(xiàn)

          作者: 時(shí)間:2012-11-21 來(lái)源:網(wǎng)絡(luò) 收藏

          網(wǎng)是異步并發(fā)系統(tǒng)建模與分析的一種重要工具,1962年由德國(guó)科學(xué)家C.A.博士創(chuàng)立。40多年來(lái),網(wǎng)理論得到了很大的豐富和發(fā)展,其應(yīng)用領(lǐng)域也在不斷擴(kuò)大,越來(lái)越受到國(guó)際同行的重視,已成為計(jì)算機(jī)、自動(dòng)化和通信領(lǐng)域的熱門(mén)研究課題。Petri網(wǎng)既有直觀的圖形表示,又有深厚的數(shù)學(xué)基礎(chǔ);既是層次化的結(jié)構(gòu)模型,又能反映系統(tǒng)的動(dòng)態(tài)性能[1][2]。用硬件描述語(yǔ)言進(jìn)行電路和系統(tǒng)設(shè)計(jì)是當(dāng)前EDA技術(shù)的重要特征,它使得設(shè)計(jì)者能在較抽象的層次上進(jìn)行系統(tǒng)結(jié)構(gòu)和內(nèi)部特征的設(shè)計(jì)。作為一種高速的硬件描述語(yǔ)言適于描述設(shè)計(jì)異步并發(fā)的系統(tǒng),因而可與Petri網(wǎng)模型建立聯(lián)系。用對(duì)模型進(jìn)行程序設(shè)計(jì),為模型的硬件奠定了基礎(chǔ)。隨著大規(guī)模、高密度的可編程邏輯器件FPGA和CPLD的問(wèn)世與應(yīng)用方面的迅速推廣,并且有各種EDA軟件工具的支持,使得人們可以根據(jù)Petri網(wǎng)的拓?fù)浣Y(jié)構(gòu)用硬件加以,以使Petri網(wǎng)的硬件成為可能。因此,Petri網(wǎng)的智能化的的設(shè)計(jì)與硬件實(shí)現(xiàn)的課題引起了人們的強(qiáng)烈興趣。利用Petri網(wǎng)技術(shù),不僅可以用來(lái)進(jìn)行設(shè)計(jì)、分析和驗(yàn)證,還能夠進(jìn)行優(yōu)化控制。

          本文引用地址:http://www.ex-cimer.com/article/159670.htm

            微電子技術(shù)發(fā)展到今天,已提供了幾千至幾千萬(wàn)個(gè)標(biāo)準(zhǔn)門(mén)的芯片。特別是在系統(tǒng)可編程技術(shù),可有條件地在一個(gè)芯片上設(shè)計(jì)制作一個(gè)數(shù)字系統(tǒng),即系統(tǒng)芯片(System on Chip,SoC)。國(guó)內(nèi)市場(chǎng)上常見(jiàn)的Altera公司、Xilinx公司、Lattice公司的FPGA和CPLD芯片,一般都能滿(mǎn)足設(shè)計(jì)SoC的需要,并且都提供了EDA軟件開(kāi)發(fā)工具。而且在現(xiàn)有的軟件開(kāi)發(fā)工具中,有電路圖、狀態(tài)圖、真值表和硬件描述語(yǔ)言等輸入方式。但設(shè)計(jì)片上,難以用電路圖或邏輯方程輸入方式實(shí)現(xiàn);如果用狀態(tài)圖或真值表輸入方式,隨著問(wèn)題復(fù)雜程度的增加,系統(tǒng)的狀態(tài)將發(fā)生組合爆炸,這是十分棘手的問(wèn)題。而且有限狀態(tài)機(jī)(FSM)雖已被廣泛運(yùn)用到數(shù)字邏輯控制系統(tǒng),也只是因?yàn)樗o出了系統(tǒng)化的硬件實(shí)現(xiàn)方法和具體的實(shí)現(xiàn)模型(如Moore自動(dòng)機(jī)和Mealy自動(dòng)機(jī)),用FSM實(shí)現(xiàn)也十分困難。因?yàn)镕SM必須于設(shè)計(jì)前劃分控制器,所以常常會(huì)導(dǎo)致非最優(yōu)的門(mén)級(jí)實(shí)現(xiàn),且使設(shè)計(jì)中并發(fā)的數(shù)量受到使用FSM數(shù)量的限制,同時(shí)FSM間相互依賴(lài),使得設(shè)計(jì)難于驗(yàn)證且易產(chǎn)生并行同步錯(cuò)誤(如死鎖、丟失數(shù)據(jù)的完整性)。上述這些缺點(diǎn)只有設(shè)計(jì)遍歷整個(gè)狀態(tài)空間時(shí)才能驗(yàn)證,因而可能被漏檢[3]。若用硬件描述語(yǔ)言輸入,遇到的困難是模型和驗(yàn)證。

            針對(duì)傳統(tǒng)的設(shè)計(jì)方法不太適合并行控制器設(shè)計(jì)的問(wèn)題,本文介紹一種使用硬件描述語(yǔ)言來(lái)實(shí)現(xiàn)Petri網(wǎng)的并行控制器的方法。首先使用Petri網(wǎng)對(duì)問(wèn)題進(jìn)行建模,并對(duì)模型進(jìn)行分析和控制,獲得控制器的Petri網(wǎng)模型;然后用VHDL對(duì)Petri網(wǎng)控制模型加以描述,得到源文件;最后通過(guò)EDA軟件開(kāi)發(fā)工具M(jìn)ax+PlusⅡ進(jìn)行編譯、模擬、適配,并下載到可編程邏輯器件中。

            1 Petri網(wǎng)簡(jiǎn)介[2]

            定義:四元組Ε=(B,E;F,C)能構(gòu)成條件/事件系統(tǒng)(condition/event system,C/E系統(tǒng))的要求是:

          公式

            2 實(shí)現(xiàn)的基本方法

            Petri網(wǎng)本身就是一種硬件描述語(yǔ)言,是一種高度抽象的、結(jié)構(gòu)化的并發(fā)語(yǔ)言。Petri網(wǎng)非常適合于復(fù)雜離散系統(tǒng)的建模和形式化分析,而VHDL則是一種標(biāo)準(zhǔn)的硬件描述語(yǔ)言,可以解決數(shù)字系統(tǒng)描述中并發(fā)性問(wèn)題,允許其仿真和綜合。Petri網(wǎng)和VHDL可以相互補(bǔ)充,并且也可以提供一個(gè)驗(yàn)證子系統(tǒng)接收所有設(shè)計(jì)任務(wù)相同的用戶(hù)接口描述[4]。并行控制器的VHDL文本Petri網(wǎng)描述在一個(gè)實(shí)際設(shè)計(jì)中可獲得50%的面積減少及40%的速度改善(相對(duì)于最好的FSM綜合)[4]。

            用大規(guī)??删幊踢壿嬈骷?lái)實(shí)現(xiàn)由Petri網(wǎng)描述的并行控制器,其實(shí)現(xiàn)的基本步驟如下:

            (1)對(duì)實(shí)際系統(tǒng)建立Petri網(wǎng)系統(tǒng)模型。

            (2)采用Petri網(wǎng)軟件工具對(duì)所建立的Petri網(wǎng)系統(tǒng)模型進(jìn)行分析并加以控制,建立監(jiān)控器的Petri網(wǎng)系統(tǒng)模型。

            (3)確定輸入輸出變量并選擇相應(yīng)的FPGA或CPLD器件。

            (4)根據(jù)網(wǎng)的拓?fù)浣Y(jié)構(gòu)確定條件與事件間的邏輯關(guān)系,用硬件描述語(yǔ)言如VHDL對(duì)Petri網(wǎng)模型進(jìn)行描述。

            (5)以VHDL描述作為設(shè)計(jì)輸入,通過(guò)EDA軟件開(kāi)發(fā)工具,如ispDesign EXPERT或Max+PlusⅡ等,進(jìn)行編譯、模擬、適配,然后下載到器件中。

            整個(gè)硬件實(shí)現(xiàn)的流程圖如圖1所示。

          整個(gè)硬件實(shí)現(xiàn)的流程圖

            3 Petri網(wǎng)的并行控制器設(shè)計(jì)舉例

            3.1 系統(tǒng)描述

            從文獻(xiàn)[5]中選擇了一個(gè)如圖2所示的并行控制器設(shè)計(jì)例子,這是一個(gè)用于說(shuō)明離散事件系統(tǒng)控制器設(shè)計(jì)的典型示例。它有3個(gè)盛放液體的罐子:V1、V2、V3,其中V1、V2是用來(lái)盛放不同種液體F1、F2的,M是攪拌系統(tǒng)的驅(qū)動(dòng)電機(jī)。系統(tǒng)停止時(shí),指示燈Y0亮。當(dāng)起動(dòng)按鈕按下時(shí)(X0=1),閥Y1、Y2打開(kāi),2種不同的液體F1、F2分別注入V1、V2。當(dāng)V1中的液體到達(dá)X1位置時(shí),Y1關(guān)閉;當(dāng)V2中液體到達(dá)X3時(shí),閥Y2關(guān)閉。當(dāng)V1、V2中的液體分別都到達(dá)X1、X3時(shí),Y3、Y4同時(shí)打開(kāi);當(dāng)V1、V2中液體分別都低于X2、X4時(shí),Y3、Y4關(guān)閉,同時(shí)Y6打開(kāi)。當(dāng)V3中液體高于X5時(shí),Y5閉合,電動(dòng)機(jī)M開(kāi)始攪拌;當(dāng)V3中液體流出低于X6時(shí),Y6關(guān)閉,指示燈亮,重新回到原來(lái)狀態(tài)。

          離散事件系統(tǒng)控制器設(shè)計(jì)

          伺服電機(jī)相關(guān)文章:伺服電機(jī)工作原理


          電子血壓計(jì)相關(guān)文章:電子血壓計(jì)原理



          上一頁(yè) 1 2 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();