當(dāng)前位置:首頁(yè) > 工業(yè)控制 > 電子設(shè)計(jì)自動(dòng)化

  摘 要: 將Petri網(wǎng)與VHDL結(jié)合,運(yùn)用Petri網(wǎng)建立硬件系統(tǒng)模型,然后采用VHDL語(yǔ)言進(jìn)行設(shè)計(jì),最終下載到CPLD,成功地實(shí)現(xiàn)了整個(gè)硬件系統(tǒng)的邏輯控制器設(shè)計(jì)。

  關(guān)鍵詞: Petri網(wǎng) C/E模型 VHDL CPLD

  Petri網(wǎng)是異步并發(fā)系統(tǒng)[1],沒(méi)有人為的控制流,直觀(guān)地表示了非確定性;且可以圖形化的方式描述復(fù)雜的系統(tǒng),并可運(yùn)用數(shù)學(xué)工具進(jìn)行分析。因此,其在軟件系統(tǒng)的建模與仿真中得到廣泛應(yīng)用。Petri網(wǎng)自身具備的可運(yùn)行性方便了系統(tǒng)形式化描述級(jí)的模擬,可以用于表達(dá)不同抽象級(jí)上的系統(tǒng)概念并清楚地描述整個(gè)系統(tǒng)的運(yùn)作過(guò)程。筆者發(fā)現(xiàn)Petri網(wǎng)的應(yīng)用目前僅局限于軟件系統(tǒng)的設(shè)計(jì),例如網(wǎng)絡(luò)協(xié)議、物流管理等,而在硬件系統(tǒng)中卻很少涉足。硬件系統(tǒng)隨著功能的日益增強(qiáng),其功能描述也越來(lái)越復(fù)雜?;谟布到y(tǒng)描述的VHDL語(yǔ)言以其強(qiáng)大的硬件描述能力,已被廣大科研工作者所采用。VHDL語(yǔ)言也適用于描述異步并發(fā)系統(tǒng),因此可與Petri網(wǎng)建立的模型聯(lián)系起來(lái)。

  本文采用自頂向下與層次分析相結(jié)合的設(shè)計(jì)方法,用Petri網(wǎng)的一個(gè)子類(lèi)C/E系統(tǒng)(條件/事件系統(tǒng))對(duì)視頻輸入卡的邏輯控制器建立模型。針對(duì)控制器C/E模型中關(guān)心和需要觀(guān)察的變量,確定VHDL描述的實(shí)體和端口,由C/E系統(tǒng)網(wǎng)的拓?fù)浣Y(jié)構(gòu)確定條件和事件間的邏輯關(guān)系,構(gòu)造VHDL語(yǔ)言中的結(jié)構(gòu)體。采用EDA開(kāi)發(fā)工具M(jìn)AX+PLUS II進(jìn)行代碼設(shè)計(jì),邏輯綜合,并對(duì)設(shè)計(jì)進(jìn)行仿真,最后下載到CPLD,驗(yàn)證了邏輯控制器設(shè)計(jì)的正確性。

1 應(yīng)用背景及控制器功能要求

  圖1為某一視頻輸入卡結(jié)構(gòu)框圖。前端視頻信號(hào)經(jīng)過(guò)解碼、緩沖后,將數(shù)據(jù)送入DSP處理。其中由邏輯控制器協(xié)調(diào)各部分之間的運(yùn)作。從圖1中可以看出,邏輯控制器與視頻切換、視頻解碼、視頻數(shù)據(jù)緩存以及DSP等部分存在聯(lián)系,歸納起來(lái)需要完成五個(gè)基本功能:視頻通道切換控制;插入行標(biāo)志信息;FIFO的初始化操作;寫(xiě)FIFO;讀FIFO。

  要完成上述五個(gè)基本功能,必須保證每個(gè)功能與另一功能之間不存在沖突,但允許存在并發(fā)行為,同時(shí)它們之間的邏輯順序應(yīng)保持一致。因此需要一個(gè)主控模塊協(xié)調(diào)各部分的操作。各功能部分之間的邏輯關(guān)系比較復(fù)雜,涉及到圖像數(shù)據(jù)的行同步以及場(chǎng)同步等問(wèn)題,一旦出錯(cuò),則接收的就不是有效的圖像數(shù)據(jù),后續(xù)工作也不能正常進(jìn)行。為此,首先建立Petri網(wǎng)模型,并運(yùn)用數(shù)學(xué)工具進(jìn)行分析,最后采用VHDL語(yǔ)言實(shí)現(xiàn)。

