第2章_8088-8086微处理器.



《第2章_8088-8086微处理器.》由会员分享,可在线阅读,更多相关《第2章_8088-8086微处理器.(53页珍藏版)》请在文档大全上搜索。
1、NUIST第第2 2章章 8088/80868088/8086微处理器微处理器NUIST主要内容主要内容v2.1 8088/8086微处理器特点v2.2 8088/8086微处理器结构 v2.3 8088/8086微处理器工作模式和引脚v2.4 8088/8086的总线时序v2.5 微型计算机系统组成v2.6 高性能微机技术简介NUIST2.1 8088/8086 CPU2.1 8088/8086 CPU的特点v采用并行流水线工作方式v20位地址,寻址1M空间,对内存空间实行分段管理:每段容量不超过每段容量不超过64KB64KB用段地址和段内偏移实现对用段地址和段内偏移实现对1MB1MB空间的
2、寻址空间的寻址设置地址段寄存器指示段的首地址设置地址段寄存器指示段的首地址v支持多处理器系统;v片内没有浮点运算部件,浮点运算由数学协处理器8087支持(也可用软件模拟)注:80486DX以后的CPU均将数学协处理器作为标准部件集成到CPU内部(书上有(书上有7 7点点-这都是对当时而言)这都是对当时而言)NUIST2.1 8088/80862.1 8088/8086微处理器特点微处理器特点比较特点比较特点( (差别差别):): 指令预取队列:8088为4字节,8086为6字节 数据总线引脚:8088有8根,8086有16根v8088为准16位CPU,内部DB为16位,但外部仅为8位,16位数
3、据要分两次传送v本课程主要介绍8088(IBM PC采用)NUIST2.2 8088/8086微处理器结构2.2.1 功能结构功能结构接口单元和执行单元接口单元和执行单元2.2.2 8088CPU的内部寄存器结构的内部寄存器结构2.2.3 存储器寻址存储器寻址NUIST段段寄寄存存器器20位地址总线位地址总线DISIBPSPDLDHCLCHBLBHALAH标志寄存器标志寄存器暂存器暂存器ALUEU控制器控制器IPESSSDSCS地址加法器地址加法器654321总线总线控制控制控制信号控制信号16位位数数据据线线通通用用寄寄存存器器组组AXBXCXDX20位地址总线位地址总线16位数据总线位数据
4、总线控制总线控制总线指令队列指令队列执行单元(执行单元(EU)总线接口部件(总线接口部件(BIU)外外部部总总线线控制信号总线控制逻辑控制总线总线接口单元(BIU)总线接口单元(BIU)指令队列控制器2.2.1 功能结构功能结构接口单元和执行单元接口单元和执行单元80868088:8位数据线位数据线4个单元指令流队列个单元指令流队列从功能上讲,可分为两个独立的部分,并行重叠操作NUIST总线接口部件(BIU) 包括 一组段寄存器,指令指针,6字节指令队列。(8088是4字节),20位总线地址形成部件及总线控制逻辑。主要任务:完成CPU与主存或I/O端口之间的信息传送功能:b.从主存或I/O端口
5、取操作数或存放运算结果c.计算并形成访问主存的20位物理地址 a.从主存取指令送到指令队列中排队NUIST总线接口部件组成u4个个16位段地址寄存器位段地址寄存器 代码段寄存器(代码段寄存器(Code segment),存放程序段的地址。),存放程序段的地址。 数据段寄存器(Data segment),存放当前数据段地址。 堆栈段寄存器(Stack segment),堆栈操作的执行地址在此段中 附加段寄存器(ES),用于字符串操作。u16位指令指针寄存器(Instruction Pointer)u6/4字节指令队列缓冲器u20位地址加法器u总线控制器NUIST指令队列缓冲器先进先出的原则,按顺
6、序存放,并按顺序取到EU中去执行当指令队列缓冲器中存满1条指令,EU开始执行。指令队列缓冲器中只要空出1个(8086为2个)指令字节 时,BIU便自动执行取指操作,直到填满为止。EU执行指令时,如需对M或I/O设计存取数据时,BIU将在 执行完现行取的存储器周期后的下一个存储器周期,对内 存单元或I/O设备进行存取操作,交换的数据经BIU由EU进 行处理。当EU执行完转移、调用和返回指令时,要清除指令队列缓 冲器,并要求BIU从新的地址重新执行。总线接口部件组成NUIST执行部件EU由一个16位算术逻辑运算部件ALU、EU 控制器、一组通用寄存器和标志寄存器构成。a.从指令队列中取出指令代码,
7、由EU控制器进行译码后产生对应的控制信号到各部件完成指令规定的操作。b.对操作数进行算术和逻辑运算,将运算结果的特征状态存放在标志寄存器中。c.当需要与主存或I/O端口传送数据时,EU向BIU发出命令,并为BIU提供16位有效地址及传送的数据。EU功能为:NUISTu16位算术逻辑单元(ALU) 算术、逻辑运算,计算16位偏移量u16位标志寄存器 CPU的运算状态特征或存放控制标志u数据暂存寄存器 协助ALU完成运算u通用寄存器组 4个16位数据寄存器,4个16位指针与变址寄存器uEU控制电路 控制、定时与状态逻辑电路执行单元组成NUIST串行工作方式:取指令取指令1执行执行1取操取操作数作数
8、2执行2CPUBUS忙碌忙碌忙碌忙碌存结果存结果1取指令取指令2v8088以前的CPU采用串行工作方式:1)CPU执行指令时总线处于空闲状态2)CPU访问存储器(存取数据或指令)时要等待总线操作的完成缺点:CPU无法全速运行解决:总线空闲时预取指令,使CPU需要指令时能立刻得到NUIST并行工作方式:v8088CPU采用并行工作方式取指令2 取操作数BIU存结果取指令3 取操作数取指令4执行1执行2执行3 EUBUS忙碌忙碌忙碌忙碌忙碌忙碌NUIST80888088的流水线操作的流水线操作v8088 CPU包括两大部分:BIU和EUBIU不断地从存储器取指令送入IPQIPQ,EU不断地从IPQ
9、IPQ取出指令执行BIU和EU构成了一个简单的2工位流水线指令预取队列IPQ是实现流水线操作的关键(类似于工厂流水线的传送带)v新型CPU将一条指令划分成更多的阶段,以便可以同时执行更多的指令例如,PIII为14个阶段,P4为20个阶段(超级流水线)NUIST结论v指令预取队列的存在使BIU和EU两个部分可同时进行工作,从而 提高了CPU的效率; 降低了对存储器存取速度的要求NUISTESSSCSDS数据段代码段堆栈段附加段段段寄寄存存器器BPSP栈指针寄存器基址指针寄存器指指针针寄寄存存器器SIDI源变址寄存器目的变址寄存器变变址址寄寄存存器器DHDLCHCLBHBLAHALAXBXCXDX
10、累加器基地址寄存器计数寄存器数据寄存器数数据据寄寄存存器器IPFR指令指针寄存器状态标志寄存器控控制制寄寄存存器器通通用用寄寄存存器器2.2.2 80888086CPU的内部寄存结构的内部寄存结构重点讲控制寄存器重点讲控制寄存器NUIST控制寄存器vIP:指令指针寄存器,其内容为下一条要 执行的指令的偏移地址vFLAGS:标志寄存器 状态标志:存放运算结果的特征 控制标志:控制某些特殊操作 6个状态标志位(CF,SF,AF,PF,OF,ZF) 3个控制标志位(IF,TF,DF)NUISTCFCF进位标志进位标志,记录运算时从高位有效位产生的进位或借位记录运算时从高位有效位产生的进位或借位PFP
11、F奇偶标志奇偶标志,操作结果中有偶数个,操作结果中有偶数个1时,时,PF=1,否则,否则PF=0AFAF辅助进位标志辅助进位标志,记录运算时第,记录运算时第3位和第位和第4位之间的进位或借位。位之间的进位或借位。ZFZF零标志零标志,运算结果为,运算结果为0时,时,ZF=1,否则,否则ZF=0SFSF符号标志符号标志,运算结果为负,运算结果为负,SF=1,否则,否则SF=0OFOF溢出标志溢出标志,运算结果超出机器能够表示的范围,运算结果超出机器能够表示的范围OF=1,否则,否则,OF=0。TFTF陷阱标志陷阱标志,TF=1,执行指令时产生单步中断。,执行指令时产生单步中断。IFIF中断标志中