一种RISC-V验证系统的设计与实现
2021-09-22刘旸丁涛杰汤明宏刘志利
刘旸 丁涛杰 汤明宏 刘志利
(电子科技集团有限公司第五十八研究所 江苏省无锡市 214000)
由美国加州大学伯克利分校(UCB)设计并公布的RISC-V ISA是一种基于精简指令集计算原理的指令集架构[1,2]。相比当前发展相对成熟的商业架构,RISC-V 指令集架构凭借精简、自由、开源可控等优势[3],其研究与开发受到了越来越多的关注,对IP的前端验证提出了新的要求。如果采用软件系统仿真的方式,成本较低、易于上手[4],但与硬件的结合不够紧密;已有的商业开发平台受限于FPGA时序性能又不能对IP进行充分验证[5]。本文以高性能FPGA为硬件核心,结合RISC-V软件工具链,设计了一套完整的RISC-V处理器IP前端功能验证平台,并在项目中得到了良好的应用。
1 系统架构
本验证系统需要实现对RISC-V处理器IP的前端功能进行验证,即通过FPGA来实现RISC-V处理器的RTL行为,并通过与上位机、板上外设芯片的交互,验证RISC-V处理器IP的功能是否正确。验证系统主要由上位机、JTAG调试、FPGA验证板和直流电源组成。其中,上位机通过UART串口与验证板进行交互,同时验证板上的FPGA仿真RISC-V处理器,实现对处理器内核的自测试,并通过与外设芯片的交互验证IP的相关功能,并将交互结果上报上位机显示。验证系统示意图如图1所示。
2 系统硬件设计
系统硬件的核心是FPGA验证板,该验证板主要由FPGA、SPI Flash、CFI Flash、SRAM、电源IC等组成。
当FPGA从配置Flash中加载、运行RISC-V IP综合产生的MCS文件后,FPGA相当于RISC-V处理器,此时可以通过GPIO、UART、SPI以及外部存储总线等部件访问Flash、片外SRAM等外设。在综合考虑性能、成本、引脚资源等方面后,选择XC7K325T-FFG900I作为本验证板的FPGA芯片。……
