2016-2021年中国电信网络优化行业竞争分析及发展前景预测报告_第1页
2016-2021年中国电信网络优化行业竞争分析及发展前景预测报告_第2页
2016-2021年中国电信网络优化行业竞争分析及发展前景预测报告_第3页
2016-2021年中国电信网络优化行业竞争分析及发展前景预测报告_第4页
2016-2021年中国电信网络优化行业竞争分析及发展前景预测报告_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

2、 * * * * * * * * * * * * * * * * * * * * * * * 超高速缓存控制 /KEN :超高速缓存允许输入信号。有效时使80486执行超高速缓存器的行填入周期。 /FLUSH :超高速缓存器清洗输入信号。有效时强制80486对内部超高速缓存器进行大清除 使全部数据变为无效 。/FLUSH是异步信号,因此它保持低电平的时间至少要大于一个处理器时钟周期供CPU采样输入。如果在复位信号RESET下降沿的前一个时钟采样到/FLUSH 为低电平,将使80486 CPU进入三态测试方式。 2.5 80486处理器 (8) 突发控制 或成组传递控制 /BRDY :突发准备好

3、信号,输入信号,低电平有效。/BRDY信号的作用与/RDY信号 有时称为非突发准备好信号 相同。当两者都为有效信号时,80486忽略/BRDY信号,当前周期由/RDY信号结束。 /BLAST :突发最后输出信号,低电平有效。当/BLAST有效时,表示下一个/BLAST信号输入时,突发周期已经结束,即最后一个/BLAST被看做/RDY。 2.5 80486处理器 (9) 数据出错报告 /FERR :浮点出错输出信号,低电平有效。每当遇到未屏蔽的浮点出错时,/FERR信号就变为有效。 /IGNNE :忽略数字出错信号,输入信号,低电平有效。/IGNNE信号有效时,将使80486忽略数字错误,继续执

4、行非控制的浮点指令。如果/IGNNE变为无效,而先前的浮点指令产生了错误,80486将冻结在这个非控制的浮点指令上。控制寄存器0 CR0 中的NE位置位时,/IGNNE信号将不起作用。 2.5 80486处理器 (10) 数据奇偶校验 DP0DP3为数据奇偶校验输入/输出信号,分别对应32位数据中的字节0字节3。偶校验指在一个数据字节的8条线上和对应奇偶校验输入/输出线上1的个数为偶数。奇校验指在一个数据字节的8条线上和对应奇偶校验输入/输出线上1的个数为奇数。 DP0DP3 与数据字节具有相同的定时。 2.5 80486处理器 /PCHK :奇偶校验错信号,输出信号,低电平有效。/PCHK为

5、低电平时,CPU在上一个读周期采样的数据存在奇偶校验错。也就是说,CPU在当读周期结束时采样的数据存在奇偶校验错时,在下一时钟开始,立即输出/PCHK0 信号。/PCHK信号不会被悬浮。 (11) 时钟 CLK 时钟输入信号,为80486提供基本的定时和内部工作频率。根据CLK上升沿规定了所有外部定时参数。 2.5 80486处理器 2.6 Pentium处理器 Pentium微处理器是Intel公司于1993年3月推出的,采用0.6m的静态CMOS工艺的高性能微处理器。Pentium微处理器采用PGA封装,共237个引脚,处理器控制引脚、总线接口引脚和调试、测试引脚。 1.主要特征 超级标量

6、结构 双指令流水线 动态执行技术 分支预测技术 双Cache 指令Cache和数据Cache分离 RISC和CISC的结合 2.6 Pentium处理器 2.Pentium内部结构 2.6 Pentium处理器 (1)功能模块 ? 从功能模块的角度, Pentium在80486的基础上增加了一条指令流水线 包括相应的地址生成部件 和一个Cache。在结构上, 与80486相比, 形成了双执行部件和双Cache结构。 2.6 Pentium处理器 指令部件 U和V两条独立的指令流水线, 各自有独立的地址生成逻辑, 并与各自独立的内部数据总线与双端口Cache连接。从而实现了从地址生成到数据存取的

7、独立操作。 -U流水线:可执行任何整数及浮点两类指令; -V流水线:只能执行简单整数指令 双Cache 数据Cache与指令Cache分离, 提高操作的并行性。 2.6 Pentium处理器 浮点部件 八级流水浮点指令, 速度是80486内部浮点部件的35倍。 微指令ROM 采用CISC技术, 结合了RISC的设计思想, 一些简单指令 如加、减、移位等 直接用硬件逻辑电路实现, 复杂指令仍然采用微程序的设计思想 微指令ROM实现复杂指令 2.6 Pentium处理器 (2)寄存器结构 通用寄存器、变址寄存器, 段寄存器以及指针与80486基本相同。增加了大量的测试寄存器和检查寄存器、性能监测的

