资源描述:
《微机原理第三章ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1CPU的功能与构成2指令系统(格式、类型、寻址方式)3几种典型微处理器体系结构第三章微处理器体系结构及关键技术CPU简化模型Temp寄存器组控制部件IRABbufferDBbufferPCALU3.1CPU功能和构成CPU的基本功能取指令根据程序计数器PC中的值,从存储器读出现行指令,送到指令寄存器IR,然后PC自动加1指向下一条指令。分析指令(译码/解码)将IR中的指令操作码译码,分析其指令性质。如指令要求操作数,则寻找操作数地址。执行指令取出操作数,执行指令规定的操作。根据指令不同还可能写入操作结果。协调和控制计算机
2、各部件,执行指令序列指令译码、执行算数和逻辑运算与存储器和外设交换数据提供系统所需控制CPU功能指令由操作码(指定完成的操作)和操作数(完成操作所需的数据)引用/下一条指令引用构成3.2指令系统指令格式和寻址方式对CPU的组织结构有显著影响操作码操作数1操作数2……MOVAX,1100HADDAX,BXINAL,portJMPnext指令类型数据处理(算数和逻辑运算)数据传送控制转移(测试和转移)操作数可以位于主存或虚存(提供地址)寄存器(提供寄存器编号)I/O设备(提供接口地址)寻址方式操作数由指令直接给出:立即寻址操作
3、数存放在寄存器中:寄存器寻址操作数存放在存储器中:存储器寻址。指令中给出操作数所在的有效地址。MOVR1,R0MOVR0,#100寻找操作数的来源的方式称为寻址方式。1存储器直接寻址——直接给出操作数存储地址ADDRdRs1addrADDRd,Rs1,(addr);Rd←(Rs1)+mem[addr]2寄存器间接寻址——寄存器内容代表操作数存储地址ADDRdRs1Rs2ADDRd,Rs1,(Rs2);Rd←(Rs1)+mem[(Rs2)]ADDRdRs1RsADDRd,Rs1,@(Rs);Rd←(Rs1)+mem[mem(
4、Rs)]3存储器间接寻址——存储器内容代表操作数存储地址ADDRd,Rs1,@(Rs)nRs2(Rs)(Rs2)…………ADDRdRs1RsimmADDRd,Rs1,Astart(Rs);Rd←(Rs1)+mem[(Rs)+Astart]4位移量寻址——寄存器内容+位移量代表操作数存储地址ADDRd,Rs1,Astart(Rs)A[0]A[1]A[2]A[3]Astart………(Rs)+AstartADDRdRs1RsRxADDRd,Rs1,(Rs)+(Rx);Rd←(Rs1)+mem[(Rs)+(Rx)]5指数寻址——基
5、址寄存器+指数寄存器之和代表操作数存储地址ADDRd,Rs1,(Rs)+(Rx)A[0]A[1]A[2]A[3](Rs)………(Rs)+(Rx)6自增和自减寻址——堆栈指针表示栈顶地址PUSH:STORE-SP,Rs;SP←(SP-d),mem[(SP)]←(Rs)入栈出栈DnDn-1POP:LOADRd,SP+;Rd←mem[(SP)],SP←(SP)+d…栈顶SP新栈顶ADDRdRs1RsRximmADDRd,Rs1,Astart(Rs)(Rx);Rd←(Rs1)+mem[Astart+(Rs)+(Rx)×d]7比例尺
6、寻址——基址寄存器+指数寄存器+位移量=操作数存储地址ADDRd,Rs1,(Rs)+(Rx)A[0]A[1]A[2]A[3](Rs)……Astar+(Rs)+(Rx)xddBytePC相对寻址——转移到目标JUMPimmJUMPlabel;PC←[label]=(PC)+immlabel为目标地址(绝对地址),译码时根据PC当前值(该指令的下一条指令地址)和label计算出imm(相对偏移量)。imm可正可负(补码表示)。3.3微处理器体系结构介绍随机逻辑体系——针对CPU中控制器逻辑由硬件逻辑实现指令集结构优化指令结构,
7、以减小硬件逻辑复杂度指令集结构硬件逻辑方程可通过简化指令减少所使用的门电路总数从而减少制造费用。指令集结构与硬件逻辑方程之间存在着密切联系,设计过程复杂。重用性差,设计成果很少能再利用到以后的新CPU设计中。适用于较简单的指令集结构。①程序计数器的值经MUX送到存储器;②存储器送回的指令写入指令寄存器;③程序计数器加1后回写;①寄存器堆中的某个地址寄存器通过MUX寻址存储器,获得ALU的一个操作数;②另一个操作数来自于寄存器堆中的数据寄存器;③ALU的结果值被回写入寄存器堆。指令集结构驱动硬件的逻辑方程定义所需的指令集结构
8、;根据指令集决定硬件逻辑及状态机;硬件逻辑方程反馈到指令集结构对指令集结构做必要的修改和优化;最大限度地减少逻辑复杂度;随机逻辑CPU的设计步骤微码体系指令由若干微指令组成,每条指令对应一组微指令(微码),对指令的译码从硬件逻辑设计变成设计微指令(软件)。指令微码控制逻辑由于在指令和控制逻辑中间增加“微