微处理器的结构及应用特性.ppt_第1页
微处理器的结构及应用特性.ppt_第2页
微处理器的结构及应用特性.ppt_第3页
微处理器的结构及应用特性.ppt_第4页
微处理器的结构及应用特性.ppt_第5页
已阅读5页,还剩145页未读 继续免费阅读

下载本文档

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

文档简介

第3章微处理器的结构及应用特性 本章学习要点 理解和掌握8086微处理器的编程结构 尤其是8086的寄存器结构要熟练掌握 基本掌握8086微处理器的引脚信号及功能 了解8086的工作模式 理解8086总线周期的概念 了解8086系统总线的构成 了解嵌入式处理器的种类和发展动向 3 1概述 中央处理器 CPU 是指计算机内部对数据进行处理并对处理过程进行控制的部件 伴随着大规模集成电路制造技术的迅速发展 芯片集成密度越来越高 CPU可以集成在一个半导体芯片上 这种具有中央处理器功能的大规模集成电路器件 被统称为 微处理器 MPU 概述 微处理器的问世是一次伟大的工业革命 从1971年至今 在不到40年的时间内 微处理器的发展日新月异 令人难以置信 可以说 人类的其它发明都没有微处理器发展得那么神速 影响那么深远 3 1 1CPU的功能 指令控制保证机器按程序规定的顺序取出执行 操作控制CPU产生每条指令所对应的操作信号 并把各种操作信号送往相应的部件 从而控制这些部件按指令的要求进行动作 时间控制对各种操作的实施时间进行定时 数据加工对数据进行算术运算和逻辑运算处理 3 1 2CPU的基本组成 控制器完成对整个计算机系统操作的协调与指挥 1 控制机器从内存中取出一条指令 并指出下一条指令在内存中的位置 2 对指令进行译码 并产生相应的操作控制信号 送往相应的部件 启动规定的动作 3 指挥并控制CPU 内存与输入 输出 I O 设备之间数据流动的方向运算器是数据加工处理部件 所进行的全部操作由控制器发出的控制信号指挥 1 执行所有的算术运算 2 执行所有的逻辑运算 并进行逻辑测试 CPU的基本模型 3 1 3CPU中的主要寄存器 数据缓冲寄存器 DR 暂时存放由内存读出或写入的指令或数据字指令寄存器 IR 保存当前正在执行的一条指令程序计数器 PC 确定下一条指令的地址地址寄存器 AR 保存当前CPU所访问的内存单元的地址累加寄存器 AC 最常使用的一个通用寄存器状态条件寄存器 PSW 保存由算术和逻辑指令的结果建立的各种条件码 3 1 4操作控制器与时序产生器 操作控制器在各寄存器之间建立数据通路 传送信息的通路 操作控制器的功能 就是根据指令操作码和时序信号 产生各种操作控制信号 以便正确地建立数据通路 从而完成取指令和执行指令的控制硬布线控制器微程序控制器时序产生器产生并发出计算机所需要的时序控制信号 3 2Intel8086的编程结构 Intel8086是80X86系列微处理器的重要成员之一 也是最具有代表性的产品 它是标准的16位字长的微处理器 采用HMOS工艺制造 集成度约为29000个晶体管 要了解和掌握Intel8086微处理器的工作性能和使用方法 首先应该了解它的编程结构 所谓编程结构是指从程序员和使用者的角度所看到的结构 当然 这种结构与微处理器内部的物理结构和实际布局是有区别的 从编程结构图中可以看到 在功能上 8086分为两部分 即总线接口部件BIU BusInterfaceUnit 和执行部件EU ExecutionUnit 它们在微处理器内部担负着不同的工作任务 这两个部件并行地工作 能使大部分取指令操作与执行指令操作重叠地进行 即所谓 流水线 结构 由于EU执行的是BIU已从存储器取出的指令 所以在大多数情况下取指令的时间大大缩短 从而加快了程序的运行速度 Intel8086微处理器编程结构 Intel8086微处理器编程结构图 3 2 1总线接口部件 总线接口部件的功能是负责与存储器 I O端口传送数据 总线接口部件要从内存取指令送到指令队列 执行指令时 总线接口部件要配合执行部件从指定的内存单元或者外设端口中取数据 将数据传送给执行部件 或者把执行部件的操作结果传送到指定的内存单元或外设端口中 总线接口部件由下列各部分组成 4个段地址寄存器 CS DS SS ES 16位的指令指针寄存器 IP 20位的地址加法器 6字节的指令队列 3 2 2执行部件 执行部件的功能就是负责指令的执行 由通用寄存器 标志寄存器 算术逻辑部件 ALU 和EU控制电路等组成 EU从BIU的指令队列中获得指令 然后执行该指令 完成指令所规定的操作 EU用来对寄存器内容和指令操作数进行算术和逻辑运算 以及进行内存有效地址的计算 EU负责全部指令的执行 向BIU提供数据和所需访问的内存或I O端口的地址 并对通用寄存器 标志寄存器和指令操作数进行管理 结构的特点 由于EU和BIU这两个功能部件能相互独立地工作 并在大多数情况下 能使大部分取指令和执行指令重叠进行 大大减少等待取指令所需的时间 提高了微处理器的利用率和整个系统的执行速度 3 2 3总线接口部件和执行部件的管理 总线接口部件BIU和执行部件EU并不是同步工作的 两者的动作管理遵循如下原则 每当8086的指令队列中有2个空字节 BIU就会自动把指令取到指令队列中 而同时EU从指令队列取出一条指令 并用几个时钟周期去分析 执行指令 当指令队列已满 而且EU对BIU又无总线访问请求时 BIU便进入空闲状态 在执行转移 调用和返回指令时 指令队列中的原有内容被自动清除 在8086中 EU和BIU这种并行的工作方式不仅极大地提高了工作效率 而且这也是它们的一大特点 EU和BIU之间是通过指令队列相互联系的 指令队列可以被看成一个RAM区 EU对其执行读操作 BIU对其执行写操作 3 2 48086总线周期的概念 8086的工作是在时钟脉冲的统一控制下 按节拍有序地执行指令序列 从取指令开始 经过分析指令 对操作数寻址 然后执行指令 保存操作结果 这个过程所经历的时间称为指令执行周期或简称为指令周期 时钟脉冲的重复周期称为时钟周期 ClockCycle 时钟周期是8086的时间基准 由时钟频率决定 例如 8086的时钟频率为5MHz时 则时钟周期为0 2 S或200nS 什么是总线周期呢 我们把8086每一次通过总线信息输入 输出过程需要的时间称为总线周期 BusCycle 每当8086要从存储器或输人 输出端口存取一个字节或字信息就需要一个总线周期 8086的总线周期至少由4个时钟周期组成 分别以T1 T2 T3和T4表示 如图所示 T又称为状态 state 8086的总线周期组成 总线周期的几个阶段 一个总线周期完成一次数据传输 至少要有传送地址和传送数据两个阶段 在第一个时钟周期T1期间8086输出地址 在随后的三个T周期 T2 T3和T4 用来传送数据 并且数据传送必须在T2 T4这三个时钟周期内完成 否则在T4周期后 总线将作另一次操作 开始下一个总线周期 读取指令指令地址送入主存地址寄存器读主存 读出内容送入指定的寄存器 分析指令 按指令规定内容执行指令不同指令的操作步骤数和具体操作内容差异很大 检查有无中断请求若无 则转入下一条指令的执行过程 形成下一条指令地址 指令的执行过程 读取指令指令地址送入主存地址寄存器读主存 读出内容送入指定的寄存器 分析指令 按指令规定内容执行指令不同指令的操作步骤数和具体操作内容差异很大 检查有无中断请求若无 则转入下一条指令的执行过程 形成下一条指令地址 指令的执行过程 指令周期的基本概念 指令周期 CPU从内存取出一条指令并执行完这条指令的时间总和 CPU周期 又称机器周期 总线周期 CPU访问内存所花的时间较长 因此用CPU从内存读取一条指令字的所需的最短时间来定义 时钟周期 通常称为节拍脉冲或T周期 一个CPU周期包含若干个时钟周期T 相互关系 1个指令周期 若干个CPU周期1个CPU周期 若干T周期 取指时间 执行指令时间 指令周期 CPU周期 时钟周期 020CLA 累加器清0021ADD30 AC 30 AC022STA40 AC 40 023NOP 空操作024JMP21 21 PC 030000006 数据 040存和数 数据 5条典型指令构成的简单程序 一 CLA指令的指令周期 取出CLA指令 算术逻辑单元 状态条件寄存器 程序计数器PC 地址寄存器AR 地址总线ABUS 数据总线DBUS 累加器AC 缓冲寄存器DR CPU ALU 指令寄存器IR 指令译码器 操作控制器时序产生器 时钟 状态反馈 取指控制 执行控制 c 1 000020 20 21 22 23 24 30 31 40 CLA ADD30 STA40 NOP JMP21 000006 000020 CLA CLA 000021 算术逻辑单元 状态条件寄存器 程序计数器PC 地址寄存器AR 地址总线ABUS 数据总线DBUS 累加器AC 缓冲寄存器DR CPU ALU 指令寄存器IR 指令译码器 操作控制器时序产生器 时钟 状态反馈 取指控制 执行控制 c c c 20 21 22 23 24 30 31 40 CLA ADD30 STA40 NOP JMP21 000006 000020 CLA CLA 000021 000000 执行CLA指令 二 ADD指令的指令周期 算术逻辑单元 状态条件寄存器 程序计数器PC 地址寄存器AR 地址总线ABUS 数据总线DBUS 累加器AC 缓冲寄存器DR CPU ALU 指令寄存器IR 指令译码器 操作控制器时序产生器 时钟 状态反馈 取指控制 执行控制 c c c c 1 20 21 22 23 24 30 31 40 CLA ADD30 STA40 NOP JMP21 000006 000021 ADD ADD30 000021 000022 000030 000006 0 6 6 000006 取出并执行ADD指令 三 STA指令的指令周期 算术逻辑单元 状态条件寄存器 程序计数器PC 地址寄存器AR 地址总线ABUS 数据总线DBUS 累加器AC 缓冲寄存器DR CPU ALU 指令寄存器IR 指令译码器 操作控制器时序产生器 时钟 状态反馈 取指控制 执行控制 c c c c 1 20 21 22 23 24 30 40 CLA ADD30 STA40 NOP JMP21 000006 000022 STA STA40 000022 000023 000040 000006 000006 000006 取出并执行STA指令 四 NOP指令和JMP指令的指令周期 算术逻辑单元 状态条件寄存器 程序计数器PC 地址寄存器AR 地址总线ABUS 数据总线DBUS 累加器AC 缓冲寄存器DR ALU 指令寄存器IR 指令译码器 操作控制器时序产生器 时钟 状态反馈 取指控制 执行控制 c c c c 1 20 21 22 23 24 30 40 CLA ADD30 STA40 NOP JMP21 000006 000024 JMP21 JMP21 000024 000021 000006 000006 000025 000021 取出并执行JMP指令 补充内容 时序产生器和控制方式 用二进制码表示的指令和数据都放在内存里 那么CPU是怎样识别出它们是数据还是指令呢 从时间上来说 取指令事件发生在指令周期的第一个CPU周期中 即发生在 取指令 阶段 而取数据事件发生在指令周期的后面几个CPU周期中 即发生在 执行指令 阶段 从空间上来说 如果取出的代码是指令 那么一定经DR送往指令寄存器IR 如果取出的代码是数据 那么一定送往运算器 时间控制对计算机来说是非常重要的 思考 时序信号的作用和体制 计算机的协调动作需要时间标志 而且需要采用多级时序体制 而时间标志则用时序信号来体现 硬布线控制器中 时序信号往往采用主状态周期 节拍电位 节拍脉冲三级体制 主状态周期 指令周期 包含若干个节拍周期 可以用一个触发器的状态持续时间来表示节拍电位 机器周期 表示一个CPU周期的时间 包含若干个节拍脉冲节拍脉冲 时钟周期 表示较小的时间单位微程序控制器中 时序信号则一般采用节拍电位 节拍脉冲二级体制 节拍脉冲 节拍电位1 主状态周期 节拍电位2 主状态周期 节拍电位 节拍脉冲 数据准备好后 以电位的方式送触发器控制信号来到后 用一个脉冲信号把数据装入触发器 数据 电位 控制信号 脉冲 节拍电位 节拍脉冲 IORQMREQRDWET1T2T3T4 IORQ MREQ RD WE T1 T2 T3 T4 MERQ IORQ RD WR 提供频率稳定且电平匹配的方波时钟脉冲信号由石英晶体振荡器组成 产生一组有序的间隔相等或不等的脉冲序列 启动 停机 时序信号产生器 启停控制逻辑 节拍脉冲和读写时序译码逻辑 环形脉冲发生器 时钟脉冲源 时序产生器 一 概念1 时序部件 计算机的机内时钟 它用其产生的周期状态 节拍电位及时标脉冲去对指令周期进行时间划分 刻度和标定 2 指令周期 在计算机中从指令的读取到指令的执行完成 执行一条指令所需要的时间 称为指令周期 指令周期通常由若干个CPU周期来表示 CPU周期也称为机器周期 由于CPU内部的操作速度较快 而CPU访问一次内存所花的时间较长 通常用存储周期为基础来规定CPU周期 时序产生器 二 3级时序信号1 周期 1 在一个控制阶段内均持续起作用的信号 2 通常用周期状态寄存器来标志和指明某某周期控制 3 指令周期可分为取指周期 分析周期 执行周期 2 节拍 1 把一个机器周期分成若干个相等的时间段 每一个时间段对应一个电位信号 称节拍电位 2 一般都以能保证ALU进行一次运算操作作为一拍电位的时间宽度 3 时标工作脉冲 1 及时改变标志状态 2 时标脉冲的宽度一般为节拍电位宽度的1 N 只要能保证所有的触发器都能可靠地 稳定地翻转即可 时序产生器 三 3级时序信号的关系1 一台计算机机内的控制信号一般均由若干个周期状态 若干个节拍电位及若干个时标脉冲这样3级控制时序信号定时完成 2 3级控制时序信号的宽度均成正整数倍同步关系 周期状态之间 节拍电位之间 时标脉冲之间既不容许有重叠交叉 又不容许有空白间隙 应该是能一个接一个地准确连接 一个降落另一个升起而准确切换的同步信号 控制方式 控制不同操作序列时序信号的方法 1 同步控制方式已定的指令在执行时所需的CPU周期 机器周期 数和时钟周期数都固定不变 例如采用完全统一的机器周期执行各种不同的指令2 异步控制方式控制器发出某一操作控制信号后 等待执行部件完成操作后发 回答 信号 再开始新的操作3 联合控制方式同步控制和异步控制相结合的方式 微程序控制器 微程序控制器同硬布线控制器相比较 具有规整性 灵活性 可维护性等一系列优点它利用软件方法 微程序设计技术 来设计硬件微程序控制的基本思想就是把操作控制信号编成所谓的 微指令 存放到一个只读存储器里 控制存储器CM 当机器运行时 一条又一条地读出这些微指令 从而产生全机所需要的各种操作控制信号 是相应部件执行所规定的操作 微命令 指令系统 处理器内部可以分为 控制部件和执行部件微命令 控制部件向执行部件发出的控制命令微操作 执行部件接受微命令后所进行的操作 微操作在执行部件中是最基本的操作 微指令 实现一定操作功能的一组微命令微程序 实现一条机器指令功能的微指令序列 指令系统 所有指令 指令 微程序微程序 若干微指令 微指令 一组微命令微命令 微操作 机器指令与微指令 程序 机器指令1 机器指令2 机器指令i 机器指令n 微指令2 微指令1 微指令i 微指令n 微程序 程序计数器PC 地址寄存器AR 缓冲寄存器DR 指令寄存器IR 微地址寄存器 AR 微指令寄存器 IR 主存储器 控制存储器CM 微命令 地址译码器 地址译码 机器指令级 微指令级 微程序设计技术 1 静态微程序设计对应于一台计算机的机器指令只有一组微程序 而且这一组微程序设计好之后 一般无须改变而且也不好改变2 动态微程序设计采用EPROM作为控制存储器 可以通过改变微指令和微程序来改变机器的指令系统采用动态微程序设计 微指令和微程序可以根据需要加以改变 因而可在一台机器上仿真其它机器指令系统 硬布线控制器把控制部件看作为产生专门固定时序控制信号的逻辑电路 以使用最少元件和取得最高操作速度为设计目标 硬布线控制的优点 速度较快 缺点 不容易修改添加新功能微程序控制的优点 具有规整性 灵活性 可维护性等 缺点 采用存储程序原理 需要执行多条微指令 速度较慢 3 38086的引脚信号和工作模式 8086的引脚信号 也就是它的外部特性 为了尽可能适应各种各样的应用情况 8086微处理器被设计成可以在两种模式下工作 即最小模式和最大模式 3 3 1最小模式和最大模式的概念 所谓最小模式 是指在系统中只有8086一个微处理器 而所有的总线控制信号都由8086直接产生 因此系统中的总线控制电路被减到最少 而最大模式是相对最小模式而言的 此时系统中有两个或多个微处理器 其中有一个是主处理器8086 其它的处理器称为协处理器 它们协助主处理器工作 3 3 18088的两种组态模式 续 两种组态利用MN MX 引脚区别MN MX 接高电平为最小组态模式MN MX 接低电平为最大组态模式两种组态下的内部操作并没有区别IBMPC XT采用最大组态本书以最小组态展开基本原理 3 3 28086的引脚信号和功能 8086微处理器采用双列直插40条引脚封装形式 它采用分时复用的引脚设计理念 多数引脚设计为具有双重功能 即在不同时钟周期及不同工作模式下 引脚的功能不同 因此大大减少了引脚数量 3 3 18088的两种组态模式 两种组态构成两种不同规模的应用系统最小组态模式构成小规模的应用系统8088本身提供所有的系统总线信号最大组态模式构成较大规模的应用系统 例如可以接入数值协处理器80878088和总线控制器8288共同形成系统总线信号 3 3 28088的引脚信号和总线形成 外部特性表现在其引脚信号上 学习时请特别关注以下几个方面 引脚的功能 信号的流向 有效电平 三态能力 指引脚信号的定义 作用 通常采用英文单词或其缩写表示 信号从芯片向外输出 还是从外部输入芯片 或者是双向的 起作用的逻辑电平高 低电平有效上升 下降边沿有效 输出正常的低电平 高电平外 还可以输出高阻的第三态 3 3 2最小组态的引脚信号 数据和地址引脚读写控制引脚中断请求和响应引脚总线请求和响应引脚其它引脚 1 数据和地址引脚 AD7 AD0 Address Data 地址 数据分时复用引脚 双向 三态在访问存储器或外设的总线操作周期中 这些引脚在第一个时钟周期输出存储器或I O端口的低8位地址A7 A0其他时间用于传送8位数据D7 D0 1 数据和地址引脚 续1 A15 A8 Address 中间8位地址引脚 输出 三态这些引脚在访问存储器或外设时 提供全部20位地址中的中间8位地址A15 A8 1 数据和地址引脚 续2 A19 S6 A16 S3 Address Status 地址 状态分时复用引脚 输出 三态这些引脚在访问存储器的第一个时钟周期输出高4位地址A19 A16在访问外设的第一个时钟周期全部输出低电平无效其他时间输出状态信号S6 S3 2 读写控制引脚 ALE AddressLatchEnable 地址锁存允许 输出 三态 高电平有效ALE引脚高有效时 表示复用引脚 AD7 AD0和A19 S6 A16 S3正在传送地址信息由于地址信息在这些复用引脚上出现的时间很短暂 所以系统可以利用ALE引脚将地址锁存起来 2 读写控制引脚 续1 IO M InputandOutput Memory I O或存储器访问 输出 三态该引脚输出高电平时 表示CPU将访问I O端口 这时地址总线A15 A0提供16位I O口地址该引脚输出低电平时 表示CPU将访问存储器 这时地址总线A19 A0提供20位存储器地址 2 读写控制引脚 续2 WR Write 写控制 输出 三态 低电平有效有效时 表示CPU正在写出数据给存储器或I O端口RD Read 读控制 输出 三态 低电平有效有效时 表示CPU正在从存储器或I O端口读入数据 2 读写控制引脚 续3 IO M WR 和RD 是最基本的控制信号组合后 控制4种基本的总线周期 2 读写控制引脚 续4 READY存储器或I O口就绪 输入 高电平有效在总线操作周期中 8088CPU会在第3个时钟周期的前沿测试该引脚如果测到高有效 CPU直接进入第4个时钟周期如果测到无效 CPU将插入等待周期TwCPU在等待周期中仍然要监测READY信号 有效则进入第4个时钟周期 否则继续插入等待周期Tw 2 读写控制引脚 续5 DEN DataEnable 数据允许 输出 三态 低电平有效有效时 表示当前数据总线上正在传送数据 可利用他来控制对数据总线的驱动DT R DataTransmit Receive 数据发送 接收 输出 三态该信号表明当前总线上数据的流向高电平时数据自CPU输出 发送 低电平时数据输入CPU 接收 2 读写控制引脚 续6 SS0 SystemStatus0 最小组态模式下的状态输出信号它与IO M 和DT R 一道 通过编码指示CPU在最小组态下的8种工作状态 1 取指5 中断响应2 存储器读6 I O读3 存储器写7 I O写4 过渡状态8 暂停 3 中断请求和响应引脚 INTR InterruptRequest 可屏蔽中断请求 输入 高电平有效有效时 表示请求设备向CPU申请可屏蔽中断该请求的优先级别较低 并可通过关中断指令CLI清除标志寄存器中的IF标志 从而对中断请求进行屏蔽 3 中断请求和响应引脚 续1 INTA InterruptAcknowledge 可屏蔽中断响应 输出 低电平有效有效时 表示来自INTR引脚的中断请求已被CPU响应 CPU进入中断响应周期中断响应周期是连续的两个 每个都发出有效响应信号 以便通知外设他们的中断请求已被响应 并令有关设备将中断向量号送到数据总线 3 中断请求和响应引脚 续2 NMI Non MaskableInterrupt 不可屏蔽中断请求 输入 上升沿有效有效时 表示外界向CPU申请不可屏蔽中断该请求的优先级别高于INTR 并且不能在CPU内被屏蔽当系统发生紧急情况时 可通过他向CPU申请不可屏蔽中断服务 主机与外设进行数据交换通常采用可屏蔽中断不可屏蔽中断通常用于处理掉电等系统故障 4 总线请求和响应引脚 HOLD总线保持 即总线请求 输入 高电平有效有效时 表示总线请求设备向CPU申请占有总线该信号从有效回到无效时 表示总线请求设备对总线的使用已经结束 通知CPU收回对总线的控制权 DMA控制器等主控设备通过HOLD申请占用系统总线 通常由CPU控制 4 总线请求和响应引脚 续1 HLDA HOLDAcknowledge 总线保持响应 即总线响应 输出 高电平有效有效时 表示CPU已响应总线请求并已将总线释放此时CPU的地址总线 数据总线及具有三态输出能力的控制总线将全面呈现高阻 使总线请求设备可以顺利接管总线待到总线请求信号HOLD无效 总线响应信号HLDA也转为无效 CPU重新获得总线控制权 5 其它引脚 RESET复位请求 输入 高电平有效该信号有效 将使CPU回到其初始状态 当他再度返回无效时 CPU将重新开始工作8088复位后CS FFFFH IP 0000H 所以程序入口在物理地址FFFF0H 5 其它引脚 续1 CLK Clock 时钟输入系统通过该引脚给CPU提供内部定时信号 8088的标准工作时钟为5MHzIBMPC XT机的8088采用了4 77MHz的时钟 其周期约为210ns 5 其它引脚 续2 Vcc电源输入 向CPU提供 5V电源GND接地 向CPU提供参考地电平MN MX Minimum Maximum 组态选择 输入接高电平时 8088引脚工作在最小组态 反之 8088工作在最大组态 5 其它引脚 续3 TEST 测试 输入 低电平有效该引脚与WAIT指令配合使用当CPU执行WAIT指令时 他将在每个时钟周期对该引脚进行测试 如果无效 则程序踏步并继续测试 如果有效 则程序恢复运行也就是说 WAIT指令使CPU产生等待 直到引脚有效为止在使用协处理器8087时 通过引脚和WAIT指令 可使8088与8087的操作保持同步 引脚 小结 CPU引脚是系统总线的基本信号可以分成三类信号 8位数据线 D0 D720位地址线 A0 A19控制线 ALE IO M WR RD READYINTR INTA NMI HOLD HLDARESET CLK Vcc GND 有问题 引脚 提问 提问之一 CPU引脚是如何与外部连接的呢 提问之二 CPU引脚是如何相互配合 实现总线操作 控制系统工作的呢 3 3 3最小模式下的系统配置 最小模式适用于由单微处理器组成的小系统 在这种系统中 8086直接产生所有的总线控制信号 因而省去了总线控制逻辑部件 3 3 3最小组态下的配置 1 20位地址总线 采用3个三态透明锁存器8282进行锁存和驱动 2 8位数据总线 采用数据收发器8286进行驱动 3 系统控制信号 由8088引脚直接提供 2 8位数据总线的形成 采用数据收发器8286进行双向驱动Intel8286是8位三态双向缓冲器 类似功能的器件还有Intel8287 通用数字集成电路245等另外 接口电路中也经常使用三态单向缓冲器 例如通用数字集成电路244就是一个常用的双4位三态单向缓冲器 3 系统控制信号的形成 由8088引脚直接提供因为基本的控制信号8088引脚中都含有例如 IO M WR RD 等其它信号的情况看详图 8088的总线时序 时序 Timing 是指信号高低电平 有效或无效 变化及相互间的时间顺序关系 总线时序描述CPU引脚如何实现总线操作CPU时序决定系统各部件间的同步和定时 什么是总线操作 8086引脚排列图 括号中为最大模式下的名称 3 3 4最大模式下的系统配置 8086最大模式系统组态 3 48086的操作和时序 由8086微处理器构成计算机系统后 为了实现系统的诸多使用功能 需要8086执行许多特定的操作 以下所列是8086最基本 也是最主要的几项操作 1 系统的复位和启动操作 2 总线操作 3 最小模式下的总线保持 4 最大模式下的总线请求 允许 补充 8088的总线时序 续1 总线操作是指CPU通过总线对外的各种操作8088的总线操作主要有 存储器读 I O读操作存储器写 I O写操作中断响应操作总线请求及响应操作CPU正在进行内部操作 并不进行实际对外操作的空闲状态Ti描述总线操作的微处理器时序有三级 指令周期 总线周期 时钟周期 什么是指令 总线和时钟周期 3 48088的总线时序 续3 任何指令的取指阶段都需要存储器读总线周期 读取的内容是指令代码任何一条以存储单元为源操作数的指令都将引起存储器读总线周期 任何一条以存储单元为目的操作数的指令都将引起存储器写总线周期只有执行IN指令才出现I O读总线周期 执行OUT指令才出现I O写总线周期CPU响应可屏蔽中断时生成中断响应总线周期 如何实现同步 3 48088的总线时序 续4 总线操作中如何实现时序同步是关键CPU总线周期采用同步时序 各部件都以系统时钟信号为基准当相互不能配合时 快速部件 CPU 插入等待状态等待慢速部件 I O和存储器 CPU与外设接口常采用异步时序 它们通过应答联络信号实现同步操作 最小组态的总线时序 本节展开微处理器最基本的4种总线周期存储器读总线周期存储器写总线周期I O读总线周期I O写总线周期 最小模式下的总线读操作 最小模式下的总线写操作 存储器写总线周期 T1状态 输出20位存储器地址A19 A0IO M 输出低电平 表示存储器操作 ALE输出正脉冲 表示复用总线输出地址T2状态 输出控制信号WR 和数据D7 D0T3和Tw状态 检测数据传送是否能够完成T4状态 完成数据传送 存储器写总线周期 T1状态 输出20位存储器地址A19 A0IO M 输出低电平 表示存储器操作 ALE输出正脉冲 表示复用总线输出地址T2状态 输出控制信号WR 和数据D7 D0T3和Tw状态 检测数据传送是否能够完成T4状态 完成数据传送 1 20位地址总线的形成 采用3个8282进行锁存和驱动Intel8282是三态透明锁存器 类似有Intel8283和通用数字集成电路芯片373三态输出 输出控制信号有效时 允许数据输出 无效时 不允许数据输出 呈高阻状态透明 锁存器的输出能够跟随输入变化 1 20位地址总线的形成 采用3个8282进行锁存和驱动Intel8282是三态透明锁存器 类似有Intel8283和通用数字集成电路芯片373三态输出 输出控制信号有效时 允许数据输出 无效时 不允许数据输出 呈高阻状态透明 锁存器的输出能够跟随输入变化 主要的差别 最大模式配置和最小模式配置有一个主要的差别 最大模式下多了8288总线控制器 这是因为在最大模式系统中一般包含两个或多个处理器 这样就要解决主处理器和协处理器之间的协调工作问题和对总线的共享控制问题 8288总线控制器对主处理器发出的控制信号进行变换组合 以得到对存储器和I O端口的读 写信号和对8282及8286的控制信号 在最大模式系统中 一般还会有中断优先级管理部件 如8259A 当然 在系统所含的外部设备较少时 该部件也可省去 而反过来 在最小模式系统中 如果所含的外部设备较多时 也要加上中断优先级管理部件 3 4 1系统的复位和启动操作 8086的复位和启动操作是通过向RESET引脚送入高电平的复位信号来实现的 8086要求复位信号RESET至少维持4个时钟周期的高电平 如果是初次加电的系统复位 则要求复位信号维持5O S以上时间的高电平 8086进入复位状态各内部寄存器的初始值 启动 8086在复位后启动进入执行程序的正常工作状态时 将从内存的FFFFOH地址开始取指令 由于FFFFOH地址位于内存高端 不便存放系统程序 可在此处存放一条无条件转移指令 转移地址为系统程序的入口地址 这样 系统启动后 便自动进入到系统程序 3 4 2总线操作 8086要与存储器及外设端口交换数据 需要执行一个总线周期 这就是总线操作 按照数据传输方向来分 总线操作可以分为总线读操作和总线写操作 不难理解 总线读操作是指8086从存储器或外设端口读取数据 总线写操作是指8086将数据写入存储器或外设端口 3 4 3最小模式下的总线保持 当一个系统中具有多个总线主模块时 8086以外的其他总线主模块为了获得对总线的控制权 需要向8086发出使用总线的请求信号 而8086得到请求之后 如果同意让出总线 就要向请求使用总线的主摸块发应答信号 8086为此提供了一对专用于最小模式下的总线控制联络信号HOLD和HLDA 3 4 4最大模式下的总线请求 允许 在最大模式下 8086也提供了总线主模块之间传递总线控制权的手段 8086以外的其他总线主模块包括协处理器 DMA控制器 都可以连接在局部总线上 去共享8086和系统总线之间的接口 即共享地址锁存器 数据总线收发器 总线控制器 当然也共享系统总线 与最小模式不同的是 在最大模式下 总线控制信号不再是HOLD和HLDA 而是将这两个信号引脚变成功能更加完善的两个双向信号引脚RQ GT1和RQ GT0 它们都称为总线请求 总线允许信号引脚 可以分别连接两个其他的总线主模块 3 5总线的概念及8086系统总线的构成 总线是构成计算机系统的互连机构 是多个系统功能部件之间进行数据传送的公共通道 并在争用资源的基础上进行工作 总线具有物理特性 功能特性 电气特性 机械特性 因此必须标准化 微型计算机系统的标准总线从ISA总线 16位 带宽8MB s 发展到EISA总线 32位 带宽33 3MB s 和VESA总线 32位 带宽132MB s 又进一步发展到PCI总线 64位 带宽264MB s 衡量总线性能的重要指标是总线带宽 它定义为总线本身所能达到的最高数据传输速率 3 5 1总线的功能与分类 一个单处理器系统中的总线 大致分为三类 内部总线 微处理器内部连接各寄存器及运算部件之间的总线 系统总线 微处理器同其他高速功能部件 如存储器 通道等互相连接的总线 I O总线 中 低速I O设备之间互相连接的总线 总线具有如下特性 物理特性 指总线的物理连接方式 包括总线的根数 总线的插头 插座的形状 引脚线的排列方式等 功能特性 总线中每一根引线的功能 电气特性 定义每一根线上信号的传递方向及有效电平范围 送入的信号叫输入信号 IN 从处理器发出的信号叫输出信号 OUT 时间特性 定义了每根线在什么时间有效 规定了总线上各信号有效的时序关系 这样才能正确无误地使用 3 5 2总线标准及信号组成 相同的指令系统 相同的功能 不同厂家生产的各功能部件在实现方法上可能各不相同 但各厂家生产的相同功能部件却可以互换使用 其原因在于它们都遵守了相同的系统总线的要求 亦即得益于系统总线的标准化 总线内部结构 当代流行的标准总线追求与结构 处理器 技术无关的开发标准 其总线内部结构包含 1 数据传送总线 地址线 数据线 控制线组成 2 仲裁总线 3 中断和同步总线 4 公用线 电源 地线 时钟 复位等信号线 PCI总线是当前流行的总线标准 是一个高带宽且与处理器无关的标准总线 又是至关重要的层次总线 它采用同步定时协议和集中式仲裁策略 并具有自动配置能力 PCI适合于低成本的小系统 因此在微机系统中得到了广泛的应用 3 5 3总线操作时序 PCI总线周期由当前被授权的主设备发起 PCI支持任何主设备和从设备之间点到点的对等访问 也支持某些主设备的段广播读写 PCI总线周期类型由主设备在C BE 3 0 线上送出的4位总线命令代码指明 被目标设备译码确认 然后主从双方协调配合完成指定的总线周期操作 4位代码组合可指定16种总线命令 典型的PCI总线周期如下 1 存储器读 写总线周期2 存储器写和使无效周期3 特殊周期4 配置读 写周期5 双地址周期 PCI总线周期的操作时序有如下特点 采用同步时序协议 总线上所有事件 即信号电平转换出现在时钟信号的下跳沿时刻 而对信号的采样出现在时钟信号的上跳沿时刻 总线周期由被授权的主方启动 以帧 FRAME 信号变为有效来指示一个总线周期的开始 3 一个总线周期由一个地址期和一个或多个数据期组成 在地址期内除给出目标地址外 还在C BE 线上给出总线命令以指明总线周期类型 4 地址期为一个总线时钟周期 一个数据期在没有等待状态下也是一个时钟周期 一次数据传送是在挂钩信号IRDY 和TRDY 都有效情况下完成 任一信号无效 在时钟上跳沿被对方采样到 都将加入等待状态 PCI总线周期的操作时序有如下特点 5 总线周期长度由主方确定 在总线周期期间FRAME 持续有效 但在最后一个数据期开始前撤除 由此可见 PCI的数据传送以猝发式传送为基本机制 且PCI具有无限制的猝发能力 猝发长度由主方确定 没有对猝发长度加以固定限制 6 主方启动一个总线周期时要求目标方确认 即在FRAME 变为有效和目标地址送上AD线后 目标方在延迟一个时钟周期后必须以DEVSEL 信号有效予以响应 否则 主设备中止总线周期 7 主方结束一个总线周期时不要求目标方确认 目标方采样到FRAME 信号已变为无效时 即知道下一数据传送是最后一个数据期 3 5 48086的系统总线 8086的系统总线与早期计算机总线的结构极为相似 它实际上是处理器芯片引脚的延伸 是处理器与I O设备适配器的通道 这种简单的总线一般由50 100条线组成 这些线按其功能可分为三类 地址线 数据线和控制线 早期计算机总线的结构 1 单总线结构在单处理器的计算机中 使用一条单一的系统总线来连接CPU 主存和I O设备 叫做单总线结构 要求连接到总线上的逻辑部件必须高速运行 以便在某些设备需要使用总线时能迅速获得总线控制权 当不再使用总线时 能迅速放弃总线控制权 简单总线结构的不足 简单总线结构的不足之处在于 第一 CPU是总线上的唯一主控者 第二 总线信号是CPU引脚信号的延伸 故总线结构紧密与CPU相关 通用性较差 2 双总线结构 在CPU和主存之间专门设置了一组高速的存储总线 使CPU可通过专用总线与存储器交换信息 减轻了系统总线的负担 主存仍可通过系统总线与外设之间实现DMA操作 而不必经过CPU 3 三总线结构 当代流行的总线内部结构 PCI总线结构 3 6嵌入式处理器及其应用3 6 1概述 嵌入式处理器是各种类型面向用户 面向产品 面向应用的嵌入式系统的核心部件 其功耗 体积 成本 可靠性 速度 处理能力 电磁兼容性等均能很好地满足嵌入式应用的各项要求 应用越来越广泛 嵌入式处理器可以分成以下几类 嵌入式微处理器 EmbeddedMicro processorUnit EMPU 嵌入式微控制器 MicrocontrollerUnit MCU 嵌入式DSP处理器 EmbeddedDigitalSignalProcessor EDSP 嵌入式片上系统 SystemOnChip SOC 嵌入式应用 嵌入式应用需求的广泛性 以及大部分应用功能的单一性 确定性的特点 决定了嵌入式处理器实现高性能的途径与通用微处理器有所不同 目前大多数是针对专门的应用领域进行专门设计来满足高性能 低成本和低功耗的要求 例如 视频游戏需要有很高的图形处理能力 手持 掌上 移动和网络PC 要求具备虚拟内存管理和标准的外围设备 手机和个人移动通信设备 要求在具有高性能和数字信号处理能力的同时具有超低功耗 调制解调器 传真机和打印机则要求低成本的处理器 机顶盒和DVD机要求高度的集成性 数码相机要求既要有通用性又要有图像处理能力 3 6 2嵌入式微处理器 嵌入式微处理器由通用微处理器演变而来 与通用微处理器不同的是 在嵌入式应用中 将微处理器装配在专门设计的电路板上 只保留和嵌入式应用紧密相关的功能部件 去除其他的冗余功能部分 这样就以最低的功耗和资源实现了嵌入式应用的特殊要求 此外 为了满足嵌入式应用的特殊要求 嵌入式微处理器在工作温度 抗电磁干扰 可靠性等方面相对于通用微处理器都做了各种优化和增强 嵌入式微处理器目前主要有IntelX86 AMDAm186 88 ARM MIPS IBMPowerPC Motorola68000等系列 3 6 3嵌入式微控制器 嵌入式微控制器目前的品种和数量最多 有些品种亦称为单片机 比较有代表性的通用系列包括MCS 51 MCS 96 196 296 P51XA C166 167 MC68HC05 11 12 16 AT89等 另外还有许多半通用系列如 支持USB接口的MCU8XC930 931 C540 C541 支持I2C CAN Bus LCD的众多专用MCU和兼容系列 目前微控制器占嵌入式系统约70 的市场份额 3 6 4嵌入式DSP处理器 比较有代表性的嵌入式DSP处理器是TexasInstruments的TMS320系列和Motorola的DSP56000系列 TMS320系列处理器包括用于控制的C2000系列 移动通信的C5000系列 以及性能更高的C6000和C8000系列 DSP处理器 DSP56000目前已经发展成为DSP56000 DSP56100 DSP56200和DSP56300等几个不同系列的处理器 另外Philips公司也推出了基于可重构嵌入式DSP结构 用低成本 低功耗技术制造的R E A LDSP处理器 特点是具备双Harvard结构和双乘 累加单元 应用目标是大批量消费类产品 3 6 5嵌入式片上系统 SOC SOC可以分为通用系列和专用系列两类 通用系列包括Infineon Siemens 的TriCore Motorola的M Core 某些ARM系列器件 Echelon和Motorola联合研制的Neuron芯片等 专用SOC系列一般专用于某个或某类嵌入式系统中 不为一般用户所知 一个有代表性的产品是Philips的SmartXA 它将XA单片机内核和支持超过2048位复杂RSA算法的CCU单元制作在一块硅片上 形成一个可加载JAVA或C语言的专用的SOC 可用于公众互联网如Internet安全方面 3 6 6嵌入式处理器的发展趋势 嵌入式处理器可预见的发展趋势表现为以下几个方面 集成化与微型化高性能与低成本高可靠性低功耗硬件功能实现的可编程化 本章小结 本章在回顾了微处理器的发展历程后 重点讲述了典型的十六位微处理器8086的内部结构 引脚信号和总线时序 内部结构主要应掌握8086的编程结构 寄存器结构 为学习指令系统和汇编语言程序设计打下基础 8086的引脚信号的功能 特别是一些控制信号的功能应深刻理解和熟练掌握 8086执行指令涉及三种周期 指令周期 总线周期和时钟周期 要掌握这三种周期的区别和相互之间的关系 要掌握几种基本总线周期的时序 结合8086的引脚信号理解并掌握总线信号在这些典型总线周期中出现的时序关系 从而为学习8086微处理器同内存储器和I O设备的连接 接口 做好准备 补充 提高并行性的技术途径 时间重叠 Time interleaving 时间并行多个过程在时间上相互错开 轮流重叠地使用同一套硬件设备的各个部分资源重复 Resource replication 空间并行通过重复设置资源 尤其是硬件资源 提高性能 提高并行性的技术途径 资源共享 Resource sharing 使多个任务按一定时间顺序轮流使用同一套硬件设备单机系统中并行性的发展 9 1 3指令流水线 部件冗余 分时系统多机系统中并行性的发展 9 1 4多机系统耦合度 松散耦合 紧密耦合 流水线的时空图 流水线技术 把一个重复的过程分解为若干个子过程 每个子程序可以与其他子过程同时进行描述流水线的工作 最常用的方法是时间 空间图 时空图 横坐标 表示时间 即各个任务在流水线中所经过的时间纵坐标 表示空间 即流水线的各个子

温馨提示

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

评论

0/150

提交评论