8、寄存器。如测试寄存器112, 用于如奇偶校验测试、TLB线性地址测试, Cache测试、分支预测BTB测试等。增加了一个CR4寄存器 6个有效位 , 其中的控制位PSE 0页面大小为4K;PSE 1页面大小为4M。页面太大: 失去分页的优点;页面太小: 命中率下降 访问数据在某个页面的概率 有了PSE位,能使存储管理更灵活。 2.6 Pentium处理器 (3)Pentium的主要技术改进 超级标量结构 Super Scalar Architecture 针对微处理器, 两种典型结构形式:标量结构和超级标量结构 标量处理器 Scalar Processor :一个周期执行一条指令;处理器内部只

9、有一个指令执行部件。 2.6 Pentium处理器 非流水线执行方式:指令执行顺序串行, 一个指令周期完成一条指令。 流水线执行方式:指令分解为多个独立的执行阶段。一种基本的分段方式是:取指(FE)译码(DE)执行(EX)写结果(WB)。 指令1 PE DE EX WB 指令2 PE DE EX WB 指令3 PE DE EX WB 指令4 PE DE EX WB 指令5 PE DE EX WB 指令6 PE DE EX WB 指令7 PE DE EX WB 2.6 Pentium处理器 在流水线方式下:一个总线周期可以执行一条指令 以周期数衡量CPU性能的指标:IPC Instruction

10、s/per cycle 每一个总线周期完成的指令数。 非流水线指令执行方式:IPC 1 流水线指令执行方式:IPC 1 理想状况 2.6 Pentium处理器 怎样使 IPC 1呢?处理器内部有多个指令执行部件, 并且多个部件独立并行工作, 则可以使IPC 1。Pentium具有IPC 1处理能力的处理器。 超级标量结构: 处理器内有多个独立并行的流水线指令部件 具有IPC 1的处理能力。 2.6 Pentium处理器 超级标量结构: 2.6 Pentium处理器 如何分配两条流水线上的指令:两条流水线可以同时执行两条指令, 但要满足一定配对规则。 两条指令必须是“简单”指令:硬件逻辑而不是微

11、代码实现、单周期执行。 两条指令要在指令Cache内。 成对指令无寄存器数据相关 指令中不能同时包含偏移量与立即数等。 ? 2.6 Pentium处理器 由此引发流水线调度策略(两条流水线的调度策略): Pentium对U、V两条流水线的调度采用按序发射按序完成策略。 在译码阶段 D1 , 两条连续的指令 如i1和i2 先后被译码,并检查是否可以配对。若是, 合格的一对指令同时发射到U、V流水线的D2段。 2.6 Pentium处理器 分支预测技术 转移指令除了对时间造成影响以外, 由于在转移指令与目标指令之间的指令的执行还可能影响一些中间结果和标志位,从而导致程序发生逻辑错误; 对于无条件转

12、移指令, 虽然在D1结束时便可知程序要转移而不用执行其后面的几条指令, 但是, 在WB结束之前的时间,需要按寻址方式形成目标地址, 因此也必须等到WB结束, 才能转移到目标指令执行。? 2.6 Pentium处理器 解决“条件转移指令” 对流水线的影响: 分支预测技术 静态分支预测:硬件固定选择分支 动态分支预测:在预测点, 根据程序过去的分支情况的统计值 或上一次的分支情况 选择分支。(依据:程序执行的时间局部性规律) ?Pentium的分支预测:动态分支预测 (Pentium 双标量流水线体系结构) 2.6 Pentium处理器 分支情况统计部件:分支目标缓冲器 Branch Target

13、 Buffer - BTB ? 分支预测时间:指令预取阶段 PF ? 分支预测过程:两个指令预取缓冲区? 分支预测的流程如下: 2.6 Pentium处理器 程序按预测方向执行, 如果分支预测发生错误, 仍会造成四个周期的时间损失。若预测要分支, 则两个方向的指令预取同时进行。造成流水线阻塞的可能因素;? 指令码太长:超过了数据总线的宽度。? 执行阶段时间开销太大:一个EX周期不能完成上述操作, 则需要多个EX周期。? 数据相关:也称为数据依赖, 如“写后读”? 资源冲突:多条并行的指令需要使用同一资源 2.6 Pentium处理器 由于存在上述许多因素使流水线不能按理想状况运行, 因此在实际

14、情况下, 单流水线的IPC 1, 双流水线的IPC 2。比如, 双流水线1000个周期只执行了1300条指令, 则IPC 1.3 2.6 Pentium处理器 (4)Cache的一致性协议 为有效利用Cache资源, 并支持多处理器系统, Pentium提出的使用Cache的一套规则 MESI一致性协议。该协议为避免Cache内容丢失、 Cache内容过时; 实施Cache淘汰; 何时进行Cache填充等提供了一种手段。该协议为每一个Cache行规定了四种状态, 一个Cache行在任何时刻处于某种状态之一。 2.6 Pentium处理器 M Modified 已修改 一个Cache行相对于所对

