顶部
收藏

计算机组成实验教程


作者:
刘卫东 李山山 陈嘉杰 高一川
定价:
38.50元
ISBN:
978-7-04-063263-7
版面字数:
360.00千字
开本:
16开
全书页数:
暂无
装帧形式:
平装
重点项目:
暂无
出版时间:
2025-06-17
物料号:
63263-00
读者对象:
高等教育
一级分类:
计算机/教育技术类
二级分类:
计算机类专业核心课程
三级分类:
计算机组织与体系结构

本书是计算机领域本科教育教学改革试点工作(“101”计划)核心课程“计算机组成与系统结构”的实践教材。“101计划”着力以课程建设带动本科教育改革,提高本科人才培养质量。本书面向培养学生计算机系统设计和实现能力的教学目标,紧密结合课程教学内容,基于清华大学计算机科学与技术系自研的课程教学实验平台,设计了不同难度、不同层次的系列实验,构成了为计算机系统能力培养服务的实验体系。

全书共8章。第1—4章分别介绍实验系统硬件平台的组成,实验系统的软件开发工具,SystemVerilog HDL硬件描述语言和Vivado开发环境。第5章介绍计算机部件实验。第6章介绍单周期处理器实验。第7章的实验要求实现一个简单的多周期或指令流水处理器,可以运行一个应用程序。第8章实验的目标是设计一个带指令流水功能的CPU,可以运行支持虚拟地址及中断功能的监控程序。

