




已阅读5页,还剩82页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第六章中央控制器 一 中央控制器的功能和组成 1 中央控制器的功能 指令控制 即顺序控制 保证机器按照程序规定的顺序执行指令 控制操作 产生每条指令执行所需要的各种控制信号 并送相应部件产生相应动作 时间控制 同步不同操作 异常和中断处理 2 控制器的基本组成 1 程序计数器PC 给出并指示下一条指令的地址 完成顺序控制的功能 内容在取指完成后即可改变 转移指令直接修改PC值 2 指令寄存器IR 保存当前正执行的指令 指令的操作码字段和寻址方式送译码 3 指令译码器ID 对指令的OP字段和寻址方式译码 指出指令的操作方式 译码的结果是找到与该指令相关的微程序的入口 4 操作控制器OC 产生指令执行过程中所需要的控制信号 实现指令的操作控制功能 5 时序产生器 对操作控制信号进行同步 实现控制器的时间控制功能 6 控制器的基本设计方法 分析CPU硬件组成与结构 分析硬件控制信号的功能 有效形式 电平或脉冲 分析指令在CPU硬件环境下的执行流程 分析指令流程所需要的控制信号 对上述控制信号优化 同步 指令周期划分 将优化和同步后的控制信号以微指令的形式存放在CM中 将CM的输出与被控对象连接 6 控制器的基本设计方法 分析CPU硬件组成与结构 分析硬件控制信号的功能 有效形式 电平或脉冲 CP 二 控制器的控制原理 为统一表示指令执行流程 采用寄存器描述语言表示指令执行过程中的操作 使用RTL的规则如下 1 用 表示读取寄存器或主存地址的内容 如 PC 表示读取PC寄存器中的内容 2 用 表示主存单元地址或寄存器堆中寄存器的编号 则 M 6 表示主存6号单元 M 6 表示读取主存6号单元的数据 R 6 表示寄存器堆中6号寄存器 R 6 表示读取寄存器堆中6号寄存器的数据 M R 6 表示寄存器堆中6寄存器内容所指主存单 M R 6 表示读取寄存器堆中6寄存器内容所指主存单元的内容 为简化对主存单元的表示和访问 将它们分别简化成M R 6 和 M R 6 3 用 A B 表示数据传送 其中B为数据源 A为目的端 二 控制器的控制原理 1 控制器的组织 1 数据通路的概念及组成 数据通路 数据在功能部件之间传送的路径 数据在数据通路中的传送操作是在控制信号的控制下进行的 数据通路的建立可用总线或专用通路两种方法来构建 不同功能的指令及同一指令在执行的不同阶段的数据通路可不同 数据通路的结构直接影响CPU内各种信息的传送路径 指令执行流程 所需要的微操作控制信号及其时序安排和控制器的设计 2 指令周期 1 CPU如何区分存放在内存中的数据和指令 通过指令周期的不同阶段来区分 2 指令周期取出一条指令并执行一条指令所需要的时间 3 指令周期由两部分时间构成 2 指令周期的基本概念 4 指令周期时间 由于不同的指令功能不同 同一功能指令的寻址方式不同 所以取指和执行指令的时间也不相同 因此 不同指令的指令周期时间不相同 5 几个与指令周期有关的时间概念 CPU周期 又称机器周期 指CPU从内存中取出一个机器字所需要的最短时间 通常由若干个时钟周期组成 时钟周期 又称T周期 是计算机的节拍周期 是计算机中处理操作最基本的时间单位 6 指令周期 CPU周期 时钟周期三者之间的关系 3 指令周期不同阶段应该完成的任务 1 取指阶段完成的任务 a 从内存中取出一条指令b 对程序计算器PC的内容加 1 形成后续地址c 将指令的OP字段送指令译码器进行译码 2 执行阶段的任务 a 取操作数周期形成操作数地址 与寻址方式有关 并取出操作数 b 执行周期按时间发出完成指令所需要的所有控制信号 控制控制信息和数据信息的正确流动一个指令周期至少包括两个机器周期 CPU周期 4 指令的执行及控制 分析几条典型指令在上图所示CPU中的执行过程 1 指令流程图 描述指令处理过程中使用的部件 需要的操作 LADR0 80 指令流程图 ADDR0 81 指令流程图1 ADDR0 81 指令流程图2 ADDR0 81 指令流程图3 JO75指令流程图 可见 转移指令的目标地址不一定会送到PC中 关键是看是否转移成功 STA R1 R0指令流程图 5 指令的控制命令序列分析 LADR0 80 PC BUS LDAR RD LDDR PC 1 DR BUS LDIR IR BUS LDAR RD LDDR DR BUSBUS busLDR0 ADDR0 81 R0 LLDLA IR BUS LDAR RD LDDR LDR0 JO75 IR BUS LDPC STA R1 R0 R1 LL busbus BUS LDAR R0 LL busbus BUSBUS DR LDDR WR 6 应用举例 例1如图所示的为双总线结构机器的数据通路 IR为指令寄存器 PC为程序计数器 具有自动增加功能 M为主存 受R W控制 AR为地址寄存器 DR为数据缓冲寄存器 ALU由加 减控制信号决定需要完成何种操作 控制信号G控制的是一个门电路 另外 线上标注有控制信号 例如yi表示y寄存器的输入控制信号 R10表示寄存器R1的输出控制信号 未标字符的线为直通线 不受控制 1 ADDR2 R0指令完成 R0 R2 R0的功能操作 画出其指令周期流程图 假设该指令的地址已经放入PC 并列出相应的微操作控制信号序列 2 SUBR1 R3指令完成 R3 R1 R3的操作 画出其指令周期流程图 并列出相应的微操作控制信号序列 IR PC AR M DR X Y ALU IRO PCO DRO R0O R3O IRi PCi ARi R W DRi R0i R3i xi yi G 1 PC AR M DR DR IR R2 Y R0 X R0 R2 R0 R0 R2 R0 PC0 G ARi R W R DR0 G IRi R20 G Yi R00 G Xi G R0i 1 R0 R2 R0 PC0 G ARi R20 G Yi R00 G Xi G R0i 1 7 控制方式 讨论指令时间分配问题 1 控制不同操作序列时序信号的方法称为控制器的控制方式 其实质反映了时序信号的定时 2 常用的控制方式 同步控制 异步控制 联合控制 同步控制方式任何情况下 指令执行时所需要的机器周期数和时钟周期数都是固定不变的 即所有指令的机器周期和时钟周期数相同 由于指令周期是由数量不等的CPU周期数组成 CPU周期的数量反映了指令的复杂程度 即操作控制信号的多少 对于一个CPU周期 也有操作控制信号的多少与先后问题 异步控制方式 每条指令 每个操作需要多少时间就占用多少时间 即不同指令的机器周期长短不同 不同指令的机器周期数不同 联合控制同步控制与异步控制的结合 分两种情况 a 一种情况是 机器周期的时钟周期长度固定 但是每条指令的机器周期数不固定 b 另一种情况是大部分指令安排在固定的机器周期中 对于难以确定操作时间的以执行部件的 应答 作为操作结束的信号 三 时序产生器 1 计算机采用的多级时序体制 1 微程序控制器设计的计算机的多级时序体制是电位 脉冲制电位对应CPU时间 脉冲对应时钟周期 数据在寄存器间的传送 2 采用硬连布线逻辑 门电路 触发器组成 的计算机多级时序体制是主状态周期 节拍电位 节拍脉冲三级时序体制 主状态周期反映了某个状态周期的持续时间 通常用触发器的状态持续时间表示 一个主状态周期包含若干个节拍电位 对应一条指令的执行时间 节拍电位表示一个CPU周期的时间 包含多个节拍脉冲 节拍脉冲指的是节拍电位内的控制脉冲 对应了最基本的定时信号 2 时序信号产生器件 时钟源为环行脉冲发生器提供频率稳定的方波时钟脉冲 环行脉冲发生器产生一组有序的脉冲序列 以便通过译码产生最后需要的节拍脉冲 节拍脉冲和读写时序译码逻辑产生计算机所需要的节拍脉冲和读写时序 启停控制逻辑 对时序控制器的启 停 保证节拍的完整性 1 环行脉冲发生器与译码逻辑 CPU发总清零信号 Q4 1 门3开 当 开始出现时其余Qi 0 C4的跳变点在 而当Q4 1且 时可被清零 1 环行脉冲发生器与译码逻辑 CPU发总清零信号 Q4 1 门3开 当 开始出现时其余Qi 0 C2的跳变点在 Q4 1且Q1的改变 而当Q4 1且 时可被清零 C3的跳变点在 Q4 1且Q1的改变 而当Q4 1且 时可被清零 2 启 停控制逻辑的工作原理 只要通电 就会产生T10 T40 但不能使用 启 停控制控制T1 T4 停止信号不会对当前的T1 T4序列有效 对下一个序列的T1 T4有效 T40 四 微程序控制器 微程序设计技术是利用软件方法来设计硬件的技术 微程序控制的基本思想仿照程序设计的方法 把完成每条指令所需要的操作控制信号编写成微指令 存放到一个只读存储器 控存 中 每条机器指令对应一段微程序 当机器执行程序时依次读出每条指令所对应的微指令 执行每条微指令中规定的微操作 从而完成指令的功能 重复这一过程 直到该程序的所有指令完成 微程序控制器的设计采用了存储技术和程序设计技术 使复杂的控制逻辑得到简化 从而推动了微程序控制器的广泛应用 程序 1 微命令和微操作 控制部件与执行部件之间的联系 控制部件 执行部件 控制线 反馈线 微命令控制部件通过控制线向执行部件发出的各种控制信号 打开和关闭控制门 微操作执行部件接受微命令后所进行的操作 反馈线的作用向控制部件反馈执行的状态信息 以便控制部件进行状态测试 2 微操作的分类 微操作是计算机中最基本的操作 由于数据通路 逻辑功能的关系 微操作可以分为相容性的和相斥性的微操作 相容性的微操作能同时并行执行的微操作 相斥性的微操作不能同时并行执行的微操作 图中相斥性的微操作有 M 4 6 8 5 7 9 图中相容性的微操作有 1 2 3 4 6 8 与 5 7 9 两组中各取一个任意组合 互斥的时间范围 分析下列CPU中的互斥性控制信号 从数据通路和逻辑上考虑 分析下列CPU中的互斥性控制信号 3 微指令和微程序 1 微指令在机器的一个CPU周期中 一组实现一定功能的微命令的组合2 微指令的格式先回顾指令的格式 由上图可知 微指令格式由操作控制和顺序控制两部分组成3 操作控制 对应图中的1 24位 用来发出管理和指挥全机工作的所有控制信号 当操作控制字段的某一位为1时 表示该信号有效 将发出相应的微命令 该位为0时 表示该信号无效 不发出相应的微命令4 顺序控制 对应图中的25 30位 用来进行判别测试和给出下一条微指令的地址 5 操作控制信号的同步控制 微指令的操作控制字段给出的有效信号全是节拍电位信号 持续时间都是一个CPU周期 而实际需要的控制信号有先有后 且有的是脉冲信号 因此 要对操作控制信号进行同步 6 操作控制信号的同步控制举例对LDR1 LDR3的控制 节拍电位信号 LDR1 7 决定下一条微指令地址的方法 不分支时 后续微指令地址由直接地址字段给出 分支时 通过P1或P2及测试条件修改直接地址的某些位 实现微程序转移 微程序分支实现举例 设用P1的值修改第A27 A27A28A29A30的初始值为0101 当不进行P1测试时 下一条微指令的地址为0101 当进行P1测试时 用P1测试的条件 如C 去修改A27位 如果C 1 则A27位变成1 这时 下一条微指令的地址为 1101 8 微指令周期 微周期 从控存取一条微指令并执行微指令所需要的时间 在串行执行方式下 一般将微指令周期设计成同机器周期时间相等 这样便于系统的同步控制 微指令周期时间分配 这样的时序要求控存的存取速度很快 4 微程序控制器的组织 1 控制存储器 存放用来实现全部指令的所有微程序 是一种只读存储器 微程序固化在其中 其容量取决于机器指令和每条指令微程序的长度 字长取决于微指令的字长 也与容量有一定关系 要求控制存储器快速 2 微指令寄存器 IR 存放从控存中读出的微指令 是图中的哪部分 3 微地址寄存器 AR 存储访问CM的微地址 4 微地址产生逻辑用于产生后续微指令地址 能作为后继微指令地址的有下列形式 微程序的入口地址 顺序地址 转移地址产生上述三类地址的方法主要有如下两种 微程序的入口地址由OP通过判别测试和地址转移逻辑产生 当微程序不出现分支时 由微指令的直接地址字段给出下一条微指令的地址 当出现转移时 由判别测试字段和状态条件来修改直接地址的某些位来实现多路分支 a 多路转移方式 b 增量与断定相结合的方法 工作原理和过程类似于PC 设置微地址计数器 AR PC 微程序的入口地址由OP通过判别测试装入作为微程序的首地址 顺序执行时后续微指令的地址由 AR 1得到 转移时 用P字段的相关位测试外部条件 并根据被测试的条件是否成立来修改 AR中的相关位 实现转移 c 地址转移逻辑的实现 5 指令与对应微程序间的联系由指令的OP来实现 根据指令的OP 通过某种映射方式 唯一得到与该指令在某种寻址方式下对应的微程序的入口地址 指令的OP与微程序入口的可能映射方式及比较 a OP就是指令微程序的入口地址 b 对OP映射得到相应微程序的入口地址 5 微程序设计举例 一条机器指令对应一段微程序 一段微程序包含该机器指令执行过程中的所有控制信号 微指令的设计是微程序设计的具体体现 微指令的设计与计算机的硬件结构 指令的操作流程 微指令的格式等因素有关 本例中采用串行微程序设计 故将一个微指令周期的时间设计成同一个CPU周期的时间 1 LADR0 80 微程序设计 取微指 1 1 1 1 1 1 1 1 LAD执行阶段微程序设计 1 1 1 1 1 1 1 时间分配与芯片选择 1 IR BUS LDAR 2 T4 RD 3 LDDR T4 DR BUS BUS bus LDR0 3 LDDR DR BUS T4 BUS bus LDR0 OK 2 ADDR0 81 执行微程序设计第一条微指令设计 1 1 ADDR0 81 执行微程序设计第二条微指令设计 1 1 1 1 1 1 1 1 ADDR0 81 执行微程序设计第三条微指令设计 1 1 3 JO75执行阶段第一条微指令设计 1 1 1 4 STA R1 R0指令执行阶段第一条微指令设计 1 1 1 1 STA R1 R0指令执行阶段第二条微指令设计 1 1 1 1 1 1 6 微指令编码与微地址的形成 本节主要内容是如何确定微指令的结构 包括下列内容 1 微命令编码 2 微地址的形成 3 微指令的格式 微指令结构设计追求的目标 1 有利于缩短微指令字长度 2 有利于减小控制存储器的容量 3 有利于提高微程序的执行速度 4 有利于对微指令的修改 微命令编码就是微指令中的操作控制字段采用的表示方法 1 直接表示法 操作字段的每一位表示一个微命令 1 微命令编码 优点 简单 直观 输出直接用于控制 缺点 微指令字长 不利于减少控存容量 2 编码表示法 把一组互斥的信号组成一个小组 然后通过小组译码器译码 译码输出将作为操作控制信号 每次每个小组最多只能有一个有效 若某小组有4个微命令 则微指令中该字段需要多少位 需要3位 为什么 因为每字段经过译码后 要有一个状态表示不使用本组中的微命令 编码表示法的优点 大大缩短微指令字的长度 从而减少控存的容量 编码表示法的缺点 增加的移码电路降低了微指令的执行速度 3 混合表示法综合前面的直接表示法和编码表示法 关于微命令编码的结论 目前一般使用字段直接表示法 共有10个微操作 但微命令控制字段只有8位 如何表示 e f h b i j 其余微命令采用直接表示法 2 微指令格式 微指令的格式分为水平型微指令和垂直型微指令 水平型微指令 一次能定义并执行多个并行操作微命令的微指令 前面所讲的微指令都是水平型微指令 根据水平型微指令的控制字段的表示方法不同 可以将水平型微指令分为三种 a 全水平型微指令 对应微命令编码的直接表示 b 字段译码法水平型微指令 对应微命令编码的译码表示 c 直接表示和译码相结合的水平型微指令 微命令编码混合表示法 垂直型微指令 微指令中设置微操作码字段 采用微操作码编译法 由微操作码规定微指令的功能 类似于指令的操作码思想 水平型微指令和垂直型微指令的比较 水平型微指令并行操作能力强 效率高 灵活性强 垂直型微指令则比较差 b 水平型微指令执行一条指令的时间短 垂直型微指令执行执行一条指令的时间长 c 由水平型微指令解释指令的微程序 具有微指令字较长 微程序短的特点 垂直型微指令则相反 微指令短而微程序长 水平型微指令和垂直型微指令应用 某计算机采用微程序控制 微指令格式中操作控制字段16位 若采用完全水平型微指令 则可以定义 A 种微操作 此时 一条微指令最多可以同时启动 B 个微操作 若采用完全垂直型微指令 则可以定义 C 种微操作 此时 一条微指令最多可以启动 D 个微操作 答案 A 16 B 16 C 216 64K D 1 7 微程序在控存中的存放及微程序控制器的工作过程 LADR0 80 ADDR0 81 JO75STA R1 R0 30 9 硬布线控制器 采用硬布线方式设计的控制器称为硬布线控制器 采用组合逻辑的方式设
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年学生社会实践安全防护及责任划分合同
- 2025年度特色餐饮连锁品牌厨师人才招募与管理合同
- 2025年创新型小型厂房租赁及商务配套服务合同范本
- 2025年茶叶有机生产过程监控及认证服务综合合同
- 2025年智慧城市基础设施建设项目监理与咨询服务合同
- 2025年农家乐特色餐饮设施租赁合同规范范本
- 2025年教育机构校园文化节项目外包派遣服务合同模板
- 2025年员工住宅水电能耗监控与节能改造项目合同
- 2025年度城市道路裂缝注浆修复服务合同
- 2025年度生物技术知识产权共享及研发合作合同
- 基于品牌忠诚度的餐饮App的营销策略研究以“瑞幸咖啡”App为例
- 碳中和技术概论全套教学课件
- 如何完成原料药中元素杂质的风险评估报告
- 商业计划书推广
- 选品与采购全套教学课件
- 维生素D与女性生殖健康的预防
- DB13-T 5838-2023大型会展活动临建设施安全、绿色管理通用要求
- 创伤失血性休克中国急诊专家共识(2023)解读
- 材料风险调差表
- (订正版)全面质量管理知识习题集大全(含答案)
- 武汉市古树名木资源调查报告
评论
0/150
提交评论