基于RISC-V 的教学模型机设计
2021-03-25康磊李鑫李慧郑豪威
现代计算机 2021年4期
康磊,李鑫,李慧,郑豪威
(西安石油大学计算机学院,西安710000)
0 引言
《计算机组成原理》是计算机相关专业的一门重要的专业基础课。该课程主要介绍计算机内部的工作原理,帮助学生深入理解计算机的工作流程[1]。对于这种实践性很强的课程,实验环节是学好课程的关键步骤,它有助于学生对抽象理论的理解,可以亲身体验平时只能依靠老师讲解、自己想象的情景[2-3]。控制器的设计是课程的核心,它需要控制整个硬件系统的各个模块,因此必须深刻了解指令系统中各条指令功能,以及每条指令的数据通路的建立过程,能够正确给出各部件时序控制信号,保证每一条指令的顺利执行。
本文基于RISC-V 指令集设计了单周期的教学模型机。学生可以对于CPU 内部的工作流程以及各个功能部件有更深刻的理解,并根据个人的理解设计模型机的控制器,设计完成后进行功能仿真,学生可以通过观察仿真结果图判断指令执行的正确性,加强自身对计算机系统的理解。
1 模型机
在进行模型机设计时,需根据模型机的指令集,设计模型机内部功能模块和完整的数据通路。本文使用Verilog 硬件描述语言实现对各个模块,然后进行整机的功能仿真和测试。
1.1 模型机指令集选取
指令集(Instruction Set Architecture,ISA),是指可以被一台计算机执行的全部指令的集合,是计算机硬件和上层软件之间的接口。本文基于RISC-V 指令集进行设计,存储系统采用哈佛结构。
RISC-V 指令集[4-5]共有R-type、I-type、S-type、Btype、U-type、J-type 六种指令类型,具体指令格式如图1 所示。……
登录APP查看全文
