一種基於智能體的vhdl網絡編譯器的設計方法
2023-12-02 17:25:36
專利名稱:一種基於智能體的vhdl網絡編譯器的設計方法
技術領域:
本發明涉及一種基於智能體的VHDL網絡編譯器的設計方法。是一種集硬體及網絡功能的一種編譯方法。
背景技術:
計算機技術的發展和硬體描述語言HDL(Hardware Description Language)的出現,打破了數字系統設計歷來嚴格區分系統硬體設計和系統軟體設計的界限,被稱為硬體設計領域的一次變革。VHDL(VHSIC Hardware Description Language)語言以其設計技術齊全、方法靈活、支持廣泛;系統硬體描述能力強;可以與工藝無關煽程;語言標準、規範.易於共享和復用等優點,逐漸成為一種公認的硬體描述語言。飛速發展的網絡技術使得VHDL的網絡編譯越來越受到計算機開發人員和硬體設計人員的重視。為此提出了一種基於智能體的VHDL用絡編譯器的解決方法。
發明內容
基於上述情況,特此發明一種基於智能體的VHDL網絡編譯器的設計方法;編譯器的結構採用前端,後端(front-end, back-end)式結構。整個編譯器包五個部分:應用層,前端.後端、資料庫和輸入輸出模塊。完整的VHDL編譯器的前端包括5個Agent:自頂向下的分析 Agent (Parser Agent),相關性 Agent (Dependency Agent),符號 Agent (SymbolAgent).類型 Agent (Type Agent)。表達式求值 Agent (Expression Evaluating Agent)。分析Agent的主要作用是把VHDL的源程序解析成語法分析樹(parser tree),並同時進行語法檢查;相關性Agent的作用是在語法檢查通過以後.對VHDL程序中的各設計單元進行相關性檢查;符號Agent的作用是對VHDL設計程序中的符號檢查;類型AGENT是程序的類型進行栓查,表達式求值AGENT的功能是對VHDL程序中的表達式進行求值。編譯器前端各AGENT具有高內聚、鬆耦合的特性。在編譯過程中,它們可以根據需要進行一定的交互。各Agent通過共同的接口(Interface)與教據庫進行交互.並通過嵌入到應用層為VHDL設計人員提供一定的功能。並可根據硬體設計人更的要求客戶化。資料庫指編譯過程中動態生成VHDL文件的中間形式,它按照VHDL語法分析樹的形式組織起來。資料庫中的所有元素都可以通過屬性或圖形結點的形式加以說明。編譯器前端中的分析Agent對VHDL源程序解析後產生的語法樹就存放在資料庫中。Library.List是資料庫整個語法樹的根結點.在每次編譯器啟動時,它只能被實例化一次.即它在編譯器中是唯一的;Library是設計庫文件;VHDL編譯器的網絡功能主要是通過1/0模塊來實現的。1/0模塊主要由客戶Agent (cllient Agent),伺服器 Agent)、伺服器 AGENT (SERVER AGENT)構成。1/0模塊的功能是通過與資料庫的交互來完成的,也就是說,1/0模塊負責處理來自於資料庫的請求.並完成相應的I/o功能。資料庫1/0模塊的請求有兩種:輸入和輸出。輸出請求由資料庫的Library的save O方法來發出。輸入請求可以分別由資料庫中的Library_List,Library和Design_File來發出,但它們的層次有所不同。Library_List由於是資料庫的根結點,它可以從Library、,Design_File只能從DcsignJJnit等層次發出輸入請求;而Design File只能從Design_uDit的層次發出輸入請求。這種設計是由資料庫中VHDL語法樹的層次結構所決定的。伺服器Agent,顧名思義,是為網絡上其它編譯器的I/O提供服務的Agent.它的資源就是VHDL語法樹.伺服器Agent在編譯器運行期間維護著這個VHDL語法樹。當有從網上其它編譯器的客戶Agent發出的請求時.伺服器Agent就根據請求,從自己的VHDL語法樹中把相應的VHDL語法樹分支傳送到對應的客戶Agent中。客戶Agent的主要功能是完成本地I/O和網絡I/O。詳細地說,當客戶Agent接收到來自於教據庫的請求後,首先根據請求中的信息判斷走本地1/0,還是網絡I/O。如果是本地輸入,則客戶Agent根據信息直接從本地的VHDL文件(編譯通過的VHDL源文件的中間形式)進行輸入,並負責掛在編譯器資料庫的VHDL語法村中。本地輸出與本地輸入相類似.不同的是傳輸的方向相反.可以看成是本地輸入的逆過程。如果請求是網絡輸入,則客戶Agent根據需求信息,首先向網絡上相對應的PC,工作站或VHDL設計終端的VHDL編譯器發出請求,以便建立通信聯繫;當聯繫建立後,客戶Agent向相應的編譯器中的伺服器Agent發出具體的請求,相應的伺服器AGENT接收到請求後,從它本身的VHDL語法樹中查找到相應的語法樹分支,並耙語法樹分支作為結果從網絡傳輸到客戶Agent,客戶Agent在把得到的語法村分支加入到本地的資料庫的VHDL語法樹中,完成網絡輸入的過程。網絡輸出是網絡輸入的逆過程.它相當於把編譯後產生的VHDL文件的中VHDL文件的中間形式通過本地的客戶Agent和其它編譯器的伺服器AGENT存放到相應的PC或工作站上。
權利要求
1.一種基於智能體的VHDL網絡編譯器的設計方法:該方法是通過VHDL編譯器與AGENT相組合應用。
2.根據權利要求1的基於智能體的VHDL網絡編譯器的設計方法,此方法的整個編譯器包五個部分:應用層,前端.後端、資料庫和輸入輸出模塊。完整的VHDL編譯器的前端包括 5 個 Agent:自頂向下的分析 Agent (Parser Agent),相關性 Agent (Dependency Agent),符號 Agent (Symbol Agent).類型 Agent (Type Agent)。表達式求值 Agent (ExpressionEvaluating Agent)。
全文摘要
一種基於智能體的VHDL網絡編譯器的設計方法研究VHDL編譯囂和智能體的基礎上,提出了一種基於智能體的VHDL網絡編譯器的設計.並運用Iava語言進行了具體開發。著重闡述了其同網絡功能的具體實現。對基於智能體的VBDL網絡編譯器進行了總結和展望。
文檔編號G06F9/45GK103092666SQ20111034491
公開日2013年5月8日 申請日期2011年11月1日 優先權日2011年11月1日
發明者楊際榮 申請人:鎮江華揚信息科技有限公司