15、应的内存地址单元, 其内容已被修改。比如,当写Cache命中后。处于M状态的Cache行, 可直接进行读/写操作(对Cache),无需启动访问内存的总线周期。M状态相当于为避免Cache内容丢失而设立的“更新位”。 2.6 Pentium处理器 E Exclusive 独占 此时的Cache行与所对应内存单元内容相同。处于已E状态的Cache行的读/写操作(对Cache), 无需启动访问内存的总线周期。对处于已E状态的Cache行实施写操作后, 该Cache行状态将变为M状态。 2.6 Pentium处理器 S Shared 共享 指示本Cache行与其它Cache行可以共享。即, 同一个Ca

16、che行的内容可以放在多个Cache内。对处于S状态下的Cache行进行读操作, 无需启动访问内存的总线周期;对处于S状态下的Cache行进行写操作, 必须启动访问内存的写周期 直写 , 使内存相应单元持有共享Cache行的更新值。 总线监视, 避免过时) 2.6 Pentium处理器 I Invalid 无效 该Cache行内容无效。对I状态的Cache行进行读操作:不命中Cache, 访问内存, 执行Cache填充。对I状态的Cache行进行写操作:写入Cache, 同时写入相应内存单元 直写 。 2.6 Pentium处理器 2.Pentium PRO内部结构 * * * 2.4 803

17、86处理器 (4)标志寄存器(FFLAGS) 包括3类标志:状态标志,控制标志和系统 标志。 RF-恢复位。该标志位与寄存器的断点或单步结合使用,保证不重复处理断点。 RF 1时,下一条指令引起的任何调试异常均被忽略,在成功执行一条无异常的指令后,RF自动复位。 2.4 80386处理器 VM-虚拟8086位。该标志位与寄存器的断点或单步结合使用,保证不重复处理断点。 VM位可以通过两种方式设置: 1)在保护模式下,由最高特权级(0级)代码段的IRET指令设置。 2)在任何特权级下由任务转移来设置。 2.4 80386处理器 NT-任务嵌入位。NT 1表示80386的中断或CALL引起任务切换

18、而进入嵌套,即NT 1表示当前执行的任务嵌套于另一个任务中,执行完该任务后要返回到原来的任务中。 IOPL-输入输出特权级。用于保护模式,只有0,1,2三级,0级最高,只有当前任务高于或等于I/O优先级时才能执行IN,OUT指令。 2.4 80386处理器 80386是AC-对齐检查标志。AC置1和置CR0中的AM位,启用存储器的对齐检测,清除此标志或AM位,则屏蔽对齐检查。 3.80386引脚及功能 2.4 80386处理器 2.4 80386处理器 时钟 CLK2 80386 的基本定时信号由CLK2 提供。CLK2 的频率是80386 内部时钟信号频率的两倍,输入该信号与82384 时钟

19、信号同步。 2.4 80386处理器 2.数据总线 D31D0 双向三态,可传送8位、16位或32位数据,由输入信号 /BE3/BE0 和/BS16确定,在任何写操作周期 包括暂 停周期和停机周期 ,80386 总是驱动数据总线的所有32位信号,而不管当前总线的实际宽度。 2.4 80386处理器 3. 地址总线 A31A2,/BE3 /BE0 A31A2:地址总线,输出三态,和/BE3/BE0 相结合起到32位地址的作用。 /BE3/BE0 :字节选通信号。用于选通在当前的传送操作。 /BE0 对应于D0D7 /BE1 对应于D8D15 /BE2 对应于D16D23 /BE3 对应于D24D

20、31。 2.4 80386处理器 4.总线周期控制信号 M/IO :存储器/输入输出选择信号。 W/R :读/写控制输出信号,高电平时写入,低电平时读出。 D/C :数/控控制信号,输出。高电平时传送数据,低电平时传送指令代码。 /LOCK :总线周期封锁信号,低电平有效。 M/IO D/C W/R 总线周期类型 0 0 0 中断响应 0 0 1 不会出现 0 1 0 读I/O 数据 0 1 1 写I/O 数据 1 0 0 读存储器代码 1 0 1 暂停 1 1 0 读存储器数据 1 1 1 写存储器数据 2.4 80386处理器 总线周期定义 2.4 80386处理器 5.总线控制信号 /A

21、DS :地址选通信号,三态输出,低电平有效。当有效时,表示总线周期中地址有效。 /READY :准备就绪,输入信号,低电平有效。 /NA :下一个地址请求信号,输入信号,低电平有效。允许地址流水线操作。 2.4 80386处理器 /BS16:输入信号,低电平有效,指定16位数据总线。/BS16输入端允许80386以16位或32位数据总线工作。 2.4 80386处理器 6. 总线仲裁信号 HOLD,HLDA HOLD:总线请求信号,输入信号,高电平有效 HLDA:总线保持响应信号,输出信号,有效时,CPU让出总线。 2.4 80386处理器 7. 协处理器接口信号 PEREQ ,/BUSY ,

