




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第 2 章典型微处理器2.1 微处理器性能简介微处理器性能简介2.1.1 2.1.1 典型微处理器的主要性能指标典型微处理器的主要性能指标 1、主频、外频、倍频 2、内存总线速度 3、扩展总线速度 4、地址总线宽度 5、数据总线宽度 6、高速缓存主频=外频倍频决定最大内存空间,如地址线16根,则最大内存空间是64KB决定CPU和内存或外设每次最多交换的信息量2.1.2 2.1.2 微处理器的基本功能微处理器的基本功能 1、指令控制 2、操作控制 3、时间控制 4、数据加工取指令分析指令取操作数(如果需要)执行指令送结果(如果需要)2.2 Intel80862.2 Intel8086微处理器的内
2、、外部结构特性微处理器的内、外部结构特性 2.2.1 Intel 8086微处理器内部组成结构微处理器内部组成结构 8086微处理器从功能上可划分成两个逻辑单元,即执行部件EU和总线接口部件BIU,其内部组成结构如图2-1所示。o8086的内部结构从功能分成两个单元n总线接口单元BIU管理8086与系统总线的接口,负责CPU对存储器和外设进行访问n执行单元EU负责指令的译码、执行和数据的运算o两个单元相互独立,分别完成各自操作o两个单元可以并行执行,实现指令取指和执行的流水线操作2.2 80862.2 8086的结构的结构一、一、 80868086内部结构内部结构 1. 指令执行部件EUEU功
3、能:告诉BIU从何处取指令或数据,完成指令译码和执行指令。EU的组成:(1)算术逻辑运算单元ALU(2)标志寄存器FR/PSW(3)寄存器组(4)EU控制器2. 总线接口部件总线接口部件BIUBIUBIU功能:地址形成、取指令、指令排队、读/写操作数和总线控制。 向EU提供指令和数据,把EU的处理结果送给存储器或接口。BIU的组成:(1)16位段寄存器 CS 代码段寄存器 DS 数据段寄存器 ES 附加段寄存器 SS 堆栈段寄存器(2)16位指令指针寄存器(3)20位物理地址加法器(4)6字节指令队列(5)总线控制逻辑二、 8086CPU的寄存器组织控制逻辑AHALAXBLBHCHCLDHDL
4、BXCXDXSPBPSIDICSDSSSESIP数据寄存器数据寄存器指针及变址寄存器指针及变址寄存器段寄存器段寄存器PSW寄存器的特殊用途和隐含性质 28页15 8 7 015 015 0数据寄存器数据寄存器AX(Accumulator) 累加器BX(Base) 基地址寄存器CX(Count) 计数器DX(Data) 数据寄存器指针及变址寄存器指针及变址寄存器SP(Stack Pointer) 堆栈指针寄存器BP(Base Pointer) 基地址指针寄存器SI(Source Index) 源变址寄存器DI(Destination Index) 目标变址寄存器段寄存器段寄存器CS(Code S
5、egment )代码段寄存器DS(Data Segment )数据段寄存器ES( Extra Segment )附加段寄存器SS(Stack Segment )堆栈段寄存器控制寄存器控制寄存器IP(Instruction Pointer)指令指针寄存器PSW(Program Status Word)/ FR(Flags)程序状态字/标志寄存器1000HCS7FFAHDS8CFAHES250AHSS10000H7FFA0H8CFA0H250A0H 代码段代码段64KB 堆栈段堆栈段64KB 数据段数据段64KB 附加段附加段64KB00000HFFFFFH MS存储器分段段基址段基址物理地址物理
6、地址堆栈(Stack)SP栈底栈顶12H34H56H78HSSPUSH DSMOV AX,0PUSH AXMOV AX, DATAMOV DS, AX : :CSIP标志寄存器标志寄存器状态标志用来记录程序运行结果的状态信息,许多指令的执行都将相应地设置它。 CF ZF SF PF OF AF控制标志可由程序根据需要用指令设置,用于控制处理器执行指令的方式。 DF IF TFOF1115 12DF10IF9TF8SF7ZF65AF43PF21CF0PSW / FR(1) 状态标志:状态标志:CF(Carry Flag)进位标志进位标志PF(Parity Flag)奇偶校验位奇偶校验位 1000
7、1000 11001001 010100011CF1 10001000 01001001 11010001PF1ZF(Zero Flag)零标志零标志 00000001 11111111 000000001ZF1SF(Sign Flag)符号标志符号标志 10001000 01001001 11010001SF1AF(Auxiliary Carry Flag)辅助进位标志辅助进位标志 10001000 11001001 010100011AF1OF(Overflow Flag)溢出标志溢出标志 01000000 01000000 10000000OF1溢出溢出有符号:看有符号:看OF无符号:看
8、无符号:看CF例:例: 0100000001000000 10000000有符号数:溢出有符号数:溢出无符号数:不溢出无符号数:不溢出例:例: 0000000111111111 100000000有符号数:不溢出有符号数:不溢出无符号数:溢出无符号数:溢出例:例: 0000000100000001 00000010有符号数:不溢出有符号数:不溢出无符号数:不溢出无符号数:不溢出例:例: 1000000010000000 100000000有符号数:溢出有符号数:溢出无符号数:溢出无符号数:溢出(2) 控制标志控制标志 IF(Interrupt Flag)中断标志中断标志 IF1,允许,允许CP
9、U响应可屏蔽中断响应可屏蔽中断 IF0,禁止,禁止CPU响应可屏蔽中断响应可屏蔽中断 DF(Direction Flag)方向标志方向标志 DF=0, 增地址方向增地址方向 DF=1, 减地址方向减地址方向 TF(Trap Flag) 单步标志单步标志 TF=1,CPU每执行完一条指令,产生内部中断,供用户逐条跟踪程每执行完一条指令,产生内部中断,供用户逐条跟踪程 序序进行调试。进行调试。 TF=0,CPU正常工作。正常工作。2.2 8086的引脚信号n数据和地址引脚n读写控制引脚n中断请求和响应引脚n总线请求和响应引脚n其它引脚1. 数据和地址信号1AD15AD0(Address/Data)
10、n地址/数据分时复用引脚,双向、三态n在访问存储器或外设的总线操作周期中,这些引脚在第一个时钟周期输出存储器或I/O端口的低16位地址A15A0n其他时间用于传送16位数据D15D0 A19/S6A16/S3(Address/Status)n地址/状态分时复用引脚,输出、三态n这些引脚在访问存储器的第一个时钟周期输出高4位地址A19A16n在访问外设的第一个时钟周期全部输出低电平无效n其他时间输出状态信号S6S3BHE/S7总线高字节允许/状态,输出,三态1. 数据和地址信号22. 读写控制信号ALE(Address Latch Enable)n地址锁存允许,输出、三态、高电平有效nALE引脚
11、高有效时,表示复用引脚:AD15AD0和A19/S6A16/S3正在传送地址信息。n由于地址信息在这些复用引脚上出现的时间很短暂,所以系统可以利用ALE引脚将地址锁存起来。2. 读写控制信号(续1)M / IO ( Memory / Input and Output) n存储器或I/O访问,输出、三态n该引脚输出高电平时,表示CPU将访问存储器,这时地址总线A19A0提供20位存储器地址 n该引脚输出低电平时,表示CPU将访问I/O端口,这时地址总线A15A0提供16位I/O口地址2. 读写控制信号(续2)WR(Write) n写控制,输出、三态、低电平有效n有效时,表示CPU正在写出数据给存
12、储器或I/O端口RD(Read)n读控制,输出、三态、低电平有效n有效时,表示CPU正在从存储器或I/O端口读入数据 2. 读写控制信号(续3)READY n存储器或I/O口就绪,输入、高电平有效n在总线操作周期中,8086 CPU会在第3个时钟周期的前沿测试该引脚n如果测到高有效,CPU直接进入第4个时钟周期n如果测到无效,CPU将插入等待周期TwnCPU在等待周期中仍然要监测READY信号,有效则进入第4个时钟周期,否则继续插入等待周期Tw。 2. 读写控制信号(续4)DEN(Data Enable) n数据允许,输出、三态、低电平有效n有效时,表示当前数据总线上正在传送数据,可利用它来控
13、制对数据总线的驱动 DT/R(Data Transmit/Receive)n数据发送/接收,输出、三态n该信号表明当前总线上数据的流向n高电平时数据自CPU输出(发送)n低电平时数据输入CPU(接收) 3. 中断请求和响应信号INTR(Interrupt Request) n可屏蔽中断请求,输入、高电平有效n有效时,表示请求设备向CPU申请可屏蔽中断n该请求的优先级别较低,并可通过关中断指令CLI清除标志寄存器中的IF标志、从而对中断请求进行屏蔽3. 中断请求和响应信号(续1)INTA(Interrupt Acknowledge) n可屏蔽中断响应,输出、低电平有效n有效时,表示来自INTR引
14、脚的中断请求已被CPU响应,CPU进入中断响应周期。n中断响应周期是连续的两个,每个都发出有效响应信号,以便通知外设他们的中断请求已被响应、并令有关设备将中断向量号送到数据总线。 3. 中断请求和响应信号(续2)NMI(Non-Maskable Interrupt) n不可屏蔽中断请求,输入、上升沿有效。n有效时,表示外界向CPU申请不可屏蔽中断。n该请求的优先级别高于INTR,并且不能在CPU内被屏蔽。n当系统发生紧急情况时,可通过他向CPU申请不可屏蔽中断服务。 4. 总线请求和响应信号HOLDn总线保持(即总线请求),输入、高电平有效n有效时,表示总线请求设备向CPU申请占有总线n该信号
15、从有效回到无效时,表示总线请求设备对总线的使用已经结束,通知CPU收回对总线的控制权 4. 总线请求和响应信号(续1)HLDA(HOLD Acknowledge)n总线保持响应(即总线响应),输出、高电平有效n有效时,表示CPU已响应总线请求并已将总线释放n此时CPU的地址总线、数据总线及具有三态输出能力的控制总线将全面呈现高阻,使总线请求设备可以顺利接管总线n待到总线请求信号HOLD无效,总线响应信号HLDA也转为无效,CPU重新获得总线控制权 5. 其它信号RESETn复位请求,输入、高电平有效n该信号有效,将使CPU回到其初始状态;当他再度返回无效时,CPU将重新开始工作n8088复位后
16、CSFFFFH、IP0000H,所以程序入口在物理地址FFFF0H,DS=ES=SS=0000H。5. 其它信号(续1)CLK(Clock) n时钟输入n系统通过该引脚给CPU提供内部定时信号。8086的标准工作时钟为5MHznIBM PC/XT机的8088采用了4.77MHz的时钟,其周期约为210ns 5. 其它信号(续2)Vccn电源输入,向CPU提供5V电源GNDn接地,向CPU提供参考地电平MN/MX(Minimum/Maximum) 组态选择,输入 接高电平时,8086/8088引脚工作在最小组态;反之,8086/8088工作在最大组态 5. 其它信号(续3)TESTn测试,输入、
17、低电平有效n该引脚与WAIT指令配合使用n当CPU执行WAIT指令时,他将在每个时钟周期对该引脚进行测试:如果无效,则程序踏步并继续测试;如果有效,则程序恢复运行n也就是说,WAIT指令使CPU产生等待,直到引脚有效为止n在使用协处理器8087时,通过引脚和WAIT指令,可使8086与8087的操作保持同步 8088与8086CPU的不同之处n8088的指令队列是4个字节;8086的指令队列是6个字节n8088是准16位处理器;8086是标准16位处理器n8088连接的存储器不分存储体; 8086连接的存储器分奇偶存储体n8086的控制信号M/IO,在8088中被M/IO替代2.3 存储器和存
18、储器和I/O组织组织2.3.1存储器的内部结构XXXXXXXXBXXXXXXXXBXXXXXXXXBXXXXXXXXB0000 0000 0000 0000 0000B0000 0000 0000 0000 0001B1111 1111 1111 1111 1110B1111 1111 1111 1111 1111B二进制00000H00001HFFFFEHFFFFFH十六进制信息存放原则:以字节为单位,超过一字节,信息存放原则:以字节为单位,超过一字节, 则相邻存放,且高对高、低对则相邻存放,且高对高、低对 低,以低地址为地址。低,以低地址为地址。例:已知字节数据11H的地址是20000H,
19、字数据1234H的地址是20001H,试画出存放情况示意图。20000H20002H20001H11H34H12H12 34H高字节低字节低地址高地址 例:已知内存部分单元的存储情况如下,试回答内存单元20000H中的内容。11H20003H22H20002H33H20001H44H20000H结论:在访问内存单元时,不仅要给出地址,而且必须必须给出信息的类型(即信息的长度)2.3.2 80862.3.2 8086的存储器的访问方法(分体访问)的存储器的访问方法(分体访问) 存储器分为奇偶体的原因及方法: 8086有16条数据线,但存储器以8为单位进行编址,为了实现8086即可存取8位数据,又
20、可存取16数据,8086通过BHE和A0线的逻辑组合将存储器分为两部分:奇地址存储体和偶地址存储体。1111 1111 1111 1111 1110B1111 1111 1111 1111 1111B1111 1111 1111 1111 1100B1111 1111 1111 1111 1101B1111 1111 1111 1111 1010B1111 1111 1111 1111 1011B1111 1111 1111 1111 1000B1111 1111 1111 1111 1001B1111 1111 1111 1111 0110B1111 1111 1111 1111 0111B
21、1111 1111 1111 1111 0100B1111 1111 1111 1111 0101B0000 0000 0000 0000 1010B0000 0000 0000 0000 1011B0000 0000 0000 0000 1000B0000 0000 0000 0000 1001B0000 0000 0000 0000 0110B0000 0000 0000 0000 0111B偶存储体奇存储体结论:组成偶存储体的所有存储单元的地址 的 最低位都是0,即把偶存储体各个单元区 分开的在于地址的高19位;组成奇存储 体的所有存储单元的地址的最低位都是 1,即把偶存储体各个单元区分
22、开的也在 于地址的高19位;而且在两个存储体中 存在地址高19位完全相同的单元,且偶偶 低奇高低奇高。高位(奇地址)库512 K8D15D8A19A1SELBHE低位(偶地址)库512 K8D7D0A19A1SELD15D8D7D0A0A19A1图图2-7 8086系统的存储器高低位连接逻辑结构系统的存储器高低位连接逻辑结构80868086存储器高低位库选择(奇、偶体选择)存储器高低位库选择(奇、偶体选择) A0 对对 应应 操操 作作 0 0 同时访问两个存储体,读同时访问两个存储体,读/写偶地址的一个字写偶地址的一个字 0 1 只访问奇地址存储体,读只访问奇地址存储体,读/写奇地址的一个字
23、节写奇地址的一个字节 1 0 只访问偶地址存储体,读只访问偶地址存储体,读/写偶地址的一个字节写偶地址的一个字节 1 1 无操作无操作BHE怎样访问存放在奇地址的一个字数据呢?需要分两次:1、BHE/=0,A0=1 利用D8D15读取低一半 2、BHE/=1,A0=0利用D0D7读取高一半对准字:存放在偶地址的字数据,也叫规则字,对 其存取可在一个总线周期内完成。非对准字:存放在奇地址的字数据,也叫非规则 字,其存取须在两个个总线周期内完成。 分段的原因分段的原因:8086CPU内部的所有寄存器都是内部的所有寄存器都是16位的,运位的,运算器也是算器也是16位的,这说明硬件的寻址能力是位的,这
24、说明硬件的寻址能力是64KB,但是,但是又向外引出又向外引出20根地址线想达到根地址线想达到1MB的寻址空间。且程序又的寻址空间。且程序又可明显地分成代码区和数据区。可明显地分成代码区和数据区。2.3.3 8086存储器的分段结构存储器的分段结构 分段的方法分段的方法:各段的段内地址是连续的,段与段之间是相互各段的段内地址是连续的,段与段之间是相互独立的。每个段的起始地址称段基址,段基址必须是能被独立的。每个段的起始地址称段基址,段基址必须是能被16整除的那些地址,段长(段所包含的存储单元数)小于或等整除的那些地址,段长(段所包含的存储单元数)小于或等于于64 KB。十进制十进制十六进制十六进
25、制二进制二进制000000H0000 0000 0000 0000 0000B1600010H0000 0000 0000 0001 0000B3200020H0000 0000 0000 0010 0000B4800030H0000 0000 0000 0011 0000B6400040H0000 0000 0000 0100 0000B8000050H0000 0000 0000 0101 0000B9600060H0000 0000 0000 0110 0000B11200070H0000 0000 0000 0111 0000B能被16整除的地址存储单元编号相对起始地址的位移量1021
26、324354657664K64K-1结论:在段长64K的限定条件下,我们用16位足以能够表示出段中每个存储单元相对于段首的位移量。存储器的地址:(1)段地址:是一个无符号的16位二进制数,描述要寻址的逻 辑段在内存中的起始位置。(因为段起始地址的 低4位恒定是0所以省略。)段地址保存在段寄存 器中。(2)偏移地址:是一个无符号的16位二进制数,描述要寻址的 内存单元在逻辑段中距离段首的位置。(3)逻辑地址:由段地址和偏移地址两部分构成。表示形式为: 段地址:偏移地址(4)物理地址:是存储器的实际地址。20位。段寄存器EA=1000H1000段地址10000H11000H物理地址物理地址1100
27、2H位移量disp 我们在程序中必须使用由两个部分组成的16位地址来访问内存。 而CPU访问内存时,则必须首先找到段地址存放的段寄存器,再找到该存储单元在段内的偏移量,最后形成20位的物理地址。20位的物理地址计算公式:段寄存器内容 XXXX XXXX XXXX XXXX 0000段内偏移量 + YYYY YYYY YYYY YYYY-20位的物理地址ZZZZ ZZZZ ZZZZ ZZZZ ZZZZ 物理地址=段地址10H +偏移地址 由于我们习惯用16进制来表示地址, 所以我们在段地址的末位补上一个0再和偏 移地址相加就可得到相应的物理地址。例1:已知某内存单元的逻辑地址是2200H:123
28、4H,求其实际地址。2200H:1234H段地址偏移地址2 2 0 0 0H + 1 2 3 4 H 2 3 2 3 4H2200H:1234H23234H例2:已知某内存单元的逻辑地址是2345H:2001H,求其实际地址。2345H:2001H段地址偏移地址2 3 4 5 0H + 2 0 0 1 H 2 5 4 5 1H2345H:2001H25451H例3:已知某内存单元的逻辑地址是2465H:79A6H,求其实际地址。2465H:79A6H段地址偏移地址2 4 6 5 0H + 7 9 A 6 H 2 B F F 6H2465H:79A6H2BFF6H例4:有一个由20个字组成的数据区,其起始地址是 3410H:0240H。试写出该数据区的首末存储单 元的实际地址。解:首地址为3410H:0240H34340H末地址为:34340H+(2201)=34367H地址形成地址形成(35页表2-5)操作类型隐含段地址段前缀偏移地址取指令CS无IP堆栈操作SS无SPBP为基址SSCS、DS、ES有效地址EA通用数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 项目管理考试趋势与挑战试题及答案
- 2025年关键点的证券从业资格试题及答案
- 档案保护技术的新发展试题及答案
- 沼气管线泄漏施工方案
- 财务报表理解的证券从业资格证试题及答案
- 2024年福建事业单位考试榜样学习试题及答案
- 实木地板龙骨施工方案
- 提高农业职业经理人考试的竞争素质的方法试题及答案
- 项目实施中的法律合规要求试题及答案
- 福建事业单位考试社会学知识题及答案
- 2025年国家粮食和物资储备局垂直管理系事业单位招聘笔试参考题库附带答案详解
- DB32-T 4281-2022 江苏省建筑工程施工现场专业人员配备标准
- 自卸车整车装配检验规范-ok
- 集成电路芯片封装技术第2章ppt课件
- 技能操作鉴定要素细目表(电工技师)
- 武广客运专线隧道防排水技术的突破QC成果
- 部编版五年级道德与法治下册第三单元《百年追梦复兴中华》教材分析单元分析
- 电子产品设计生产工艺流程
- 初级培训机器人的机械系统
- 制造工厂品质宣传海报标语
- 吸入装置正确使用方法调查表
评论
0/150
提交评论