2 控制器Petri網(wǎng)模型

  應(yīng)用Petri網(wǎng)的一個(gè)子類(lèi)C/E建立視頻輸入卡的邏輯控制器模型??刂破鲗?shí)現(xiàn)的五大功能,在滿(mǎn)足各自條件的情況下,能夠正確地完成相關(guān)操作。如果將每個(gè)功能展開(kāi)進(jìn)行Petri網(wǎng)模型設(shè)計(jì),將會(huì)使整個(gè)C/E系統(tǒng)的節(jié)點(diǎn)過(guò)多。節(jié)點(diǎn)一多,則不易分析其性質(zhì)和計(jì)算它的可達(dá)樹(shù)、不變量等參數(shù)。Petri網(wǎng)特有的直觀(guān)易懂、適于交流的圖形表示也就失去了意義。采用層次分析的方法,首先在頂層根據(jù)各功能要求建立一個(gè)Petri網(wǎng)模型,然后在各個(gè)模塊內(nèi)部建立更詳細(xì)的子模型。鑒于頂層和底層的分析方法類(lèi)似,只將頂層模型展開(kāi)討論。網(wǎng)絡(luò)的一些動(dòng)態(tài)特性,如庫(kù)所與變遷的含義如表1所示。

  邏輯控制器頂層Petri網(wǎng)模型如圖2所示。該模型是一個(gè)基本網(wǎng)系統(tǒng),其狀態(tài)元素稱(chēng)為條件,變遷元素稱(chēng)為事件。事件的發(fā)生改變條件的狀態(tài)(成真與否),引起信息在網(wǎng)上的流動(dòng)[1]。由條件和事件組成的有向網(wǎng)通常表現(xiàn)為三元組(B,E;F),其中B為條件集,E為事件集。同時(shí)該模型還滿(mǎn)足如下條件:

  ·(B,E;F)為簡(jiǎn)單網(wǎng);

  ·B中每個(gè)條件都有機(jī)會(huì)成真,也有機(jī)會(huì)成假;

  ·E中每個(gè)事件都有機(jī)會(huì)發(fā)生;

  ·由初始情態(tài)ci導(dǎo)出的可達(dá)情態(tài)集是完全可到達(dá)關(guān)系R下的等價(jià)類(lèi)。

  因此,該模型還是一個(gè)C/E系統(tǒng)。在Petri網(wǎng)仿真軟件Visual Object Net++中進(jìn)行仿真測(cè)試,結(jié)果表明該模型能很好地描述控制器各部分之間的邏輯關(guān)系。

