网站大量收购闲置独家精品文档,联系QQ:2885784924

7第六讲中央处理器(2-4)数据通路结构描述.ppt

7第六讲中央处理器(2-4)数据通路结构描述.ppt

  1. 1、本文档共102页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Datapaths * Branch control unit Branch control 的输入信号: PL, JB, BC ,AD 为译码器的输出信号,包含了当前指令相关的信息 状态位 V, C, N , Z. 当前的 PC 值 Branch control 的输出信号: Load 装入信号 PC. 当 Load = 1, 目标地址信号target address. ADRS Instruction RAM OUT PC Instruction Decoder DA AA BA MB FS MD WR MW Branch Control V C N Z PL JB BC AD Datapaths * Branch control unit 的输入信号 译码器输出: PL / JB 表明指令类型. BC 编码转移条件 AD 表示目标地址. ADRS Instruction RAM OUT PC Instruction Decoder DA AA BA MB FS MD WR MW Branch Control V C N Z PL JB BC AD Datapaths * 生成 PL 和 JB 指令译码器根据操作码生成 PL 和 JB 信号: PL = I15 I14 JB = I13 Datapaths * 生成 BC 和 AD 3 BC 3 AD 3 AD BC2 BC1 BC0 = I11 I10 I9 AD5 AD4 AD3 AD2 AD1 AD0 = I8 I7 I6 I2 I1 I0 Datapaths * Jumps 若 PL = 1 且 JB = 1, 当前指令必为 jump. 将 jump的偏移量 “offset” (AD) 与当前PC 相加,再存回PC. branch control unit 应包含一个加法器,计算目标地址. AD 为有符号数,实现双向跳转。 PC Branch Control V C N Z PL JB BC AD Datapaths * Branches 如果 PL = 1 且 JB = 0, 当前指令必为条件转移指令. branch control unit 首先决定是否实现转移. 检查转移类型即 BC 和状态位VCNZ. 例如当 BC = 011 且 Z = 1, 则转移条件为真,应当实现转移。 然后,branch control unit 设置 PC 值. 如果转移为真,将AD 与 PC相加,与jumps一样. 否则PC+1 ,顺序执行. PC Branch Control V C N Z PL JB BC AD Datapaths * 小结 控制器: PC指向指令存储器. 指令译码器根据指令生成数据通路的控制信号. 转移控制单元处理指令执行的顺序. 控制器的实现依赖于指令集的结构和数据通路 仔细选择操作码和指令格式,可简化控制器的设计 Datapaths * 组合逻辑控制器 Datapaths * 使用 PC相对 地址表示jumps 和 branches, 即操作数表示的转移地址是相对于当前指令的. 假设每条指令占一个内存字长. 操作数为有符号数: jump 和 branch 可能 向前或向后转移。 向后转移可用于实现循环。 LD R1, #10 1000 LD R1, #10 LD R2, #3 1001 LD R2, #3 JMP L 1002 JMP 2 K LD R1, #20 1003 LD R1, #20 LD R2, #4 1004 LD R2, #4 L ADD R3, R3, R2 1005 ADD R3, R3, R2 ST (R1), R3 1006 ST (R1), R3 相对于PC 的 jumps 和 branches Datapaths * Jump 和 branch format 例如: BZ R3, -24 JMP 18 指令格式: 7-bit 操作码。 3-bit 源寄存器 SA 表示转移条件. 6-bit address field, 地址域AD, 保存jump 或 branch 的偏移量. 15 9 8 6 5 3 2 0 Datapaths * 地址域 AD AD 被视为6-bit 有符号数,转移范围为(25-1)~(-25). AD分成两部分,以使SA 在三种不同格式中占有同样的位置。 15 9 8 6 5 3 2 0 Datapaths * 指令格式的一致性 不同类型指令的格式类似: Opcode 位置相同(bits 15-9). DR 位置相同

文档评论(0)

jdy261842 + 关注
实名认证
内容提供者

分享好文档!

1亿VIP精品文档

相关文档