计算机硬件技术及应用第4章CPU的结构和功能(2)微处理器_第1页
计算机硬件技术及应用第4章CPU的结构和功能(2)微处理器_第2页
计算机硬件技术及应用第4章CPU的结构和功能(2)微处理器_第3页
计算机硬件技术及应用第4章CPU的结构和功能(2)微处理器_第4页
计算机硬件技术及应用第4章CPU的结构和功能(2)微处理器_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

1、 第第 3 章章微处理器微处理器u了解了解8086微处理器的发展微处理器的发展;u掌握掌握8086微处理器的内部结构和寄存器作用微处理器的内部结构和寄存器作用;u掌握流水线技术的原理掌握流水线技术的原理;u掌握掌握RISC和和CISC计算机的特点。计算机的特点。 教教 学学 要要 求求 2 2、存储单元的地址、存储单元的地址 存储器以字节存储器以字节bytebyte(8 bit8 bit)为编程单位)为编程单位; ; 每个存储每个存储单元存放一个字节的内容。单元存放一个字节的内容。 1 word = 2 byte = 16 bit1 word = 2 byte = 16 bit 1 dw =

2、2 word 1 dw = 2 word每个字节单元都有每个字节单元都有唯一的唯一的地址编码地址编码, ,称称存储单元的地址。存储单元的地址。地址编码通常顺序排列:每个字节单元有一个地址,地址编码通常顺序排列:每个字节单元有一个地址, 从从0 0编号,顺序加编号,顺序加1 1地址用二进制数无符号整数来表示地址用二进制数无符号整数来表示 (编程用十六进制表示);(编程用十六进制表示);地址范围和存储容量的关系:存储容量地址范围和存储容量的关系:存储容量=2=2N N80868086的结构特点的结构特点 运算器进行数据分析、计算和处理。运算器进行数据分析、计算和处理。算术逻辑单元算术逻辑单元ALU

3、ALU, ,是运算器的核心部件。执行算术运算、是运算器的核心部件。执行算术运算、逻辑运算、移逻辑运算、移 位、比较等各种数据处理的操作。位、比较等各种数据处理的操作。包括指令寄存器、指令译码器以及定时与控制电路。包括指令寄存器、指令译码器以及定时与控制电路。根据指令译码的结果,处理程序指令,根据指令译码的结果,处理程序指令,并协调各逻辑部件按一定时序工作。并协调各逻辑部件按一定时序工作。每一个寄存器相当于运算器中的一个存储单元,但速度比存每一个寄存器相当于运算器中的一个存储单元,但速度比存 储器快,用来存放计算过程中所需要的或得到的各种信息;储器快,用来存放计算过程中所需要的或得到的各种信息;

4、包括:操作数地址,操作数及运算的中间结果包括:操作数地址,操作数及运算的中间结果 8086内部结构有两个功能模块,完成一条指令的取指和执行功能。内部结构有两个功能模块,完成一条指令的取指和执行功能。模块之一:总线接口单元模块之一:总线接口单元BIU模块之二:执行单元模块之二:执行单元EU 主要负责指令译码和执行主要负责指令译码和执行 它它ALU是计算机的是计算机的运算器运算器 内部暂存器内部暂存器 IP ES SS DS CS输入输入/输出输出控制电路控制电路外部总线外部总线执行部分执行部分控制电路控制电路1 2 3 4 5 6ALU标志寄存器标志寄存器 AH AL BH BLCH CL DH

5、 DL SP BP SI DI通用寄存器通用寄存器地址加法器地址加法器指令队列缓冲器指令队列缓冲器执行部件执行部件 (EU)总线接口部件总线接口部件 (BIU)16位位20位位16位位8位位 1514131211109876 54 32 10OF SF ZF AF PF CFDF IF TF 用于串操作指令中,控制地址的变化方向:用于串操作指令中,控制地址的变化方向: 设置设置DFDF0 0,存储器地址自动增加;,存储器地址自动增加; 设置设置DFDF1 1,存储器地址自动减少。,存储器地址自动减少。CLDCLD指令复位方向标志:指令复位方向标志:DFDF0 0STDSTD指令置位方向标志:指

6、令置位方向标志:DFDF1 1DF(Direction Flag)方向标志)方向标志IF(Interrupt-enable Flag)中断允许标志)中断允许标志 用于控制外部可屏蔽中断是否可以被处理器响应:用于控制外部可屏蔽中断是否可以被处理器响应: 设置设置IFIF1 1,则允许中断;,则允许中断;设置设置IFIF0 0,则禁止中断。,则禁止中断。CLICLI指令复位中断标志:指令复位中断标志:IFIF0 0STISTI指令置位中断标志:指令置位中断标志:IFIF1 1 用于控制处理器进入单步操作方式:用于控制处理器进入单步操作方式: 设置设置TFTF0 0,处理器正常工作;,处理器正常工作

