RISC-V处理器设计——riscv-mini的Chisel源码分析与实验
用敏捷设计语言揭开处理器面纱,体验将RISC-V处理器从顶层设计到底层硬件落地的全过程。

作者:罗秋明、刘刚

丛书名:面向数字化时代高等学校计算机系列教材

定价:59元

印次:1-1

ISBN:9787302725671

出版日期:2026.08.01

印刷日期:2026.08.27

图书责编:苏东方

图书分类:教材

电子书
在线购买
分享
内容简介
作者简介
前言序言
资源下载
查看详情 查看详情 查看详情

首先简单介绍Chisel数字系统设计的入门基础知识;然后介绍RISC-V处理器ISA架构;接着对riscv-mini这一款RISC-V处理器的架构进行简单分析,详细分析其Chisel设计源码和细节;最后给出相应的RISC-V 5级流水线设计的由浅入深的系列实验,同时给出实验的参考答案代码。 与传统的计算机组成原理或计算机系统结构实验不同,这里以Chisel而不是传统老旧的Verilog或VHDL为设计语言,能够在更高抽象层次和更灵活的方式进行处理器设计。与使用VHDL或者Chisel语言设计后仅作仿真的实验亦不相同,我们更进一步将处理器核用FPGA实现,因此还包括了外设和存储接口等技术,涉及到了简单的SoC设计,并且能以可以运行程序的硬件芯片呈现出来。可以说是把国科大“一生一芯”的内容简化后,落到普通高校本科生的可接受的程度。 读者对象为计算机相关专业的教师、学生和科研人员,需要具备基本的计算机基础知识、简单的编程能力,并希望学习处理器设计入门知识。

罗秋明,深圳大学计算机与软件学院副教授、硕士生导师。主讲课程:计算机体系结构、操作系统。研究方向:高性能计算。近年参与基于龙芯多核处理器的普及型高性能计算机KD-60、KD-90、SD-1、SD-2和SD-30的研制,获教育部科技进步二等奖。著《操作系统原型-xv6分析与实验》、《OpenMP编译原理及实现技术》、《Linux技术内幕》、《操作系统之编程观察》《和Linux GNU C程序观察》《操作系统原型——xv6分析与实验》,译《Intel Parallel studio 环境下的并行程序设计》。近期研究数据流计算系统,涉及数据流处理器架构、操作系统和DFC数据流语言及其运行环境。

前言 学习掌握一项新技能、新事物的成就感都是令人兴奋的,例如,运行第一个hello world程序、实现第一个走迷宫算法、点亮第一个走马灯电路、首次听到自己做的收音机传来广播声音等。设计一个自己的RISCV处理器无疑更是一件令人激动不已的事情。 虽然当前能买到关于DIY一个小操作系统原型或小处理器原型的书籍,或者有相关的网络开源的参考文档,但由于这些工作涵盖领域和涉及的技术较多,除了经验较为丰富的读者外一般难以自行展开学习。这也是本教材的出发点之一,即如何在一个学期内让普通的本科学生能够动手完成一个简单的处理器硬件设计。 为了将少数爱好者才能完成的工作,变成更多普通学生可以参与的事情,就必须做到实验环境简单、操作细节丰富、能复用现有知识体系和补充必要的相关知识等。在本书第一篇里,用3章对RISCV处理器的背景和指令集做了简单介绍,并用Ripes虚拟机供读者练习RISCV汇编,为读者快速打下必要的基础。第二篇学习riscvmini处理器的Chisel设计,这部分内容使用了4章的篇幅。相较于使用verilog的RISCV设计本书更加高效简洁。因为Chisel就是伴随着RISCV一起产生的,目的就是让个人或小团队也能应对处理器系统设计这样繁重的挑战任务。这4章分别是实验环境的构建、Chisel数字系统设计、riscvmini处理器核,以及系统构建与仿真运行。读者如果学习过计算机体系结构或组成原理,将会加速学习过程。最后第三篇给出了基础观测实验、初级设计实验、中级设计实验及高级增强实验,读者可以尝试自己动手玩一玩riscvmini这个大玩具。 笔者花费多...

目录
荐语
查看详情 查看详情
目录

配套资源第一篇RISCV基础

第1章引言3

1.1RISCV指令集架构3

1.2Chisel硬件设计语言4

1.3目标读者5

1.3.1读者的学习动机5

1.3.2读者所需的背景5

1.3.3读者将获得的成长5

1.4小结6

第2章RISCV指令与汇编7

2.1RISCV ISA7

2.1.1内存与寄存器7

2.1.2指令集9

2.1.3陷阱(中断和异常)机制11

2.1.4处理器运行级/特权级12

2.2用户态指令13

2.2.1RV32I基础整数指令13

2.2.2标准扩展指令19

2.2.3指令格式22

2.3特权指令24

2.3.1控制状态寄存器(CSR)25

2.3.2特权指令概述26

2.4汇编程序27

2.4.1汇编程序框架27

2.4.2基础示例代码28

2.5小结32

练习32第3章RISCV虚拟机——Ripes33

3.1Ripes简介33

3.1.1Ripes的下载33

3.1.2功能简介33

3.2Ripes的使用36

3.2.1示例代码36

3.2.2模拟运行38

3.2.3IO外设40

3.2.4数据通路观察40

3.3小结45

练习45

第二篇riscvmini的Chisel源码分析

第4章实验环境的构建49

4.1Chisel概述49

4.2Chisel开发环境的构建50

4.2.1安装JDK50

4.2.2安装SBT50

4.2.3安装Mill(可选)51

4.2.4安装Verilator52

4.2.5安装GTKWav... 查看详情

本书提供教学课件、教学大纲、教学视频等。

查看详情