- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ADD指令对BETA而言,表示Reg[R4].ppt
建构 Beta计算机 中央处理单元的设计取舍 效能之量测 Beta指令集 达成方法: 累进功能法 多端口缓存器档案 缓存器档案之时序 起始点: ALU 操作 指令取得/译码 ALU 操作之数据路径 ALU 操作 (常数存在时) “加载”指令 “储存”指令 ”跳跃”(JMP)指令 BEQ/BNE(当相等/不等时, 则跳跃) 指令 “加载相对地址”指令 “加载相对地址”(LDR)指令 例外处理 实施方法… 例外 控制逻辑 Beta: 我们的”最终答案” 下回: 管路化的Beta计算机 *10/29/0 最大效能: 以每秒可执行的指令数来衡量 最小成本: 以电路的大小来衡量 最佳效能/价钱: 以MIPS(每秒百万指令)与大小的来比例来衡量. 在重视能量消耗的应用中, MIPS/瓦特也很重要. 推进效能 ... 今天: 1 时脉/指令. 下次: 以管路技术来达成更多百万赫 下下次: 修正不同的管路技术问题 每秒百万指令 每指令所需时脉数 时脉频率(百万赫) 以操作码区分的指令类别: OP OPC MEM Transfer of Control 操作类别: Reg[Rc] ← Reg[Ra] op Reg[Rb] 操作类别: Reg[Rc] ← Reg[Ra] op SXT(C) 两种格式共享的操作码(OPCODE): ADD SUB MUL* DIV* *optional CMPEQ CMPLE CMPLT AND OR XOR SHL SHR SRA 每个指令是由一个简单的功能组件成来达成的. 我们将试着实现各个指令类别的数据路径, 然后再将它们合并(使用解多任务器等). 步骤: 1. 操作类指令 2. 存取类指令 3. 跳跃与分流类指令 4. 例外 5. 合并数据路径 内存 缓存器 解多任务器 “黑盒子” 运算逻辑单元 我们的组件百宝袋: 2 combinational READ ports*, 1 clocked WRITE port *internal logic ensures Reg[31] reads as 0 (独立读取地址) 两组组合逻辑式读取端口, 一组时脉控制式写入埠 如果 (举例来说) WA=RA1, 将会如何??? RD1 会读取 “旧的” Reg[RA1] 之值, 一直到下一个时脉边缘为止! 32-位 (4-字节) ADD 指令: 对BETA而言, 表示Reg[R4] ← Reg[R2] + Reg[R3] 首先, 硬件必需能够: 读取下一个 32-位 指令 指令译码(DECODE): ADD, SUB, XOR, 等等 从缓存器档案进行读取 (READ) (Ra, Rb) 之操作; 执行(PERFORM)指定的操作; 将结果写回(WRITE)缓存器档案(Rc). 使用计数器来取得(FETCH)下一个指令: 程序计数器 (PC) 使用 PC 来当作内存地址 加4到PC, 然后在时脉结束时加载新的值 从内存取得指令 o 直接使用某些指令字段 (缓存器编号, 16-位之常数) o 使用 31:26位来产生控制讯号 INSTRUCTION WORD FIELDS CONTROL SIGNALS OP: Reg[Rc] ← Reg[Ra] op Reg[Rb] OPC: Reg[Rc] ← Reg[Ra] op SXT(C) LD: Reg[Rc] ← Mem[Reg[Ra]+SXT(C)] ST: Mem[Reg[Ra]+SXT(C)] ← Reg[Rc] JMP: Reg[Rc] ← PC+4; PC ← Reg[Ra] BEQ: Reg[Rc] ← PC+4; if Reg[Ra]=0 then PC ← PC+4+4*SXT(C) BNE: Reg[Rc] ← PC+4; if Reg[Ra]≠0 then PC ← PC+4+4*SXT(C) 等等, “加载相对地址”指令有什么好处呢??? 我认为 程序代码是单纯的, 举例来说, 它们是只读的, 并且存在一个”程序”内存区; 但数据是可读/写的, 而使用以下方法之一来储存 存在堆栈(STACK)中 (内部); 或 在某些外部变数中; 或 存在一个外部的储存堆栈(HEAP). 所以, 为什么一个指令要设计成可以加载”靠近”这个指令的数据呢??? 当数据是 ”地址”及”其它较大的常数”时 LDR: Reg[Rc] ← Mem[PC + 4+ 4*SXT(C)] LDR: Reg[Rc] ← Mem[PC + 4 + 4*SXT(C)] 计划:: 中断正在执行的程序 呼叫例外处理 (像是一个过程调用) 返回并继续执行. 我们希望有
您可能关注的文档
- 60周年校庆实物捐赠礼品-对外经济贸易大学档案馆.doc
- 62营运期噪声环境影响分析-WorldBankuments&Reports.doc
- 63.1废水验收监测内容-四川九洲电器集团有限责任公司.doc
- 6318《文秘管理与应用写作》复习资料(一)的答案.doc
- 63图形控件与绘图方法一-Read.ppt
- 63图形控件与绘图方法一.ppt
- 63洛比达法则.ppt
- 6评价指标体系的建立-资源节约和环境保护司.doc
- 701709050405操作指南工件放置位置和间隙检测PS7570-ifm.PDF
- 708200REV1018抗双链DNA抗体检测试剂盒-InovaDiagnostics.PDF
- 2023年四川三河职业学院招聘笔试真题参考答案详解.docx
- 2023年嘉兴职业技术学院招聘笔试真题含答案详解.docx
- 2023年四川中医药高等专科学校招聘笔试真题及完整答案详解1套.docx
- 家畜疾病防治-兽医专家.pptx
- 2023年四川中医药高等专科学校招聘笔试真题及参考答案详解.docx
- 2023年嘉兴职业技术学院招聘笔试真题附答案详解.docx
- 2023年嘉兴职业技术学院招聘笔试真题及答案详解1套.docx
- 2024年泸州医疗器械职业学院单招职业适应性考试题库最新.docx
- 2023年嘉兴职业技术学院招聘笔试真题及完整答案详解1套.docx
- 2023年嘉兴南湖学院招聘笔试真题及答案详解一套.docx
文档评论(0)