7、; 设置设置TFTF1 1,处理器单步执行指令。,处理器单步执行指令。单步执行指令单步执行指令处理器在每条指令执行结束时,处理器在每条指令执行结束时,便产生一个编号为便产生一个编号为1 1的内部中断的内部中断; ;这种内部中断称为单步中断这种内部中断称为单步中断; ;所以所以TFTF也称为单步标志也称为单步标志; ;利用单步中断可对程序进行逐条指令的调试利用单步中断可对程序进行逐条指令的调试; ;这种逐条指令调试程序的方法就是单步调试这种逐条指令调试程序的方法就是单步调试TF(Trap Flag)陷阱标志)陷阱标志 例:二进制加法例:二进制加法10010001B + 01110100B = 0

8、0000101B 1 0 0 1 0 0 0 1 + 0 1 1 1 0 1 0 0 1 0 0 0 0 0 1 0 1进位进位状态标志分析:状态标志分析: CF=1,产生进位,产生进位AF=0,半字节无进位,半字节无进位SF=0,结果为正,结果为正(最高位为最高位为0)ZF=0,结果不为,结果不为0PF=1,结果偶数个,结果偶数个1OF=0,将两个操作数作为有符号数,相加结果无溢出。,将两个操作数作为有符号数,相加结果无溢出。10010001B = -6FH,01110100B = +74H(-6FH) + (+74H) = +05H加法加法OF溢出的判断:同号相加溢出的判断:同号相加,结果

9、相异;结果相异; OF为为1 否则否则OF为为0(不产生溢出不产生溢出)。例:二进制减法例:二进制减法01110001B - 10001011B= 11100110B 0 1 1 1 0 0 0 1 - 1 0 0 0 1 0 1 1 1 1 1 1 0 0 1 1 0借位借位状态标志分析:状态标志分析: CF=1,产生借位,产生借位AF=1,半字节产生进位,半字节产生进位SF=1,结果为负,结果为负(最高位为最高位为1)ZF=0,结果不为,结果不为0PF=0,结果奇数个,结果奇数个1OF=1,将两个操作数作为有符号数,相减结果产生溢出。,将两个操作数作为有符号数,相减结果产生溢出。01110

10、001B = +71H,10001011B = -75H(+71H) - (-75) = -1AH 减法减法OF溢出的判断:异号相减,差的符号与被减数相异,溢出的判断:异号相减,差的符号与被减数相异,OF为为1 否则否则OF为为0(不产生溢出不产生溢出)。8086/8088的内部寄存器的内部寄存器 AH AL BH BL CH CL DH DL AX BX CX DX SP BP SI DI IP FLAG CS DS SS ES(A) 累加器累加器 基地址寄存器基地址寄存器 计数器计数器 数据寄存器数据寄存器 (SP) 堆栈指针寄存器堆栈指针寄存器 基地址寄存器基地址寄存器 源变址寄存器源变