3 VHDL程序的基本單元設(shè)計(jì)

  CPLD(復(fù)雜可編程邏輯器件)是處于并行工作方式的基本電路單元構(gòu)成的高速、大規(guī)模集成器件[2],可作為一種并發(fā)系統(tǒng)模型與Petri網(wǎng)建立聯(lián)系。VHDL作為一種硬件描述語(yǔ)言,支持行為描述、數(shù)據(jù)流描述和結(jié)構(gòu)化描述等多種描述方法,可以用并行和順序多種語(yǔ)句方式描述實(shí)際的系統(tǒng),并可采用VHDL的并行語(yǔ)句描述C/E系統(tǒng)中條件/事件間的并發(fā)關(guān)系,用VHDL的順序語(yǔ)句描述條件/事件間的順序約束機(jī)制,為解決C/E系統(tǒng)中的有效沖突提供了可行的方法。

  VHDL語(yǔ)言程序設(shè)計(jì)的基本單元稱(chēng)為一個(gè)基本設(shè)計(jì)實(shí)體,其主要由實(shí)體說(shuō)明(entity declaration)和構(gòu)造體(architecture body)兩部分構(gòu)成。實(shí)體說(shuō)明部分規(guī)定了設(shè)計(jì)單元的輸入輸出接口信號(hào)或引腳。根據(jù)該控制器的C/E系統(tǒng)中關(guān)心和需觀(guān)察的變量選擇系統(tǒng)的輸入和輸出信號(hào),以確定基本設(shè)計(jì)單元的實(shí)體及其端口。在控制器的C/E系統(tǒng)模型中,因?yàn)槭录?qū)動(dòng)條件是變化的,所以將發(fā)生的事件作為設(shè)計(jì)實(shí)體的輸入信號(hào),系統(tǒng)條件作為實(shí)體的輸出信號(hào)。同時(shí),為實(shí)體設(shè)計(jì)一個(gè)輸入端口sysSTART,使系統(tǒng)上電復(fù)位。當(dāng)sysSTART觸發(fā)時(shí)賦予系統(tǒng)初始標(biāo)識(shí),系統(tǒng)資源(Token)流動(dòng)使能。下面是具體的VHDL實(shí)體描述。

  LIBRARY IEEE;

  USE IEEE.STD_LOGIC_1164.ALL;

  ……(其它庫(kù))

  ENTITY MainCtrl IS

  PORT(sysSTART: IN 數(shù)據(jù)類(lèi)型;

   事件:IN數(shù)據(jù)類(lèi)型;

   條件:OUT數(shù)據(jù)類(lèi)型);

  END MainCtrl IS;

  構(gòu)造體部分定義了設(shè)計(jì)單元的具體構(gòu)造和操作(行為)。C/E系統(tǒng)模型的拓?fù)浣Y(jié)構(gòu)直觀(guān)地表達(dá)了條件和事件間的約束機(jī)制。這種約束機(jī)制映射為控制器內(nèi)部各模塊之間的邏輯關(guān)系。根據(jù)控制器C/E系統(tǒng)模型的特點(diǎn),可采用多進(jìn)程結(jié)構(gòu)描述C/E系統(tǒng)。進(jìn)程內(nèi)部順序執(zhí)行,進(jìn)程之間并發(fā)執(zhí)行。多進(jìn)程結(jié)構(gòu)是并行執(zhí)行進(jìn)程的網(wǎng)絡(luò),多個(gè)進(jìn)程并發(fā)執(zhí)行。因此從C/E系統(tǒng)的拓?fù)浣Y(jié)構(gòu),可將各進(jìn)程映射為C/E系統(tǒng)的各庫(kù)所狀態(tài),從而能夠描述出各條件庫(kù)所間的異步并發(fā)關(guān)系。各進(jìn)程之間通過(guò)接口信號(hào)進(jìn)行通信。接口信號(hào)是由新變化的參量引導(dǎo)進(jìn)程產(chǎn)生的輸出結(jié)果。設(shè)計(jì)進(jìn)程的程序,使之產(chǎn)生的輸出結(jié)果成為新的庫(kù)所狀態(tài),從而影響變遷觸發(fā)(fire)條件,以各進(jìn)程的輸出結(jié)果作為進(jìn)程間的通信接口信號(hào)。具體描述如下:

  ARCHITECTURE behav OF MainCtrl IS

  BEGIN

  進(jìn)程Ri:PROCESS(事件集) i∈[1,14]

   BEGIN

