System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本公開涉及計算機領域,尤其涉及計算機系統對軟硬件指令的仿真。
技術介紹
1、隨著云計算、大數據、個人計算機等領域對于處理器的算力增長需求越來越高,處理器的復雜度變得越來越大,且要求產品的迭代速度越來越快。而對處理器產品、尤其是芯片驗證的時間往往占據整個芯片研發時間的70%以上。傳統的驗證方法在驗證的前期后期分別進行硬件和軟件的驗證,并且軟件系統驗證依賴于需要昂貴板卡資源的硬件仿真系統(emulator),導致驗證效率和質量較低。
技術實現思路
1、盡管計算機系統軟硬件各自的研發時間緊任務重,但本領域一直缺乏全周期的軟硬件協同驗證。如何提高芯片的驗證效率和質量、進而縮短處理器研發時間成為了關注的問題。
2、有鑒于此,本公開提出了一種計算機系統,所述計算機系統包括仿真虛擬機單元,被配置為利用所述仿真虛擬機單元運行基本輸入輸出系統、操作系統和應用軟件,所述仿真虛擬機單元包括被配置為將仿真虛擬機指令翻譯成測試平臺能夠執行的指令的指令翻譯器和指令執行器,所述仿真虛擬機單元利用共享內存將指令發送到所述測試平臺上執行,并接收來自所述測試平臺的測試執行結果;所述指令翻譯器包括cpu模擬器,所述cpu模擬器與所述基本輸入輸出系統以及與所述操作系統進行所述指令的接收和發送,所述指令翻譯器還包括多個用于從所述cpu模擬器抓取相應指令的指令抓取器;以及所述指令執行器包括:請求過濾模塊、內存模擬器、外設模擬器、請求控制模塊和傳輸模塊,其中,所述請求過濾模塊被配置為對從所述指令翻譯器接收到的各類型
3、利用上述的全指令抓取器、請求過濾器,根據本公開的各方面可以實現以下效果中的至少一方面:大大提高了仿真系統的通用性,能夠減少仿真所依賴的仿真器板卡等硬件資源;通過仿真虛擬機與測試平臺的交互,可以實現軟硬件協同測試,從而縮短芯片驗證所耗時長;可通過調整請求過濾模塊的指令過濾規則,適配不同待測設計的測試,從而實現靈活測試。
4、根據下面參考附圖對示例性實施例的詳細說明,本公開的其它特征及方面將變得清楚。
本文檔來自技高網...【技術保護點】
1.一種計算機系統,所述計算機系統包括仿真虛擬機單元,被配置為利用所述仿真虛擬機單元運行基本輸入輸出系統、操作系統和應用軟件,其特征在于,
2.根據權利要求1所述的系統,其中,各所述指令抓取器包括:存儲器指令抓取器、輸入輸出指令抓取器、模型專用寄存器指令抓取器、特殊指令抓取器和中斷指令抓取器;
3.根據權利要求1所述的系統,其中,各所述指令抓取器根據仿真虛擬機指令各自的特性來抓取與各所述指令抓取器相對應的指令代碼。
4.根據權利要求1所述的系統,其中,所述請求過濾模塊根據如下任意之一對指令進行過濾:
5.根據權利要求4所述的系統,其中,所述請求過濾模塊根據所述地址區間所對應的是內存、外設還是待測設計,來判斷所述指令是否為所述待測設計所需要的指令。
6.根據權利要求1所述的系統,其中,所述請求控制模塊對被過濾剩余的指令進行編碼、追蹤和流量控制,并且將從所述測試平臺上的待測設計返回到所述共享內存的數據回填到所述仿真虛擬機單元、再由所述仿真虛擬機單元返回給發出所述指令的所述基本輸入輸出系統或者操作系統。
7.根據權
8.根據權利要求2所述的系統,其中,所述傳輸模塊對所接收到的輸入輸出指令、模型專用寄存器指令和特殊指令中的至少一者進行打包,從而在一個數據包中以與各指令相對應的格式來傳送輸入輸出指令、模型專用寄存器指令和特殊指令中的至少一者。
9.根據權利要求1所述的系統,其中,所述傳輸模塊監聽所述共享內存的通信信道,所述通信信道包括中斷傳輸信道以及存儲器指令、輸入輸出指令和模型專用寄存器指令的讀取數據信道;
10.根據權利要求1所述的系統,其中,仿真虛擬機進程和測試平臺進程通過共享內存隊列通信協議來共享所述計算機系統的物理內存,
11.根據權利要求10所述的系統,其中,所述共享內存隊列通信協議的消息格式包括共享內存報頭,所述共享內存報頭包括用于在所述仿真虛擬機單元和所述測試平臺之間進行信息交換的邊帶信息,所述邊帶信息在初始化時由所述仿真虛擬機單元設置并在傳輸所述中斷指令時使用。
12.根據權利要求11所述的系統,其中,所述共享內存報頭包括在初始化時由所述仿真虛擬機單元設置的與所述測試平臺之間的通信信道的數量和描述信息,使得所述測試平臺根據所述數量和所述描述信息來綁定所述仿真虛擬機單元所創建的通信信道。
13.根據權利要求1所述的系統,其中,所述測試平臺通過共享內存與所述仿真虛擬機單元進行通信,將與出現故障的待調試軟件系統相同的軟件系統在所述測試平臺中運行以進行故障復現,并且響應于所述測試平臺復現出所述故障,利用調試手段來確定所述故障的故障類型,其中,所述故障類型包括:軟件故障、硬件故障。
14.根據權利要求13所述的系統,其中,所述測試平臺上的待測設計為芯片或者子系統級設備,響應于所述芯片或者子系統級設備在測試平臺上運行待調試軟件系統時出現故障,將所述待測設計改變為更小規模的子系統級設備或模塊級設備,并將與出現故障的待調試軟件系統相同的軟件系統在所述更小規模的子系統級設備或模塊級設備中運行以進行故障復現調試。
15.根據權利要求1所述的系統,其中,所述測試平臺包括連接到待測設計的信號切換器,從測試開始直到所述測試平臺的環境初始化結束為止,所述信號切換器將所述待測設計連接到所述測試平臺的原有環境以對所述待測設計進行初始化。
...【技術特征摘要】
1.一種計算機系統,所述計算機系統包括仿真虛擬機單元,被配置為利用所述仿真虛擬機單元運行基本輸入輸出系統、操作系統和應用軟件,其特征在于,
2.根據權利要求1所述的系統,其中,各所述指令抓取器包括:存儲器指令抓取器、輸入輸出指令抓取器、模型專用寄存器指令抓取器、特殊指令抓取器和中斷指令抓取器;
3.根據權利要求1所述的系統,其中,各所述指令抓取器根據仿真虛擬機指令各自的特性來抓取與各所述指令抓取器相對應的指令代碼。
4.根據權利要求1所述的系統,其中,所述請求過濾模塊根據如下任意之一對指令進行過濾:
5.根據權利要求4所述的系統,其中,所述請求過濾模塊根據所述地址區間所對應的是內存、外設還是待測設計,來判斷所述指令是否為所述待測設計所需要的指令。
6.根據權利要求1所述的系統,其中,所述請求控制模塊對被過濾剩余的指令進行編碼、追蹤和流量控制,并且將從所述測試平臺上的待測設計返回到所述共享內存的數據回填到所述仿真虛擬機單元、再由所述仿真虛擬機單元返回給發出所述指令的所述基本輸入輸出系統或者操作系統。
7.根據權利要求6所述的系統,其中,所述請求控制模塊將期望有數據返回的指令按照識別編碼進行記錄,并且響應于從所述傳輸模塊接收到所述待測設計返回的數據,根據所述識別編碼從所述記錄中獲取指令信息,并根據所獲取的指令信息將所述返回的數據發送給所述仿真虛擬機單元中的所述cpu模擬器。
8.根據權利要求2所述的系統,其中,所述傳輸模塊對所接收到的輸入輸出指令、模型專用寄存器指令和特殊指令中的至少一者進行打包,從而在一個數據包中以與各指令相對應的格式來傳送輸入輸出指令、模型專用寄存器指令和特殊指令中的至少一者。
9.根據權利要求1所述的系統,其中,所述傳輸模塊監聽所述共享內存的通信信道,所述通信...
【專利技術屬性】
技術研發人員:李用維,宋永峰,丁迎來,石鑫,
申請(專利權)人:上海兆芯集成電路股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。