书籍详情
《计算机组成原理实践教程——从逻辑门到CPU》[43M]百度网盘|亲测有效|pdf下载
  • 计算机组成原理实践教程——从逻辑门到CPU

  • 出版社:清华大学出版社京东自营官方旗舰店
  • 出版时间:2018-10
  • 热度:11956
  • 上架时间:2024-06-30 09:38:03
  • 价格:0.0
书籍下载
书籍预览
免责声明

本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正

内容介绍

内容简介

本着系统设计实现分离的原则,降低实现难度,提升设计内容,采用简单易学logisim仿真平台,紧扣计算机组成原理各章重要知识点,设计一系列有针对性的设计型实验和大型课程设计实验,试图以实践教学为中心进行计算机组成原理课程的教学。

作者简介

计算机组成课程教学团队。谭志虎,博士、华中科技大学副教授、硕士生导师。主要研究方向为计算机体系结构,网络存储,计算机组成原理课程组组长,先后为本科生开设了“计算机组成原理”、“计算机硬件基础”、“计算机系统基础”等课程,以提升计算机系统能力为导向,进行了计算机组成原理实践教学的改革实践与探索。

目录

目录第1章数据表示实验1

1.1补码表示实验1

1.2浮点数表示实验6

1.3汉字编码实验12

1.4奇偶校验实验14

1.5海明校验码设计实验18

1.6CRC校验码设计实验21

1.7编码流水传输实验28


第2章运算器组成实验31

2.1可控加减法电路设计实验31

2.24位快速加法器设计实验33

2.3多位快速加法器设计实验37

2.432位ALU设计实验39

2.5阵列乘法器设计实验41

2.6原码1位乘法器设计实验44

2.7补码1位乘法器设计实验46


第3章存储系统实验50

3.1RAM组件实验50

3.2存储器扩展实验51

3.3MIPS RAM设计实验54

3.4MIPS寄存器文件设计实验56

3.5Cache软件仿真实验57

3.6Cache性能分析实验61

3.7Cache硬件设计实验66

3.8虚拟存储器软件仿真实验71


第4章MIPS汇编程序设计实验75

4.1MIPS体系结构75

4.2MIPS指令集78

4.3MIPS汇编入门83

4.4MIPS编程进阶904.5MIPS程序设计实验94


第5章MIPS处理器设计实验99

5.1MIPS单周期处理器设计实验99

5.2MIPS多周期处理器设计实验110

5.3微程序控制器设计实验116

5.5基于FPGA的单周期处理器实验118


第6章MIPS五段流水机制设计实验120

6.1理想流水线CPU设计实验120

6.2气泡流水线CPU设计实验125

6.3重定向流水线CPU设计实验133

6.4基于FPGA的流水CPU实验136

6.5动态分支预测机制设计实验137


第7章输入输出系统实验142

7.1AHBLite总线设计实验142

7.2程序查询控制方式编程实验145

7.3中断服务程序编程实验148

7.4单级中断机制设计实验150

7.5多级中断机制设计实验158

7.6流水中断机制设计实验161


第8章Logisim用户指南163

8.1新手上路163

8.2Logisim值传递算法168

8.3库和属性170

8.4子电路173

8.5线路178

8.6组合逻辑分析181

8.7菜单功能说明185

8.8存储组件1888.9日志190

8.10命令行测试193

8.11应用偏好设置196

8.12工程选项199

8.13Logisim的不足之处201

8.14Logisim总结201


第9章Logisim库参考手册204

9.1线路库204

9.2逻辑门库208

9.3复用器库211

9.4运算器库214

9.5存储库218

9.6输入输出库225

9.7基础库229


第10章MARS用户指南232

10.1MARS集成开发环境232

10.2交互式调试功能 236

10.3MARS系统设置237

10.4MARS命令行模式240

10.5MARS系统调用242

10.6MARS插件246

10.7MIPS异常处理程序253

10.8MARS伪指令255

10.9MARS宏指令256


参考文献261


精彩书摘

第3章存储系统实验〖1〗3.1RAM组件实验〖*4/5〗3.1.1实验目的掌握Logisim平台中RAM组件的基本使用方法,进一步熟悉流水传输控制机制。

3.1.2背景知识

RAM组件是Logisim内建库中最复杂的一个组件,它最多能存储224个存储单元(地址线宽度最大24位),每个存储单元位宽最大32位。电路可以在RAM中加载和存储值。

RAM组件会用黑底白字显示当前存储单元的值,显示区域左侧是地址列表(灰色显示),所有数据均采用十六进制显示。用戳工具单击RAM组件上的地址或存储内容后,可以直接利用键盘修改显示区域地址和对应的存储内容,也可以通过菜单工具弹出十六进制编辑器直接编辑修改RAM存储内容。