11、址寄存器 目的变址寄存器目的变址寄存器 (PC) 指令指针寄存器指令指针寄存器(PSW) 状态标志寄存器状态标志寄存器 代码段寄存器代码段寄存器 数据段寄存器数据段寄存器 堆栈段寄存器堆栈段寄存器 附加段寄存器附加段寄存器通用寄存器通用寄存器控制寄存器控制寄存器 段寄存器段寄存器8位寄存器位寄存器 1、地址线与寻址能力的关系地址线与寻址能力的关系 2 2、数据线与机器字长的关系、数据线与机器字长的关系20 根地址线根地址线:寻址能力寻址能力1MB 地址范围地址范围 00000H FFFFFH (1MB) 机器字长机器字长1616位位:仅能表示地址范围:仅能表示地址范围0000H FFFFH(6

12、4KB) 地址的表示方法地址的表示方法:逻辑地址和物理地址:逻辑地址和物理地址物理地址物理地址: :操作数在存储器中的实际存储单元地址操作数在存储器中的实际存储单元地址.cpu.cpu向向 地址总线提供的是物理地址。地址总线提供的是物理地址。逻辑地址逻辑地址的表示的表示段地址:偏移地址段地址:偏移地址偏移地址偏移地址又称有效地址(又称有效地址(EAEA) 解决方法:解决方法:将将1MB的的M分成很多逻辑段;分成很多逻辑段;每每1616个字节为一小段,共有个字节为一小段,共有64K64K个小段个小段 存储器的分段存储器的分段1616位的位的R R中如何访问中如何访问2020位地址的位地址的M M

13、空间?空间?小段的首地址小段的首地址 00000 H 0000F H 00010 H 0001F H 00020 H 0002F H FFFF0 H FFFFFH 段起始地址:小段首地址段起始地址:小段首地址 段的大小:段的大小:64K 64K 范围内的任意字节范围内的任意字节段之间可以间隔;紧密相连;部分重叠;完全重叠段之间可以间隔;紧密相连;部分重叠;完全重叠将逻辑地址将逻辑地址物理地址,即可访问物理地址,即可访问M 8086对逻辑段要求:对逻辑段要求: 段地址低段地址低4位均为位均为0 每段最大不超过每段最大不超过64KB 8086对逻辑段并不要求:对逻辑段并不要求: 必须是必须是64K

14、B 各段之间完全分开(即可以重叠)各段之间完全分开(即可以重叠)存储器的存储器的逻辑逻辑分段:分段: 是否是否M中每个单元都可做段起点(段地址)?中每个单元都可做段起点(段地址)?1MB空间的分段空间的分段 1MB 1MB空间最多能分成多少个段?空间最多能分成多少个段?每隔每隔1616个存储单元就可以开始一个段,个存储单元就可以开始一个段,所以所以1MB1MB最多可以有:最多可以有:2 2202016162 2161664K 64K 个段个段 1MB 1MB空间最少能分成多少个段?空间最少能分成多少个段?每隔每隔64K64K个存储单元开始一个段,个存储单元开始一个段,所以所以1MB1MB最少可

15、以有:最少可以有:2 220202 2161616 16 个段个段 计算公式:物理地址计算公式:物理地址 =段地址段地址 16D + 偏移地址偏移地址+16 位位 段段 地地 址址16 位位 偏偏 移移 地地 址址20 位位 物物 理理 地地 址址0000例例:(DS) = 2100H, (BX) = 0500H (PA) = 21000H + 0500H = 21500H 物理地址的形成物理地址的形成物理地址物理地址 =段地址段地址 10H + 偏移地址偏移地址程序的指令序列必须安排在代码段程序的指令序列必须安排在代码段;程序使用的堆栈一定在堆栈段程序使用的堆栈一定在堆栈段;程序中的数据默认

16、是安排在数据段,程序中的数据默认是安排在数据段, 也经常安排在附加段,尤其是串操作的也经常安排在附加段,尤其是串操作的 目的区必须是附加段。目的区必须是附加段。数据的存放比较灵活,实际上可以存放在数据的存放比较灵活,实际上可以存放在 任何一种逻辑段中。任何一种逻辑段中。如何分配各个逻辑段如何分配各个逻辑段段寄存器的使用规定段寄存器的使用规定访问存储器的方式访问存储器的方式默认默认可超越可超越偏移地址偏移地址取指令取指令CSCS无无IPIP堆栈操作堆栈操作SSSS无无SPSP一般数据访问一般数据访问DSDSCS ES SSCS ES SS有效地址有效地址EAEABPBP基址的寻址方式基址的寻址方

17、式SSSSCS ES DSCS ES DS有效地址有效地址EAEA串操作的源操作数串操作的源操作数DSDSCS ES SSCS ES SSSISI串操作的目的操作数串操作的目的操作数ESES无无DIDI存储单元的内容存储单元的内容一个字要占用一个字要占用相继相继的两个字节的两个字节 低位字节存入低地址,高位字节存入高地址低位字节存入低地址,高位字节存入高地址字单元地址用它的字单元地址用它的低地址低地址来表示来表示 机器以机器以偶地址偶地址访问(读访问(读 / / 写)存储器写)存储器存储单元的内容:存储单元的内容:一个存储单元中存放的信息。一个存储单元中存放的信息。存储单元的内容可以存储单元的

18、内容可以重复重复取出,直到存入新的信息;取出,直到存入新的信息;同一地址既可看成字节单元的内容,又可看成字(双字)同一地址既可看成字节单元的内容,又可看成字(双字) 单元的内容。单元的内容。 1001 1111 0010 0110 0100 1000 地址地址10000H10001H10002H10003H 10004H10005H 1000 0011 0101 1100 1010 0010访问两次内存访问两次内存存储单元的内容的表示存储单元的内容的表示字节内容字节内容 (10000H10000H)9FH9FH;(;(10001H10001H)26H26H字内容字内容 (10000H10000

19、H)269FH269FH;(;(10001H10001H)4826H4826H双字内容双字内容 (10000H10000H)8348269FH8348269FH 8086的芯片内核的芯片内核Intel 8086Intel 8086处理器处理器12345678910111213141516171819204039383736353433323130292827262524232221 GND AD14 AD13 AD12 AD11 AD10 AD9 AD8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 NMI INTR CLK GADVCCAD15AD16 / S3AD17 /

20、 S4AD18 / S5AD19 / S6BHE/S7 MN / MXRDHOLD (RQ / GT0)HLDA (WR /GT1)WR (LOCK)M / IO ( S2 )DT / R ( S1 ) DEN ( S0 )ALE ( QS0 )INTA ( QS1 )TESTREADYRESET8086 CPU CPU工作在不同模工作在不同模式时,引脚具有不同式时,引脚具有不同的名称和定义。的名称和定义。但是还有部分公用引但是还有部分公用引脚在不同模式下具有脚在不同模式下具有相同的含义。相同的含义。 RD S6 S6恒为低,恒为低, S5 S5反映标志寄存器反映标志寄存器IFIF位的状态位的

21、状态 S4 S4、S3S3表示表示CPUCPU正在使用哪个段寄存器正在使用哪个段寄存器S4S3特性特性00110101ESSSCS(或不是存储器操作)(或不是存储器操作)DS BHE/S7 BHE/S7:高:高8 8位数据总线允许位数据总线允许/ /状态状态S7S7信号输出、三态。信号输出、三态。 分时复用做分时复用做BHEBHE时低电平有效,时低电平有效,S7S7为备用状态线,在为备用状态线,在DMADMA时为高阻时为高阻. .S2 , S1 , S0最大模式的特点:最大模式的特点:1、多机系统、多机系统2、CB的多数控制信号均由总线控制器的多数控制信号均由总线控制器8288提供。提供。最小

22、模式的特点:最小模式的特点:1、单机系统、单机系统2、CB的多数控制信号均由的多数控制信号均由8086的引脚直接提供。的引脚直接提供。80 x8680 x86微处理器及其发展微处理器及其发展 2424位位物理地址物理地址1616位偏移位偏移量或数据量或数据2424位位地址地址总线总线1616位位数据数据总线总线存储器存储器操作请求操作请求指令单元指令单元IUIU总线接口总线接口单元单元BIUBIU执行单元执行单元EUEU通用寄存通用寄存器组器组ALUALU标志标志寄存器寄存器控制电路控制电路指令译码器指令译码器译码的指译码的指令队列令队列物理地址物理地址发生器发生器段寄存器段寄存器段描述符段描

23、述符CacheCache总线接总线接口电路口电路预取器预取器指令预指令预取队列取队列地址单元地址单元AUAUMMU 加法器加法器段段Cache界限和属界限和属性性PLAALU控制控制内部控制总线内部控制总线控制电路控制电路指令译码指令译码指令预取指令预取保护检保护检测部件测部件 译码和时译码和时序序控制控制ROM 指令译指令译码器码器已译码的已译码的指令队列指令队列 预取器预取器/界界限检查器限检查器指令预取指令预取队列队列 桶型移位桶型移位寄存器寄存器ALU乘乘/除器除器寄存器组寄存器组 加法器加法器页页Cache控制和属控制和属性性PLA线线性性地地址址总总线线32位位32位位32位位有效

24、地址总线有效地址总线有效地址总线有效地址总线34位位32位位32位位总线控制总线控制请求判请求判优器优器 地址驱动器地址驱动器流水线总线流水线总线宽度控制宽度控制MUX/收发器收发器并行移位并行移位寄存器寄存器寄存器文件寄存器文件ALU描述寄存器描述寄存器段单元段单元范围仲裁范围仲裁用用PLA高速缓高速缓存单元存单元8KB缓存缓存地址地址驱动器驱动器数据总线数据总线驱动器驱动器总线控总线控制器制器TLB页面单元页面单元A31A2 BE0BE3D31D0各种控制各种控制信号信号总线接口总线接口物理物理地址地址译码后指令传递译码后指令传递控制控制128位总线位总线线性地址总线线性地址总线32位数据总线位数据总线32位数据总线位数据总线浮点单元浮点单元浮点寄存浮点寄存器文件器文件控制单元控制单元微码微码ROM32字节字节指令队指令队列列译码器译码器预取指令单

温馨提示

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

评论

0/150

提交评论