2 系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
系統(tǒng)實(shí)現(xiàn)基于Web瀏覽器/業(yè)務(wù)邏輯層/數(shù)據(jù)存儲(chǔ)層(B/A/S)的三層網(wǎng)絡(luò)架構(gòu)計(jì)算模型,以Java為主要開(kāi)發(fā)語(yǔ)言。瀏覽器端的展示層以JSP頁(yè)面為主,用戶登陸試驗(yàn)頁(yè)面,選擇以iava applet應(yīng)用實(shí)現(xiàn)的虛擬芯片進(jìn)行連線。用戶在網(wǎng)頁(yè)界面的提示處編寫(xiě)試驗(yàn)程序,提交程序到服務(wù)器,服務(wù)器端的解釋器平臺(tái)調(diào)用解釋規(guī)則庫(kù),解釋程序結(jié)果并可視化的返回給客戶端。用戶將結(jié)果數(shù)據(jù)提交給已連接好的虛擬接口電路,服務(wù)器端通過(guò)類(lèi)庫(kù)設(shè)計(jì)定義各類(lèi)芯片的工作方式、電氣特性、I/0特性和幾何特性等,確定信號(hào)時(shí)延。對(duì)芯片的各個(gè)管腳分別建立子類(lèi).定義各管腳的電氣特性、I/0特性和幾何特性等,達(dá)到真實(shí)地模擬硬件結(jié)構(gòu),使運(yùn)算結(jié)果與真實(shí)硬件相同,實(shí)現(xiàn)對(duì)各個(gè)接口技術(shù)實(shí)驗(yàn)環(huán)境進(jìn)行仿真。系統(tǒng)可根據(jù)用戶端的不同設(shè)計(jì)進(jìn)行重新配置執(zhí)行,使學(xué)習(xí)者感覺(jué)到其所應(yīng)用的實(shí)驗(yàn)平臺(tái)就是真實(shí)接口技術(shù)實(shí)驗(yàn)室。
3 接口實(shí)驗(yàn)流程建模
一個(gè)現(xiàn)實(shí)的接口實(shí)驗(yàn)流程如下:學(xué)生接到實(shí)驗(yàn)任務(wù),進(jìn)入實(shí)驗(yàn)室:①打開(kāi)集成實(shí)驗(yàn)環(huán)境,在計(jì)算機(jī)上編寫(xiě)匯編、C語(yǔ)言,通過(guò)詞法、語(yǔ)法檢查;②連接集成開(kāi)發(fā)試驗(yàn)箱,連接跳線,燒錄程序;③觀察實(shí)驗(yàn)板上的現(xiàn)象,比對(duì)試驗(yàn)結(jié)果;④如果與預(yù)期結(jié)果現(xiàn)象一致,則試驗(yàn)程序正確,此試驗(yàn)結(jié)束,課后書(shū)寫(xiě)實(shí)驗(yàn)報(bào)告,否則轉(zhuǎn)向;⑤修改程序,調(diào)試程序重復(fù)②~④。虛擬接口實(shí)驗(yàn)平臺(tái)的模式如圖l所示。
4 匯編程序的仿真解釋執(zhí)行
匯編程序是一個(gè)接口實(shí)驗(yàn)的基礎(chǔ),由程序的正確執(zhí)行結(jié)果驅(qū)動(dòng)相應(yīng)的芯片工作產(chǎn)生時(shí)序圖,模擬真實(shí)的接口實(shí)驗(yàn)環(huán)境,應(yīng)具備的功能模塊如下:
(1)預(yù)處理模塊 除去注釋、偽指令,分析程序語(yǔ)句,分離出指令操作碼,第一、二操作數(shù),并存儲(chǔ)到指令數(shù)據(jù)表;
(2)數(shù)據(jù)表模塊建立匯編指令所需的寄存器表、內(nèi)存表,端口表等,并提供通用的數(shù)據(jù)讀、寫(xiě)接口;
(3)解釋執(zhí)行模塊(規(guī)則庫(kù))核心是建立各類(lèi)指令的規(guī)則庫(kù),跟蹤模擬程序指針PC的流程,實(shí)例化指令碼對(duì)應(yīng)的指令類(lèi),取出該條指令的操作數(shù)傳人類(lèi)對(duì)象的成員函數(shù),進(jìn)行對(duì)應(yīng)的函數(shù)操作,返回計(jì)算結(jié)果,并寫(xiě)入對(duì)應(yīng)的數(shù)據(jù)表;
(4)通訊模塊 建立程序執(zhí)行與虛擬芯片工作的連接,程序執(zhí)行結(jié)果能透明的傳遞給虛擬芯片工作接口函數(shù),并接受虛擬芯片工作后的反饋數(shù)據(jù),透明的反饋給程序。
仿真解釋執(zhí)行的算法嘲描述:①?gòu)挠脩舫绦虮碇腥〕鲆粭l源程序語(yǔ)句,記錄此語(yǔ)句對(duì)應(yīng)的程序指針PC;②分離出語(yǔ)句中的操作碼、操作數(shù),在指令規(guī)則庫(kù)中查詢其對(duì)應(yīng)的指令類(lèi),若跳轉(zhuǎn)指令,轉(zhuǎn)至⑦否則轉(zhuǎn)至③;③查找數(shù)據(jù)字典中的尋址方式表,實(shí)例化出該指令對(duì)應(yīng)的尋址類(lèi)對(duì)象,取出操作數(shù),調(diào)用指令類(lèi)對(duì)象的函數(shù)成員,接受尋址類(lèi)對(duì)象實(shí)例處理后的操作數(shù),進(jìn)行函數(shù)運(yùn)算,刷新其對(duì)應(yīng)的寄存器表或內(nèi)存表等;④取出各寄存器及內(nèi)存單元對(duì)應(yīng)的數(shù)據(jù),以圖表的形式展現(xiàn)在界面上,同時(shí)將其與虛擬芯片相關(guān)的數(shù)據(jù)透明的傳遞給通訊接口;⑤計(jì)算該指令的運(yùn)算時(shí)問(wèn),以靜態(tài)變量保存;⑥PC=PC+1取出下一條指令繼續(xù)執(zhí)行,轉(zhuǎn)至②;⑦若是無(wú)條件跳轉(zhuǎn)指令,計(jì)算該標(biāo)志對(duì)應(yīng)的PC值,轉(zhuǎn)至對(duì)應(yīng)的指令語(yǔ)句執(zhí)行,轉(zhuǎn)至②;若為有條件跳轉(zhuǎn)指令,取出狀態(tài)寄存器中該指令對(duì)應(yīng)的PSW值,判斷條件是否成立,如成立按無(wú)條件跳轉(zhuǎn)指令執(zhí)行,否則PC=PC+1,轉(zhuǎn)至②;若是子程序(中斷程序),則保存該條語(yǔ)句的PC值,便于程序的返回執(zhí)行,同時(shí)按無(wú)條件跳轉(zhuǎn)指令執(zhí)行;若為RET指令則程序結(jié)束。
5 虛擬芯片的設(shè)計(jì)
5.1 設(shè)計(jì)思想
接口電路設(shè)計(jì)所用器材包括CPU、TTL門(mén)電路、可編程邏輯芯片、負(fù)載等。傳輸信號(hào)主要分控制、地址、數(shù)據(jù)電源和地線。為實(shí)現(xiàn)實(shí)驗(yàn)電路邏輯性正確與否的檢測(cè),其設(shè)計(jì)方法是:針對(duì)每個(gè)芯片建立類(lèi),定義各種工作方式、電氣特性、I/O數(shù)據(jù)結(jié)構(gòu)。對(duì)其各管腳的功能定義(I/0特性、信號(hào)類(lèi)型、電氣特性)建立子類(lèi),并構(gòu)造I/0方法,確定信號(hào)時(shí)延。幾何特性描述芯片的外部特征;工作特性描述芯片的數(shù)據(jù)處理方式(即工作方式);電氣特性描述芯片的工作周期;I/O數(shù)據(jù)結(jié)構(gòu)負(fù)責(zé)芯片工作前數(shù)據(jù)的接受與工作中、后的數(shù)據(jù)輸出。
虛擬接口實(shí)驗(yàn)室要涉及的硬件比較多,而每個(gè)硬件的外部幾何特性都不盡相同,在非固定實(shí)驗(yàn)的情況下,用戶總是希望可以自由的選擇各類(lèi)硬件,這樣就可以動(dòng)態(tài)地實(shí)現(xiàn)各類(lèi)硬件的實(shí)例化操作。設(shè)計(jì)時(shí)采用硬件多態(tài)的思想,最大化的實(shí)現(xiàn)虛擬芯片類(lèi)庫(kù)的復(fù)用,即設(shè)計(jì)抽象于所有硬件的一個(gè)主模塊,派生出具體的硬件類(lèi),可以實(shí)現(xiàn)用戶隨意選擇芯片,也方便硬件鏈表的統(tǒng)一處理。
5.2 設(shè)計(jì)實(shí)例
5.2.1 設(shè)計(jì)思想
芯片具體實(shí)現(xiàn)包括芯片的幾何特性、工作特性、和電氣特性。幾何特性描述了芯片的外部特征;工作特性描述的是芯片的數(shù)據(jù)處理方式(即工作方式);電氣特性描述的是芯片的工作周期。不失一般性,在此以8253來(lái)說(shuō)明設(shè)計(jì)思想和類(lèi)之間的具體關(guān)系。
5.2.2 類(lèi)圖關(guān)系
為實(shí)現(xiàn)硬件多態(tài),設(shè)計(jì)了硬件模板類(lèi)、芯片引腳類(lèi)、8253芯片類(lèi)3個(gè)類(lèi),類(lèi)圖及關(guān)系如圖2所示。
6 虛擬芯片操作
對(duì)設(shè)計(jì)好的虛擬芯片要進(jìn)行移動(dòng)、縮放、芯片間連線、連線變形和連線正確性檢測(cè)等操作。
6.1 芯片移動(dòng)位置重疊算法
當(dāng)鼠標(biāo)點(diǎn)擊位置在模型內(nèi)部或外設(shè)輸入操作時(shí)觸發(fā)函數(shù),首先跳入一個(gè)判斷函數(shù),判斷鼠標(biāo)移動(dòng)釋放后的位置或者輸入?yún)?shù)使新模型處于以前模型的什么位置,如是左上,則首先判斷變化特征點(diǎn)(左上點(diǎn))的X坐標(biāo)是否大于在定點(diǎn)(右下點(diǎn))的第2象限(即左上)區(qū)域障礙物特征點(diǎn)X坐標(biāo)。大于則返回值為ture,操作可行,按照繪制算法重新繪制硬件模型和連線;不大于,函數(shù)跳入判斷Y坐標(biāo)函數(shù),變化特征點(diǎn)的Y坐標(biāo)是否小于在定點(diǎn)(右下點(diǎn))的第2象限(即左上)區(qū)域障礙物特征點(diǎn)Y坐標(biāo)。小于則返回值為true,操作可行,按照繪制算法重新繪制硬件模型和連線,不小于,則再次判斷對(duì)角點(diǎn)(右下點(diǎn))的X坐標(biāo)是否小于在定點(diǎn)(右下點(diǎn))的第2象限(即左上)區(qū)域障礙物特征點(diǎn)X坐標(biāo)。小于則返回值為true,操作可行,按照繪制算法重新繪制硬件模型和連線;不小于,函數(shù)跳入判斷Y坐標(biāo)函數(shù),變化特征點(diǎn)的Y坐標(biāo)是否大于在定點(diǎn)(右下點(diǎn))的第2象限(即左上)區(qū)域障礙物特征點(diǎn)Y坐標(biāo)。大于則返回值為ture,操作可行,按照繪制算法重新繪制硬件模型和連線,不大于,返回值為false,操作失敗,返回初值。與縮放算法類(lèi)似,因?yàn)榭赡艽嬖诳缭娇尚行?,要進(jìn)行兩個(gè)特征點(diǎn)的兩次判斷。當(dāng)移動(dòng)位置是右上、左下、右下時(shí),函數(shù)流程基本相似,只是判斷大小的函數(shù)載入順序不同。(以下以2個(gè)模塊為例.其中坐標(biāo)前一位是模塊號(hào),后一位1表示左上點(diǎn),2表示右下點(diǎn))由算法分析得出表1所示結(jié)果。由表1可知,只有當(dāng)X組位置坐標(biāo)大小關(guān)系和Y組位置坐標(biāo)大小關(guān)系都不相同時(shí)位置才重疊。
6.2 芯片間連線變形算法
完成對(duì)象起點(diǎn)和終點(diǎn)的連線。要求連線不重合,不穿越芯片,盡可能美觀,芯片位置參數(shù)變化時(shí)線條繪制更新等。
連線變形算法的詳細(xì)描述如圖3所示。(DrawLine()表示連線方法,GerPointx()表示獲得x軸方向的方法,GetPointy()表示獲得Y軸方向的方法)。連線效果圖如圖4所示。
7 結(jié)語(yǔ)
虛擬接口試驗(yàn)平臺(tái)已實(shí)現(xiàn)對(duì)8086匯編語(yǔ)言和MCS一51指令系統(tǒng)的仿真模擬解釋?zhuān)瑫r(shí)模擬出8053和8255接口芯片的部分功能,幾個(gè)重要算法的實(shí)現(xiàn)在測(cè)試過(guò)程中體現(xiàn)出良好的時(shí)間與空間性能。由于虛擬接口實(shí)驗(yàn)室平臺(tái)還處于實(shí)驗(yàn)性研究階段,對(duì)接口編程語(yǔ)言的解釋執(zhí)行功能比較完善,且可解釋的語(yǔ)言種類(lèi)還比較單一,應(yīng)豐富可解釋語(yǔ)言的種類(lèi),同時(shí)虛擬芯片庫(kù)的內(nèi)容還需大量擴(kuò)充,達(dá)到種類(lèi)齊全的所有接口芯片的模擬。
李寧官方微博19日發(fā)布聲明稱(chēng),近日,網(wǎng)絡(luò)上出現(xiàn)對(duì)于“逐夢(mèng)行”秀款部分產(chǎn)品的討論,李寧公司對(duì)此高度關(guān)注。此次相關(guān)產(chǎn)品的設(shè)計(jì)及造型給大家?guī)?lái)了困惑和疑慮,我們表示誠(chéng)摯的歉意。本次“逐夢(mèng)行”秀款產(chǎn)品的設(shè)計(jì)以“飛行”為主題,從飛...
關(guān)鍵字: 防護(hù) 網(wǎng)絡(luò)北京2022年10月18日 /美通社/ -- 10月14日,國(guó)際數(shù)據(jù)公司(IDC)發(fā)布《2022Q2中國(guó)軟件定義存儲(chǔ)及超融合市場(chǎng)研究報(bào)告》,報(bào)告顯示:2022年上半年浪潮超融合銷(xiāo)售額同比增長(zhǎng)59.4%,近5倍于...
關(guān)鍵字: IDC BSP 數(shù)字化 數(shù)據(jù)中心東京2022年10月18日 /美通社/ -- NIPPON EXPRESS HOLDINGS株式會(huì)社(NIPPON EXPRESS HOLDINGS, INC.)旗下集團(tuán)公司上海通運(yùn)國(guó)際物流有限公司(Nipp...
關(guān)鍵字: 溫控 精密儀器 半導(dǎo)體制造 BSP據(jù)CNMO了解,有韓媒報(bào)道稱(chēng),韓國(guó)將在下個(gè)月公布下一代網(wǎng)絡(luò)戰(zhàn)略,為6G移動(dòng)通信的商業(yè)化做準(zhǔn)備。據(jù)悉,戰(zhàn)略中除了6G網(wǎng)絡(luò)的智能化、融合和空間擴(kuò)展的技術(shù)戰(zhàn)略外,還將提出公私合營(yíng)的合作方式。
關(guān)鍵字: 6G 網(wǎng)絡(luò) 戰(zhàn)略