文献标识码:A
DOI:10.16157/j.issn.0258-7998.200028
中文引用格式:折如义,李炳辉,姜佩贺. 三级流水线RISC-V处理器设计与验证[J].电子技术应用,2020,46(5):44-49.
英文引用格式:She Ruyi,Li Binghui,Jiang Peihe. Design and verification of RISC-V processor with three-stage pipeline[J]. Application of Electronic Technique,2020,46(5):44-49.
0 引言
集成电路产业是国家战略性产业,是推动信息产业发展的源泉和动力,而我国集成电路产业发展严重滞后[1]。在各行各业需求量与日俱增的处理器领域,ARM处理器在嵌入式领域占主导地,Intel x86架构处理器在桌面和服务器领域占据着垄断地位[2]。RISC-V指令集是加州大学伯克利分校于2014年设计并发布的一款开源指令集架构[3],具有免费开放、短小精悍、性能优越三大特征,可以被任何学术机构或商业组织自由使用,能够满足从微控制器到超级计算机等各种应用的需求[4]。RISC-V的出现可能改变由ARM和Intel x86主导处理器架构的竞争格局[5]。
流水线是处理器设计最重要的环节之一,严重影响着处理器的运算速度和运算模块的张度。早期的经典流水线是五级流水[6],分别为取指、译码、执行、访存和写回,流水线的长短不仅仅影响吞吐率而且影响面积开销。现代的高性能处理器相比最早期的处理器往往具有更深级别的流水线。流水线的级数越多,流水线被切得越细,每一级流水线内容纳的硬件逻辑越小,进而吞吐率性能更佳,这是流水线深度加深的正面意义[7]。但由于级数加深,会消耗更多的寄存器,带来更多的面积开销,同时对于分支预测失败只能采取冲刷流水线的方法解决,浪费了处理器性能。因此,流水线的深度要根据不同的应用场景选择,本设计采用三级流水线结构,以在兼顾处理器功能的前提下实现低功耗的设计目标。
基于以上背景,本研究在分析了RISC-V指令系统的基础上,使用Verilog语言分别设计了RISC-V处理器的取值单元、译码单元和执行单元,最终实现了一款基于RISC-V指令集的32位三级流水处理器,并使用RV32I整数运算指令集对处理器进行了仿真验证,达到预定目标。
论文详细内容请下载http://www.chinaaet.com/resource/share/2000002789
作者信息:
折如义1,李炳辉2,姜佩贺2
(1.河套学院 理学院,内蒙古 巴彦淖尔015000;2.烟台大学 光电信息科学技术学院,山东 烟台264005)