【技術實現步驟摘要】
本專利技術涉及計算機技術,尤其涉及一種對微處理器進行功能驗證的方法及服務器。
技術介紹
微處理器是用一片或少數幾片大規模集成電路組成的中央處理器。這些電路執行控制部件和算術邏輯部件的功能。微處理器能完成取指令、執行指令,以及與外界存儲器和邏輯部件交換信息等操作,是微型計算機的運算控制部分。通常對微處理器進行功能驗證的方法有三種:基于軟件仿真器的仿真驗證、基于現場可編程門陣列(Field Programmable Gates Array,簡稱FPGA)原型驗證系統的仿真驗證和基于硬件仿真加速器的仿真驗證。基于FPGA原型驗證系統的仿真驗證是在FPGA上實現一個主控電路,通過主控電路將隨機指令和其對應的期望運行結果下載到FPGA系統仿真板的內部寄存器中,并在完成FPGA原型驗證系統主板的初始化后進入仿真工作狀態,即將被驗證微處理器在FPGA原型驗證系統主板上運行并輸出結果,然后在仿真結束后將內部寄存器與上述期望運行結果進行比較,以確定被驗證微處理器的輸出是否有錯;基于硬件仿真加速器的仿真驗證首先用硬件仿真加速器將被驗證微處理器的寄存器傳輸級(Register Transfer Level,簡稱RTL)代碼綜合為可以燒入到硬件仿真加速器上的網表文件,并將操作系統和應用程序軟件的可執行文件轉換為可以寫入到硬件加速器中的格式,然后將上述網表文件燒入到硬件仿真加速器中,再將經過上述經格式處理后的可執行文件寫入硬件仿真加速器的內存中,然后啟動硬件仿真加速器開始仿真,并運行操作系統和應用程序進行驗證。然而,基于FPGA原型驗證系統進行仿真驗證時,由于內部寄存器與期望結果 ...
【技術保護點】
一種對微處理器進行功能驗證的方法,其特征在于,包括:生成至少一條隨機指令、各所述隨機指令對應的期望運行結果,以及初始化數據,所述初始化數據用于初始化微處理器的內存和用戶可見寄存器;根據所述微處理器的原始寄存器傳輸級RTL代碼,生成比特流文件;將所述比特流文件加載至硬件仿真加速器中,并將所述至少一條隨機指令和所述初始化數據加載至模擬微處理器的內存和所述用戶可見寄存器中,所述模擬微處理器通過將所述微處理器燒入所述硬件仿真加速器形成;控制所述硬件仿真加速器運行所述至少一條隨機指令;根據所述硬件仿真加速器對所述至少一條隨機指令的運行結果和各所述隨機指令對應的期望運行結果,驗證所述微處理器的功能。
【技術特征摘要】
1.一種對微處理器進行功能驗證的方法,其特征在于,包括:生成至少一條隨機指令、各所述隨機指令對應的期望運行結果,以及初始化數據,所述初始化數據用于初始化微處理器的內存和用戶可見寄存器;根據所述微處理器的原始寄存器傳輸級RTL代碼,生成比特流文件;將所述比特流文件加載至硬件仿真加速器中,并將所述至少一條隨機指令和所述初始化數據加載至模擬微處理器的內存和所述用戶可見寄存器中,所述模擬微處理器通過將所述微處理器燒入所述硬件仿真加速器形成;控制所述硬件仿真加速器運行所述至少一條隨機指令;根據所述硬件仿真加速器對所述至少一條隨機指令的運行結果和各所述隨機指令對應的期望運行結果,驗證所述微處理器的功能。2.根據權利要求1所述的方法,其特征在于,所述生成至少一條隨機指令、各所述隨機指令對應的期望運行結果,以及初始化數據,具體包括:根據所述微處理器的結構,生成所述至少一條隨機指令、各所述隨機指令對應的期望結果以及所述初始化數據;對所述至少一條隨機指令及所述初始化數據進行處理,以使所述至少一條隨機指令的格式和所述初始化數據的格式,與所述模擬微處理器的內存和用戶可見寄存器中所存儲的數據格式匹配中。3.根據權利要求1或2所述的方法,其特征在于,所述根據微處理器的原始寄存器傳輸級RTL代碼,生成比特流文件,具體包括:對所述原始RTL代碼中不可綜合的代碼和所述硬件仿真加速器中不能處理的代碼進行替換,生成替換RTL代碼;在所述替換RTL代碼中增加用于初始化所述用戶可見寄存器的第一邏輯代碼,生成被驗證RTL代碼;生成所述期望運行結果對應的第二邏輯代碼;對所述被驗證RTL代碼和所述第二邏輯代碼進行綜合布局,生成所述比特流文件。4.根據權利要求3所述的方法,其特征在于,所述根據所述硬件仿真加速器對所述至少一條隨機指令的運行結果和各所述隨機指令對應的期望運
\t行結果,驗證所述微處理器的功能之后,還包括:若任意一條隨機指令的運行結果與其對應的期望運行結果不同,則重新運行該隨機指令,并采用調試波形文件對該隨機指令進行調試。5.根據權利要求2所述的方法,其特征在于,所述初始化數據包括:第一文件、虛頁號和第二文件,所述第一文件包括所述模擬微處理器的內存的初始化值,所述第二文件包括所述至少一條隨機指令的程序地址PC。6.根據權利要求5所述的方法,其特征在于,所述對所述至少一條隨機指令及所述初始化數據進行處理,具體包括:為每個虛頁號分配一個實頁號,并生成頁表,所述頁表用于保存所述虛頁號與所述實頁號之間的對應關系;根據所述頁表,把每條所述隨機指令的PC轉換為第一物理地址,并將每條第一物理地址對應的隨機指令合并至第三文件,所述第一物理地址為所述隨機指令的16進制編碼;根據所述頁表,把所述微處理器的內存的虛地址轉換為第二物理地址,并將每條第二物理地址對應的所述微處理器的內存的初始化值合并至第四文件,所述第二物理地址為所述微處理器的內存的虛地址的初始化值。7.根據權利要求3所述的方法,其特征在于,所述在所述替換RTL代碼中增加用于初始化所述用戶可見寄存器的第一邏輯代碼,生成被驗證RTL代碼包括:在所述替換RTL代碼中增加寄存器數組;在所述替換RTL代碼中增加所述第一邏輯代碼,生成所述被驗證RTL代碼,所述第一邏輯代碼用于讀取所述寄存器數組內每個寄存器的數值,并將所述每個寄存器的數...
【專利技術屬性】
技術研發人員:王朋宇,尹夕振,
申請(專利權)人:龍芯中科技術有限公司,
類型:發明
國別省市:北京;11
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。