本书为“基于系统能力培养的计算机专业课程建设研究”项目规划教材、2018年国家级教学成果奖配套教材。本书围绕计算机系统设计和实现这一目标,以培养学生系统能力为导向,给出了不同难度、不同层次的系列实验,构成了为系统能力培养服务的实验体系。
全书共9章。第1—4章分别介绍实验系统硬件平台的组成,实验系统的软件开发工具,Verilog HDL硬件描述语言和Vivado开发环境。第5章介绍计算机部件实验。第6章包括指令系统实验和单周期CPU计算机系统实验。第7章介绍多周期CPU计算机系统实验。第8章实验的目标是设计一个指令流水CPU,可以运行支持虚拟地址及中断功能的监控程序。第9章设计和实现一个能运行教学操作系统μCore或简单Linux操作系统的计算机系统。
本书可作为本科计算机类专业计算机系统课程配套的实践教材,也可供有关技术人员参考。
- 前辅文
- 第1章 ThinPAD-Cloud教学计算机实验平台
- 1.1 总体介绍
- 1.2 实验平台结构
- 1.3 可编程逻辑芯片
- 1.3.1 可配置逻辑块
- 1.3.2 嵌入存储器
- 1.3.3 时钟管理单元
- 1.3.4 数字信号处理单元
- 1.3.5 可配置I/O单元
- 1.4 板载存储芯片
- 1.5 外部接口
- 1.5.1 串行接口
- 1.5.2 DVI图像输出接口
- 1.5.3 100 M以太网接口
- 1.5.4 USB接口
- 1.6 实验平台使用方法——本地模式
- 1.6.1 硬件连接
- 1.6.2 驱动安装
- 1.6.3 通过ThinPAD-Cloud控制面板进行实验
- 1.7 实验平台使用方法——远程模式
- 1.7.1 设计文件上传
- 1.7.2 实验平台基本操作
- 第2章 计算机系统综合设计软件工具
- 2.1 指令系统
- 2.1.1 计算机系统综合实验指令集特点
- 2.1.2 指令格式和指令功能说明
- 2.2 编译工具链
- 2.2.1 GCC
- 2.2.2 GNU Binutils
- 2.3 模拟器QEMU
- 2.4 调试器GDB
- 2.5 汇编程序编译及调试举例
- 2.6 监控程序
- 2.6.1 监控程序简介
- 2.6.2 使用方法
- 2.6.3 基础版本Kernel代码分析
- 2.6.4 中断扩展代码分析
- 2.6.5 TLB扩展代码分析
- 第3章 Verilog HDL硬件描述语言
- 3.1 概述
- 3.2 程序结构
- 3.3 语言元素
- 3.3.1 Verilog HDL的语言元素
- 3.3.2 Verilog HDL中的数据
- 3.3.3 Verilog HDL中的运算
- 3.4 Verilog HDL的行为语句
- 3.4.1 关于硬件描述语言功能的讨论
- 3.4.2 Verilog HDL的行为语句综述
- 3.4.3 always过程语句
- 3.4.4 begin-end块语句
- 3.4.5 赋值语句
- 3.4.6 条件语句
- 3.4.7 循环语句
- 3.5 Verilog HDL的设计层次与风格
- 第4章 Vivado开发环境
- 4.1 概述
- 4.2 Vivado用户界面与功能
- 4.3 一个秒表计时器的设计实例
- 4.3.1 创建空白项目
- 4.3.2 添加源文件
- 4.3.3 综合与功能仿真
- 4.3.4 添加约束
- 4.3.5 实现
- 4.3.6 装载执行
- 第5章 计算机系统部件实验
- 5.1 算术逻辑部件(ALU)实验
- 5.2 寄存器堆实验
- 5.3 内存储器系统实验
- 5.4 串行接口实验
- 5.5 DVI接口实验
- 5.6 Flash实验
- 5.7 多周期CPU控制器实验
- 第6章 单周期CPU系统设计实验
- 6.1 指令系统实验
- 6.2 单周期CPU设计与实现
- 第7章 多周期CPU计算机系统实验
- 7.1 指令系统实验
- 7.2 多周期CPU计算机系统设计与实现
- 7.3 Bootloader实验
- 7.4 支持中断的多周期CPU设计
- 第8章 指令流水CPU计算机系统实验
- 8.1 TLB组件实验
- 8.2 简单指令流水CPU设计与实现
- 8.3 支持虚拟内存的指令流水CPU设计
- 8.4 基于指令流水CPU的计算机系统实验
- 第9章 操作系统实验
- 9.1 特权级切换实验
- 9.2 μCore系统运行实验
- 附录A FPGA引脚分配表
- 附录B 多周期控制器源代码
- 附录C 监控程序Kernel基础版本源代码
- 附录D 监控程序Term源代码
本数字课程提供实验示例代码,围绕计算机系统设计和实现这一目标,以培养学生系统能力为导向,给出了不同难度、不同层次的系列实验,构成了为系统能力培养服务的实验体系。第1-4章分别介绍实验系统硬件平台的组成,实验系统的软件开发工具,Verilog HDL硬件描述语言和Vivado开发环境。第5章介绍计算机部件实验。第6章包括指令系统实验和单周期CPU计算机系统实验。第7章介绍多周期CPU计算机系统实验。第8章实验的目标是设计一个指令流水CPU,可以运行支持虚拟地址及中断功能的监控程序。第9章设计和实现一个能运行教学操作系统μCore或简单Linux操作系统的计算机系统,可作为本科计算机类专业计算机系统课程配套的实践内容,也可供有关技术人员参考。