- 1、本文档共45页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DIV R2,R1 ① ② ③ ④ ADD R3,R2 ① ② 等待 ③ ④ SUB R8,R7 ① ② ③ ④ MUL R4,R3 ① ② 等待 ③ MOV R3,R5 ① ② ③ ④ ADD R6,R5 ① ② ③ ④ 周期 1 2 3 4 5 6 7 8 9 乱序流水线——指令乱序执行,减少冲突 超标量流水线 寄存器重定向 1# 2# 计算机系统的基本结构与组成 冯·诺依曼结构及其改进 计算机工作原理(模型机) 计算机系统的多层结构 应用软件 编译器 汇编器 数据库管理系统 操作系统 设备驱动程序 Web浏览器 中断服务程序 异常事件处理机构 指令系统 CPU 高速缓存 RAM I/O子系统 通信子系统 I/O设备 通信设备 用户接口 系统调用接口 I/O和通信接口 外部设备 硬件系统 系统软件 2.1 计算机系统结构与组织模型 传统意义的三总线,看成CPU引脚的延伸 总线结构 MPU RAM ROM I/O接口 外设 AB DB CB 1 总线是计算机中各类公共信号线的集合,是计算机系统中各部分联络的规范通道。 2 传统意义观点,组成微机系统的各部分通过地址总线AB、数据总线DB和控制总线CB联系在一起。 数据总钱DB(Data Bus)用来传输数据信息,是双向总线,CPU既可通过DB从内存或输入设备读入数据,又可通过DB将内部数据送至内存或输出设备。 地址总线AB(Address Bus)用于传送CPU发出的地址信息,是单向总线。目的是指明与CPU交换信息的内存单元或I/O设备。 控制总线CB(Control Bus)用来传送控制信号、时序信号和状态信息等。其中有的是CPU向内存和外设发出的信息,有的则是内存或外设向CPU发出的信息。可见,CB中每一根线的方向是一定的、单向的,但作为一个整体则是双向的,所以在各种结构框图中,凡涉及到控制总线CB,均以双向线表示。 MPU M I/O 总线 单总线 MPU I/O M 存储器总线 I/O总线 双总线 MPU 局部I/O 局部M 缓冲器 总线控 制逻辑 全局 全局 M I/O DMA控制器 双重总线 局部总线 全局总线 暂存器 ALU 状态标志寄存器 寄存器组 ALU bus 寄存器组、暂存器为ALU提供操作数和结果存放 ALU ( Arithmetic Logic Unit 算数逻辑单元) 完成基本算数、逻辑运算 状态标志寄存器 根据运算结果设置状态标志 运算器 整个CPU内部各单元用片内总线互连 CPU 指令译码(根据指令要求产生对应控制电平)和确定操作时序(这些控制电平在什么时刻产生?维持多长时间) 指令 控制电平 时序发生器 译码逻辑 … 控制信号 时钟 时钟周期——计算机系统中最小计时单位,由系统时钟确定 指令周期——执行一条指令的时间,包括取指令+译码+执行 工作周期——指令执行分成几个阶段,每个阶段的时间 指令地址计算 取指令 指令译码 计算操作数地址 取操作数 运算 计算操作数地址 存操作数 控制器 寄存器阵列 PC SP FR 专用 通用 … … … CPU内部的临时存放单元,暂存数据或地址 访问效率高 数量有限 程序计数器 堆栈指针 标志寄存器 暂存器 ALU 状态标志寄存器 寄存器组 ALU bus PC MAR IR 控制部件 MBR memory 面向寄存器的CPU模型 DB AB 求补 移位 算数和布尔逻辑 主板 芯片组 指 令 类 型 操作码示例 操作数示例 说 明 加法 ADD Rs1, Rs2, Rd Rs, Imm, Rd (Rs1)+(Rs2)?Rd (Rs)+Imm?Rd 运算类指令只能对寄存器中的数据或立即数进行直接操作 减法 SUB Rs1, Rs2, Rd Rs, Imm, Rd (Rs1)-(Rs2)?Rd (Rs)-Imm?Rd 位与 AND Rs1, Rs2, Rd Rs, Imm, Rd (Rs1)?(Rs2)?Rd (Rs)?Imm?Rd 位或 OR Rs1, Rs2, Rd Rs, Imm, Rd (Rs1)?(Rs2)?Rd (Rs)?Imm?Rd 位非 NOT Rs, Rd !(Rs)?Rd 存储器或I/O读 LDR [MEM], Rd [MEM]? (Rd) 将指定地址的存储单元或I/O端口的值读入寄存器Rd 存储器或I/O写 STR Rs, [MEM] (Rs)?[MEM] 将寄存器Rs的值写入指定地址的存储单元或I/O端口 寄存器访问 MOV Rs, Rd Imm, Rd (Rs)?(Rd) 汇编指令示例 算术类 逻辑类 传送类 示例 程序的执行过程 取指令、分析指令、执行指令 AB DB ALU 累加器ACC 暂存器 标志
文档评论(0)