RAM组件支持3种不同的接口模式,如图3.1所示,具体可以设置属性中的数据接口项,详细使用方式请参考第9章Logisim库参考手册中9.5.6节的内容。

图3.1RAM组件3种不同接口

3.1.3实验内容

在数据表示实验的工程文件data.circ中新增子电路,复制流水传输测试电路,改造该电路中编码流水传输第五阶段——显示阶段的功能,使得该阶段能将发送方发送过来的数据按照原始地址顺序存放在一个RAM存储器中,RAM组件地址线、数据线位宽与发送端ROM组件一致。为保证数据存储顺序,需要尝试改造各段流水接口部件,在传输汉字编码的同时增加传输汉字编码地址的逻辑。另外需要考虑RAM部件何时写入数据,写入控制信号如何控制,时序信号如何连接,等等问题。请尝试利用3种不同的RAM接口形式实现上述任务。

3.1.4实验思考

RAM组件是否可以采用与流水接口相反的时钟触发?从同步时序的角度上思考这样做会带来什么问题?

3.2存储器扩展实验〖*4/5〗3.2.1实验目的理解存储系统进行位扩展、字扩展的基本原理,能利用相关原理解决实验中汉字字库的存储扩展问题,并且能够使用正确的字库数据填充。

3.2.2背景知识

由于存储芯片的容量及字长与目标存储器的容量及字长之间可能存在差异,应用存储芯片组织一定容量与字长的存储器时,一般可采用位扩展、字扩展、字位同时扩展等方法进行存储组织。

1. 位扩展(数据总线扩展、字长扩展)

当存储芯片的数据位小于CPU对数据位的要求时,可采用位扩展方式解决此类问题。此时,将所有存储芯片的地址线、读写控制线并联后与CPU的地址线和读写控制线连接,各存储芯片的数据总线汇聚成更高位宽的数据总线与CPU的数据总线相连,所有存储芯片的片选信号并联后与CPU连接。在图3.2中,4片2KB×2位的存储体按位扩展方式构成2KB×8位存储系统,当CPU给出一个地址访问存储系统时,该地址送入所有存储芯片,所有芯片并发工作为最终存储字提供各自的2位信息。假设一个存储系统容量为N位,若使用K位的芯片,且K

2. 字扩展(地址总线扩展、字数扩展)

字扩展也称容量扩展。当存储芯片的存储容量不能满足CPU对存储容量的要求时,可采用字扩展方式来扩展存储器。字扩展时,将所有存储芯片的数据总线、读写控制线各自并联后与CPU数据总线、读写控制线相连,各存储芯片的片选信号由CPU高位多余的地址线译码产生。在图3.3中,4个8KB存储芯片构成32KB的存储体,CPU给出一个地址时,只有一个存储芯片工作,具体哪一个芯片工作由存储系统地址高2位译码决定。假设一个存储系统容量为M,若使用容量为l位的芯片,且l

图3.2位扩展逻辑

图3.3字扩展逻辑


前言/序言

前言“计算机组成原理”作为计算机专业核心基础课,主要讨论计算机各大功能部件的基本组成原理及其互连构成整机的技术,在计算机系统能力培养目标中起着重要的承上启下作用,其先导课程包括“数字逻辑”和“汇编语言程序设计”,后续课程为“计算机系统结构”和“计算机接口技术”。该课程的实践教学应该站在贯穿计算机硬件系列课程的角度,引导学生如何利用前导课程的基本知识,设计计算机主要功能部件并构成整机系统。与理论课程配合,实现计算机系统设计能力的培养 。

“计算机组成原理”课程理论综合性强,课程实验尤其是综合实验难度大,存在时间、场所、平台等诸多制约因素,为了从根本上解决实践教学中的困难,作者结合多年的教学经验,进行了一系列卓有成效的实践教学改革。参考国际一流计算机专业相关课程的先进经验,引入了易学易用的开源虚拟仿真实验平台,本着理论实践一体化、实验目标系统化、实验平台虚拟化、教师指导轻松化的原则,历经5年持续的实践教学改革,开发并完善了一系列内容丰富的课程实验,建立了逐层递进、立足计算机系统、设计型实验为主导的实践教学体系。本教材就是相关实践教学改革的主要成果,其主要特点如下。

(1) 理论实践一体化: 相关实验紧扣理论教学重点、难点,课程内容覆盖率达90%以上,有助于构建理论课堂中师生的共同语境,为翻转课堂提供丰富的教学素材,实验内容大多处于布鲁姆认知分类法中的运用、分析、综合、评价4个层次,学生完成系列实验,对相关知识的掌握更透彻,为理论教学提供强力的支撑。

