《微机系统与接口:第三章 8086 8088微处理器及其系统》由会员分享,可在线阅读,更多相关《微机系统与接口:第三章 8086 8088微处理器及其系统(30页珍藏版)》请在金锄头文库上搜索。
1、第三章第三章 8086/8088微处理器及其系统微处理器及其系统3.1 8086/8088 微处理器微处理器3.2 8086/8088 系统最小系统最小/最大工作方式最大工作方式3.3 多处理器系统多处理器系统3.4 8086/8088 系统的存储器系统的存储器3.5 8086/8088 指令系统指令系统3.1 8086/8088微处理器微处理器一、一、8086/8088CPU内部结构内部结构 简介简介 总线接口单元总线接口单元 Bus Interface Unit (BIU) 执行单元执行单元 Execution Unit (EU) 二、二、8086/8088的寄存器结构的寄存器结构 通用寄
2、存器通用寄存器 段寄存器段寄存器三、三、8086/8088的引脚信号功能的引脚信号功能8086/8088微处理器简介微处理器简介1978年推出16位处理器,X86系列微机的基础HMOS 工艺,2.9万个晶体管,40脚时钟:5-10MHz20bit地址线,16bit数据线寻址1M字节存单元,64k I/O地址性能比8位机提高10倍8086/8088的区别:8088的外部数据总线是8位,8086是16位3.1 8086/8088 CPU8086/8088微处理器简介微处理器简介3.1 8086/8088 CPU4004,108kHz8086,5-10MHzPentium4, 2.5GHz4004与
3、与P4比较比较2000: Pentium4 ProcessorUsers of Pentium 4 processor-based PCs can create professional-quality movies;deliver TV-like video via the Internet;communicate with real-time video and voice; render 3D graphics in real time;quickly encode music for MP3 players; and simultaneously run several multime
4、dia applications while connected to the Internet. The processor debuted with 42 million transistors and circuit lines of 0.18 microns. Intels first microprocessor, the 4004, ran at 108 kilohertz (108,000 hertz), compared to the Pentium 4 processors initial speed of 1.5 gigahertz (1.5 billion hertz).
5、 If automobile speed had increased similarly over the same period, you could now drive from San Francisco to New York in about 13 seconds.3.1 8086/8088 CPU8086/8088微处理器结构微处理器结构执行单元执行单元执行单元执行单元Execution UnitExecution Unit(EU)(EU)总线接口单元总线接口单元总线接口单元总线接口单元Bus Interface UnitBus Interface Unit(BIU)(BIU)取指
6、令,取指令,取指令,取指令,读操作数,读操作数,读操作数,读操作数,写数据写数据写数据写数据8086/8088 CPU3.1 8086/8088 CPUAH ALAH ALBH BH BL BLCH CH CL CLDH DLDH DLSPSPBPBPSISIDIDITemporaryTemporaryRegistersRegistersFlagsFlagsALUALUEUEUControlControlCSCSDSDSSSSSESESIPIPInternalInternalRegistersRegistersSUMMATIONSUMMATIONAddress Bus, 20 bitData
7、Bus8086 Bus16 Bit1 1 2 2 3 3 4 4 5 5 6 6BusBusControlControlALU Data Bus 16 Bit执行单元执行单元Execution Unit(EU)Instruction Queue总线接口单元总线接口单元Bus Interface Unit(BIU)队列总线总线接口单元(总线接口单元(BIU)指令队列缓冲器(指令队列缓冲器(Instruction Queue)地址加法器和段寄存器地址加法器和段寄存器(Summation and Code Segment)16位指令指针位指令指针(Instruction Pointer)3.1 80
8、86/8088 CPU指令队列缓冲器指令队列缓冲器Instruction Queue1.队列中存满队列中存满1条指令,条指令,EU立即执行指令;立即执行指令;2.队列空出队列空出1个(个(8086)或)或2个(个(8088)指令字)指令字节时,节时,BIU立即取指令;立即取指令;3.需要时通过需要时通过BIU对存储器或对存储器或I/O设备取数据;设备取数据;4.EU执行完转移、调用、返回指令时,要清执行完转移、调用、返回指令时,要清除队列缓冲器,取新指令。除队列缓冲器,取新指令。 3.1 8086/8088 CPU地址加法器和段寄存器地址加法器和段寄存器(Summation and Code
9、Segment)1616位逻辑地址位逻辑地址位逻辑地址位逻辑地址IPIP1616位段寄存器位段寄存器位段寄存器位段寄存器CSCS地址加法器地址加法器地址加法器地址加法器2020位存储器实际地址位存储器实际地址位存储器实际地址位存储器实际地址段地址左移4位00000000实际地址(物理地址)3.1 8086/8088 CPU执行单元(执行单元(EU)16位算术逻辑单元(位算术逻辑单元(ALU)16位标志寄存器位标志寄存器 Flag数据暂存寄存器数据暂存寄存器16位通用寄存器组位通用寄存器组AX,BX,CX,DX SP,BP,SI,DIEU控制电路控制电路3.1 8086/8088 CPU8086
10、寄存器结构通用寄存器、段寄存器和标志寄存器通用寄存器、段寄存器和标志寄存器AHAHALALBHBHBLBLCHCHCLCLDHDHDLDLSPSPBPBPSISIDIDIIPIPFLAGSHFLAGSHFLAGSLFLAGSLCSCSDSDSSSSSESESAX 累加器BX 基址CX 计数DX 数据堆栈指针基址指针源变址目的变址指令指针状态标志代码段寄存器数据段寄存器堆栈段寄存器附加段寄存器通通用用寄寄存存器器段段寄寄存存器器数据寄存器指针和变址寄存器8086寄存器结构标志寄存器结构标志寄存器结构CF(Carry Flag): 进位 PF(Prity Flag): 奇偶 AF(Auxiliar
11、y Carry Flag): 辅助进位 ZF(Zero Flag): 零标志 SF(Sign Flag): 符号 OF(Overflow Flag): 溢出 DF(Direction Flag): 方向IF(Interrupt Enable Flag): 中断允许 TF(Trap Flag): 跟踪(陷阱)OFOFDFDFIFIFTFTFSFSFZFZFAFAFPFPFCFCFFH(8bit)FL(8bit)6 6个个个个状态标志状态标志状态标志状态标志3 3个个控制标志控制标志3.1 8086/8088 CPU8086808680888088地址/数据总线 AD15-AD0地址/状态总线 A
12、19/S6-A16/S3控制总线8086/8088引脚图(引脚图(40 脚脚)8086引脚信号和功能引脚信号和功能 分时复用利用较少的引脚实现20位地址、16位 数据及众多控制和状态信号 数据、地址分时复用 地址、状态分时复用 三态输入、输出 有些引脚具有两种功能,由引脚33(NM/MX)控制 NM/MX=1,最小方式 NM/MX=0,最大方式3.1 8086/8088 CPU3.2 8086/8088 系统最小系统最小/最大工作方式最大工作方式 8086/8088构成微机系统,有两种配置构成微机系统,有两种配置:最小方式最小方式最大方式最大方式 两种方式的主要区别:两种方式的主要区别:最大方
13、式时使用最大方式时使用8288总线控制器总线控制器8288可以增强总线控制功能可以增强总线控制功能最大方式可以使用多个处理器最大方式可以使用多个处理器8086/8088 系统最小系统最小/最大最大工作方式的区别工作方式的区别时钟时钟时钟时钟定时器定时器定时器定时器EPROMEPROMRAMRAM外设外设外设外设82888288总线控制器总线控制器总线控制器总线控制器(最大方式时用)(最大方式时用)(最大方式时用)(最大方式时用)82868286收发器收发器收发器收发器80868086CPUCPU82828282锁存器锁存器锁存器锁存器3.3 多处理器系统多处理器系统 目的:改进系统性能,提高吞
14、吐量目的:改进系统性能,提高吞吐量 方法:使用方法:使用8086/8088最大方式,解决总线竞争最大方式,解决总线竞争 三种基本组态:三种基本组态:协同处理器协同处理器:只有一个主处理器,共用总线和资源,协处:只有一个主处理器,共用总线和资源,协处理器是从处理器,不能独立工作理器是从处理器,不能独立工作密密 耦耦 合合:只有一个主处理器,共用总线和资源,从处:只有一个主处理器,共用总线和资源,从处理器可独立工作理器可独立工作松松 耦耦 合合:可以有两个以上的主处理器,拥有各自的总:可以有两个以上的主处理器,拥有各自的总线、控制逻辑、时钟和资源线、控制逻辑、时钟和资源3.3 多处理器系统多处理器
15、系统80878087数值协处理器数值协处理器数值协处理器数值协处理器82848284时钟时钟时钟时钟82888288总线控制器总线控制器总线控制器总线控制器82868286收发器收发器收发器收发器82828282锁存器锁存器锁存器锁存器82598259A A80868086CPUCPU主处理器主处理器主处理器主处理器80898089I/OI/O协处理器协处理器协处理器协处理器3.4 8086/8088 的存储器一、存储器组织二、存储器的分段三、实际地址和逻辑地址四、堆栈五、存储器的工作时序3.4 8086/8088 的存储器一、存储器组织一、存储器组织20条地址线条地址线寻址寻址 1MB 存储
16、空间,分成两个存储空间,分成两个512KB库:高位库、低位库库:高位库、低位库按字节组织,每字节有唯一地址按字节组织,每字节有唯一地址字(字(16bit):):低位字节低位字节放在低地址放在低地址 高位字节高位字节放在高地址放在高地址双字(双字(32bit,一般作为指针):一般作为指针):低位字低位字偏移量偏移量高位字高位字段地址段地址规则字:规则字: 低位字节存在低位字节存在偶数偶数地址中地址中 非规则字:低位字节存在非规则字:低位字节存在奇数奇数地址中地址中3.4 8086/8088 的存储器指令、数据的存放指令、数据的存放3.4 8086/8088 的存储器0C3090104567ABC
17、D3457:43005D3E指令指令 OR AL, IMMED指令指令 NOP字节字节字节字节规则字规则字AB67字节字节非规则字非规则字 5734H指针数据指针数据段基址:段基址:3E5DH偏移量:偏移量:0043H19H1AH1BH1CH1DH1EH1FH20H21H22H:28H29H2AH2BH地址存储器存储器中偶数和奇数地址读字节和字存储器中偶数和奇数地址读字节和字3.4 8086/8088 的存储器80868086被读的被读的字节字节忽略的字节忽略的字节存储器存储器偶数地址偶数地址奇数地址奇数地址读偶读偶地地址字节址字节80868086忽略的字节忽略的字节被读的字节被读的字节存储器
18、存储器偶数地址偶数地址奇数地址奇数地址读读奇地奇地址字节址字节80868086被读的字被读的字存储器存储器偶数地址偶数地址奇数地址奇数地址读读偶地偶地址字址字80868086被读的被读的字节字节忽略的字节忽略的字节忽略的字节忽略的字节被读的字节被读的字节存储器存储器偶数地址偶数地址奇数地址奇数地址偶数地址偶数地址奇数地址奇数地址读读奇地奇地址字址字8086存储器高低位库的连接存储器高低位库的连接3.4 8086/8088 的存储器低低位(偶数)库位(偶数)库512512K, 8bitK, 8bitA19-A1D15-D8D7-D0高位(奇数)库高位(奇数)库512512K K,8bit8bit
19、D15-D8D7-D0A0BHEBHEBHE直接寻址:64KB,因为:指令指针IP:16bit 堆栈指针SP:16bit分段目的:寻址 1MB 内存空间分段方法:引入逻辑地址概念1MB空间被分位若干逻辑段,每段64KB连续存储单元段之间可以是连续、分开、部分重叠、完全重叠的段基址:每个段的起始地址段寄存器:CS,DS,SS,ES二、存储器分段3.4 8086/8088 的存储器实际存储器中段的位置3.4 8086/8088 的存储器6464KBKB6464KBKB6464KBKB6464KBKBA AB BC CD DE E实际存储器 逻辑段A、B:连续C、D:完全重叠B、C:部分重叠C、E:
20、分开三、实际地址和逻辑地址实际地址:CPU与存储器交换数据时实际寻址所用的地址。用20位二进制数或5位16进制数表示。段基址(左移4位)+偏移量逻辑地址:人为分成程序中只能使用16位的逻辑地址,不能使用20位实际地址。一个实际地址可对应多个逻辑地址。基址来源:4个段寄存器CS,DS,SS,ES 偏移地址:指针寄存器和变址寄存器SP,BP,SI,DI3.4 8086/8088 的存储器段段起始地址,由段寄存起始地址,由段寄存器给出,器给出,1616bitbit存储单元所在位置距离段存储单元所在位置距离段基址的偏移距离基址的偏移距离, ,1616bitbit四、堆栈v什么是堆栈?在存储器中定义一个段,用于入栈和出栈操作。v同其它段一样,可在任意位置浮动v堆栈数目任意v堆栈长度64KBv堆栈的寻址:SS给定堆栈的段基址 SP给定堆栈的栈顶偏移量3.4 8086/8088 的存储器堆栈的入栈和出栈操作3.4 8086/8088 的存储器AABB88993412AABB88993412AABB889910500008SSSP栈顶10500:10506105081050A10500006SSSP栈顶1234PUSH,AX1234BBAAPOP,BXPOP,AX1050000ASSSP栈顶栈底栈底栈底栈基址五、存储器的工作时序3.4 8086/8088 的存储器