微处理器系统

上传人:gb****c 文档编号:243350058 上传时间:2024-09-21 格式:PPT 页数:108 大小:1.32MB
返回 下载 相关 举报
微处理器系统_第1页
第1页 / 共108页
微处理器系统_第2页
第2页 / 共108页
微处理器系统_第3页
第3页 / 共108页
点击查看更多>>
资源描述
,基本概念(总线、堆栈等),微处理器的一般结构,Intel 8086微处理器的结构,本章内容,了解三总线及堆栈的工作原理。,掌握微处理器的一般结构、算逻部件ALU、寄存器结构、控制部件。,重点掌握Intel 8086微处理器的结构。,学习目的,4.1 基本概念,一、总线,1. 总线的由来,在计算机中,CPU与其他功能部件之间存在大量的信息交流,其间就需要使用通信线路连接起来,通信线的设置和连接可采用两种方式。,(1),专线式,:将各个功能部件分别设置与其他部件通信的线路,,优点,:传送速率高,它只受传送线本身的限制,且控制简单。,缺点,: 机器所需要的信息传送线数量大,增加了复杂性,不便于实现机器的模块和积木化。,(2) 总线式,:在多个功能部件之间设置公共的通信线即总线。,图中当A和A,门打开时,信息由A传至A,;A和C,门打开时,信息便从A传至C,。,A,B,C,A,B,C,总 线 示 意 图,总线上能同时传送二进制信息的位数称为总线宽度。见下图。,由于采用了分时传送的总线结构从而大大减少了机器中信息传送线的数目。,a. 分时传送:,多个部件并联在总线上,某一时刻,只允许一路信息在总线上传送。,b. 控制复杂,:,总线的发送端及接收端均有三态门电路。,打开三态门信息经总线传送到目的端。,若不传送信息,则使三态门处于高阻状态,相当于此部件在逻辑上与总线脱离联系。,c. 系统结构简单,便于扩展,。,特点:,2. 总线的分类,总线按信息传送的,方向,可分为,单向总线,和,双向总线,。,单向总线,只能向一个方向发送信息。,双向总线,则可在两个方向传送。, 总线,按所传信息的类别,通常分为,数据总线,,,地址总线,和,控制总线,。,(1) 数据总线 (Data Bus),是,微处理器,与,存储器,和,I/O电路,间数据交换的通道,可,双向,传送。数据总线的,宽度,一般与微处器处理数据的,字长,相同,三状态。,(2) 地址总线 (Address Bus),是微处理器,输出地址,用的总线,它将地址送到存储器或I/O电路,用来确定存储器中信息存放的地址或I/O电路的地址,AB一般为单向、三状态。,(3) 控制总线 (Control Bus),是用来传送,控制信号,,使各功能部件动作同步。,(1) 片内总线,指微处理器内部各,逻辑单元之间,的传输线,主要是数据总线,是为算术逻辑部件,ALU,和,寄存器,之间传送操作数和结果而设计的。有,单总线,、,双总线,、,三总线,结构之分。,总线按,规模、用途,及,应用场合,又可分为以下几种:,(2) 芯片总线,指微型机中各功能,芯片之间,的传输线,又称,元件级总线,。是构成一块CPU插板或组成一个微机小系统时常用的总线。,(3) 内总线,指微型机内连接各插件板的总线,又称,板级总线,或,系统总线。,其标准很多,现列举几种常用的标准总线。,a. S-100系统总线:,是一种,实用性,微型机总线标准,具有,100,根引线,主要支持,8bit,微处理器,1979年美国的IEEE微处理机标准委员会修改后取名为IEEE-696标准总线。,b. MULTIBUS多总线:,是多于一个控制单元控制的总线,由Intel公司推出,MULTIBUS-I支持,8bit,、,16bit,微处理器,MULTIBUS-II支持,32bit,微处理器,1987年经IEEE微处理机标准委员会审定为IEEE-P1296标准总线。,c. STD总线:,是美国PRO-LOG公司和MOSTEK公司于1978年联合推出的工业控制标准总线,共有,56,根信号线,是,8bit/16bit,兼容总线。,d. PC总线及EISA总线:,是美国IBM公司推出针对Intel-8086微处理器设计的,共有,62,根信号线。为了与Intel-80286等高性能,16bit,微处理器兼容,IBM公司在PC总线上增加了一个,36,引脚的扩展插座而形成AT总线,这种结构称之为IBM公司标准结构,简称ISA(Industrial Standard Architecture),COMPAQ公司推出了扩展工业标准总线,即EISA(Extend Industry Standard Architecture)总线。是支持,32bit,的标准总线。,e. VME总线:,是美国MOTOROLA公司于1981年提出,针对,16bit,和,32bit,微处理器设计的。该总线在采用单总线连接器时为,96,条信号线,支持,16bit,数据线,,24bit,地址线;双总线连接器结构则支持,32bit,,此时信号线为,128,条,可支持四个主CPU模板进行运行。,(4) 外总线,指微型计算机系统与系统之间或微机系统与外部设备之间的通信线,又称,通信总线,。CPU与外部设备的基本通信方式有两种:,a. 并行通信,:数据各位同时传送,有多少位数据就有同样数量的传送线。,b. 串行通信,:数据逐位顺序传送,适宜长距离传送。,二、堆栈,用作数据暂时存储的一组,寄存器,或,存储单元,称为堆栈。,堆栈操作有两种:,压入(PUSH)和弹出(POP),,,而SP始终指向堆栈栈顶的新位置。,1. 堆栈的定义,堆栈中数据按“,后进先出,”的结构方式进行处理,即新入栈的依次堆放在原来数据之上,存放信息的最后一个单元叫做,栈顶,,用堆栈指针,SP,(Stack Pointer)指示。,2. 堆栈编址结构的两种形式,(1) 向上生成,该结构中,每,压入,一个数据,堆栈指示器SP按,增量,修改,每,弹出,一个数据,SP按,减量,修改。,(2) 向下生成,该结构中,每,压入,一个数据,SP按,减量,修改,每,弹出,一个数据,SP按,增量,修改。,3. 构成堆栈的两种形式,一种是使用微处理器内部的,一组寄存器,作为堆栈。,优点,:访问速度快。,缺点:,寄存器数量有限。,另一种形式是在,随机存储器RAM,中开辟一个区间供堆栈使用,较为普遍;若编址采用向下生成,其堆栈操作如下图所示。,堆栈操作示意图(向下生成),M3,M2,M1,M,X,SP,(a),M3,M2,M1,M,X,SP,(b),A,M3,M2,M1,M,X,SP,(c),A,B,SP,A,SP,B,SP,C,当前栈顶地址为M,存内容X,信息B进栈:SP,SP1,SP指定的地址B,信息A进栈分两步操作: SP,SP1,SP指定的地址单元A,堆栈操作示意图(向下生成),M,M3,M2,M1,X,SP,(d),A,B,C,M3,M2,M1,M,X,SP,(f),A,B,C,M3,M2,M1,M,X,SP,(e),A,C,B,SP,D,SP,C,SP,B,信息C进栈,信息C出栈分两步操作:指定的目的地,C,SPSP+1,信息B出栈:指定目的地,B,SPSP+1,堆栈操作示意图(向下生成),M,M3,M2,M1,X,SP,(g),A,D,C,M3,M2,M1,M,X,SP,(i),A,D,C,M3,M2,M1,M,X,SP,(h),A,C,D,SP,D,SP,A,信息D进栈:,SP,SP1,SP指定的地址D,信息D出栈,信息A出栈,栈顶地址仍为M,由上图中可以看出,出栈操作并不会从堆栈中去掉信息,也不擦除它们,只是因SP的自动修改而改变了堆栈的栈顶。,堆栈主要用于中断控制,子程序调用以及数据暂时存储。,存储单元地址,0000H,0001H,0002H,FFFFH,存储体结构图,存储位,存储单元,(字节),存储体,存储器的访问过程:向0001单元写数据,0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111,地址0001,控制:写,数据,有以下程序main( ) char *p10=“abc”, “aabdfg”, “dcdbe”, “abbd”, “cd”;printf(“%dn”,strlen(p4); 执行后输出结果是A) 2 B) 3 C) 4 D) 5,2.2 微处理器的一般结构,传统的微处理器结构由,算术逻辑部件ALU,,,控制电路,及,寄存器阵列,三大部分组成,如下图所示。,微处理器一般结构框图,指令寄存器IR,译码器ID,操作控制器PLA,控制信号,片内数据总线,通用寄存器组,变址寄存器,PC,程序计数器,SP,堆栈指示器,标志寄存器FR,地址缓冲器,芯片地址总线,数据缓冲器,芯片数据总线,累加器,暂存器,ALU,一、算术逻辑部件ALU (Arithmetic Logic Unit),ALU是执行算术运算、逻辑运算及移位的装置。,ALU有两个输入端,一个与累加器相连,另一端与暂存器相连,用于存放参加运算的两个数。,ALU的输出端也有两个,一端将操作结果送回到内部总线再送回累加器,另一端用于输出表示操作结果特征的标志信息。,二、寄存器阵列,一般包括通用寄存器、累加器、标志寄存器、专用寄存器等。寄存器的使用提升了计算机的功能和程序设计的灵活性。,1. 通用寄存器组,可用于存放数据和地址,有8bit和16bit等,CPU可直接处理这些信息,减少了访问存储器的次数,节省访问内存时间。,2. 累加器,也是数据寄存器,与ALU一起完成各种算术或逻辑运算,运算前作为ALU的一个输入,运算后常用于保存结果。,CPU对I/O接口电路的读出或写入一般也是通过累加器进行的。,3. 标志寄存器,在算术或逻辑运算时,为了保存可能发生的,进位,、,溢出,、,符号,、,全零,及,奇偶性,等状态的变化,微处理器设置标志寄存器。,其所存的状态将可作为一种条件,常用于判断是否控制程序转移。,4. 专用寄存器,(1) 程序计数器PC (Program Counter),它是,指令地址寄存器,,其内容指出了现行指令在存储器中的存放地址。,注:,当按PC的内容从存储器中取出指令时,PC的内容自动加1。,对单字节指令而言,则PC指向了下一条指令所在的地址。,对多字节指令,则每取一个字节,PC自动加1,当取出最后一个指令字节时,PC仍指向下一条指令地址。,(2) 堆栈指示器SP (Stack Pointer),用于确定堆栈在内存中的具体位置。SP总是指向,栈顶,。,(3) 变址寄存器,用于变址寻址,也可作通用寄存器。,三、控制部件,是整个系统按时序协调操作的功能部件,包括IR、ID定时及产生各种控制信号的控制逻辑单元组成。,根据上述结构,微处理器执行一条指令的简要过程,如下图所示。,计算机基本工作原理,指令,是能被计算机识别并执行的的,二进制代码,每一条指令完成一种操作。,操作码,操作数,数据传送指令,数据处理指令,程序控制指令,输入输出指令,其它指令,If Goto, And Or,CPU,内存,I/O设备,主机,对计算机的硬件进行管理等,指令,结构,分类,操作码:,操作类型或性质,操作数:,操作的数据或数据的地址,NEXT: MOV AH,1,INT 21H,CMP AL,a,JB PROG2,CMP AL, z,JA PROG2,SUB AL,20H,MOV DL,AL,MOV AH,2,INT 21H,JMP NEXT,PROG2: ,问:1)从键盘输入小写字母d时,显示器上显示,。,2)转向PROG2的条件是:,。,微处理器执行一条指令的简要过程,取 指 令,指 令 译 码,取 操 作 数,执 行 指 令,存放运算结果,结束指令?,结束,Y,N,(1) PC将指令地址经地址缓冲器送到CPU外部地址总线,然后送到存储器进行地址译码。,图中取指令包含以下几个步骤:,(2) PC+1PC,同时CPU发出“存储器读”。信号,访问存储器中某一单元。,(3) 经过几百ns,在外部数据总线上出现指令的第一个字节,即操作码,经由CPU内部数据缓冲器,内部总线指令寄存器。,(4) 对于多字节指令,控制部件还会发出取第二、第三等字节的信号,每次PC+1PC,2.3 程序指令的执行过程,人们事先把一条条指令预选输到存储器中,在执行时,机器把这些指令一条条地取出来,加以翻译和执行。,例如,:,若要求机器把两个数7和10相加,其简单程序为:,MOVAL,7B0,ADDAL,1004,HLT F4,7,0A,逐条按机器码表示在右边,共5个字节,若存放在地址为00H开始连续5个存储单元,下面具体介绍其执行过程。,第一条指令的取指过程。,0000 0000,0000 0000,1011 0000,0000 0111,0000 0100,0000 1010,1111 0100,1011 0000,O,I,2,ALU,I,1,AL,BL,PLA,ID,IR 1011 0000,DB,A,B,+1,E,AB,C,AR,D,读,F,DR,00,01,02,03,04,G,PC,取第一条指令的操作示意图,+1,00,00,1011 0000,1011 0000,PC的内容(00H)送AR(Address Register),PC + 1, PC (01H),00H经AB送至存储器,经地址译码器选中00H单元。,CPU给出读命令。,(00H) = B0H 读至DB(Data Bus),1011 0000,B0H送至DR (Data Register),DR把B0H送IR经ID 译码发出对应操作,取指令第二字节的过程如下图所示。,0000 0001,1011 0000,0000 0111,0000 0100,0000 1010,1111 0100,01,0000 0111,O,I,2,ALU,I,1,AL,0000 0111,BL,PLA,ID,IR,0000 0111,DB,A,B,+1,E,AB,C,AR,D,读,F,DR,G,PC,10,0000 0001,取立即数的操作示意图,+1,01,0000 0111,PC的内容01H送AR,PC + 1, PC (02H),01H经AB送至存储器,经地址译码选中01H单元。,CPU发出读命令。,(01H) = 07H 读至DB,0000 0111,07H送DR,AL,0000 0111,07H由DR通过内部DB送至AL。,取第二条指令的第一个字节与第一条指令的第一个字节的取指过程相同。对此指令译码后,知为加法指令,AL的内容为一操作数,另一操作数在指令的第二字节中,其执行过程为:,(9) 相加结果由ALU输出至AL中,可类似取第三条指令。,(7) DR中的数由内部DB送到ALU的另一输入端。,(1)(6) 与第一条指令的第二字节的执行过程相同。,(8) AL中的数送ALU且执行加法操作。,在数据区DAT地址起有10个数据,试编程序对数据进行升序排列。将结果送CRT显示。程序如下:,STACK SEGMENT,STA DB 100DUP(?),STACK ENDS,;,*,DATA SEGMENT,DAT DB 2,67,33,78,98,1,77,43,32,76,COUNT DB 10,COUNT1 DB 100,DATA ENDS,;,*,CODE SEGMENT,ASSUME CS:CODE,DS:DATA,SS:STACK,START:,MOV AX,DATA,MOV DS,AX,MOV AX,0,MOV CX,AX,LEA DI,DAT,MOV CL,COUNT,DEC CX,INC DI,;,*,LP: MOV SI,DI,DEC SI,MOV AL,DI,PUSH DI,CALL LK,POP DI,INC DI,LOOP LP,LEA DI,DAT,MOV CL,COUNT,;*,SC: MOV AX,0,MOV BH,2,MOV AL,DI,DIV COUNT1,MOV DH,AH,ADD AL,30H,MOV DL,AL,MOV AH,2,INT 21H,MOV AL,DH,MOV AH,0,DIV COUNT,ADD AX,3030H,MOV DL,AL,MOV BL,AH,;,*,OUTP: MOV AH,2,INT 21H,DEC BH,JZ XT,MOV DL,BL,JMP OUTP,;,*,XT: DEC CL,JZ DONE,INC DI,JMP SC,;*,DONE:MOV AH,4CH,INT 21H,;*,LK PROC,MOV BL,COUNT,SUB BL,CL,;*,LP1: CMP AL,SI,JG RTT,MOV DL,SI,MOV DI,DL,MOV SI,AL,DEC DI,DEC SI,DEC BL,JNZ LP1,;,*,RTT: RET,LK ENDP,CODE ENDS,END START,2.4 Intel 8086微处理器, 8086是Intel系列的16bit微处理器,属第三代。, 8086有16bit数据总线和20bit地址线,可寻址1M空间。, 8086采用单一+5V电源和单相时钟,频率为5MH,Z,。,20位,AH AL,BH BL,CH CL,DH DL,SP,BP,DI,SI,ALU,运算寄存器,标志,执行部件,控制电路,16位,CS,DS,SS,ES,IP,内部暂存器,8位,1 2 3 4 5 6,执行部件,(EU),输入/输出,控制电路,16位,外部总线,指令队列缓冲器,总线接口部件(BIU),通用寄存器,地址,加法器,一、8086CPU结构,1、总体功能结构,8086从功能结构来讲,分为两大部分,即,总线接口部件BIU(Bus Interface Unit ),和,执行部件EU(Execution Unit)。,(1) BIU部件,由,段寄存器,、,指令指针,、,地址加法器,、,指令队列缓冲器,和,控制电路,等部分组成。,在执行指令时,如要取操作数,则也由,BIU,从,内存,或,I/O接口,指定区域取出,送给,EU,部件去执行。,BIU负责与存储器、I/O接口电路传送信息。,BIU,负责从指定内存单元取出指令,送到指令队列缓冲器中排队。,指令队列缓冲器,是一个,6字节,的RAM存储器(8088为,4个字节,),队列中最多可同时存放6个字节的指令,取来的指令是按字节顺序存放的。,当队列中有两个以上的指令字节空的时候,,BIU,会自动地执行总线操作,继续取指令。,(2) EU部件,由,ALU,、,通用寄存器,、,标志寄存器,和,控制电路,组成,负责指令的执行。ALU、寄存器和数据传输通路均是16bit的。,若执行的是一条,转移指令,,则存放在指令队列缓冲器中的指令就没有用了,应到新的地址单元去取出。BIU新取出的第一条指令将直接送到EU中去执行,随后重新填充指令队列缓冲器。,EU从BIU中的指令队列缓冲器中取得指令和数据。,当指令要求将数据,写,到,存储器,和,I/O电路,,或需从,存储器,和,I/O电路,中,读,取数据时,EU向BIU发出请求,BIU自动完成这些操作。,2. 寄存器结构,8086CPU 内部寄存器,DL,DH,CL,CH,BL,BH,AL,AH,通用寄存器,AX,BX,CX,DX,SP,BP,SI,DI,数据寄存器,CS,DS,SS,ES,IP,FLAG,变址寄存器,指针寄存器,堆栈指针,基数指针,源变址,目的变址,指令指针,状态标志,代码段,数据段,堆栈段,附加段,段寄存器,控制寄存器,(1) 通用寄存器,8个16bit通用寄存器。,SP,堆栈指针,存放堆栈栈顶的现行地址,与SS堆栈段寄存器一起方可确定堆栈的实际地址。,BP,基址指针,SI,源变址寄存器,AX,BX,CX,DX 4个16bit的通用数据寄存器,它们的高8bit AH,BH,CH,DH与低8bit AL,BL,CL,DL又可分别看成8个8bit的寄存器。,DI,目的变址寄存器,(2) 控制寄存器,IP (Instruction Pointer) 指令指针与PC类似,但有区别:,a. PC是指向下一条即将要执行的指令,而IP一般是指向下一次要取出的指令。,b. 在8086中IP要与CS代码段寄存器的内容一起,才能得到指令的实际地址。,TF,SF,ZF,AF,PF,OF,DF,IF,CF,15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0,标志寄存器格式,a. 6个状态标志位,,,即CF、PF、AF、ZF、SF和 OF。, 进位标志CF(Carry Flag):, FLAG(标志寄存器)为16bit,其中9位有定义。,当结果的最高位(字节D,7,,字D,15,)产生进位(加法运算)或借位(减法运算)时,CF=1,否则CF=0,移位和循环指令也影响CF。, 奇偶标志位PF(Parity Flag):,若结果中“1” 的个数为偶数,则PF=1,否则PF=0。, 辅助进位标志AF(Auxitiary Carry Flag):,在低半字节向高半字节有进位或借位时AF=1,否则AF=0。, 零标志ZF(Zero Flag),:,当运算结果为0时ZF=1,否则ZF=0。, 符号标志SF(Sign Flag):,SF等于最高位,对于带符号数,最高位为符号位,SF=1运算结果为负,SF=0为正。,溢出标志,OF(Overflow Flag),:,带符号数运算结果超出其表达范围时(字节数:,-128,+127,,字类型数:,-32768,+32767,),,OF=1,,,否则,OF=0,。,用表达式给出,(字节运算),(字运算),例: 2345H+3219H, 6400H+7A3CH,CF=0 PF=0 AF=0 ZF=0 SF=0 OF=0,CF=0 PF=1 AF=0 ZF=0 SF=1 OF=1,b. 3个控制标志位, 追踪标志TF(Trace Flag):,TF=1,处理器进入单步方式,以便调试,CPU每执行一条指令自动产生一个内部中断以利于检查指令的执行情况;TF=0为连续工作方式。,中断允许标志,IF(Interrupt-enable Flag),:,IF=1,,,允许,CPU,响应外部的可屏蔽中断请求;,IF=0,则禁止响应。,IF,对外部非屏蔽中断及内部中断不起作用。, 方向标志DF(Direction Flag),:,在串操作指令中,DF=0时,变址指针自动增量,DF=1时,则自动减量。,(3) 段寄存器,CS,代码段寄存器,用于定义代码段基地址,该段用于存放指令代码。,DS,数据段寄存器,用于定义数据段基地址,该段用于存放程序变量。,有4个16bit的段寄存器,SS,堆栈段寄存器,用于定义堆栈段基地址,该段作堆栈区使用。,ES,附加数据段,用于定义附加段基地址,与DS类似。,上述4个段在8086寻址的1MB空间内,其位置不受限制,可连续排列、分隔排列、部分重叠甚致全部重叠。,(3) 8086与传统微处理器指令执行过程比较,取指3,执行3,取指4,执行2,取指2,执行1,取指1,传统微处理器的执行方式,传统微处理器取指与执行串行进行,CPU的工作效率低。,取数据,取指5,取指4,取指3,取指2,取指1,BIU,执行4,执行3,执行2,执行1,等待,EU,8086的指令执行方式,8086CPU取指与执行并行进行,大大减少了等待取指令所需时间,提高了CPU的工作效率。,二、引脚信号及功能,最小模式:即由8086组成的单处理器系统,所有的总线控制信号直接由8086直接产生,故系统中的总线控制逻辑电路被减到最少。,最大模式:即由8086组成的中等规模或者大型的系统。包含两个或多个微处理器,8086为主处理器其它的为协处理器。, 8086的两种工作模式,8086采用双列直插式封装,有40个引脚(如右图所示),但总线信号数量却大于40,故8086采用了分时复用技术,部分引脚传送两种总线信号。,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,40,39,38,37,36,35,34,33,32,31,30,29,28,27,26,25,24,23,22,21,GND,AD,14,AD,13,AD,12,AD,11,AD,10,AD,9,AD,8,AD,7,AD,6,AD,5,AD,4,AD,3,AD,2,AD,1,AD,0,NMI,INTR,CLK,GND,V,CC,AD,15,A,16,/ S,3,A,17,/,S,4,A,18,/ S,5,A,19,/ S,6,BHE/ S,7,MN/MX,RD,HOLD (RQ/GT,0,),HLDA (RQ/GT,1,),WR (LOCK),M/IO (S,2,),DT/R (S,1,),DEN (S,0,),ALE (QS,0,),INTA (QS,1,),TEST,READY,RESET,8086,CPU,8086的引脚信号,注:括号内为该引脚在最大模式下的名称, 8086芯片的引脚图,1. 最小模式下引脚信号及功能:,(1) 地址/数据总线AD,15,AD,0,(双向、三态),在一个总线周期的第一个时钟周期用于传送低16bit地址信息,并用地址锁存器锁存以免丢失,,其它时钟周期可用于传送数据信息,分时传送。,当8086执行中断响应周期、保持响应周期时,这些引脚处于高阻状态。,(2) 地址/状态信号线A,19,/S,6,A,16,/S,3,(输出、三态),在总线周期的第一个时钟周期,(T,1,),用于输出地址信号的最高,4bit,并锁存。,其它时钟周期中用来输出状态信号,S,6,S,3,,,其中:,S,6,低电平,表示8086当前与总线相连。,S,5,表示标志寄存器中“中断允许位”的状态(IF)。,S,4,,S,3,的组合指出了分段情况。如下表所示。,S,4,和S,3,的组合提供的分段信息表,S,4,S,3,意 义,0,0,1,1,0,1,0,1,当前正在使用ES附加段,当前正在使用SS堆栈段,当前正在使用CS或者未使用任何段寄存器,当前正在使用DS数据段,当CPU处于“保持响应”状态时,A,19,/S,6,A,16,/S,3,置为高阻状态。,若执行I/O指令,则由于8086只访问64K个端口,在T,1,周期这4个引脚为低电平。,(3) BHE/S,7,高8bit数据总线允许/状态线(输出, 三态),在T,1,状态,8086在BHE/S,7,引脚输出BHE信号,表示高8bit数据总线D,15,D,8,上的数据有效,与地址线A,0,一起产生存储器的选择逻辑信号。,在其它时钟周期,输出为状态信号S,7,。但8086芯片, S,7,未定义。,下面介绍引脚中的控制信号。,(4) MN/MX最小/最大模式控制信息,低电平 8086处于最大模式。,高电平 8086处于最小模式。,(5) RD读信号 (输出,三态),低电平有效。表示将对内存或I/O端口读操作。,(6) M/IO,存储器/输入输出控制信息 (输出,三态),是区分CPU进行的存储器还是I/O访问,见下表。,RD,M/IO,操 作,1,0,0,0,读存储器数据,读I / O端口数据,RD与 M/IO的组合及对应的操作表,(7) WR写信号 (输出,三态),1,0,0,0,CPU对存储器进行写操作,CPU对I/O端口进行写操作,WR与 M/IO 的组合及对应的操作表,操 作,WR,M/IO,低电平有效。WR与M/IO的组合对应的操作如下表所示。,(8) ALE地址锁存允许信号 (输出),高电平有效,,此信号在T,1,状态有效,为地址码锁存的选通信号,送地址锁存器。,(9) READY准备就绪信号 (输入),高电平有效,,是从所寻址的,存储器,或,I/O电路,来的响应信号,用于解决CPU与慢速存储器或I/O电路的,同步问题,。CPU在T,3,周期开始采样READY线,若为低电平,则T,3,之后插入,T,W,等待周期,直到READY为高电平,进入T,4,完成数据传送。,(10) INTR可屏蔽中断请求信号 (输入),高电平有效,,8086在每一个指令周期的最后一个T状态采样这条线,若IF=1,则8086在执行完当前指令即响应中断。,(11) INTA中断响应信号 (输出,三态),低电平有效,,CPU响应外部,可屏蔽中断,请求以后,便发出中断响应信号,作为对中断请求的回答。此信号在每一个中断响应周期的T,2,、T,3,和T,W,周期均有效,为中断矢量的读选通信号。,(12) NMI非屏蔽中断请求信号 (输入),边沿触发,,该线上的中断请求信号不能用软件屏蔽,电平由低到高,便在当前指令结束后引起中断。,(13) RESET系统复位信号 (输入),高电平有效,,8086要求此信号起码维持4个时钟周期,若初次加电复位,持续时间不小于,50,s,,RESET为高电平时,8086立即结束现行操作,进入内部复位状态,CPU各内部寄存器被设置为,初值,:CS=FFFFH,Flag、IP、DS、ES、SS及其它寄存器均初始化为0000H。,(14) DT/ R数据收发控制信号 (输出、三态),为增强数据总线的驱动能力,8086可外接驱动器8286,DT/R即为8086输出的数据到收发器8286的控制信号。,DT/R,高电平,,8086输出的数据经8286送到数据总线;,8086工作在DMA方式时,DT/R为高阻状态,在最小模式时因无8286而不起作用。,DT/R,低电平,,收发器8286则把数据总线上的数据传送到8086。,高电平有效,。,系统中其他的总线主设备要获得对总线的控制权时,向8086发出高电平的HOLD信号,,8086在每个时钟周期的上升沿对HOLD引脚信号进行检测,若为高电平,则在当前总线周期结束时,予以响应。,(16) HOLD保持请求信号 (输入),(15) DEN数据允许信号(输出,三态),低电平有效,,也是8086控制外接的数据收发器,低电平时开启收发器,传送数据有效;,高电平时,则禁止传送。,(17) HLDA保持响应信号 (输出),高电平有效。,当CPU响应保持请求HOLD时,便发出HLDA高电平的应答信号,,从而将总线控制权让给发出保持请求的设备,直到该设备又将HOLD信号变为低电平,CPU才收回总线控制权,将HLDA信号置为低电平。,低电平有效。与WAIT等待指令结合使用,当CPU执行WAIT指令时,CPU处于空转状态进行等待直到检测到TEST信号有效时结束,CPU继续往下执行指令,。,(18) TEST测试信号 (输入),(19) CLK系统时钟输入信号,时钟信号为CPU和总线控制逻辑电路提供定时基准,。常用INTEL8284A时钟发生器提供CLK信号。,工作在最小模式下8086的典型配置如右图所示。,8086,地址,锁存器,STB,(82862),OE,(选用),数据总线,地址总线,(82823),READY,RESET,MN/MX,ALE,BHE,A,19,A,16,AD,15,AD,0,DEN,DT/R,M/IO,WR,RD,HOLD,HLDA,INTR,INTA,(8284A),X,1,X,2,CLK,READY,RESET,+,5V,BHE,A,19,A,0,D,15,D,0,2. 最大模式下引脚信号及功能,若将8086的MN/MX引脚接地便工作在最大模式。此时仅2431引脚信号与最小模式不同,如下表所示。,引脚编号,最小模式,最大模式,24,25,26,27,28,29,30,31,QS,1,QS,0,S,0,S,1,S,2,LOCK,RQ/GT,1,RQ/GT,0,INTA,ALE,DEN,DT/R,M/IO,WR,HLDA,HOLD,两种模式下8086的2431引脚信号表,(1) QS,1,和QS,0,指令队列状态信号 (输出),QS,1,和QS,0,编码与队列状态表,QS,1,QS,0,队列状态,0,0,1,1,0,1,0,1,空操作,取走指令的第一个字节,队列空,从队列里取出的字节是指令的后续字节,两信号编码和对应的队列状态如下表所示。,这三个状态信号组成的编码表示了当前总线周期是何种操作周期,如下表所示。,2,,,1,和,0,编码与总线周期表,发中断响应信号,读I/O端口,写I/O端口,暂停,取指令,读存储器,写存储器,无源状态,0,1,0,1,0,1,0,1,0,0,0,0,1,1,1,1,0,0,1,1,0,0,1,1,S,总线周期,2,S,1,0,S,(2) S,2,,S,1,和 S,0,总线周期状态信号(输出,三态),(3) LOCK总线封锁信号 (输出,三态),低电平有效,。此信号有效时,系统中其他总线主部件不能占有总线。此信号由前缀指令LOCK使其有效,并保持到LOCK前缀后的一条指令执行完毕。另外8086在两个中断响应脉冲之间,LOCK信号也自动变为有效电平,以防其它部件占有总线。,(4) RQ/GT,1,和RQ/GT,0,总线请求/允许信号 (双向),供CPU以外的两个处理器用以发出使用总线的请求信号和接收CPU对总线请求信号的回答信号,请求与允许信号在同引脚上传输,但方向相反。其中RQ/GT,0,优先级较高,。,下图给出了8086在最大模式下的典型配置。,8086在最大模式下的典型配置,8086,CPU,时钟,发生器,(8284A),8288,CLK,DEN,ALE,MN / MX,STB,OE,OE,T,IORC,IOWC,数据总线,MRDC,MWTC,BHE,82823,82862,CLK,READY,RESET,BHE,S,0,S,1,S,2,S,0,S,1,S,2,DT/R,A,19,A,0,A,15,A,0,INTA,A,19,A,16,AD,15,AD,0,1,READY,RESET,总线控制器,地址总线,由图可以看出:8086在最大与最小模式下的主要区别是增加了一个8288总线控制器。8288接受8086CPU的状态信号S,2,、S,1,和S,0,,经过变换和组合,由8288发出对存储器和I/O端口的读/写信号,对锁存器8282及对总线收发器8286的控制信号。,2.5 8086存储器管理,8086采用分段管理的办法实现对1MB存储空间的管理(物理地址00000HFFFFFH),16bit的段寄存器存放了该段的,段首址,,那么它是怎样产生20bit的,物理地址,的呢?,我们通常采用在地址编号能被16整除的地方开始分段,此时地址的低4bit均为0,这时段寄存器只用来存放高16bit即可,以下有几个概念。,段内偏移量EA (Effective Address):,是指某存储单元离开该段段首址的字节数。,逻辑地址(Logical Address) :,是一对地址,包含段寄存器的内容和段内偏移量,如某条指令的逻辑地址可表达为:CS : IP。,物理地址PA (Physical Address):,是指某个存储单元实际的20bit的地址,又称绝对地址。,由上面的定义可知:,物理地址PA=对应段寄存器10H十段内偏移量EA。,物理地址的形成如下图所示。,物理地址的形成,段寄存器值 0000,20位物理地址,19 0,15 0,15 0,偏移地址,加法器,16 位 4位,例如,:若CS=FFFFH,IP=0000H,则指令所在存储单元的物理地址为:,PA= (CS) 10H + IP = FFFF0H,当取指令时,,自动选择的段寄存器是CS,再加上IP所决定的16位偏移量,得到要取出指令具体的物理地址:,当涉及到取一个堆栈操作时,,自动选择的段寄存器是SS,再加上SP所决定的16位偏移量,得到堆栈操作所需要的20位物理地址。,当涉及到取一个操作数时,,自动选择DS寄存器或ES附加段寄存器,再加上16位偏移量,得到操作数的20位物理地址。16位偏移量取决于指令的寻址方式。如下图所示:,IP,CS,SI,DI或BX,DS,SP或BP,SS,代码段,数据段,堆栈段,奔腾4的时代,2000年下半年,Intel推出了代号Willamette的处理器,它是英特尔IA-32 CPU家族中最新的成员,也是英特尔P6系列的终结者。这就是Pentium IV(P4)。P4 CPU基于新的32位微结构,在许多方面超过了奔腾/等上两代的IA-32 CPU。,NetBurst微架构是Pentinum 4处理器的基石。,这里解释一下处理器的架构与微架构:处理机的架构指的是指令集、寄存器和程序员公用的内存驻留的数据结构,它们在处理器的发展进程中得到继承和增强。处理机的微架构指的是处理机架构在硅片上的实现。,NetBurst微架构特点细节:,超流水线技术:,执行追踪Cache:,快速执行引擎REE:,400MHz 系统总线:,先进的动态执行:,流式SIMD扩充2(SSE2):,图2-23 Pentium IV 处理器及搭配的RDRAM内存条,2走近64位CPU,64位处理器针对的主要对象是目前对32位系统感觉受限制的用户。一些用来设计汽车、卫星以及一些其他的非常复杂的产品的MCAD软件(机械计算机辅助设计软件)将通过64位系统得到不少的性能提升。另外,超大规模的数据库软件也由于64位的大内存寻址区域而获得不少优势。可见其企业级应用是相当广泛的。,Intel的64位结构叫做IA-64。目前,Intel同时推出了Pentium 4以及Intel第一个从IA-32到IA-64架构转换的产品,Itanium。,图2-24 Intel的64位CPUItanium,(1)IA-64架构的特点,1)更改现有工业标准体系,建立IA-64架构后将采用并行运算方式的体系;,2)单指令简化,即每条指令执行的功能减少,但执行效率变高;,3)由于运行指令并行化,并且采用了程序控制指令,使分支预测更加准确,提高运算的利用效率;,4)增加程序运行时的并行运算预测能力,使内存中需要的数据更容易在Cache中命中;,5)增加内存的总容量,扩展到2的64次方,由原先的4GB内存扩展到惊人的180亿GB容量,并支持64位浮点数和32位浮点数,高精度的数字计算,提供高达82位的数据宽度。,6)利用GR Stack来降低save/restore需要的调用,减少寄存器使用数量,使用的是Register Stacker Engine(RSE),使用全新的寄存器,总共128个64位寄存器,其中32个是静态的,96个是动态的。,7)现有流水线采用的是顺序结构,一条运行结束后进行下一条,IA-64采用并行流水线结构,提高了工作效率。,8)高速运算功能,在平行运算时,提供了2倍于运算频率的运算速度。,(1)IA-64架构的特点,1)64位实地址模式;,2)通过寄存器前缀(REX)来达到寄存器扩展;,3)增加8个新的通用寄存器(GPRs),代号为R8到R15;,4)扩展通用寄存器的宽度到64位;,5)增加8个128位的SSE寄存器,标号为XMM8到XMM15;,6)新的RIP关联数据地址模式;,7)单一字节寄存器地址。,表2-7显示的就是x86-64架构中的模式结构图,并标示了适用情况。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 大学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!