国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于網(wǎng)絡(luò)的軟硬件協(xié)同仿真平臺的制作方法

      文檔序號:6572998閱讀:295來源:國知局
      專利名稱:一種基于網(wǎng)絡(luò)的軟硬件協(xié)同仿真平臺的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明屬于集成電路芯片的功能仿真技術(shù)領(lǐng)域,特別涉及軟硬件協(xié)同仿真、驗(yàn)證技術(shù)。
      背景技術(shù)
      系統(tǒng)芯片(SOC)設(shè)計(jì)在近年迅速發(fā)展,它相對于ASIC的最大不同之處在于除了大量 硬件模塊之外,還包含大量的軟件,如操作系統(tǒng)、驅(qū)動(dòng)程序、通信協(xié)議以及各種應(yīng)用程序 等,其設(shè)計(jì)復(fù)雜度遠(yuǎn)高于傳統(tǒng)的集成電路芯片。因此對SOC芯片的仿真也變得非常困難, 不僅僅需要對系統(tǒng)硬件部分進(jìn)行仿真,還要對軟件部分進(jìn)行仿真,也就是要進(jìn)行軟硬件協(xié) 同仿真。
      軟硬件協(xié)同仿真技術(shù)是將一個(gè)復(fù)雜的soc設(shè)計(jì)按照IP模塊進(jìn)行劃分,采用基于模塊的
      仿真技術(shù),將一部分或全部模塊下載到可編程邏輯硬件上,用硬件電路來模擬其功能,該 部分電路工作在接近實(shí)時(shí)的運(yùn)行速度,而其余設(shè)計(jì)部分仍然運(yùn)行在軟件仿真器中,通過硬
      件平臺來取代純粹的計(jì)算機(jī)仿真,從而大大地提高soc芯片仿真的精確性。協(xié)同仿真系統(tǒng)
      由一個(gè)軟件執(zhí)行環(huán)境和一個(gè)硬件執(zhí)行環(huán)境組成,通過事件和命令,使用同步機(jī)制,在這兩 個(gè)環(huán)境之間進(jìn)行控制,使軟硬件協(xié)同工作,共同完成系統(tǒng)的仿真。
      軟件仿真模塊在計(jì)算機(jī)上運(yùn)行,采用較高的抽象描述級別的建模方法,并可以獲得軟件 仿真的靈活性和方便的調(diào)試手段。在硬件仿真平臺中的硬件仿真模塊通常是使用硬件描述
      語言(HDL)進(jìn)行寄存器傳輸級(RTL)的建模后,然后使用電子設(shè)計(jì)自動(dòng)化(EDA)工 具進(jìn)行綜合和布局布線處理,下載到硬件仿真平臺上實(shí)現(xiàn)。硬件仿真模塊在硬件仿真平臺 運(yùn)行,可較準(zhǔn)確地模擬模型的硬件特性,達(dá)到硬件的執(zhí)行速度,以及使用真實(shí)接口與外界 交換數(shù)據(jù)。
      在信號級的各種軟硬件協(xié)同仿真方法中,如果系統(tǒng)或模塊的輸入信號不會(huì)受自身輸出信 號的反饋影響,這種模式稱為測試矢量模式(Vectormode),由于輸入信號不受輸出信號 影響,因此可以一次施加多個(gè)時(shí)間節(jié)拍的激勵(lì)信號矢量,仿真速度快。如果系統(tǒng)或模塊的 輸入信號受自身輸出信號的反饋影響,這種模式稱為協(xié)同仿真模式(Co-Simulationmode)。 現(xiàn)在提出的各種協(xié)同仿真技術(shù)的實(shí)現(xiàn)方法,側(cè)重點(diǎn)主要是提高仿真效率方面,而在系統(tǒng) 靈活性、占用硬件資源、仿真方式的多樣性等方面的支持比較欠缺。隨著用戶待測設(shè)計(jì) (DUT)復(fù)雜度的不斷提高,硬件仿真平臺目標(biāo)板的I/O資源日趨緊張,系統(tǒng)應(yīng)盡量少地
      占用目標(biāo)板的I/0資源。另外,為了滿足不同用戶的不同仿真習(xí)慣,滿足不同仿真階段的 特殊需求,仿真平臺應(yīng)支持多種仿真模式。同時(shí),為了實(shí)現(xiàn)研發(fā)團(tuán)隊(duì)分布式地仿真,仿真 平臺應(yīng)支持遠(yuǎn)程仿真調(diào)試功能。

      發(fā)明內(nèi)容
      本發(fā)明的任務(wù)是實(shí)現(xiàn)一種基于網(wǎng)絡(luò)的軟硬件協(xié)同仿真平臺,這種平臺著重考慮了資源占 用低、調(diào)試靈活以及仿真手段豐富等特性。本發(fā)明可以實(shí)現(xiàn)Vector模式和Co-Simulation 模式的軟硬件協(xié)同仿真,它主要由三部分組成PC終端101、調(diào)試器102和目標(biāo)板103。 PC終端101安裝現(xiàn)場可編程邏輯門陣列(FPGA)開發(fā)工具111、仿真器Modelsimll2;用 戶在PC終端101上完成系統(tǒng)設(shè)計(jì)、配置文件生成、協(xié)同仿真激勵(lì)文件生成、采樣數(shù)據(jù)分 析。調(diào)試器102完成配置文件、協(xié)同仿真激勵(lì)文件、協(xié)同仿真響應(yīng)文件的翻譯與傳輸,完 成接口標(biāo)準(zhǔn)的轉(zhuǎn)換。目標(biāo)板具有一顆或多顆目標(biāo)FPGA106,運(yùn)行用戶DUT,模擬應(yīng)用目標(biāo) 系統(tǒng);目標(biāo)板具有I/O接口 109和JTAG接口 110, JTAG接口 110是配置目標(biāo)FPGA106 的通道,1/0接口 109是傳送激勵(lì)和返還響應(yīng)的通道。
      當(dāng)用戶需要進(jìn)行協(xié)同仿真時(shí),首先需要把包含了 DUT的配置文件下載到目標(biāo)FPGA106 上,然后在PC終端101的仿真器112中定義激勵(lì)矢量,PC終端101將激勵(lì)矢量保存成激 勵(lì)文件,通過以太網(wǎng)將激勵(lì)文件傳送到遠(yuǎn)程的調(diào)試器102翻譯成串行激勵(lì)信號,經(jīng)PCI-E 串行接口傳送到目標(biāo)板103;串行激勵(lì)信號通過I/O插座109送入目標(biāo)FPGA106。目標(biāo) FPGA106內(nèi)的協(xié)同仿真接口模塊108解析出并行激勵(lì)信號,實(shí)施激勵(lì),采集響應(yīng),再將響 應(yīng)數(shù)據(jù)打包,返回PC終端101進(jìn)行顯示、分析。對于Vector模式, 一個(gè)激勵(lì)文件包含多 個(gè)時(shí)刻的激勵(lì)信號矢量;對于Co-Simulation模式, 一個(gè)激勵(lì)文件僅包含一個(gè)時(shí)刻的激勵(lì)信 號矢量,PC終端101與目標(biāo)板103通過不斷地交互激勵(lì)文件和響應(yīng)文件,推動(dòng)仿真時(shí)刻的 不斷推進(jìn)。
      本發(fā)明的協(xié)同仿真平臺相對于現(xiàn)有其他的協(xié)同仿真平臺的優(yōu)點(diǎn)在于第一.本協(xié)同仿真 平臺在統(tǒng)一的多模式仿真機(jī)制上同時(shí)支持Vector模式和Co-Simulation模式的仿真;第二 調(diào)試器102與PC終端101以以太網(wǎng)線連接,支持用戶進(jìn)行遠(yuǎn)程下載與遠(yuǎn)程仿真調(diào)試;第 三.調(diào)試器102向目標(biāo)板103傳送用戶激勵(lì)信號和接收響應(yīng)信號時(shí),通過串行方式完成,大 大減少了對目標(biāo)板I/0資源的占用;第四.和業(yè)界廣泛采用的仿真器Modelsim聯(lián)合使用,用 戶操作與使用界面良好。


      圖1是本發(fā)明的系統(tǒng)組成結(jié)構(gòu)圖。包括PC終端101,目標(biāo)板103,連接前兩者的調(diào)試 器102。
      圖2是調(diào)試器102中控制FPGA105的內(nèi)部結(jié)構(gòu)圖。
      圖3是目標(biāo)FPGA106的內(nèi)部結(jié)構(gòu)圖。
      圖4是Vector仿真模式下仿真的數(shù)據(jù)流圖。
      圖5是Co-Simulation仿真模式下仿真的數(shù)據(jù)流圖。
      具體實(shí)施例方式
      本發(fā)明是一種基于網(wǎng)絡(luò)的軟硬件協(xié)同仿真平臺?,F(xiàn)結(jié)合附圖對本發(fā)明的軟硬件協(xié)同仿真 平臺進(jìn)行具體實(shí)施方式
      的描述。
      圖1示出了本發(fā)明系統(tǒng)組成圖。系統(tǒng)由PC終端lOl、調(diào)試器102和目標(biāo)板103三部分 組成。用戶在PC終端101上完成DUT的設(shè)計(jì)。由于DUT模塊必須依靠協(xié)同仿真接口模 塊108的支持,才能接收激勵(lì)信號、回傳響應(yīng)信號,因此用戶DUT模塊107必須與協(xié)同仿 真接口模塊108—起綜合、布局布線,產(chǎn)生FPGA配置文件。配置文件通過調(diào)試器102經(jīng) JTAG接口 110下載到目標(biāo)板103的目標(biāo)FPGA106。 Vector模式和Co-Simulation模式的激 勵(lì)信號矢量都在PC終端101的仿真器112Modelsim中產(chǎn)生,所有激勵(lì)信號矢量被打包形 成激勵(lì)文件發(fā)送到調(diào)試器102。調(diào)試器102主要由嵌入式微處理器ARM104和控制FPGA105 構(gòu)成,ARM104完成遠(yuǎn)程通信功能,控制FPGA105實(shí)現(xiàn)到目標(biāo)板103的各種本地邏輯時(shí)序。 用戶可讀的激勵(lì)文件被調(diào)試器102解析成硬件可懂的激勵(lì)信號,通過PCI-E接口以串行方 式發(fā)送到目標(biāo)板103。目標(biāo)板103上具有一顆或互聯(lián)的多顆FPGA,目標(biāo)FPGA106模擬應(yīng) 用目標(biāo)系統(tǒng),運(yùn)行有已經(jīng)下載的用戶DUT模塊107和協(xié)同仿真接口模塊108。協(xié)同仿真接 口模塊108將接收到的激勵(lì)信號施加給DUT模塊107。DUT模塊107對激勵(lì)產(chǎn)生相應(yīng)的響 應(yīng),協(xié)同仿真接口模塊108將響應(yīng)信號采集后送回調(diào)試器102。調(diào)試器102將這些響應(yīng)信 號封裝成響應(yīng)文件,通過以太網(wǎng)送回PC終端101,在仿真器112Modelsim中顯示響應(yīng)信號 波形。
      圖2是調(diào)試器102中控制FPGA105的內(nèi)部結(jié)構(gòu)圖,主要包括以下各功能模塊 l.ARM接口模塊201:調(diào)試器102中的ARM104完成遠(yuǎn)程通信功能,收發(fā)激勵(lì)文件和
      響應(yīng)文件??刂艶PGA105中的ARM接口模塊201負(fù)責(zé)從ARM104取來接收的激勵(lì)文件,
      以及向ARM104發(fā)送需要傳回的響應(yīng)文件。
      2. 地址解析模塊202:根據(jù)地址判斷輸入為指令還是數(shù)據(jù);如果是指令,則送入指令解 析模塊進(jìn)行解析;如果是數(shù)據(jù),則送入輸入數(shù)據(jù)緩沖器203,以備目標(biāo)FPGA配置模塊205 或發(fā)送激勵(lì)/接收響應(yīng)模塊207其中之一調(diào)用。
      3. 指令解析模塊204:解析送來的指令,以確定需要完成的功能。指令分為三種指令 (1)如果是配置目標(biāo)FPGA指令,則使能目標(biāo)FPGA配置模塊205; (2)如果是讀取目
      標(biāo)FPGA狀態(tài)寄存器指令,則使能讀目標(biāo)FPGA狀態(tài)寄存器模塊206; (3)如果是仿真運(yùn) 行指令,則使能發(fā)送激勵(lì)/接收響應(yīng)模塊207。
      4. 目標(biāo)FPGA配置模塊205:將送入的配置文件下載到目標(biāo)FPGA106進(jìn)行配置。
      5. 讀目標(biāo)FPGA狀態(tài)寄存器模塊206:讀取目標(biāo)FPGA106的狀態(tài)寄存器的值,以確定下 載是否成功等詳細(xì)信息。
      6. 發(fā)送激勵(lì)/接收響應(yīng)模塊207:當(dāng)仿真進(jìn)行時(shí),負(fù)責(zé)向目標(biāo)FPGA106發(fā)送激勵(lì)信號并 接收從目標(biāo)FPGA106返回的響應(yīng)信號。從該模塊發(fā)送的激勵(lì)信號和接收的信號響應(yīng)都是以 串行的方式傳輸。
      7. 反饋信息處理模塊208:當(dāng)目標(biāo)FPGA配置操作完成之后,將返回的操作結(jié)果傳送給 反饋信息處理模塊208,并通告ARM104。
      協(xié)同仿真過程中,來自ARM104的仿真運(yùn)行指令經(jīng)ARM接口模塊201送入地址解析模 塊202,判斷數(shù)據(jù)類型為指令,則轉(zhuǎn)發(fā)到指令解析模塊204;經(jīng)解析為仿真運(yùn)行指令,則使 能對應(yīng)的發(fā)送激勵(lì)/接收響應(yīng)模塊207。接著ARM接口模塊201將會(huì)收到后續(xù)的激勵(lì)信號, 地址解析模塊202判斷其為數(shù)據(jù)后送入輸入數(shù)據(jù)緩沖器203。隨后已被使能的發(fā)送激勵(lì)/接 收響應(yīng)模塊207開始發(fā)送激勵(lì)信號。待發(fā)送激勵(lì)/接收響應(yīng)模塊207接收到響應(yīng)信號后,通 知指令解析模塊204該指令已完成,取消使能;同時(shí)將接收的響應(yīng)信號傳給反饋信息處理 模塊208 ,再經(jīng)ARM接口模塊201返還給ARM104 。
      圖3是目標(biāo)FPGA106的內(nèi)部結(jié)構(gòu)圖。主要包含兩個(gè)模塊用戶DUT模i央107和協(xié)同仿 真接口模塊108。協(xié)同仿真接口模塊108將來自調(diào)試器102的串行輸入的激勵(lì)信號轉(zhuǎn)換成 并行激勵(lì)信號,并且把當(dāng)前時(shí)刻的所有激勵(lì)信號并行施加給用戶DUT模塊107的各個(gè)端口 。 相反地,DUT模i央107在激勵(lì)信號作用下的響應(yīng)信號被協(xié)同仿真接口模塊108以并行的方 式采集,協(xié)同仿真接口模塊108對并行的響應(yīng)信號進(jìn)行并串轉(zhuǎn)換并同步后,以串行的方式 返還給調(diào)試器102。
      圖4是Vector仿真模式下仿真的數(shù)據(jù)流示意圖。用戶在仿真器112Modelsim中為用戶
      DUT準(zhǔn)備一個(gè)激勵(lì)文件,以EVCD (Extended Value Change Dump)格式保存。底層驅(qū)動(dòng) 407將激勵(lì)文件發(fā)送到遠(yuǎn)程的調(diào)試器102,調(diào)試器102將用戶可讀的激勵(lì)文件處理后,翻譯 成硬件可懂的激勵(lì)信號,以串行方式將當(dāng)前時(shí)刻的激勵(lì)信號發(fā)送給目標(biāo)板103。目標(biāo) FPGA106中的協(xié)同仿真接口模塊108根據(jù)這些激勵(lì)信號在DUT模塊107的對應(yīng)輸入端口 產(chǎn)生激勵(lì)信號電平與時(shí)序,并將短暫延時(shí)后的輸出端口的響應(yīng)信號值采集,并串轉(zhuǎn)換后發(fā) 往調(diào)試器102。調(diào)試器102繼續(xù)發(fā)送下一個(gè)時(shí)刻的激勵(lì)信號,并接收下一個(gè)時(shí)刻的響應(yīng)信 號,直至仿真時(shí)刻推進(jìn)至結(jié)束值。然后調(diào)試器102將所有采集到的串行響應(yīng)信號翻譯成響 應(yīng)文件,以EVCD格式保存,發(fā)送回PC端仿真器112顯示。
      圖5是Co-Simulation模式下仿真的數(shù)據(jù)流示意圖。用戶使用VHDL語言為DUT描述 測試平臺TestBench504,并在HDL仿真器112Modelsim上運(yùn)行。在Co-simulation模式下, 可以將一部分模塊(此處為模塊B506)下載到目標(biāo)FPGA106上實(shí)現(xiàn),而將其余模塊(此處為 模塊A505,模塊C507)繼續(xù)運(yùn)行在仿真器112中,而模塊B506由一個(gè)"黑匣子"結(jié)構(gòu)替 代,該"黑匣子"結(jié)構(gòu)保持了與原設(shè)計(jì)文件相同的端口屬性,DUT的其它部分可以不做任何 修改。仿真器112Modelsim通過調(diào)用面向VHDL語言的FLI接口 508將激勵(lì)信息傳送到動(dòng) 態(tài)鏈接庫509,對應(yīng)的庫函數(shù)將激勵(lì)信息翻譯成EVCD格式的激勵(lì)文件,經(jīng)底層驅(qū)動(dòng)407 發(fā)送到遠(yuǎn)程的調(diào)試器102,調(diào)試器102將用戶可讀的激勵(lì)文件處理后,翻譯成硬件可懂的 激勵(lì)信號,以串行方式將當(dāng)前時(shí)刻的激勵(lì)信號發(fā)送給目標(biāo)FPGA106。目標(biāo)FPGA106中的 協(xié)同仿真接口模塊108根據(jù)這些激勵(lì)信號在DUT模塊107的對應(yīng)輸入端口產(chǎn)生激勵(lì)信號電 平與時(shí)序,并將短暫延時(shí)后的輸出端口的響應(yīng)信號值采集,并串轉(zhuǎn)換后發(fā)往調(diào)試器102。 調(diào)試器102將采集到的當(dāng)前串行響應(yīng)信號翻譯成響應(yīng)文件,以EVCD格式保存,發(fā)送回PC 端仿真器112。 PC端仿真器112根據(jù)testbench504和反饋回來的響應(yīng)信號矢量產(chǎn)生新的下 一時(shí)刻的激勵(lì)信號矢量,PC終端101與目標(biāo)板103間如此反復(fù)交互激勵(lì)文件和響應(yīng)文件, 直至仿真時(shí)刻推進(jìn)至結(jié)束值。
      權(quán)利要求
      1.一種基于網(wǎng)絡(luò)的軟硬件協(xié)同仿真平臺,包括三個(gè)部分運(yùn)行軟件部分的用戶PC端,模擬硬件部分的目標(biāo)板,以及將二者互連的調(diào)試器。
      2. 根據(jù)權(quán)利要求1所述的一種基于網(wǎng)絡(luò)的軟硬件協(xié)同仿真平臺,其特征在于對Vector模式和Co-simulation模式仿真的支持可以在統(tǒng)一的多模式仿真體制上 實(shí)現(xiàn)。
      3. 根據(jù)權(quán)利要求2所述的一種基于網(wǎng)絡(luò)的軟硬件協(xié)同仿真平臺,其特征在于 統(tǒng)一的多模式仿真體制使用調(diào)試器將用戶PC端產(chǎn)生的激勵(lì)文件翻譯成目標(biāo)板硬 件可識別的激勵(lì)信號,將目標(biāo)板回傳的響應(yīng)信號翻譯成用戶可讀的響應(yīng)文件。
      4. 根據(jù)權(quán)利要求2所述的一種基于網(wǎng)絡(luò)的軟硬件協(xié)同仿真平臺,其特征在于 統(tǒng)一的多模式仿真體制下,Co-simulation模式的仿真時(shí)刻的推進(jìn)由用戶PC端與 目標(biāo)板間反復(fù)交互激勵(lì)文件與響應(yīng)文件來實(shí)現(xiàn);Vector模式的仿真時(shí)刻的推進(jìn)由 調(diào)試器與目標(biāo)板間反復(fù)交互激勵(lì)信號與響應(yīng)信號來實(shí)現(xiàn)。
      5. 根據(jù)權(quán)利要求1所述的一種基于網(wǎng)絡(luò)的軟硬件協(xié)同仿真平臺,其特征在于 目標(biāo)FPGA中的協(xié)同仿真接口模塊與用戶DUT模塊以并行的方式施加激勵(lì)和采 集響應(yīng),而與調(diào)試器以串行的方式通信。
      6. 根據(jù)權(quán)利要求1所述的一種基于網(wǎng)絡(luò)的軟硬件協(xié)同仿真平臺,其特征在于 用戶PC端與調(diào)試器通過以太網(wǎng)連接,雙方通過TCP/IP SOCKET通信,實(shí)現(xiàn)協(xié)同仿真的遠(yuǎn)程下載和遠(yuǎn)程仿真調(diào)試。
      全文摘要
      本發(fā)明公開了一種基于網(wǎng)絡(luò)的軟硬件協(xié)同仿真平臺的實(shí)現(xiàn)方法,屬于SOC仿真、驗(yàn)證技術(shù)領(lǐng)域。系統(tǒng)包括運(yùn)行軟件部分的PC終端、模擬硬件部分的目標(biāo)板、以及將兩者互連的調(diào)試器。本發(fā)明對Vector模式和Co-simulation模式仿真的支持可以在統(tǒng)一的多模式仿真體制上實(shí)現(xiàn)。調(diào)試器與目標(biāo)板的通信采用串并轉(zhuǎn)換方式,大大減少對I/O資源的占用。軟件部分與硬件部分通過以太網(wǎng)通信,以支持遠(yuǎn)程協(xié)同仿真。
      文檔編號G06F17/50GK101174283SQ20071005068
      公開日2008年5月7日 申請日期2007年12月3日 優(yōu)先權(quán)日2007年12月3日
      發(fā)明者翔 凌, 旸 岳, 巫世弘, 李忠琦, 海 白, 胡劍浩, 陳庚生 申請人:電子科技大學(xué)