计算机组成原理实验指导(基于RISC-V在线实训)

让学生站在硬件工程师的视角,从逻辑门电路开始逐步设计运算器、存储器、数据通路和控制器、冲突冒险与中断异常处理机制,直至完整的RISC-V流水CPU,从而深入理解计算机软硬件系统
分享 推荐 0 收藏 1 阅读 201
谭志虎 (作者) 978-7-115-63063-6

关于本书的内容有任何问题,请联系 许金霞

(1)理论实践一体化:相关实验紧扣理论教学重点难点,课程内容覆盖率90%以上,有助于构建理论课堂中教学师生的共同语境,为翻转课堂提供丰富的教学素材,实验内容大多处于布鲁姆认知分类法中的运用、分析、综合、评价四个层次,学生完成系列实验,对相关知识的掌握更透彻,为理论教学提供了强支撑。
(2)实验目标系统化:实验围绕计算机系统设计与实现的系统能力培养目标,让学生站在硬件工程师的视角,从逻辑门电路开始逐步设计运算部件,存储器、数据通路和控制器、冲突冒险与中断异常处理机制直至完整的流水CPU来深入理解计算机软硬件系统,将系统能力培养的复杂工程问题---CPU设计的高挑战度任务分解成若干难度递进的子任务和单元实验中,让学生实践中不断提升计算机系统能力。
(3)实验平台虚拟化:实验采用跨平台开源的Logisim虚拟仿真平台,该平台简单易学,易调试、无需任何硬件平台即可开展实验,突破传统实验对空间和时间的要求。加州大学伯克利分校CS61C、康奈尔大学CS3410课程均采用了该平台。采用分离数字电路对象构建原理图的方式进行CPU系统设计和仿真,有效延续了数字逻辑课程的设计方法,有利于培养学生硬件设计思维。无需额外开设硬件描述语言类先导课程,有效回避了硬件描述语言过于抽象、硬件设计程序化、学习周期长的问题。
(4)课程实验在线化。实验已经全部上线EduCoder头哥在线实训平台面向全国开放,结合EduCoder平台的SPOC课堂,可实现实验自动测试,自动检查,自动评分,学生实验过程教师全程轻松管控,可一键到处实验成绩,大大降低了教师实验教学工作强度,有效解决了硬件实验难,检查难、指导难的困局。
(5)实验过程游戏化:借鉴游戏闯关的设计理念,将高挑战度的CPU设计任务细分成若干可明确检查的学习关卡。实验内容和难度逐渐递进,通过各阶段成果实时得分增强学习的及时反馈,提升学习趣味性;为学生提供丰富的测试用例以及自动检测工具等学习装备,让学生的较短时间内体验更多的设计内容;实验完成率高,学生获得感、成就感强,被学生评价为“这是一门让人手痒的实践课程”。
¥49.80 ¥42.33 (8.5 折)

内容摘要

“计算机组成原理”是一门理论性、工程性和实践性都很强的专业核心基础课程,其实践教学对理论教学具有强支撑作用,是强化读者计算机系统能力、分析与解决复杂工程问题能力的重要途径。
作者本着“理论与实践一体化、实验目标系统化、实验平台虚拟化、课程实验在线化、实验过程游戏化”的原则,历经十年持续的实践教学改革,开发了一系列原创的硬件在线仿真实验,建立了立足计算机系统、逐层递进、以设计型实验为主导的实践教学体系。本书站在硬件工程师的视角,从逻辑门电路开始逐步设计运算器、存储器、数据通路和控制器、冲突冒险与中断异常处理机制,直至完整的RISC-V流水CPU,旨在帮助读者深入理解计算机软硬件系统。
本书可作为高等学校计算机相关专业“计算机组成原理”课程的配套实验指导用书和计算机系统能力培养的参考书,也可供相关专业工程技术人员参考。

目录

