




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、会计学1n 8086微处理器是微处理器是Intel系列微处理器中具有代表性系列微处理器中具有代表性的的16位位微处理器。微处理器。n 8086微处理器采用微处理器采用HMOS工艺技术制造,外型封工艺技术制造,外型封装为双列直插式,有装为双列直插式,有40个个引脚。引脚。n 主时钟频率有主时钟频率有5MHz,8MHz和和10MHz几种。几种。n 内部采用内部采用16位数据通路和流水线结构,使取指令位数据通路和流水线结构,使取指令与执行指令实现了与执行指令实现了并行并行操作。操作。n 8086有有20位位地址线,可直接寻址的空间达地址线,可直接寻址的空间达1MB。n 8086支持多处理器系统,可方
2、便地与数值支持多处理器系统,可方便地与数值协处理协处理器器8087和和I/O处理器处理器8089相连,组成多处理器系统,大相连,组成多处理器系统,大大提高了系统的数据处理能力。大提高了系统的数据处理能力。第1页/共79页2.1.1 8086微处理器的功能结构微处理器的功能结构 8086微处理器采用不同于第二代微处理器微处理器采用不同于第二代微处理器(8080,Z80)的一种全新结构形式,由两个独立的一种全新结构形式,由两个独立的单元组成,一个称为的单元组成,一个称为总线端口单元总线端口单元BIU (Bus Interface Unit),另一个称为,另一个称为执行单元执行单元EU (Execu
3、tion Unit),其功能框图如图,其功能框图如图2.1所示。所示。第2页/共79页图图2.1 8086 CPU2.1 8086 CPU的功能结构的功能结构第3页/共79页1. 指令执行单元指令执行单元EU 指令执行单元指令执行单元EU的功能是负责执行指令,即负责的功能是负责执行指令,即负责全部指令的译码和执行,同时管理全部指令的译码和执行,同时管理CPU内部的有关寄内部的有关寄存器。存器。执行单元执行单元EU由算术逻辑单元由算术逻辑单元(ALU)、标志寄存、标志寄存器、器、8个寄存器,以及数据暂存器和个寄存器,以及数据暂存器和EU控制器等组成控制器等组成。 1) 算术逻辑运算单元算术逻辑运
4、算单元(ALU) 16位的运算器,可用于位的运算器,可用于8位或位或16位二进制算术运算位二进制算术运算或逻辑运算。或逻辑运算。 2) 标志寄存器标志寄存器 用来存放用来存放ALU运算后的结果特征或机器运行状态,运算后的结果特征或机器运行状态,标志寄存器长标志寄存器长16位,实际使用了位,实际使用了9位位。第4页/共79页 3) 通用寄存器组通用寄存器组 包含包含8个个16位的寄存器,按功能分为两组,一组位的寄存器,按功能分为两组,一组包括包括AX,BX,CX,DX4个寄存器,称为个寄存器,称为通用数据通用数据寄存器寄存器,用来存放操作数或地址。另一组包括,用来存放操作数或地址。另一组包括DI
5、,SI,SP和和BP4个寄存器,称为个寄存器,称为专用寄存器专用寄存器。 4) EU控制器控制器 EU控制器的作用是从控制器的作用是从BIU的指令队列中取指令,的指令队列中取指令,并对指令进行译码,根据指令要求向并对指令进行译码,根据指令要求向EU内部各部内部各部件发出相应的控制命令以完成每条指令所规定的功件发出相应的控制命令以完成每条指令所规定的功能。因此相当于传统计算机能。因此相当于传统计算机CPU中的控制器。中的控制器。第5页/共79页 指令执行单元指令执行单元EU的工作就是执行指令的工作就是执行指令,并不直接与外部发生联系,而是从总线端,并不直接与外部发生联系,而是从总线端口单元口单元
6、BIU的指令队列中源源不断地获取指的指令队列中源源不断地获取指令并执行,省去了访问存储器取指令的时间令并执行,省去了访问存储器取指令的时间,提高了,提高了CPU的利用率和整个系统的运行速的利用率和整个系统的运行速度。度。第6页/共79页2. 总线端口单元总线端口单元BIU BIU是是8086微处理器在存储器和微处理器在存储器和I/O设备之间的设备之间的端口部件,负责对全部引脚的操作,即端口部件,负责对全部引脚的操作,即8086对存储对存储器和器和I/O设备的所有操作都是由设备的所有操作都是由BIU完成的完成的。BIU提提供了供了16位位双向数据总线、双向数据总线、20位位地址总线和若干条控地址
7、总线和若干条控制总线,其具体任务是:负责从内存单元中预取指制总线,其具体任务是:负责从内存单元中预取指令,并将其送到指令队列缓冲器暂存。令,并将其送到指令队列缓冲器暂存。 总线端口单元总线端口单元BIU主要由主要由4个段寄存器、个段寄存器、1个指个指令指针寄存器、令指针寄存器、1个与个与EU通信的内部寄存器、先入通信的内部寄存器、先入先出的指令队列、总线控制逻辑和计算先出的指令队列、总线控制逻辑和计算20位物理地位物理地址的地址加法器组成。址的地址加法器组成。第7页/共79页1) 地址加法器和段寄存器地址加法器和段寄存器 8086 微处理器的微处理器的20位物理地址是由专门位物理地址是由专门的
8、地址加法器将有关段寄存器内容的地址加法器将有关段寄存器内容(段的起始段的起始地址地址)左移左移4位后,与位后,与16位的偏移地址相加。位的偏移地址相加。2) 16位指令寄存器位指令寄存器(Instruction Pointer,IP) 指令寄存器指令寄存器IP用来存放下一条要执行指用来存放下一条要执行指令的偏移地址令的偏移地址EA(也叫有效地址也叫有效地址),IP只有和只有和CS相结合,才能形成指向指令存放单元的物相结合,才能形成指向指令存放单元的物理地址。理地址。第8页/共79页3) 指令队列缓冲器指令队列缓冲器 指令队列的作用是预存指令队列的作用是预存BIU从存储器中取出的指令从存储器中取
9、出的指令代码。容量为代码。容量为6B,按,按“先进先出先进先出”的方式工作,其操的方式工作,其操作遵循以下原则:作遵循以下原则: (1) 当指令队列中存入一条指令后,当指令队列中存入一条指令后,EU就立即开就立即开始执行。始执行。 (2) 当当BIU发现队列中空了发现队列中空了2个字节个字节时,就自动地时,就自动地进行预取指令操作,直至填满为止。进行预取指令操作,直至填满为止。 (3) 当当EU执行一条转移、调用或返回指令后,执行一条转移、调用或返回指令后,BIU就会清除指令队列,并从新地址开始预取指令,就会清除指令队列,并从新地址开始预取指令,实现程序段的转移。实现程序段的转移。第9页/共7
10、9页 BIU和和EU是各自独立工作的,在是各自独立工作的,在EU执行指令执行指令的同时,的同时,BIU可预取下一条或几条指令。从而减少可预取下一条或几条指令。从而减少了了CPU为取指令而等待的时间,提高了为取指令而等待的时间,提高了CPU的利的利用率,加快了整机的运行速度。另外也降低了对用率,加快了整机的运行速度。另外也降低了对存储器存取速度的要求。存储器存取速度的要求。4) 总线控制逻辑电路总线控制逻辑电路 总线控制逻辑电路将总线控制逻辑电路将8086微处理器的内部总线微处理器的内部总线和外部总线相连,是和外部总线相连,是8086微处理器与内存单元或微处理器与内存单元或I/O端口进行数据交换
11、的必经之路。它包括端口进行数据交换的必经之路。它包括16条数条数据总线、据总线、20条地址总线和若干条控制总线。条地址总线和若干条控制总线。第10页/共79页2.1.2 8086的存储器分段组织的存储器分段组织1. 存储器地址空间和数据存储格式存储器地址空间和数据存储格式 8086 8086的存储器是以字节的存储器是以字节(8(8位位) ) 为单位组织的为单位组织的。具有。具有2020条地址总线,所以可寻址的地址空间容条地址总线,所以可寻址的地址空间容量为量为1MB1MB。每个字节对应一个唯一的地址,地址。每个字节对应一个唯一的地址,地址范围为范围为0000000000FFFFFHFFFFFH
12、,如图,如图2.22.2所示。所示。图2.2 存储器的地址第11页/共79页 存储器内两个连续的字节,定义为一个字。一存储器内两个连续的字节,定义为一个字。一个字中的每个字节,都有一个字节地址,个字中的每个字节,都有一个字节地址,每个字每个字的低字节的低字节(低低8位位)存放在低地址中,高字节存放在低地址中,高字节(高高8位位)存放在高地址中存放在高地址中,字的地址指低字节的地址。,字的地址指低字节的地址。图2.3 数据存储格式第12页/共79页2. 存储器的分段存储器的分段 8086微处理器地址总线微处理器地址总线20条,存储器地址空间为条,存储器地址空间为1MB。但是,。但是,8086 所
13、有的寄存器都是所有的寄存器都是16位的,最多只位的,最多只能寻址能寻址64KB空间。为此引入了存储空间空间。为此引入了存储空间分段分段概念,即概念,即将整个将整个1MB的存储空间分成若干个存储段,每个段是的存储空间分成若干个存储段,每个段是存储器中可独立寻址的逻辑单位,称为存储器中可独立寻址的逻辑单位,称为逻辑段逻辑段,每个,每个段的长度为段的长度为64KB,段内地址是连续的,允许各个逻辑,段内地址是连续的,允许各个逻辑段在整个段在整个1MB存储空间内浮动,但每个逻辑段的起始存储空间内浮动,但每个逻辑段的起始地址地址(简称简称段基址段基址/段首址段首址) 的低的低4位二进制码必须是位二进制码必
14、须是0。一个段的起始地址的高一个段的起始地址的高16位被称为该段的位被称为该段的段地址段地址。 第13页/共79页 显然,在显然,在1MB的存储器地址空间中,可以有的存储器地址空间中,可以有216个段地址。任意相邻的两个段地址相距个段地址。任意相邻的两个段地址相距16个存个存储单元。段内一个存储单元的地址,可用相对于储单元。段内一个存储单元的地址,可用相对于段起始地址的偏移量来表示,这个偏移量称为段段起始地址的偏移量来表示,这个偏移量称为段内内偏移地址偏移地址,也称为,也称为有效地址有效地址EA。偏移地址也是。偏移地址也是16位的,所以,一个段最大可以包括一个位的,所以,一个段最大可以包括一个
15、64KB的的存储器空间。各个逻辑段之间可以首尾相连,也存储器空间。各个逻辑段之间可以首尾相连,也可以完全分离或者重叠可以完全分离或者重叠(部分重叠或完全重叠部分重叠或完全重叠),如图如图2.5所示。所示。第14页/共79页图2.5 存储器分段和段的重叠第15页/共79页3. 物理地址的形成物理地址的形成 任何一个存储单元,可以包含在一个逻辑段中,任何一个存储单元,可以包含在一个逻辑段中,也可以包含在两个或多个重叠的逻辑段中,只要能得也可以包含在两个或多个重叠的逻辑段中,只要能得到它所在段的段基址和段内偏移地址就可以对它进行到它所在段的段基址和段内偏移地址就可以对它进行访问。访问。 在在8086
16、系统中,每个存储单元在存储器中的位置系统中,每个存储单元在存储器中的位置可以用可以用逻辑地址逻辑地址和和物理地址物理地址来表示。所谓来表示。所谓逻辑地址逻辑地址,由由段基址段基址和和段内偏移地址段内偏移地址两部分组成,两部分组成,段基址段基址和和段内段内偏移地址偏移地址都是无符号的都是无符号的16位二进制数。位二进制数。物理地址物理地址也叫也叫实际地址或绝对地址,是实际地址或绝对地址,是CPU访问存储器时实际使用访问存储器时实际使用的地址,地址总线上传送的就是这个地址。的地址,地址总线上传送的就是这个地址。第16页/共79页物理地址应由逻辑地址变换得到,两者的变换物理地址应由逻辑地址变换得到,
17、两者的变换关系如图关系如图2.6所示。即将所示。即将16位段基址左移位段基址左移4位,位,然后与然后与16位段内偏移地址相加而获得位段内偏移地址相加而获得20位物理位物理地址,这相当于完成以下地址计算:地址,这相当于完成以下地址计算:物理地址段基址物理地址段基址16段内偏移地址段内偏移地址 图2.6 物理地址的形成过程 第17页/共79页 地址计算过程是地址计算过程是由由CPU内内BIU中的地中的地址加法器完成的。址加法器完成的。例例如如,某条指令在代码,某条指令在代码段中的逻辑地址为:段中的逻辑地址为:CS1000H,IP4052H,则其物理地,则其物理地址为址为14052H。图2.7 逻辑
18、地址与物理地址第18页/共79页 显然,当显然,当CS1200H,IP2052H时,物时,物理地址也是理地址也是14052H。这就是说,。这就是说,同一个物理同一个物理地址可以对应多个逻辑地址地址可以对应多个逻辑地址。 段地址总是由段寄存器提供的段地址总是由段寄存器提供的。8086微处微处理器的理器的BIU单元设有单元设有4个段寄存器个段寄存器(CS、DS、SS、ES),所以,所以CPU可以通过这可以通过这4个段寄存器个段寄存器来访问来访问4个不同的段。用程序对段寄存器的内个不同的段。用程序对段寄存器的内容进行修改,可实现对所有段的访问。容进行修改,可实现对所有段的访问。第19页/共79页4.
19、 信息的分段存储与段寄存器的关系信息的分段存储与段寄存器的关系 为了操作方便,存储器可相应地划分为:为了操作方便,存储器可相应地划分为:程程序区序区,该区存储程序的指令代码;,该区存储程序的指令代码;数据区数据区,存储,存储原始数据、中间结果和最终结果;原始数据、中间结果和最终结果;堆栈区堆栈区,存储,存储需要压入堆栈的数据或状态信息。需要压入堆栈的数据或状态信息。 段寄存器的分工是:代码段寄存器段寄存器的分工是:代码段寄存器CS划定并划定并控制着程序区;数据段寄存器控制着程序区;数据段寄存器DS和附加段寄存和附加段寄存器器ES控制着数据区;而堆栈段寄存器控制着数据区;而堆栈段寄存器SS对应堆
20、对应堆栈存储区。栈存储区。第20页/共79页表表2-1 2-1 各种类型存储器访问所使用的段寄存器和段内偏移地各种类型存储器访问所使用的段寄存器和段内偏移地址址存储器操作类存储器操作类型型隐含段寄隐含段寄存器存器允许超越的允许超越的段寄存器段寄存器段内偏移地址段内偏移地址来源来源取指令取指令CS无无IP堆栈操作堆栈操作SS无无SP通用数据读取通用数据读取DSCS,ES,SS由寻址方式求由寻址方式求得有效地址得有效地址源数据串源数据串DSCS,ES,SSSI目的数据串目的数据串ES无无DI用用BP作为基作为基址寄存器址寄存器SSCS,DS,ES由寻址方式求由寻址方式求得有效地址得有效地址第21页
21、/共79页 (1) 段地址要么由段地址要么由默认段寄存器默认段寄存器提供,要么由提供,要么由“指定指定”段寄存器段寄存器提供。提供。 (2) 段寄存器段寄存器DS、ES和和SS的内容是在程序中的内容是在程序中通过指令设置的,通过指令设置的,任何传送类指令不能直接向任何传送类指令不能直接向CS中传送数据中传送数据,但转移、调用、返回类指令可以设,但转移、调用、返回类指令可以设置和影响置和影响CS的内容。的内容。 (3) 取指令取指令访问内存时,段内偏移地址只能由访问内存时,段内偏移地址只能由指令指针指令指针IP提供;当提供;当堆栈堆栈进行压入和弹出操作时进行压入和弹出操作时,段内偏移地址只能由,
22、段内偏移地址只能由SP提供等。除此之外的内提供等。除此之外的内存访问,段内偏移地址则由指令码规定的寻址方存访问,段内偏移地址则由指令码规定的寻址方式确定。式确定。第22页/共79页 每个段的最大容量为每个段的最大容量为64KB,一般情况下,不需,一般情况下,不需要这么大的空间,因而段有部分重叠。如下图所示要这么大的空间,因而段有部分重叠。如下图所示。(a) 段不重叠 (b) 段部分重叠 图2.8 典型分段方法 第23页/共79页2.1.3 8086的寄存器结构的寄存器结构 8086 微处理器内部寄存器结构如图微处理器内部寄存器结构如图2.9所所示。示。14个寄存器按功能不同可分为个寄存器按功能
23、不同可分为3组,分别组,分别为为通用寄存器组通用寄存器组、段寄存器组段寄存器组和和控制寄存器组控制寄存器组。1. 通用寄存器组通用寄存器组 8个个16位通用寄存器分为两组:位通用寄存器分为两组:数据寄存数据寄存器及地址指针和变址寄存器。器及地址指针和变址寄存器。第24页/共79页图2.9 8086的寄存器结构第25页/共79页1) 数据寄存器数据寄存器u 数据寄存器包括数据寄存器包括AX,BX,CX,DX这这4个寄个寄存器。存器。u 通用数据寄存器主要用来存放算术通用数据寄存器主要用来存放算术/逻辑运算逻辑运算操作数,中间结果和地址。操作数,中间结果和地址。u 不仅为编程提供方便,更主要的是可
24、以加快不仅为编程提供方便,更主要的是可以加快CPU的运行速度。的运行速度。u 数据寄存器既可作为一个数据寄存器既可作为一个16位的寄存器使用位的寄存器使用,也可以分别作为两个,也可以分别作为两个8位寄存器使用。位寄存器使用。第26页/共79页2) 地址指针和变址寄存器地址指针和变址寄存器u包括包括SP,BP,SI,DI 四个四个16位寄存器。位寄存器。u一般是用来存放操作数的偏移地址。一般是用来存放操作数的偏移地址。SP称为堆栈指示器称为堆栈指示器BP为基址寄存器为基址寄存器SI和和DI称为变址寄存器称为变址寄存器u通用寄存器除具有通用特性外,还具有各通用寄存器除具有通用特性外,还具有各自的特
25、定用法自的特定用法第27页/共79页表表2-2 2-2 通用寄存器的特定用法和隐含性质通用寄存器的特定用法和隐含性质寄存器名称寄存器名称特定用法特定用法隐含性质隐含性质AX,AL在乘法和除法指令中作累加器在乘法和除法指令中作累加器在在I/O指令中用作数据寄存器指令中用作数据寄存器隐含寻址隐含寻址显式寻址显式寻址AH在在LAHF中作目的寄存器中作目的寄存器隐含寻址隐含寻址AL在在BCD码及码及ASCII码运算指令中作累加器码运算指令中作累加器 隐含寻址隐含寻址BX在间接寻址中作地址寄存器在间接寻址中作地址寄存器在间接寻址中作基址寄存器在间接寻址中作基址寄存器在在XLAT指令中作基址寄存器指令中作
26、基址寄存器显式寻址显式寻址显式寻址显式寻址隐含寻址隐含寻址CX在循环指令和字符串指令中作循环次数的在循环指令和字符串指令中作循环次数的计数寄存器,计数寄存器,每做一次循环,每做一次循环,CX的内容减的内容减1隐含寻址隐含寻址第28页/共79页寄存器名称寄存器名称特定用法特定用法隐含性质隐含性质CL在移位及循环移位指令中作移位次数及在移位及循环移位指令中作移位次数及循环移位次数的计数寄存器循环移位次数的计数寄存器隐含寻址隐含寻址DX在在I/O指令间接寻址时作地址寄存器指令间接寻址时作地址寄存器在乘法和除法指令中作为辅助累加器在乘法和除法指令中作为辅助累加器显式寻址显式寻址隐含寻址隐含寻址BP在间
27、接寻址中作为访问堆栈段基址寄存器在间接寻址中作为访问堆栈段基址寄存器显式寻址显式寻址SP在堆栈操作中作堆栈指针在堆栈操作中作堆栈指针显式寻址显式寻址SI在字符串操作指令中作源变址寄存器在字符串操作指令中作源变址寄存器在间接寻址中作地址寄存器在间接寻址中作地址寄存器 在间接寻址中作变址寄存器在间接寻址中作变址寄存器隐含寻址隐含寻址显式寻址显式寻址显式寻址显式寻址DI在字符串操作指令中作目的变址寄存器在字符串操作指令中作目的变址寄存器在间接寻址中作地址寄存器在间接寻址中作地址寄存器在间接寻址中作变址寄存器在间接寻址中作变址寄存器隐含寻址隐含寻址显式寻址显式寻址显式寻址显式寻址第29页/共79页2.
28、 段寄存器组段寄存器组p 代码段寄存器代码段寄存器 (CS)。存放当前代码段的段基址值。存放当前代码段的段基址值。代码段用来存放程序代码。代码段用来存放程序代码。CS的的内容左移内容左移4位再加上指令指针位再加上指令指针IP的内容就是下一条要执行的指的内容就是下一条要执行的指令。例如,某指令在代码段内的偏移地址为令。例如,某指令在代码段内的偏移地址为0100H,即,即IP0100H,当前代码段寄存器,当前代码段寄存器CS2000H,则该指令在主存储器,则该指令在主存储器中的物理地址为中的物理地址为PA(CS)左移左移4位位(IP)20000H0100H20100H第30页/共79页p数据段寄存
29、器数据段寄存器 (Data Segment,DS)。它存。它存放当前数据段的段基址。通常数据段用来存放放当前数据段的段基址。通常数据段用来存放数据和变量。当访问数据段中某一变量时,该数据和变量。当访问数据段中某一变量时,该变量的物理地址变量的物理地址PA为为PA(DS)左移左移4位该变量的偏移地址位该变量的偏移地址p 堆栈段寄存器堆栈段寄存器 (Stack Segment,SS)。它存放。它存放当前堆栈段的段基址。栈顶的物理地址应为当前堆栈段的段基址。栈顶的物理地址应为PA(SS)左移左移4位位(SP)p附加段寄存器附加段寄存器 (Extra Segment,ES)。第31页/共79页 一般来
30、说,当程序较少,数据量又不大时一般来说,当程序较少,数据量又不大时,代码段、数据段、堆栈段和附加段可设置在,代码段、数据段、堆栈段和附加段可设置在同一段内。当程序和数据量较大,超过同一段内。当程序和数据量较大,超过64KB时时,可定义多个代码段、数据段、附加段和堆栈,可定义多个代码段、数据段、附加段和堆栈段。这时在段。这时在CS,DS,SS和和ES中存放的是当前中存放的是当前正在使用的逻辑段段基址,使用中可以通过修正在使用的逻辑段段基址,使用中可以通过修改这些段的寄存器的内容,以访问其他段扩大改这些段的寄存器的内容,以访问其他段扩大程序规模。必要时,可通过在指令中增加段超程序规模。必要时,可通
31、过在指令中增加段超越前缀符来指向其他段。越前缀符来指向其他段。第32页/共79页3. 控制寄存器组控制寄存器组1) 指令指针指令指针 (Instruction Pointer,IP) 用来存放下一条要执行的指令在当前代用来存放下一条要执行的指令在当前代码段中的偏移地址。在程序运行中,码段中的偏移地址。在程序运行中,IP的内的内容容自动修改自动修改,总是指向下一条要执行的指令,总是指向下一条要执行的指令。其内容程序。其内容程序不能直接访问不能直接访问,但当执行转移,但当执行转移指令、调用指令时,其内容指令、调用指令时,其内容可被修改可被修改,置入,置入的是目标地址或子程序首地址,的是目标地址或子
32、程序首地址,IP的原内容的原内容被压入堆栈,返回时再被恢复。被压入堆栈,返回时再被恢复。第33页/共79页2) 标志寄存器标志寄存器(FLAG) 标志寄存器也称程序状态字标志寄存器也称程序状态字(PSW)寄存器寄存器。图2.10 8086标志寄存器格式一类叫一类叫状态标志状态标志,用来表示运算结果的特征,用来表示运算结果的特征,共共6个个: CF,PF,AF,ZF,SF和和OF。一类叫一类叫控制标志控制标志,用来控制,用来控制CPU的操作或工作的操作或工作状态,共状态,共3个:个:DF,IF和和TF。第34页/共79页(1) 状态标志位功能说明状态标志位功能说明 进位标志进位标志(Carry
33、Flag,CF) 奇偶标志奇偶标志(Parity Flag,PF) 辅助进位标志辅助进位标志(Auxiliary Carry Flag,AF) 零标志零标志(Zero Flag,ZF) 符号标志符号标志(Sign F1ag SF) 溢出标志溢出标志(Overflow Flag,OF)(2) 控制标志位功能控制标志位功能 中断允许标志中断允许标志(Interrupt Enable F1ag,IF) (Direction Flag,DF)方向标志方向标志 (Trap Flag,TF)单步标志单步标志第35页/共79页2.2.1 8086的两种系统组态的两种系统组态1. 最小工作方式最小工作方式 所
34、谓最小工作方式,就是系统中只有一个所谓最小工作方式,就是系统中只有一个8086微处理器,在这种情况下,所有的总线控微处理器,在这种情况下,所有的总线控制信号,都是直接由制信号,都是直接由8086 CPU产生的,系统产生的,系统中的总线控制逻辑电路被减到最少,最小工作中的总线控制逻辑电路被减到最少,最小工作方式适用于由单微处理器组成的小系统。在这方式适用于由单微处理器组成的小系统。在这种系统中,种系统中, 8086 CPU直接产生所有的总线控直接产生所有的总线控制信号,因而省去了总线控制逻辑。制信号,因而省去了总线控制逻辑。第36页/共79页图2.11 8086最小系统配置第37页/共79页1)
35、 时钟发生器时钟发生器8284A 为为8086以及其他外设芯片提供所需要的时以及其他外设芯片提供所需要的时钟信号。钟信号。2) 数据总线收发器数据总线收发器8286/8287 当系统中数据总线上挂接的外设端口部件较当系统中数据总线上挂接的外设端口部件较多时,就必须在数据总线上接入总线收发器以多时,就必须在数据总线上接入总线收发器以增加总线的驱动能力。增加总线的驱动能力。3)地址锁存器)地址锁存器8282 8086的地址的地址/数据和地址数据和地址/状态总线分时复用状态总线分时复用,必须加入地址锁存器。,必须加入地址锁存器。第38页/共79页2. 最大工作方式最大工作方式 将将8086/8088
36、 CPU的引脚的引脚MN/MX接地,就使接地,就使CPU工作于最大模式。在最大系统下,系统中至工作于最大模式。在最大系统下,系统中至少包含两个微处理器,其中一个为主处理器,即少包含两个微处理器,其中一个为主处理器,即8086CPU,其他的微处理器称之为,其他的微处理器称之为协处理器协处理器。 与最小方式系统配置相比,增加了一个与最小方式系统配置相比,增加了一个总线控总线控制器制器8288。总线控制器。总线控制器8288用来产生总线命令信用来产生总线命令信号和总线控制信号。也就是说,在最大方式下,号和总线控制信号。也就是说,在最大方式下,CPU不直接产生系统所需的总线控制信号,不直接产生系统所需
37、的总线控制信号,所有所有的总线控制信号均由总线控制器的总线控制信号均由总线控制器8288产生。产生。第39页/共79页图2.15 8086最大系统配置第40页/共79页(a) 引脚图 (b) 内部结构图图2.16 8288的引脚和内部结构第41页/共79页总线控制器总线控制器8288 (1) 总线命令信号总线命令信号 由由CPU输入的总线状态信号输入的总线状态信号S2S0经内部状态译码经内部状态译码器译码后,经命令信号产生电路产生总线命令信号。器译码后,经命令信号产生电路产生总线命令信号。操作状态操作状态8288产生产生的信号的信号操作状态操作状态8288产生产生的信号的信号000中断相应中断
38、相应100取指令取指令001读读I/O端口端口101读存储器读存储器010写写I/O端口端口110写存储器写存储器011暂停暂停无无111保留保留无无0S2S1SINTAIORCIOWCAIOWC0S2S1SMRDCMRDCAMWCMWTC第42页/共79页(2) 总线控制信号总线控制信号(数据发送数据发送/接收接收)DT/RMCE/PDEN(主控级联允许主控级联允许/外设数据允许信号外设数据允许信号)ALE(地址锁存允许地址锁存允许) DEN(数据允许数据允许)(3) 控制输入信号控制输入信号IOB(I/O总线方式控制信号,输入,高电平有效总线方式控制信号,输入,高电平有效)CEN(命令允许
39、信号,输入,高电平有效命令允许信号,输入,高电平有效)AEN(地址允许信号,由总线裁决器输入,低电平有效(地址允许信号,由总线裁决器输入,低电平有效)第43页/共79页2.2.2 8086的引脚功能的引脚功能图2.17 8086引脚图第44页/共79页1. 两种工作方式公用引脚两种工作方式公用引脚 在在8086 微处理器的微处理器的40条引脚中,引脚条引脚中,引脚1和引脚和引脚20为接地端为接地端(GND),引脚,引脚40为电为电源输入端源输入端(VCC),采用的电源电压为,采用的电源电压为+5V10%;引脚;引脚19为时钟信号输入端为时钟信号输入端(CLK)。其余。其余36个引脚按其功能来分
40、,属个引脚按其功能来分,属地址地址/数据总线的有数据总线的有20条引脚,属控制总条引脚,属控制总线的有线的有16条引脚。具体定义如下。条引脚。具体定义如下。第45页/共79页1) 地址地址/数据总线数据总线 (1) AD15AD0(Address Data Bus,I/O,三态,三态)为分时复用的地址数据总线。为分时复用的地址数据总线。 (2) A19/S6A15/S3(Address Status Bus,输出,输出,三态,三态)为分时复用的地址为分时复用的地址/状态信号线。状态信号线。S S4 4S S3 3段寄存器段寄存器0 00 0ESES0 01 1SSSS1 10 0CS(CS(或
41、或I/OI/O,中断响应,中断响应) )1 11 1DSDS第46页/共79页2) 控制总线控制总线(1) NMI (Non-Maskable Interrupt,输入)非可屏蔽中,输入)非可屏蔽中断请求信号输入引脚。断请求信号输入引脚。(2) INTR( Interrupt Request,输入)中断请求信号输,输入)中断请求信号输入引脚。入引脚。(3) Read,输出,三态。读控制输出信号引脚。,输出,三态。读控制输出信号引脚。(4) Reset,系统复位信号输入引脚,高电平有效。,系统复位信号输入引脚,高电平有效。(5) Ready, “准备好准备好”状态信号输入引脚状态信号输入引脚(6
42、) Test,测试信号输入引脚,低电平有效。,测试信号输入引脚,低电平有效。(7) MN/MX,最小,最小/最大工作方式设置信号输入引脚。最大工作方式设置信号输入引脚。(8) BHE/S7,三态输出分时复用引脚,三态输出分时复用引脚,BHE低电平有效低电平有效。第47页/共79页表2-6 和A0的代码组合和对应的操作 操操 作作 A0使用的数据引脚使用的数据引脚读或写偶地址的一个字读或写偶地址的一个字 0 0AD15AD0读或写偶地址的一个字读或写偶地址的一个字节节 1 0AD7AD0读或写奇地址的一个字读或写奇地址的一个字节节 0 1AD15AD8读或写奇地址的一个字读或写奇地址的一个字 0
43、 11 0AD15AD8(第第1个总线周期放低个总线周期放低位数据字节位数据字节)AD7AD0(第第2个总线周期放高个总线周期放高位数据字节位数据字节)BHEBHE第48页/共79页2. 最小方式下引脚定义最小方式下引脚定义1)INTA (Interrupt Acknowledge,输出,输出)中断响应信号输出引中断响应信号输出引脚,低电平有效脚,低电平有效2)ALE (Address Lock Enable,输出,输出) 地址锁存允许输出信号地址锁存允许输出信号引脚,高电平有效引脚,高电平有效3)DEN (Data Enable,三态,输出,三态,输出)数据允许输出信号引脚数据允许输出信号引
44、脚,低电平有效,低电平有效4)DT/R (Data Transmit/Receive,输出,三态)数据收发,输出,三态)数据收发控制信号输出引脚控制信号输出引脚5)M/IO (Memory/Input &Output,输出,三态,输出,三态)存储器存储器/I/O端口选择信号输出引脚端口选择信号输出引脚6)WR (Write,输出,三态,输出,三态)写控制信号输出引脚,低电平有写控制信号输出引脚,低电平有效效第49页/共79页7)HOLD(Hold Request,输入,输入)总线保持请求信号总线保持请求信号输入引脚,高电平有效。输入引脚,高电平有效。8)HLDA (Hold Ackno
45、wledge,输出,输出)总线保持响总线保持响应信号输出引脚,高电平有效。应信号输出引脚,高电平有效。表2-72-7 和和 的组合决定的传送类型的组合决定的传送类型 M/IORDWR传送类型传送类型001读读I/O端口端口010写写I/O端口端口101读存储器读存储器110写存储器写存储器M/IORDWR第50页/共79页3. 最大方式下引脚定义最大方式下引脚定义1) QS1、QS0(Instruction Queue Status,输出,输出)指令队列状态信号输出引脚。指令队列状态信号输出引脚。QS1QS0指令队列状态指令队列状态00无操作,队列中指令未被取出无操作,队列中指令未被取出01从
46、队列中取出当前指令的第一个字节从队列中取出当前指令的第一个字节10队列空队列空11从队列中取出指令的后续字节从队列中取出指令的后续字节表表2-8 2-8 指令队列状态位的编码指令队列状态位的编码第51页/共79页2) ( (输出,三态输出,三态) )总线周期状态信号输出引脚总线周期状态信号输出引脚、2S1RQ/GT1S0S3) (Lock,输出,三态,输出,三态)总线封锁信号引脚,低电平有效总线封锁信号引脚,低电平有效LOCK4) (Request/Grant,输入,输入/输出输出)总线请求信总线请求信号号0RQ/GT输入输入/总线允许信号输出引脚。总线允许信号输出引脚。 在最大方式系统中,对
47、存储器和在最大方式系统中,对存储器和I/O端口进行读写的命令端口进行读写的命令信号和对信号和对8282、8286的控制信号均由的控制信号均由8288产生。现对这些信产生。现对这些信号分别说明如下:号分别说明如下:1) 用于对地址锁存器和数据收发器的控制信号用于对地址锁存器和数据收发器的控制信号DT/RALE、 和和DEN2) 用于系统控制总线的命令信用于系统控制总线的命令信号号INTAIORC:向中断控制器或中断设备输出的中断响应信号:向中断控制器或中断设备输出的中断响应信号。 :I/O读命令读命令第52页/共79页IOWC:I/O写命令写命令:存储器读命令:存储器读命令:存储器写命令:存储器
48、写命令MRDCMWTCAIOWC:先行:先行I/O写命令写命令AMWC:先行存储器写命令:先行存储器写命令、INTR、NMI、 、READY和RESET等。 BHEIOWCMRDCMWTCIORCLOCKTEST与最小方式系统相同。控制总线有、1RQ/GT0RQ/GTINTA、 在8086最大方式系统中,系统总线中的地址总线和数据总线第53页/共79页2.3.1 总线周期的基本概念总线周期的基本概念pCPU执行一条指令的时间称为一个执行一条指令的时间称为一个指令周期指令周期。p通过外部总线对存储器或通过外部总线对存储器或I/O端口进行一次读端口进行一次读/写操作的过程称为写操作的过程称为总线周
49、期总线周期。p一个指令周期由若干个总线周期组成。一个指令周期由若干个总线周期组成。p一个总线周期由若干时钟周期一个总线周期由若干时钟周期T组成。组成。p时钟周期时钟周期是系统主时钟频率的倒数,是是系统主时钟频率的倒数,是CPU的基本时间计量单位,例如,某的基本时间计量单位,例如,某CPU的主频为的主频为5MHz,则其一个时钟周期就是,则其一个时钟周期就是200ns,若主频,若主频为为10MHz,则一个时钟周期为,则一个时钟周期为100ns。第54页/共79页 8086 CPU的一个基本总线周期由的一个基本总线周期由4个时钟周期或个时钟周期或4个个T状态状态(T1,T2,T3,T4)组成。组成。
50、l T1状态,状态,CPU往数据往数据/地址总线上发出地址信息。地址总线上发出地址信息。lT2状态,状态,CPU从总线上撤销地址。从总线上撤销地址。n读周期,使数据读周期,使数据/地址总线的低地址总线的低16位处于高阻抗位处于高阻抗状态,总线的高状态,总线的高4位输出本总线周期状态信息。位输出本总线周期状态信息。n写周期,写周期,CPU把数据放到总线上。把数据放到总线上。lT3状态,数据状态,数据/地址总线的高地址总线的高4位继续传送状态信息位继续传送状态信息,而低,而低16位上出现由位上出现由CPU输出的数据输出的数据(为写周期为写周期)或为或为CPU从存储器或从存储器或I/O端口读入的数据
51、。端口读入的数据。l T4状态,状态,8086完成数据传送,使控制信号变为无完成数据传送,使控制信号变为无效,结束总线周期效,结束总线周期第55页/共79页 除了基本总线周期之外,还应注意除了基本总线周期之外,还应注意等待等待状态状态TW 和和空闲状态空闲状态Ti 。图2.18 8086 CPU典型总线周期第56页/共79页1. 最小方式下的存储器读写周期最小方式下的存储器读写周期1) 存储器读周期存储器读周期2.3.2 8086的存储器读写周期的存储器读写周期 图2.19 8086的存储器读周期时序第57页/共79页图2.20 具有等待周期的存储器读周期第58页/共79页图2.21 8086
52、存储器写周期时序(最小方式)2) 存储器写周期存储器写周期第59页/共79页2. 最大方式下的存储器读写周期最大方式下的存储器读写周期1) 最大方式存储器读周期最大方式存储器读周期图2.22 8086存储器读周期时序(最大方式)第60页/共79页(1) 在每个总线周期开始之前的一段时间在每个总线周期开始之前的一段时间, 必定被置为必定被置为高电平,即高电平,即 111。(2) 最小方式下由最小方式下由CPU直接产生的直接产生的ALE, 等控制信号,在最大模式下由总线控制器等控制信号,在最大模式下由总线控制器8288产生。产生。0S, ,210S S S DENDT/RRD1S2S(3) 在最大
53、方式下,读存储器在最大方式下,读存储器用用 是像最小方式中用是像最小方式中用 信号的组合来表示。信号的组合来表示。 和和 RDM/IOMRDC IORC/*信号,而不信号,而不 最大方式下的存储器读周期时序与最小方式下的读周期最大方式下的存储器读周期时序与最小方式下的读周期时序相类似,所不同的只有以下几点:时序相类似,所不同的只有以下几点:第61页/共79页(4) 在读周期的T3状态,当CPU读取总线上的数据后, 便全部变为高电平( T4状态。一旦进入无源状态就意味着很快可以启动一个新的总线周期。 (5) 等待状态TW的插入过程与最小模式时相同。(6) 在T4状态,数据从总线上消失,状态信号引
54、脚S7S3进入高则按照下一个总线周期的操作类型产生变000110)。 0S,1S2S0S,1S2S210S S S 210S S S 111),即进入无源状态,并一直保持到阻抗状态,而化(即第62页/共79页2) 最大方式存储器写周期最大方式存储器写周期图2.23 存储器写周期时序 (最大方式)第63页/共79页 由图可知,最大方式下的写周期时序与前述的读周期时序有很多相同之处,例如:(1) 和读周期一样,在总线写周期开始之前, 已经按照操作类型设置好相应的电平。 中的变化情况与最大方式下该周期中的变化是一样的。同样,也在T3状态全部恢复为高电平,进入无源状态,从而为启动下一个新的总线周期作准
55、备。 (2) ALE*和DEN*的时序和作用与读周期相同;状态/地址信在各个T状态中的变化与读周期也相同。 (3) 同样,在最大方式下的写周期中,当存储器速度较慢时,也可以用READY信号联络,当在T3开始时READY信号仍无效(即为低电平),也可在T3和T4之间插入1个或几个等待状态TW。0S,1S2S0S,1S2S就在各个T状态号A19/S6Al6/S3及7BHE/S第64页/共79页写周期时序与读周期时序所不同的是: (1) 在最大方式下的存储器写周期中,CPU通过总线控制器号从T3状态开始有效,保持到T4状态;另一组是提前一个时钟周*,该信号从T2状态开始有效,保持到T4状态。可使慢速
56、的存储器有足够的时间进行写操作。 (2) *信号为高电平,表示本总线周期是写操作,数据8288为存储器提供两组写信号:一组是普通的写信号MWTCAMWCAMWCDT/R*,该信期的写信号提前的写信号*比普通的写信号提前一个时钟周期有效,这样总线收发器8286/8287应处于发送状态。第65页/共79页2.3.3 8086的的I/O读写周期读写周期 I/O读写周期的时序与存储器读读写周期的时序与存储器读/写周期的时序基本相同。写周期的时序基本相同。不同之处在于:不同之处在于: (1) 一般一般I/O端口的工作速度较慢,因而需插入等待周期端口的工作速度较慢,因而需插入等待周期Tw。 (2) T1期
57、间只发出期间只发出16位地址信号,即位地址信号,即A15A0,A19A16为为0。 (3) 在最小方式下,的信号由低电平取代原来的高电平,以在最小方式下,的信号由低电平取代原来的高电平,以指示指示CPU是对是对I/O端口操作。端口操作。(4) 在最大方式下,在最大方式下,8288发出的读发出的读/写命令为写命令为 和和 ,而非存储器读写时,而非存储器读写时的的 、和和 IORCAIOWCMRDCMWTCAMWCIOWC第66页/共79页图2.24 I /O端口读周期时序(最下方式)图2.25 I/O端口写周期时序(最小方式)第67页/共79页图2.26 I/O端口读周期时序(最大方式)图2.2
58、7 I/O端口写周期 时序(最大方式)第68页/共79页1. 中断响应操作中断响应操作图2.28 中断响应周期时序2.3.4 8086其他典型时序分析其他典型时序分析第69页/共79页图2.29 总线请求和响应时序(最小方式)2. 最小方式下的总线保持最小方式下的总线保持第70页/共79页3. 最大方式下的总线请求最大方式下的总线请求/允许允许和 的优先级的优先级比比 高。高。0RQ/GT0RQ/GT1RQ/GT1RQ/GT称为总线请求称为总线请求/总线允许信号端总线允许信号端 CPU对总线请求的处理是不允许对总线请求的处理是不允许“嵌套嵌套”的。的。 8086 CPU在最大方式下的总线请求在最大方式下的总线请求/允许允许/释放操作的时释放操作的时序如图序如图2.30所示。所示。第71页/共79页图2.30 总线请求/允许时序(最大方式)第72页/共79页 对于最大模式下的总线请求/允许/释放时序,有几点需要说明: (1) 当CPU以外的其他总线主模块请求使用总线时,从RQ/GT或 为一个时钟周期。 (2) CPU在每个时钟周期的上升沿检测在每个时钟周期的上升沿检测RQ/GT引脚,看引脚,看外部是否输入一个负脉冲外部是否输入一个负脉冲RQ信号,若检测到外部输入的信号,若检测到外部输入的总线请求负脉冲,则在下一个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年肿瘤类生物制品合作协议书
- 2025-2030农机项目可行性研究报告
- 2025-2030内联粘度传感器行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 2025-2030全球茶叶加工机械行业销售规模与未来发展预测研究报告
- 2025-2030全球及中国键合翅片散热器行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030全球及中国物流业的数字化转型行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030全球及中国游戏中的3D映射和建模行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030全球及中国汽车地板行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030全球及中国服务器微处理器行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030全球及中国地理营销行业市场现状供需分析及投资评估规划分析研究报告
- 华为MA5800配置及调试手册
- 人工智能科普教育活动方案策划
- 危险化学品储存企业安全生产风险管控和隐患排查治理体系建设实施指南
- 三年级数学试题答题卡
- 健康体检科(中心)规章制度汇编
- Java基础实践教程-Java编程基础
- 中国旅游地理(高职)全套教学课件
- 教科版六年级下册科学第二单元《生物多样性》教材分析及全部教案(定稿;共7课时)
- 中小学校安全岗位工作指导手册
- 大病历中风病
- 油漆修缮施工方案
评论
0/150
提交评论