Pi<= 進(jìn)程Ri的輸出;

   ……

   END PROCESS Ri;

  ......

  END behav;

  沖突是由系統(tǒng)資源的共享產(chǎn)生的,與并發(fā)是一對(duì)對(duì)偶的概念[1]。在實(shí)際的Petri網(wǎng)模型中可能存在沖突K=,網(wǎng)系統(tǒng)自身并不提供解決沖突的方法。避免沖突的方法或措施有:

  (1)由用戶(hù)選擇,有沖突的地方通常是需要作出選擇和決策的地方。

  (2)設(shè)置合適的觸發(fā)規(guī)則:確定性產(chǎn)生規(guī)則,如優(yōu)先級(jí);不確定性產(chǎn)生規(guī)則,如發(fā)生概率。

  (3)改變系統(tǒng)結(jié)構(gòu),即改寫(xiě)Petri網(wǎng)的關(guān)聯(lián)矩陣,增加共享資源回收。

  VHDL語(yǔ)言中的并行語(yǔ)句同樣不能解決沖突問(wèn)題。使用VHDL并行語(yǔ)句描述沖突時(shí)將導(dǎo)致資源的丟失。而使用VHDL語(yǔ)言中的順序語(yǔ)句,如進(jìn)程內(nèi)部的語(yǔ)句,采用設(shè)定不同優(yōu)先級(jí)的方法,可以解決Petri網(wǎng)中存在的沖突。本控制器C/E系統(tǒng)也存在沖突現(xiàn)象,如圖3所示。

  對(duì)每個(gè)庫(kù)所Pi進(jìn)程的變化(Token的有無(wú)),使用電平的高低來(lái)表征。事件發(fā)生與否,用脈沖出現(xiàn)與否表征。該C/E系統(tǒng)的結(jié)構(gòu)體共有14個(gè)并行處理的進(jìn)程。根據(jù)對(duì)控制器進(jìn)行形式描述的思想,在進(jìn)程內(nèi)部采用下列結(jié)構(gòu):

  進(jìn)程Ri:PROCESS(事件參數(shù)表), i∈[1,14]

  ……

  IF(<條件表達(dá)式>) THEN

  <行為表達(dá)式>;

  END IF;

  END PROCESS 進(jìn)程Ri;

  事件參數(shù)表(也稱(chēng)敏感量)中事件觸發(fā)進(jìn)程的執(zhí)行過(guò)程是:在判斷事件的<條件表達(dá)式>為真后,順序執(zhí)行其后的<行為表達(dá)式>,由新變化的參量引導(dǎo)進(jìn)程產(chǎn)生輸出結(jié)果;執(zhí)行完進(jìn)程語(yǔ)句后,返回進(jìn)程的事件參數(shù),等待事件集新的變化,引發(fā)進(jìn)程的再一次進(jìn)行,往復(fù)循環(huán)。

4 基于VHDL的仿真與CPLD實(shí)現(xiàn)

  VHDL語(yǔ)言設(shè)計(jì)技術(shù)齊全,方法靈活,支持廣泛,對(duì)系統(tǒng)硬件描述能力強(qiáng),具有多層次描述系統(tǒng)硬件的能力,可以從系統(tǒng)的數(shù)學(xué)模型直到門(mén)級(jí)電路[3]。對(duì)控制器的Petri網(wǎng)模型進(jìn)行VHDL程序設(shè)計(jì)后,利用綜合器進(jìn)行邏輯綜合和優(yōu)化,綜合后再經(jīng)仿真器進(jìn)行時(shí)序仿真,得到涉及器件硬件特性的仿真結(jié)果,其結(jié)果正確。最后下載到Altera系列的EPM7128STC-6芯片上,從而實(shí)現(xiàn)視頻輸入卡邏輯控制器設(shè)計(jì)。行為仿真結(jié)果的仿真波形如圖4所示。

  將Petri網(wǎng)與EDA技術(shù)結(jié)合,對(duì)視頻輸入卡邏輯控制器用Petri網(wǎng)的C/E系統(tǒng)建模,并使用VHDL對(duì)協(xié)議的C/E系統(tǒng)模型進(jìn)行程序設(shè)計(jì),最后由CPLD器件實(shí)現(xiàn)控制器模型,使之成為實(shí)際的邏輯控制電路。這為硬件電路的高層綜合設(shè)計(jì)提供了一種方法,也為軟件系統(tǒng)和硬件系統(tǒng)開(kāi)辟了一條溝通的渠道。對(duì)于其它具有多因素、動(dòng)態(tài)和并發(fā)特點(diǎn)的系統(tǒng),同樣可用Petri網(wǎng)建立模型,用CPLD器件對(duì)模型進(jìn)行仿真和實(shí)現(xiàn)。

參考文獻(xiàn)

1 袁祟義. Petri網(wǎng)原理[M]. 北京:電子工業(yè)出版社,1998

2 MAX+PLUS II Programable Logic development SystemAltera Corporation[J]. 1997

3 林 敏,方穎立.VHDL數(shù)字系統(tǒng)設(shè)計(jì)與高層次綜合[M].北京:電子工業(yè)出版社,2002

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀(guān)點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