22、 /ERROR PEREQ :来自协处理器的请求信号,输入信号,表示80387 要求80386 控制它们与存储器之间的信息传送。 /BUSY :协处理器忙,输入信号,低电平有效。 2.4 80386处理器 /ERROR :协处理器错误信号,输入信号,低电平有效。如果协处理器设置了/ERROR 信号,80386将执行类型为16的异常中断。 2.4 80386处理器 8. 中断信号 INTR,NMI,RESET INTR:可屏蔽中断请求,输入信号。80386 响应INTR请求时,完成两个连续的中断响应周期,在整个响应周期,/LOCK信号有效。在第二个周期末,D0D7 数据线上送上8 位中断类型码,

23、以识别中断源。 2.4 80386处理器 NMI:非屏蔽中断请求,输入信号。 RESET:复位信号。输入信号,当RESET有效时,将中止80386正在执行的一切操作,并置于一个已知的复位状态。 80486采用PGA Pin Grid Array 封装,具有168个管脚,比80386多36个引脚。其中有些新增引脚是为与设备构成更有效的连接而设置的;有些是为了新部件 如Cache等 而设置的;另外有些是空引脚以备用。与80386相比,80486删除了其4个引脚(/NA,PEREQ,/BUSY,/ERROR),新增了20个引脚。可以认为80486的其余129条引脚与80386在逻辑上是一致的。 2.

24、5 80486处理器 80486的引脚信号如图所示,按其功能分类,80486引脚信号被分为数据总线、地址总线、总线控制、中断、总线周期定义、Cache 行无效、Cache 控制、突发 或成组传递 控制、总线宽度控制、数据出错报告、地址位20屏蔽和奇偶校验等几部分。 80486从功能结构来说,已经形成了IA-32结构微处理器的基础。后续的处理器往往是在指令的流水线结构上、在Cache上以及在指令扩展上有新的发展。 2.5 80486处理器 2.5 80486处理器 1.80486内部结构 2.5 80486处理器 2.80486引脚及功能 2.5 80486处理器 (1) 数据总线和地址总线 数

25、据总线D0D31:为32位的双向 输入/输出 数据总线,可以分别传输8位、16位、24位或32位数据。 地址总线A2A31和/BE3/BE0构成32位地址总线,能寻址4GB的物理存储空间和64KB I/O端口地址。 (2) 总线控制信号 /ADS :地址状态信号,输出信号。ADS有效时,地址总线上输出的信号有效。 /RDY :准备好信号,输入信号,控制总线周期的宽度。当/RDY有效时,结束当前总线周期。 /BS8:8位总线宽度定义信号,输入信号,低电平有效。当BS8有效时,定义数据总线只有8 位是有效的,支持8位数据传输。 2.5 80486处理器 /BS16:16位总线宽度定义信号,输入信号

26、,低电平有效。当BS16有效时,定义数据总线只有16位是有效的,支持16位数据传输。 /A20M :第20位地址屏蔽信号,输入信号,低电平有效。80486 采样到A20M 低电平有效信号后,将屏蔽掉第20位以上存储器物理地址,80486仿真8086的1M存储器地址。A20M是异步信号,因此A20M信号保持低电平的时间至少大于一个处理器时钟周期。 2.5 80486处理器 (3) 总线仲裁信号 HOLD:总线请求信号,请求80486CPU放弃对总线的控制权。 HLDA:总线请求响应信号。当CPU收到HOLD 信号后,在当前总线周期结束时发出HLDA信号,表示CPU让出总线控制权。 /BREQ:总

27、线周期挂起信号,高电平有效。当/BREQ信号有效时,表明80486 CPU内部已提出一个总线请求,80486 CPU正控制系统总线。 2.5 80486处理器 /BOFF 强制80486 CPU放弃系统总线。当80486 CPU收到/BOFF为低电平 有效电平 信号时,CPU立即放弃对总线的控制权而处于总线保持状态。在/BOFF变为无效 高电平 前,CPU 一直处于总线保持状态。如果在CPU的总线周期期间,/BOFF先变为有效,然后再变为无效,则CPU将重新启动该周期。/BOFF信号的优先权高于/RDY和/BRDY 。 2.5 80486处理器 (4) 中断信号 INTR:可屏蔽中断请求信号。

28、 NMI:非屏蔽中断请求信号。 RESET:复位信号,高电平有效。当RESET 信号有效时,迫使80486 CPU进入复位状态。这三个信号与80386中对应信号的功能相同。 2.5 80486处理器 (5) 总线周期定义信号 W/R :读/写信号。 M/IO :存储器或I/O 访问。 D/C :数据/控制周期。 /LOCK: 封锁总线周期。 /PLOCK: 伪封锁总线周期。当/PLOCK有效时,表明80486 CPU的现行总线需要多个总线传输才能完成,如协处理器读出/写入长字操作时。 2.5 80486处理器 (6) 总线监视信号 行无效周期使80486 芯片内部超高速缓存器的内容与外部主存储

