指令系统设计.pdf

指令系统设计.pdf

ID:32045165

大小:384.74 KB

页数:12页

时间:2019-01-30

指令系统设计.pdf_第1页
指令系统设计.pdf_第2页
指令系统设计.pdf_第3页
指令系统设计.pdf_第4页
指令系统设计.pdf_第5页
资源描述:

《指令系统设计.pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、指令系统设计计算机组织与系统结构计算机组织与系统结构软件指令系统设计指令系统InstructionSetDesign硬件(第四讲)程旭2009.3.5北京大学计算机科学技术系计算机微处理器研究开发中心北京大学计算机科学技术系计算机微处理器研究开发中心指令系统体系结构(InstructionSetArchitecture)计算机的简单模型IAS程序计数器:从程序员来观察计算机程序ProgramCounter(PC)(指令)ADD01010SUBTRACT01110CPU累加器AND10011MemoryACCOR10001COMPARE11010存储地址

2、寄存器..I/OMAR...从计算机来观察.存储数据寄存器MDR/MBRPrinceton(VonNeumann)系统结构Harvard系统结构---数据和指令存放在统一存储器中---数据&指令指令寄存器(“存储程序计算机”)存放在不同的存储器中IR(“storedprogramcomputer")---程序当作数据---在某些高性能实现中---存贮系统的利用(Storageutilization)具有优势---单一的存储器接口北京大学计算机科学技术系计算机微处理器研究开发中心北京大学计算机科学技术系计算机微处理器研究开发中心指令系统设计中的基本问题执

3、行周期---应该提供哪些(以及多少)操作?用LD/ST/INC/BRN已经足够编制任何计算程序Instruction从程序存储系统中获得指令但是并不实用,这主要因为编出的程序太长!Fetch---如何(以及多少)操作数应该被指明?Instruction确定所需的动作和指令大小大多数操作是双值运算(dyadic)(例如,A⇐B+C)Decode也有一些是单值运算(monadic)(例如,A⇐~B)Operand定位并获得操作数数据---如何将这些指令编码成一致的指令格式?Fetch指令长度应该为基本数据/地址宽度的倍数!Execute计算结果数值或状态典

4、型的指令系统:♣32位字♣基本操作数地址为32位长Result在存储系统中存放结果,以备后用♣基本操作数(例如,整数),32位长Store♣通常,指令可以涉及3个操作数(A:=B+C)Next确定后续指令挑战:用少量的位数,对操作进行编码!Instruction北京大学计算机科学技术系计算机微处理器研究开发中心北京大学计算机科学技术系计算机微处理器研究开发中心必须指定什么?将要揭示的主题•指令格式或编码Instruction–如何对它译码?•对操作数和结果定位Fetch•对操作数和结果定位–除了存储器之外,还可放在哪里?–除了存储器之外,还可放在哪里?

5、Instruction–有多少个显式操作数?Decode–有多少个显式操作数?–如何对存储器操作数进行定位?–如何对存储器操作数进行定位?Operand–哪些操作数可以或者不可以存放在存储器中?Fetch•哪些操作数可以或者不可以在存储器中?•数据类型和大小•操作类型Execute•操作•指令格式或编码Result–支持哪些?–如何对它译码?Store•后续指令•数据类型和大小Next–jumps,conditions,branches–支持哪些?Instruction-指令处理必须经过fetch-decode-execute!北京大学计算机科学技术系

6、计算机微处理器研究开发中心北京大学计算机科学技术系计算机微处理器研究开发中心基本的指令系统体系结构种类累加器(Accumulator):1addressaddAacc←acc+mem[A]1+xaddressaddxAacc←acc+mem[A+x]堆栈(Stack):0addressaddtos←tos+next比较:每条指令的字节数?指令数?每条指令的周期数?北京大学计算机科学技术系计算机微处理器研究开发中心北京大学计算机科学技术系计算机微处理器研究开发中心基本的指令系统体系结构种类比较指令的数量通用寄存器(GeneralPurposeRegist

7、er):2addressaddABVal(A)←Val(A)+Val(B)四类指令系统,完成C=A+B的代码序列:3addressaddABCVal(A)←Val(B)+Val(C)堆栈累加器寄存器寄存器(寄存器-存储器)(load-store)装入/存储(Load/Store):PushALoadALoadR1,ALoadR1,APushBAddBAddR1,BLoadR2,B3addressaddRaRbRcRa←Rb+RcAddStoreCStoreC,R1AddR3,R1,R2PopCStoreC,R3loadRaRbRa←mem[Rb]sto

8、reRaRbmem[Rb]←Ra比较:每条指令的字节数?指令数?每条指令的周期数?北京大学计算

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。