基于RISC-V架構的Spike緩存模型的設計和實現
電子技術應用
唐屹晨,孫維東,胡小剛,毛曉煒
(中國電子科技集團公司第五十八研究所,江蘇 無錫 214072)
摘要: 使用基于精簡指令集原則的指令架構(RISC-V)的指令集,針對現有Spike驗證模型中的緩存寫回功能的缺失問題,設計一種基于RISC-V指令集的現代超標量處理器緩存模型。基于現代高速緩存的基本原理,結合Spike驗證模型,實現現代高速緩存的基本讀寫操作,并進行系統級芯片(SoC)環境下的仿真和驗證,可作為微型電子芯片(IC)前端邏輯設計中的驗證模型使用。該方案能夠以較快的時間完成基于RISC-V指令集的大型SoC的設計與驗證。
中圖分類號:TN407
文獻標志碼:A
DOI: 10.16157/j.issn.0258-7998.223521
中文引用格式: 唐屹晨,孫維東,胡小剛,等. 基于RISC-V架構的Spike緩存模型的設計和實現[J]. 電子技術應用,2023,49(7):48-54.
英文引用格式: Tang Yichen,Sun Weidong,Hu Xiaogang,et al. Design and implementation of Spike cache model based on RISC-V architecture[J]. Application of Electronic Technique,2023,49(7):48-54.
文獻標志碼:A
DOI: 10.16157/j.issn.0258-7998.223521
中文引用格式: 唐屹晨,孫維東,胡小剛,等. 基于RISC-V架構的Spike緩存模型的設計和實現[J]. 電子技術應用,2023,49(7):48-54.
英文引用格式: Tang Yichen,Sun Weidong,Hu Xiaogang,et al. Design and implementation of Spike cache model based on RISC-V architecture[J]. Application of Electronic Technique,2023,49(7):48-54.
Design and implementation of Spike cache model based on RISC-V architecture
Tang Yichen,Sun Weidong,Hu Xiaogang,Mao Xiaowei
(China Key System & Integrated Circuit Co., Ltd., Wuxi 214072, China)
Abstract: In order to solve the cache write back missing problem of the Spike verification model,this paper presents a superscalar cache model based on the reduced instruction set computer(RISC-V) instruction set。This cache model is based on the Spike environment, the cache model implements the basic principles of superscalar cache. This cache model implements the high level cache write back and write through process, and it is verified in the system level chip (SoC) simulation. This scheme can be used as a model for front-end logic verification, and it can complete large scale verification based on the RISC-V instruction set in a shorter time.
Key words : RISC-V;Spike;cache model
0 引言
嵌入式微處理器以性能高、功耗低等特點在電子行業得到了廣泛應用。由于RISC-V[1]指令集的開源性、模塊化和成熟性,國內基于RISC-V指令集的嵌入式處理器在近幾年得到了快速發展。然而,縱觀國內對于RISC-V的研究多集中于理論和設計等領域,對于諸如高速緩存等特定方向的研究案例較少,對于Spike等驗證模型的研究則更為缺乏。
Spike[2]是RISC-V的基金會指定的根據RISC-V 指令集架構(ISA)標準實現的驗證模型, Spike通過tracer 函數完成高速緩存的實時記錄,但是沒有現代超標量處理器所擁有的緩存處理算法。Spike的內存管理單元通過地址映射實現與處理器模塊的交互,通過緩存實現數據在CPU和內存的不同讀寫速度之間的匹配。內存管理單元主要包括地址轉換緩存(TLB)單元和地址映射單元,MMU模塊將虛擬地址轉換為物理地址,包含地址轉換緩存功能。
Spike的緩存模塊不存儲數據,只是簡單地記錄訪問的次數、命中率、缺失率和寫回率。對于經過緩存的數據沒有任何的記錄,緩存的操作原理也并沒有按照超標量高速緩存實現。Spike中的緩存模塊通過tracer 函數和victim函數模擬緩存的寫回行為,并且允許設置緩存的通道數路數、組路數和行數來配置緩存的參數。這種簡單的模擬對于緩存讀寫場景的驗證會帶來極大的不準確性,對于前端邏輯設計與驗證的工作也帶來挑戰。
本文詳細內容請下載:http://www.xxav2194.com/resource/share/2000005391
作者信息:
唐屹晨,孫維東,胡小剛,毛曉煒
(中國電子科技集團公司第五十八研究所,江蘇 無錫 214072)
此內容為AET網站原創,未經授權禁止轉載。