29、器中的内容保持一致。超高速缓存行无效周期使用两个输入信号AHOLD和EADS 。 AHOLD :地址保持请求信号。80486允许其他的总线控制访问自己的地址总线。AHOLD有效将强制80486浮空自己的地址总线,为从A31A4线上输入地址做好准备。 2.5 80486处理器 /EADS 地址有效信号。当EADS信号有效时,表示80486芯片的地址线A31A4上的信号有效,供其读入。80486读入后,在内部的超高速缓存器中寻找该地址,找到该地址,则执行无效周期,使该地址的数据变为无效。 2.5 80486处理器 (7) Cache 控制信号 页面超高速缓存控制80386 、80486和Penti

30、um CPU对存储器的管理有两种模式:分段管理和分页管理。分段管理是常用模式,分页管理是可以选择的。只有CPU内部的状态寄存器、MSW中的分页位被置位时,才允许使用分页管理模式,否则禁止分页。 2.5 80486处理器 PWT:写方式控制信号。 PWT1 定义当前页面为直写方式,PWT0 为回写方式。由80486 CPU 片内Cache 为直写方式,所以PWT 信号在80486 内部不起作用,只是用来定义外部Cache 2 级Cache 的写方式。 PCD:超高速缓存允许信号。 PCD0 允许80486 片内Cache 进行缓存,否则 PCD 1 禁止缓存。 2.5 80486处理器 2.3

31、80286处理器 系统控制描述符 系统描述符可由局部描述符(LDT)和任务段描述符(TSS)构成。 系统中每个任务都有自己的LDT和TSS。 LDT:包含了该任务的地址信息、存取特性。 TSS:TSS指向一个任务状态段(44字节),该任务状态存放该任务执行时CPU寄存器等内容。 2.3 80286处理器 系统控制描述符 P:存在位,同前。 DPL:特权位,只用于TSS,LDT不用。 S:类别位,对于LDT/TSS,S为0。 TYPE:描述符类型序号,对于LDT,TYPE 2,对于TSS,TYPE 1或3。 2.3 80286处理器 例:给出一个局部描述符例子。 P 1表示此段在物理存储器中,D

32、PL 01表示特权级为1,S 0表示系统描述符,TYPE 0010表示局部描述符,段基址为080000H,段限为8K。 2.3 80286处理器 门描述符 门描述符市用于控制转移的,它提供从源到目标的入口地址。 调用门:用于改变任务特权级。 任务门:实现任务转移。 中断门、陷阱门:指定的中断服务。 2.3 80286处理器 调用门描述符 P:存在位,DPL:特权位,同前。 S:类别位,对于门描述符,S为0。 TYPE:描述符类型序号,对于调用门TYPE 4。 字计数:记录从调用程序堆栈复制到被调用程序堆栈的字数。 目标代码选择器:目标代码的代码段描述符在描述符表中的位子。 目标代码偏移地址:目

33、标代码的IP。 2.3 80286处理器 中断门描述符 P:存在位,DPL:特权位,同前。 S:类别位,对于门描述符,S为0。 TYPE:描述符类型序号,对于调用门TYPE 6。 目标代码选择器:目标代码的代码段描述符在描述符表中的位子。 目标代码偏移地址:目标代码的IP。 2.3 80286处理器 陷阱门描述符 P:存在位,DPL:特权位,同前。 S:类别位,对于门描述符,S为0。 TYPE:描述符类型序号,对于调用门TYPE 7。 目标代码选择器:目标代码的代码段描述符在描述符表中的位子。 目标代码偏移地址:目标代码的IP。 2.3 80286处理器 任务门描述符 P:存在位,DPL:特权

34、位,同前。 S:类别位,对于门描述符,S为0。 TYPE:描述符类型序号,对于调用门TYPE 5。 目标TSS选择器:TSS在描述符表中的位子。 2.3 80286处理器 描述符表及描述符表寄存器 三类描述符表 各种描述符表用于存放各类描述符,系统一共有3个描述符表。 GDT:全局描述符表 LDT:局部描述符表 IDT:中断描述符表 全局描述符表:用来存放操作系统和各任务公用的全局描述符以及各类描述符(除了中断描述符和陷阱描述符外) 注:每个系统只有一个GDT表。 局部描述符表:用来存放专用任务描述符,一般段描述符,任务门描述符以及调用门描述符。 注:每个系统可以有多个LDT表,每一个对应一个

35、任务专用描述符。 中断描述符表:用来存放中断门,陷阱门以及任务门描述符。 注:系统中只有一个IDT表,可存放最多256个中断。 2.3 80286处理器 描述符 描述符表 GDT LDT IDT 代码段描述符 数据段描述符 局部描述符 任务段描述符 调用门描述符 任务门描述符 中断门描述符 陷阱门描述符 各描述符表与描述符的对应关系 2.3 80286处理器 描述符表寄存器 系统一共有3个描述符表寄存器GDTR、LDTR、IDTR,分别对应了GDT、LDT和IDT。 描述符表寄存器:用于存放描述符表在内存地址及表的长度。 2.3 80286处理器 2.3 80286处理器 选择符及虚拟地址转换

