1 / 28

支持指令流水的计算机系统设计与实现

支持指令流水的计算机系统设计与实现. 内容提要. 实验目的及目标 指令系统分析 指令执行步骤举例 CPU 框架设计 讨论. 实验目的. 进一步理解和掌握 Von Neumann 结构计算机各部件组成及内部工作原理 进一步掌握计算机指令系统及指令功能的实现方法 进一步加深对指令流水概念、实现机制和流水冲突等的理解 培养硬件设计和调试的能力 培养团队管理、合作精神及表达沟通能力. 实验目标. 最低目标 实现 THCO MIPS 指令系统,能运行已有的监控程序 多周期 CPU 支持指令流水 支持 I/O 操作 完善监控程序等辅助软件系统 更高目标

Télécharger la présentation

支持指令流水的计算机系统设计与实现

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 支持指令流水的计算机系统设计与实现

  2. 内容提要 • 实验目的及目标 • 指令系统分析 • 指令执行步骤举例 • CPU框架设计 • 讨论

  3. 实验目的 • 进一步理解和掌握Von Neumann结构计算机各部件组成及内部工作原理 • 进一步掌握计算机指令系统及指令功能的实现方法 • 进一步加深对指令流水概念、实现机制和流水冲突等的理解 • 培养硬件设计和调试的能力 • 培养团队管理、合作精神及表达沟通能力

  4. 实验目标 • 最低目标 • 实现THCO MIPS指令系统,能运行已有的监控程序 • 多周期CPU • 支持指令流水 • 支持I/O操作 • 完善监控程序等辅助软件系统 • 更高目标 • 如何解决“冲突”问题 • 中断、分时、双机通信 • 应用程序 • 与编译系统的结合 • ……

  5. 指令系统设计 • 16位字长单字指令 • 满足指令系统的基本要求 • 完备性、规整性、高效性、兼容性 • 容易实现指令流水 • 指令格式简单、寻址方式简单 • MIPS 16e指令系统格式 • 建议的指令系统 • 见实验材料

  6. 指令分类和指令格式 • 基本可归结到寄存器型、立即数型和跳转型三类MIPS典型指令格式类型中 • 指令格式简单,寻址方式较少,容易实现流水

  7. 状态转移图和指令各执行步骤的操作功能 非 Branch / SW / LW 指令 非 J 指令 Sexe Sif Sid Swb SW / LW 指令 写回周期 取指周期 译码周期 执行周期 LW指令 J 指 令 Smem Branch 指令 译码周期 SW指令 指令步骤 读取指令 指令译码 执行运算 内存读写 数据写回 J 指令 PC←PC[31..28] ‖(target<<2) IR← MEM[PC] PC ← PC+4 若条件成立 则 PC←R C←PC+ (符号扩展 (imm)<<2) A←Reg[rs] B←Reg[rt] Branch型 R 类型 Reg[rd]←C C←A op B C←A + 符 号扩展(Imm) Mem[C]←B Sw指令 Lw指令 DR←Mem[C] Reg[rt]←DR

  8. 流水线的实现

  9. 流水线的实现

  10. 指令分类 • 按照指令的操作类型可分为4种 • 纯数据:R型、I型 • 控制流相关:B型、J型。 • R型指令(寄存器-寄存器型)从寄存器堆中读取源操作数,结果写回寄存器堆。 • SLL、SRL、SRA、SLLV、SRLV、SRAV、MTSP、MOVE、ADDU、SUBU、MFPC、SLT、SLTU、CMP、NEG、AND、OR、XOR、NOT、MFIH、MTIH.

  11. 指令分类 • I型指令(立即数型)使用一个(4位或5位或8位或11位)立即数作为一个源操作数。 • SW_RS、SW_SP、SW、LW_SP、LW、ADDIU3、ADDSP3、ADDSP、ADDIU、LI、SLTI、SLTUI、CMPI、INT . • B型指令(立即数跳转型)使用一个立即数作为跳转的目标地址。 • B、BEQZ、BNEZ、BTEQZ、BTNEZ. • J型指令(寄存器跳转型)使用寄存器的值作为跳转的目标地址 • JR、JRRA、JALR.

  12. 指令格式功能描述 • R型指令: • AND • 格式:AND rx ry • 功能:GPR[rx]←GPR[rx] & GPR[ry] • NOT • 格式:NOT rx ry • 功能:GPR[rx]←~ GPR[ry]

  13. 指令格式功能描述 • I型指令 • ADDIU • 格式:ADDIU rx immediate • 功能:GPR[rx]←GPR[rx]+Sign_extend(immediate) • ADDIU3 • 格式:ADDIU3 rx ry immediate • 功能:GPR[ry]←GPR[rx]+ Sign_extend(immediate)

  14. 指令格式功能描述 • B型指令 • B • 格式:B immediate • 功能:PC←PC+Sign_extend(immediate) • BEQZ • 格式:BEQZ rx immediate • 功能:if (GPR[rx] = 0) then PC←PC+Sign_extend(immediate)

  15. 指令格式功能描述 • J型指令 • JR • 格式:JR rx • 功能:PC←GPR[rx]

  16. 指令功能及执行步骤

  17. CPU总体设计 • CPU的外部特性 • 输入信号 • CLK、INT、Reset • 输出信号 • 对基本存储的控制信号(总线) • 基本存储的地址信号 • 对扩展存储的控制信号(总线) • 扩展存储的地址信号 • 入出信号 • 基本存储的数据(指令) • 扩展存储的数据

  18. CPU主要组成 • ALU • 另设加法器完成地址计算 • Register File • PC、SP、IH、RA • 步骤间寄存器组 • 控制信号生成部件(Decoder) • Forwarding • Hazard testing • 动态预测

  19. ALU设计 • 功能 • 加、减、与、或、非、比较、…… • 接口 • 输入 • A、B、OpCode • 输出 • F、T

  20. 寄存器组设计 • 功能 • 通用寄存器 • 多少个? • 提供数据访问 • 什么时候读?什么时候写?写的条件是什么? • 接口 • A口地址、B口地址、写入寄存器地址 • A口数据、B口数据、写入数据 • 写入信号 • 时钟信号

  21. 与内存和外设的接口 • 数据总线 • 地址总线 • 控制信号 • /OE • /WE • 控制信号 • /MIO,REQ,/WE:205、204、206

  22. 阶段寄存器设计 • 阶段间需要传递的所有信息 • 中间数据 • 参数 • 控制信号

  23. 流水冲突 • 结构冲突 • 数据冲突 • 控制冲突 • 检测 • 处理

  24. 流水线CPU基本结构

  25. 实验步骤 • 确定指令系统 • 指令功能 • 指令格式 • 确定指令的执行流程 • 指令执行步骤划分 • 各步骤完成的具体功能 • 确定硬件组成模块 • ALU、RegisterFile、InsDecoder、PCAdder、MemInterface • 确定每个模块的功能 • 能否完成每条指令的功能要求 • 给出每个模块的功能描述 • 具体实现,注意时序关系

  26. 实验步骤 • 基本部分 • 指令功能分析 • 数据通路设计、主要部件的功能及控制信号(14日) • 指令执行步骤划分(指令流程图) • 指令分步骤控制信号(指令流程表) • 控制器详细设计(流水冲突控制)(17日) • 模块结构及参数(25日) • 系统实现及调试 • 扩展部分 • 如果是硬件扩展,要在前面各步骤中体现

  27. 时间安排 • 最终完成时间 • 12月3日(检查完成) • 12月10日(实验报告提交) • 检查点 • 实验目标确定 • 每组给出目标和方案,准备PPT • 数据通路设计、指令执行步骤、各部件主要控制信号 • 指令流程图和指令流程表,完整设计框图(包括控制信号) • 每组给出较为详细的设计,并准备PPT

More Related