本书可作为高等学校本科计算机类专业计算机组成与结构等课程配套的实践教材,也可供有关技术人员参考。

  • 前辅文
  • 第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.4.1 SRAM
      • 1.4.2 Flash
    • 1.5 外部接口
      • 1.5.1 串行接口
      • 1.5.2 DVI图像输出接口
      • 1.5.3 100M以太网接口
      • 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 实验平台基本操作
    • 1.8 处理器设计硬件实验概览
  • 第2章 计算机系统综合设计软件工具
    • 2.1 指令系统
      • 2.1.1 RISC-V指令集概述
      • 2.1.2 ThinPAD教学计算机中所使用的指令和指令功能
    • 2.2 编译工具链
      • 2.2.1 GCC
      • 2.2.2 GNU Binutils
    • 2.3 模拟器qemu
    • 2.4 调试器gdb
    • 2.5 RISC-V汇编语言编程
    • 2.6 监控程序
      • 2.6.1 监控程序简介
      • 2.6.2 基础版本监控程序分析
      • 2.6.3 支持中断异常的监控程序分析
      • 2.6.4 支持虚拟地址的监控程序分析
      • 2.6.5 终端程序与使用方法
      • 2.6.6 在qemu里调试监控程序
  • 第3章 SystemVerilog HDL硬件描述语言
    • 3.1 概述
    • 3.2 SystemVerilog语言入门
      • 3.2.1 加法器
      • 3.2.2 按钮开关
      • 3.2.3 秒表
      • 3.2.4 计数器
      • 3.2.5 无状态仲裁器
      • 3.2.6 循环优先级仲裁器
    • 3.3 SystemVerilog语言代码规范
      • 3.3.1 通过命名区分寄存器和信号
      • 3.3.2 信号或寄存器的赋值
      • 3.3.3 时序逻辑和组合逻辑的代码组织
      • 3.3.4 寄存器在上升沿触发
      • 3.3.5 寄存器复位到常量
      • 3.3.6 组合逻辑中的信号赋值
      • 3.3.7 对寄存器设置FPGA启动初始值
      • 3.3.8 组合逻辑块中的赋值顺序
      • 3.3.9 阻塞赋值与非阻塞赋值
      • 3.3.10 信号极性一致
      • 3.3.11 case语句
  • 第4章 Vivado开发环境
    • 4.1 概述
    • 4.2 Vivado使用入门
      • 4.2.1 创建项目
      • 4.2.2 编写代码
      • 4.2.3 代码综合
      • 4.2.4 系统仿真
      • 4.2.5 添加约束
      • 4.2.6 生成比特流文件
      • 4.2.7 装载FPGA比特流文件
  • 第5章 计算机部件实验
    • 5.1 实验平台的顶层项目
      • 5.1.1 顶层项目文件的位置
      • 5.1.2 顶层项目
      • 5.1.3 顶层项目中的仿真
    • 5.2 计数器实验
      • 5.2.1 实验目的
      • 5.2.2 实验环境
      • 5.2.3 实验内容
      • 5.2.4 实验原理
      • 5.2.5 实验思考
    • 5.3 ALU与寄存器堆实验
      • 5.3.1 实验目的
      • 5.3.2 实验内容
      • 5.3.3 实验原理
      • 5.3.4 实验思考
    • 5.4 SRAM控制器实验
      • 5.4.1 SRAM存储器件的读写
      • 5.4.2 Wishbone总线协议
      • 5.4.3 Wishbone SRAM控制器
      • 5.4.4 三态门
      • 5.4.5 实验目的
      • 5.4.6 实验内容
      • 5.4.7 评测流程
      • 5.4.8 实验步骤
      • 5.4.9 实验思考
    • 5.5 串行接口控制器实验
      • 5.5.1 串口概述
      • 5.5.2 UART协议
      • 5.5.3 串口收发逻辑
      • 5.5.4 串口控制器总线接口
      • 5.5.5 Wishbone Master的实现
      • 5.5.6 实验目的
      • 5.5.7 实验环境
      • 5.5.8 实验内容
      • 5.5.9 实验步骤
      • 5.5.10 实验思考
    • 5.6 DVI接口实验
      • 5.6.1 实验目的
      • 5.6.2 实验环境
      • 5.6.3 实验内容
      • 5.6.4 实验原理
      • 5.6.5 实验步骤
      • 5.6.6 实验思考
    • 5.7 Flash实验
      • 5.7.1 实验目的
      • 5.7.2 实验环境
      • 5.7.3 实验内容
      • 5.7.4 实验原理
      • 5.7.5 实验步骤
      • 5.7.6 实验思考
  • 第6章 单周期处理器实验
    • 6.1 指令系统实验
      • 6.1.1 实验目的
      • 6.1.2 实验环境
      • 6.1.3 实验内容
      • 6.1.4 实验原理
      • 6.1.5 实验步骤
      • 6.1.6 实验思考
    • 6.2 单周期处理器设计与实现
      • 6.2.1 实验目的
      • 6.2.2 实验环境
      • 6.2.3 实验内容
      • 6.2.4 实验原理
      • 6.2.5 实验步骤
      • 6.2.6 实验思考
  • 第7章 简化处理器实验
    • 7.1 实验概述
    • 7.2 程序与二进制文件
    • 7.3 多周期处理器的设计
      • 7.3.1 多周期处理器设计
      • 7.3.2 Wishbone总线多路选择器
    • 7.4 流水线处理器的设计
      • 7.4.1 流水线处理器设计概述
      • 7.4.2 总线仲裁器
      • 7.4.3 流水线处理器的总体结构
      • 7.4.4 流水线处理器的气泡与暂停
    • 7.5 简化处理器实验
      • 7.5.1 实验目的
      • 7.5.2 实验环境
      • 7.5.3 实验内容
      • 7.5.4 实验原理
      • 7.5.5 实验步骤
      • 7.5.6 实验思考
  • 第8章 处理器综合实验
    • 8.1 基本版本流水线CPU计算机系统实验
      • 8.1.1 实验目的
      • 8.1.2 实验环境
      • 8.1.3 实验内容
      • 8.1.4 实验原理
      • 8.1.5 实验步骤
      • 8.1.6 实验思考
    • 8.2 支持中断异常的流水线CPU计算机系统实验
      • 8.2.1 理解中断和异常的处理
      • 8.2.2 实现CSR寄存器及读写指令
      • 8.2.3 基本的异常处理
      • 8.2.4 mtime和mtimecmp寄存器
      • 8.2.5 中断处理
    • 8.3 支持虚拟地址的流水线CPU计算机系统实验
      • 8.3.1 理解监控程序中的页表机制
      • 8.3.2 查询页表
    • 8.4 处理器扩展实验
      • 8.4.1 提高运行速度类的扩展
      • 8.4.2 支持不同外设类型的扩展
      • 8.4.3 支持更多指令功能的扩展
  • 附录A SystemVerilog简明手册
    • A.1 概述
    • A.2 程序结构
    • A.3 语言元素
      • A.3.1 SystemVerilog语言元素
      • A.3.2 SystemVerilog中的数据
      • A.3.3 SystemVerilog中的运算
    • A.4 SystemVerilog的行为语句
      • A.4.1 综述
      • A.4.2 always过程语句
      • A.4.3 begin/end块语句
      • A.4.4 赋值语句
      • A.4.5 条件语句
      • A.4.6 循环语句
    • A.5 SystemVerilog的设计层次与风格
  • 附录B FPGA引脚分配表

相关图书