36、 选择符 在保护模式下,段寄存器的内容就是一个选择符。 15-3共13位决定了描述符在描述符表中的位置选择符,能表示的描述符最多为8192个(213)。 RPL:特权级,0-3级,0级最高。 TI: 全局/局部,TI 0从全局描述符表中选择一个描述符 TI 1从局部描述符表中选择一个描述符 描述符索引(选择子):从描述符表中的8192个描述符中选取一个描述符。 2.3 80286处理器 虚拟地址到实地址的转换过程 虚拟地址的转换 2.3 80286处理器 80286引脚功能 2.3 80286处理器 CLK:系统时钟 最高16MHz D15-D0:数据引脚 A23-A0:地址引脚。对I/O只用

37、A15-A0。 BHE:同8086 /S1/S0:总线状态。/S1/S0的变化表示一个总线周期的开始,并与M/IO和COD/INTA一起定义是什么总线周期。 2.3 80286处理器 80286总线周期 COD/INTA M/IO S1 S0 总线周期 COD/INTA M/IO S1 S0 总线周期 0 0 0 0 中断响应 1 0 0 0 保留 0 0 0 1 保留 1 0 0 1 读I/O 0 0 1 0 保留 1 0 1 0 写I/O 0 0 1 1 - 1 0 1 1 - 0 1 0 0 若A1 1则暂停,否则停机 1 1 0 0 保留 0 1 0 1 读存储器数据 1 1 0 1

38、读存储器指令 0 1 1 0 写存储器数据 1 1 1 0 保留 0 1 1 1 - 1 1 1 1 - 2.3 80286处理器 M/IO:存储器/IO选择引脚。 COD/INTA:代码/中断响应引脚。用于区分是读代码或数据。在I/O操作时,用于区分是I/O读或中断响应。 /LOCK:总线锁定。同8086。 /READY:同8086 HOLD,HLDA:同8086 INTR:同8086 NMI:同8086 2.3 80286处理器 PEREQ,/PEACK:80287协处理器操作数请求/响应引脚。 80287要传送时,先向80286提出PEREQ信号,80286为80287传数据时,使/PE

39、ACK有效,作为PEREQ的应答。 2.3 80286处理器 /BUSY,/ERROR:协处理器忙/出错引脚。 当80287执行浮点指令时,使/BUSY有效,80286执行WAIT指令,直到/BUSY无效80286执行后续指令。 当80286在执行WAIT指令时,如80287使/ERROR有效,80286将实现80287中断。 2.3 80286处理器 RESET:复位。 CAP:接滤波电容。0.047uP,用于抗干扰。 Vcc:电源正极,+5V。 Vss:电源负极,接地。 2.3 80286处理器 复位状态 CPU寄存器 初始值 CPU寄存器 初始值 FLAGS 0002H DS 0000H

40、 MSW FFF0H ES 0000H IP FFF0H IDT基地址 000000H CS F000H IDT界限 FFFFH SS 0000H 2.4 80386处理器 80386是第一个32位微处理器,采用132引脚的栅状阵列封装 PGA ,其中34根地址线 A31A2、/BE3/BE0 ,32根数据线 D31D0 ,3根中断线,1根时钟线,13根控制线,20根电源线VCC,21根地线Vss,还有8根为空,其内部寄存器和操作数都是32位的。 2.4 80386处理器 三种工作方式:实地址方式、虚地址保护方式及虚拟8086方式。 实地址方式-80386就是一个高速的8086/8088CPU

41、。 虚地址保护方式-可寻址4GB内存物理地址及64TB的虚拟地址空间,存储器按段组织,每段最大4GB。 虚拟8086方式-即可运行8086的应用程序,也可运行80386应用程序。 2.4 80386处理器 1.80386功能结构 2.4 80386处理器 (1)总线接口部件BU 负责与存储器和I/O接口传送数据(包括取指令)。 (2)预取部件PEU 负责指令的预取,送入16B的代码队列。 (3)指令译码部件IDU 负责从代码队列中取出指令进行译码,并送入已译码的指令队列。 (4)控制部件CU 产生CPU所有的控制信号。 2.4 80386处理器 (5)数据处理部件PTU ALU负责算术运算和逻

42、辑运算。 (6)保护测试部件PEU 对CPU的各个状态进行检测。 (7)分段管理部件SU 负责对内存的分段管理。 (8)页管理部件PGU 负责对内存的分页管理。 2.4 80386处理器 2.80386寄存器组 有7类32个寄存器 (1)通用寄存器 EAX,EBX,ECX,EDX (2)指令指针EIP/IP 在保护方式下用32位EIP,实地址方式下16位IP。 2.4 80386处理器 (3)段寄存器 共6个,增加了FS,GS,可用作当前数据段。 2.4 80386处理器 2.4 80386处理器 2.4 80386处理器 80386代码段描述符 2.2.2 协处理器8087 2.8087结构

