• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 一種基于Petri網(wǎng)的并行控制器的VHDL實現(xiàn)

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

    作者: 時間:2010-06-17 來源:網(wǎng)絡(luò) 收藏

      摘 要: 網(wǎng)是離散事件系統(tǒng)建模的重要工具,本文使用硬件描述語言實現(xiàn)了基于網(wǎng)的。文中通過一個液位控制系統(tǒng)實例具體介紹了這一方法,并通過仿真波形證明了該方法的正確性。這對于離散事件系統(tǒng)的設(shè)計具有十分重要的意義。

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

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

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

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

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

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

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

      用大規(guī)模可編程邏輯器件來實現(xiàn)由Petri網(wǎng)描述的并行控制器,其實現(xiàn)的基本步驟如下:

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

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

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

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

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


    上一頁 1 2 3 下一頁

    關(guān)鍵詞: VHDL FPGA Petri 并行控制器

    評論


    相關(guān)推薦

    技術(shù)專區(qū)

    關(guān)閉
    主站蜘蛛池模板: 鄂尔多斯市| 仪陇县| 花莲市| 华亭县| 库伦旗| 上高县| 红桥区| 云浮市| 沁源县| 望江县| 五华县| 渭源县| 济宁市| 宁阳县| 读书| 红原县| 东方市| 江孜县| 得荣县| 克什克腾旗| 长寿区| 灵川县| 吴川市| 开江县| 扬州市| 铜梁县| 府谷县| 巴彦县| 永济市| 辽阳市| 虹口区| 车险| 尚义县| 五大连池市| 会东县| 黔西| 抚州市| 太保市| 松滋市| 申扎县| 柞水县|