(2) 实验目标系统化: 围绕计算机系统设计与实现的系统能力培养目标,让学生站在硬件工程师的视角,从逻辑门电路开始,逐步设计运算部件、存储器、数据通路和控制器、冲突冒险机制,直至设计完整的流水CPU来深入理解计算机软硬件系统,将系统能力培养的复杂工程问题——五段流水CPU设计的高难度任务分解成若干难度递进的子任务和单元实验。

(3) 实验平台虚拟化: 主要实验均采用跨平台开源的Logisim虚拟仿真平台,该平台简单易学、易调试且无实验成本,突破传统实验对空间和时间的要求。美国加州大学伯克利分校CS61C、康奈尔大学CS3410课程均采用了该平台。实验平台采用分离数字电路对象构建原理图的方式进行CPU系统设计和仿真,有效地延续了数字逻辑课程的设计方法,有利于培养学生硬件设计思维。无须另外开设硬件描述语言类先导课程,也回避了硬件描述语言过于抽象、硬件设计程序化、学习周期长的问题。

(4) 实验过程游戏化: 借鉴游戏闯关的设计理念,将具有高难度挑战性的实验总目标细分成若干可明确检查的学习关卡。实验内容和难度逐渐递进,通过各阶段成果实时得分增强学习的及时反馈,提高学习趣味性;为学生提供丰富的测试用例以及自动检测工具等学习装备,让学生在较短时间内体验更多的设计内容;实验完成率高,学生成就感强,有助于激发学生的持续学习热情,在985高校和普通院校的实际应用中均取得了很好的效果。

(5) 教师指导轻松化:传统硬件系列实验检查和指导难度大,教师劳动强度高,通过实验输入输出界面规范化、测试用例标准化、性能指标数据化、实验测试评分自动化等一系列手段,提升了实验的易检查性,大大降低了教师工作负担。

本书前7章按“计算机组成原理”各章节内容进行组织,每章均结合各章的重点、难点设置若干实验,各实验均明确给出学生的学习目标和实验内容,并进行适当的背景知识补充,实验思考部分可有效地引导学生进行实验。其中,第1章为数据表示实验,设计了若干程序运行验证性实验,有助于学生站在软硬协同的角度理解数据表示;另外还设计了汉字编码、海明编校验码、CRC校验码实验,其中流水传输实验创造性地模拟了一个编码传输环境,让学生理解编码传输概念的同时,提前熟悉流水线的相关知识。第2章为运算器组成实验,主要包括先行进位加法器实验、MIPS运算器设计实验、阵列乘法器设计实验、原码及补码1位乘法器设计实验。第3章为存储系统实验,主要包括存储扩展实验、MIPS RAM设计实验、MIPS寄存器文件设计实验、虚拟存储器软件仿真实验,另外还包括3个Cache相关的实验,既包括Cache性能仿真,也包括Cache硬件设计实验,填补了组成原理实验在这方面的空白。第4章为MIPS汇编程序设计实验,主要介绍MIPS指令系统以及MIPS汇编程序设计方法,并给出若干MIPS汇编程序设计实验。第5章MIPS处理器设计实验为课程实验重点,包括MIPS单周期处理器设计实验、MIPS多周期处理器硬布线控制器设计实验、多周期处理器微程序控制器设计实验、基于FPGA的单周期处理器实验。第6章为MIPS五段流水机制设计实验,包括理想流水线CPU设计实验、气泡流水线CPU设计实验、重定向流水线CPU设计实验、动态分支预测机制设计实验等。第7章为输入输出系统实验,包括中断与轮询方式编程实验、单级中断机制设计实验、多级中断机制设计实验、流水中断机制设计实验等。第8章介绍虚拟仿真平台Logisim使用说明,方便师生快速掌握Logisim使用技巧。第9章给出Logisim中常用组件库参考手册,介绍不同组件的详细使用信息。第10章简要介绍MIPS汇编仿真器MARS的主要功能和使用方法。

注意: 本书图中的逻辑电路符号与平台软件中的符号一致。

本书实验众多,内容丰富,教学过程中教师可以根据学生具体情况有针对性地选择部分内容开展实验,学生也可以根据自己的学习情况自行选择实验。本书适合作为高等学校计算机相关专业“计算机组成原理”课程的实验教材,也可供IT工程技术人员参考。

特别感谢华中科技大学计算机科学与技术学院秦磊华教授,本书正是在秦教授的策划和不断鞭策鼓励下才得以完成;感谢华中科技大学计算机卓越1201班的全体学生,是他们和老师的高度配合才有了今天的一系列成果,尤其感谢王汉杰、徐钦振对Logisim手册的翻译工作;感谢华中科技大学计算机学院2013级、2014级、2015级全体学生,本书大多数实验均经过了他们多次检验和持续改进;最后感谢在我身后默默支持的家人,谢谢他们!

由于水平有限,书中难免存在错误和疏漏之处,敬请同行和广大读者批评指正。

作者2018年7月