43、 2.2.2 协处理器8087 (1)标志寄存器 00:有数据 , 01:数据为0 , 10:特殊值, 11:没有数据 REG0对应堆栈0,REG1对应堆栈1,依次类推 2.2.2 协处理器8087 (2)状态寄存器 IE:非法操作,表示堆栈有溢出或负数开平方 DE:非法规格化操作数,表示至少有一个操作数是非规格化的 ZE:除数为零,商为无穷大 OE:上溢出异常位 UE:下溢出异常位 PE:精度异常,表示结果或操作数超过了指定的精度 IR:中断请求,任何一个异常位(PE、UE、OE、ZE、DE或IE)被置位,都使8087提出中断请求 C0、C1、C2、C3:四位条件码,不同组合表示不同结果 T

44、OP:栈顶指针,指出哪个80位堆栈为栈顶 B:忙,表示协处理器正在忙于执行一项任务 2.2.2 协处理器8087 (3)控制寄存器 IM:无效操作屏蔽位 DM:未规格化操作数屏蔽位 ZM:除数为零屏蔽位 OM:上溢屏蔽位 UM:下溢屏蔽位 PM:精度不足屏蔽位 M:中断请求屏蔽位 PC:精度控制,设置结果的精度 00:单精度 01:保留 10:双精度 11:扩展精度 RC:舍入控制,控制数值在计算中的舍入类型 00:就近舍入或偶舍入 01:向下舍入到负无穷大 10:向上舍入到正无穷大 11:向零舍入 IC:无穷大控制 2.2.2 协处理器8087 3.8087引脚 8087除了MN/MX、LO

45、CK、/RD、NMI四个引脚未用外,其它引脚意义同CPU。 2.2.2 协处理器8087 4.8087与CPU连接 2.2.2 协处理器8087 5.8087与CPU的同步工作过程 (1)8087通过监视CPU的S2、S1、S0,当CPU进入取指周期 即CPU从内存中取指令),8087同时从总线上读取指令放入自己的指令队列,保持自己的指令队列中的指令与CPU中的指令队列中的指令一致。 同时,8087还监测CPU的队列状态线QS1、QS0,了解CPU的当前队列工作情况。 QS1、QS0 操 作 00 CPU无操作 01 CPU从指令队列中取操作码的第一个字节,那么8087 也将自己队列中的第一个

46、字节取出,检查是否是浮点 指令,如是8087执行该指令,否则,8087不执行,由 CPU执行。 10 CPU指令队列为空,8087也立即将自己的队列清空。 11 CPU从队列中取指令操作码的后续字节,8087也随之 移动队列。 2.2.2 协处理器8087 2.2.2 协处理器8087 8087指令的操作数有二种形式,在8087的堆栈中或在存储器中。 在堆栈中,直接执行指令。 2.2.2 协处理器8087 在存储器中,从存储器读数据由CPU负责,当CPU判断出需要从存储器中读数据时,CPU根据有效地址进行一次“假(虚)读”,即CPU给出地址和读信号,将数据从存储器中读到数据总线上,但CPU不从

47、数据总线上取数据,而由8087从总线上读取数据,如数据一次读不完,8087通过RQ/GT申请总线使用权,继续读取数据的剩余字节。 2.2.2 协处理器8087 当8087 存数据操作时,再控制总线把数据写入由CPU确定的内存单元中。 2.2.2 协处理器8087 (2)当8087执行指令时,BUSY信号有效,使CPU的/TEST无效,CPU自动执行WAIT指令,CPU每5个T(时钟周期)测试一次/TEST,如/TEST无效CPU再等待。一旦8087指令执行完,BUSY无效,使/TEST有效,CPU脱离WAIT状态,继续取下一条指令执行。 2.2.2 协处理器8087 (3)8087中断请求线I

48、NT与CPU的非屏蔽中断NMI连在一起,当8087 运算过程中出现错误时,通过INT向CPU发出中断请求,转入错误处理程序。 2.3 80286处理器 80286是在8086基础上推出的16位微处理器,内部寄存器和外部总线均为16位,地址总线增至24位,寻址范围16MB。 80286CPU实现四级流水线,取指、译码、执行和地址计算。 工作模式改为实地址模式和虚拟保护模式。实地址模式兼容8086。 2.3 80286处理器 1.内部结构 2.3 80286处理器 2.80286寄存器组 (1)通用寄存器组 2.3 80286处理器 每个段对应一个48位的描述符高速缓冲器,段寄存器在保护模式下是提

49、供段描述符在描述表中的位子,段寄存器也称为段选择器域。 (2)段寄存器组 2.3 80286处理器 描述符表寄存器 GDT(Global Descriptor Table) 全局描述符表 IDT(Interrupt Descriptor Table) 中断描述符表 LDT(Local Descriptor Table) 局部描述符表 TSS(Task State Segment) 任务状态段 (3)系统表寄存器组 2.3 80286处理器 (4)状态控制寄存器 2.3 80286处理器 IOPL:I/O特权标志。用以指定I/O操作处于0-3特权层中 的哪一层。 NT: 嵌套标志。如NT为1,表