第 1章 数据表示实验
1.1 汉字编码实验 1
1.1.1 实验目的 1
1.1.2 实验原理 1
1.1.3 实验内容 2
1.1.4 实验思考 4
1.2 奇偶校验设计实验 4
1.2.1 实验目的 4
1.2.2 实验原理 4
1.2.3 实验内容 5
1.2.4 实验思考 6
1.3 磁盘阵列条带校验设计实验 6
1.3.1 实验目的 6
1.3.2 实验原理 6
1.3.3 实验内容 8
1.3.4 实验思考 9
1.4 海明校验码设计实验 9
1.4.1 实验目的 9
1.4.2 实验原理 9
1.4.3 实验内容 10
1.4.4 实验思考 12
1.5 CRC 校验码设计实验 12
1.5.1 实验目的 12
1.5.2 实验原理 12
1.5.3 实验内容 13
1.5.4 实验思考 15
1.6 编码流水传输设计实验 15
1.6.1 实验目的 15
1.6.2 实验原理 15
1.6.3 实验内容 15
1.6.4 实验思考 16
第 2章 运算器实验 17
2.1 可控加减法电路设计实验 17
2.1.1 实验目的 17
2.1.2 实验内容 17
2.1.3 实验思考 18
2.2 4 位快速加法器设计实验 18
2.2.1 实验目的 18
2.2.2 实验内容 18
2.2.3 实验思考 19
2.3 多位快速加法器设计实验 19
2.3.1 实验目的 19
2.3.2 实验内容 20
2.3.3 实验思考 21
2.4 32 位 ALU 设计实验 21
2.4.1 实验目的 21
2.4.2 实验内容 22
2.4.3 实验思考 23
2.5 阵列乘法器设计实验 23
2.5.1 实验目的 23
2.5.2 实验内容 24
2.5.3 实验思考 25
2.6 原码一位乘法器设计实验 25
2.6.1 实验目的 25
2.6.2 实验内容 26
2.6.3 实验思考 27
2.7 补码一位乘法器设计实验 27
2.7.1 实验目的 27
2.7.2 实验内容 27
2.7.3 实验思考 29
2.8 乘法流水线设计实验 29
2.8.1 实验目的 29
2.8.2 实验内容 29
2.8.3 实验思考 30
第3章存储系统实验 41
3.1 RAM组件实验 41
3.1.1 实验目的 41
3.1.2 实验原理 41
3.1.3 实验内容 42
3.1.4 实验思考 42
3.2 存储器扩展实验 42
3.2.1 实验目的 42
3.2.2 实验内容 42
3.2.3 实验思考 44
3.3 存储子系统设计实验 44
3.3.1 实验目的 44
3.3.2 实验原理 44
3.3.3 实验内容 45
3.3.4 实验思考 48
3.4 寄存器文件设计实验 48
3.4.1 实验目的 48
3.4.2 实验内容 48
3.4.3 实验思考 50
3.5 cache硬件设计实验 50
3.5.1 实验目的 50
3.5.2 实验原理 50
3.5.3 实验内容 51
3.5.4 实验思考 53
3.6 cache软件仿真实验 54
3.6.1 实验目的 54
3.6.2 实验原理 54
3.6.3 实验内容 55
3.7 cache性能分析实验 55
3.7.1 实验目标 55
3.7.2 实验原理 56
3.7.3 实验内容 56
3.8 虚拟存储器仿真实验 60
3.8.1 实验目的 60
3.8.2 实验内容 60
第4章RISC-V汇编程序设计实验 62
4.1 RISC-V体系结构 62
4.1.1 RISC-V通用寄存器 62
4.1.2 RISC-V浮点寄存器 63
4.1.3 RISC-V控制状态寄存器 64
4.2 RISC-V指令集 65
4.2.1 功能描述符号 65
4.2.2 指令格式 65
4.2.3 R型指令 66
4.2.4 I型指令 67
4.2.5 S型指令 68
4.2.6 B型指令 68
4.2.7 U型指令 69
4.2.7 J型指令 70
4.2.6 RISC-V寻址方式 70
4.2.7 RISC-V数据类型 71
4.3 RISC-V汇编入门 71
4.3.1 程序结构 71
4.3.2 数据声明 72
4.3.3 RISC-V访存指令 73
4.3.4 汇编寻址方式 74
4.3.5 算术运算指令 75
4.3.6 程序控制指令 75
4.3.7 RISC-V伪指令 76
4.3.8 系统调用与输入/输出 77
4.4 RISC-V编程进阶 78
4.4.1 运算语句 78
4.4.2 数组访问 78
4.4.3 条件分支结构 78
4.4.4 do while循环结构 79
4.4.5 while循环结构 79
4.4.6 for循环结构 79
4.4.7 过程调用 80
4.5 RISC-V程序设计实验 81
4.5.1 实验目的 81
4.5.2 实验内容 82
第5章RISC-V处理器设计实验 86
5.1 单总线三级时序CPU设计实验 86
5.1.1 实验目的 86
5.1.2 实验原理 86
5.1.3 实验内容 88
5.1.4 实验思考 94
5.2 单总线现代时序CPU设计实验 94
5.2.1 实验目的 94
5.2.2 实验原理 94
5.2.3 实验内容 95
5.2.4 实验思考 100
5.3 单周期RISC-V处理器设计实验 101
5.3.1 实验目的 101
5.3.2 实验原理 101
5.3.3 实验内容 101
5.3.4 注意事项 108
5.3.5 实验思考 111
第6章指令流水线设计实验 112
6.1 理想流水线CPU设计实验 112
6.1.1 实验目的 112
6.1.2 实验原理 112
6.1.3 实验内容 113
6.1.4 实验步骤 114
6.1.5 注意事项 115
6.1.6 实验思考 116
6.2 气泡流水线CPU设计实验 116
6.2.1 实验目的 116
6.2.2 实验原理 116
6.2.3 实验内容 117
6.2.4 实验测试 119
6.2.5 实验思考 121
6.3 重定向流水线CPU设计实验 121
6.3.1 实验目的 121
6.3.2 实验原理 121
6.3.3 实验内容 123
6.3.4 实验思考 124
6.4 动态分支预测机制设计实验 124
6.4.1 实验目的 124
6.4.2 实验原理 124
6.4.3 实验内容 125
6.4.4 实验思考 127
第7章输入/输出系统实验 128
7.1 程序查询控制方式编程实验 128
7.1.1 实验目的 128
7.1.2 实验原理 128
7.1.3 实验内容 129
7.2 中断服务程序编程实验 130
7.2.1 实验目的 130
7.2.2 实验原理 130
7.2.3 实验内容 130
7.3 三级时序中断机制设计实验 131
7.3.1 实验目的 131
7.3.2 实验内容 131
7.3.3 实验思考 135
7.4 现代时序中断机制设计实验 135
7.4.1 实验目的 135
7.4.2 实验内容 135
7.4.3 实验思考 141
7.5 单周期RISC-V单级中断机制设计实验 141
7.5.1 实验目的 141
7.5.2 实验内容 141
7.5.3 实验步骤 142
7.5.4 实验思考 143
7.6 单周期RISC-V多重中断机制设计实验 145
7.6.1 实验目的 145
7.6.2 实验内容 145
7.6.3 实验步骤 145
7.6.4 实验思考 146
7.7 流水中断机制设计实验 146
7.7.1 实验目的 146
7.7.2 实验内容 146
7.7.3 实验思考 147
第8章实验平台与常见问题 148
8.1 Logisim软件介绍 148
8.2 Logisim常见问题 149
8.3 头歌平台介绍 154
8.4 头歌平台常见问题 155
8.5 RARS仿真器介绍 158
8.5.1 RARS集成开发环境 159
8.5.2 交互式调试功能 162
参考文献 163


读者评论

赶紧抢沙发哦!

我要评论

作者介绍

谭志虎,华中科技大学教授,院长助理,主要研究方向为计算机系统结构,网络存储,科研成果获湖北省科技进步一等奖。主要承担《计算机组成原理》、《计算机组织与结构》、《计算机系统基础》、《Verilog语言》、《计算机系统能力综合训练》等课程的教学工作,在中国大学慕课上开设《计算机组成原理》、《计算机硬件系统设计》两门慕课课程,主编《计算机组成原理实践教程---从逻辑门到CPU》教材一部。主持省部级教改项目5项,发表CSSCI类教研论文7篇,先后获湖北省教学成果一等奖,校实验技术成果一等奖,宝钢优秀教师奖,校教师教学竞赛一等奖,教学质量一等奖,课堂教学卓越奖。

相关图书

人邮微信
本地服务
教师服务
教师服务
读者服务
读者服务
返回顶部
返回顶部