50、示当前执行的任务嵌套于 另一个任务中。 标志字寄存器FLAGS 2.3 80286处理器 机器状态字寄存器MSW PE:保护方式允许位。PE 1,保护方式,PE 0,实地址方式 用软件设置PE 1,CPU从实地址方式转入保护方式,但从保 护方式返回实地址方式,必须用对CPU复位才可。 MP:监控协处理器位。MP 1,80287在工作,MP 0,80287未工作 EM:协处理器仿真状态位。当MP 0,EM 1时,系统用软件仿真协 处理器功能。 TS:任务转换位。每当两个任务之间转换时,TS置1,任务转换 完成TS置0,在TS为1时,不允许协处理器工作。 2.3 80286处理器 3.80286的

51、存储器管理系统 80286有两种工作模式,实地址模式和保护虚拟地址模式。 (1)实地址管理模式 在实地址方式下,80286的24根地址线A23-A0,只有20根有效,A19-A0,物理地址计算与8086完全相同。 2.3 80286处理器 (2)保护虚拟地址方式 在保护虚拟地址方式下,24根地址线全有效,访问16MB的物理空间,可管理1GB的虚拟存储空间。 在保护虚拟地址方式下,段寄存器的值不再直接提供段的基值,而是提供一个描述符在描述符表中的位置,从而找到描述符,在描述符中,放着段的基地址,再加偏移量的实际物理地址。 2.3 80286处理器 2.3 80286处理器 描述符 描述符用于实现

52、虚拟地址到实地址的变换。 描述符分为三类: 一般段描述符(代码/数据段描述符) 系统控制描述符(特殊段描述符) 门描述符(控制转移描述符) 2.3 80286处理器 一般段描述符(代码/数据段描述符)包括代码段描述符和数据段描述符。 功能:给出访问数据、堆栈和代码段的有关地址和访问特权。 系统控制描述符(特殊段描述符)包括局部描述符LDT和任务段描述符TSS。 功能:提供系统中每个任务的状态段TSS和局部描述符表LDT。 2.3 80286处理器 门描述符(控制转移描述符)包括任务门、调用门、中断门、陷阱门描述符。 功能:在调用门、中断门和陷阱门中,门描述符给出了目标代码段的描述符,再根据代码

53、段描述符转入目标地址。 在任务门中给出目的描述符TSS,完成任务切换。 2.3 80286处理器 描述符格式 一般描述符 代码段描述符格式 2.3 80286处理器 P:存在位,表示由该描述符所指定的代码/数据段在物理存储器中是否存在。P 1该段在物理存储器中,P 0该段不在物理存储器中。 DPL:描述符特权级别,指出代码/数据段的特权级别。 特权级分4级,0级最高,通常用于操作系统的内核。3级最低,通常用于应用程序。 S:段类型位,S 1为一般描述符,S 0系统控制描述符。 E:可执行位,指出该段式可执行的代码段还是不可执行的数据段,E 1代码段,E 0数据段。 2.3 80286处理器 C

54、:一致性位,表示代码段属性。C 1表示一致性代码段,C 0表示非一致性代码段。 一致性代码段:是指调用代码段和被调用代码段允许具有不同特权 级。 非一致性代码段:是指调用代码段和被调用代码段特权级必须相同,若特权级不同时必须使用门描述符调用。 R:可读位,R 1表示可读代码段,R 0表示不可读代码段。 A:访问位,A 1该段被访问过,A 0该段未被访问过。 2.3 80286处理器 数据段描述符格式 ED:扩展方向位,ED 1向下扩展,偏移量必须大于段限(段限FFFFH ),ED 0向上扩展,偏移量必须小于等于段限(0段限 )。 W:可写位,W 1表示该段可写,W 0 表示该段不可写 。 2.

55、3 80286处理器 例:给出一个数据段的例子。 P 1表示此段在物理存储器中,DPL 10表示特权级为2,S 1表示此段为代码/数据段,E 0表示为数据段,ED 0向上扩展,W 1表示数据段可写入,A 0该段未被访问过。该段基址为200000H,段限为8K。 2.1.6 8086/8088的引脚功能 当8086处在最小模式时引脚24引脚31的含义为: /INTA中断响应信号(输出,三态) 当CPU响应外设中断请求时,发出两个连续的/INTA。 ALE地址锁存允许信号(输出) 是CPU提供给地址锁存器(8282)的控制信号,有效时,将AD上的地址打入锁存器。 2.1.6 8086/8088的引脚功能 2.1.6 8086/8088的引脚功能 /DEN数据允许信号(输出,三态) 当CPU发出数据允许信号作为数据总线收发器(8286)的数据输出允许信号。 D

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论