五邑大学1632位微机原理汇编语言及接口技术钱晓捷第4章_第1页
五邑大学1632位微机原理汇编语言及接口技术钱晓捷第4章_第2页
五邑大学1632位微机原理汇编语言及接口技术钱晓捷第4章_第3页
五邑大学1632位微机原理汇编语言及接口技术钱晓捷第4章_第4页
五邑大学1632位微机原理汇编语言及接口技术钱晓捷第4章_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

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

文档简介

第4章微机总线第4章:微机总线教学重点总线的数据传输8088的基本引脚8088的总线时序4.1总线技术计算机系统的总线结构以总线作为信息传输的公共通道总线结构的特点通过总线相互连接、实现数据传输组态灵活、易于扩展等广泛应用的总线都实现了标准化便于在互连各个部件时遵循共同的总线规范4.1.1总线类型芯片总线(ChipBus)芯片级互连,大规模集成电路芯片内部,或系统中各种不同器件连接在一起的总线局部总线(LocalBus)、片内总线内总线(InternalBus)模板级互连,主机内部功能单元(模板)间连接的总线板级总线、母板总线,或系统总线系统总线(SystemBus)是微机系统的主要总线外总线(ExternalBus)设备级互连,微机与其外设或微机之间连接的总线过去,指通信总线现在,常延伸为外设总线示意图4.1.2总线的数据传输主设备(Master):控制总线完成数据传输从设备(Slave):被动实现数据交换某一时刻,只能有一个主设备控制总线,其他设备此时可以作为从设备某一时刻,只能有一个设备向总线发送数据,但可以有多个设备从总线接收数据1.总线操作总线请求和仲裁(Busrequest&Arbitration)使用总线的主模块提出申请总线仲裁机制确定把总线分配给请求模块寻址(Addressing)主模块发出将要访问的从模块地址信息以及有关命令,启动从模块数据传送(DataTransfer)源模块发出数据,经数据总线传送到目标模块结束(Ending)数据、地址、状态、命令信息均从总线上撤除,让出总线2.总线仲裁总线仲裁:决定当前控制总线的主设备集中仲裁系统具有中央仲裁器(控制器)负责主模块的总线请求和分配总线的使用分布仲裁各个主模块都有自己的仲裁器和唯一的仲裁号主模块请求总线时,发送其仲裁号比较各个主设备仲裁号决定3.同步方式同步时序总线操作过程由共用的总线时钟信号控制适合速度相当的器件互连总线,否则需要准备好信号让快速器件等待慢速器件(半同步)处理器控制的总线时序采用同步时序异步时序总线操作需要握手联络(应答)信号控制传输的开始伴随有启动(选通或读写)信号传输的结束有一个确认信号,进行应答操作周期可变、可以混合慢速和快速器件4.传输类型读数据传送:数据由从设备到主设备写数据传送:数据由主设备到从设备猝发传送(数据块传送)给出起始地址,将固定块长的数据一个接一个地从相邻地址读出或写入写后读(Read-After-Write)先写后读同一个地址单元,适用于校验读修改写(Read-Modify-Write)先读后写同一个地址单元,适用共享数据保护广播(Broadcast)一个主设备对多个从设备的写入操作5.性能指标总线宽度总线能够同时传送的数据位数位数越多,一次能够传送的数据量越大总线频率总线信号的时钟频率时钟频率越高,工作速度越快总线带宽(Bandwidth)单位时间传输的数据量总线带宽越大,总线性能越高总线带宽总线带宽=总线传输速率=吞吐率总线带宽=传输的数据量÷需要的时间常用单位每秒兆字节(MB/s)每秒兆位(Mb/s)或每秒位(bps)5MHz的8088处理器8÷(4×0.2×10-6)bps=10×106bps=1.25MB/S举例1M=1064.28088的引脚信号请特别关注以下几个方面:指引脚信号的定义、作用;通常采用英文单词或其缩写表示信号从芯片向外输出,还是从外部输入芯片,或者是双向的起作用的逻辑电平高、低电平有效上升、下降边沿有效输出正常的低电平、高电平外,还可以输出高阻的第三态⑶有效电平⑷三态能力⑵信号的流向⑴引脚的功能示意图4.2.18088的两种组态模式两种组态构成两种不同规模的应用系统最小组态模式构成小规模的应用系统8088本身提供所有的系统总线信号最大组态模式构成较大规模的应用系统两种组态下的内部操作并没有区别8088的引脚图12345678910111213141516171819204039383736353433323130292827262524232221

GNDA14A13A12A11A10A9A8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCAD15AD16/S3AD17/S4AD18/S5AD19/S6SS0*(HIGH)MN/MX*RD*HOLD(RQ)*/GT0*)HLDA(RQ1*/GT1*)WR*(LOCK*)M/IO(S2*

)DT/R*(S1*

)DEN(S0

)ALEINTATEST*READYRESET8088通常在信号名称加上划线(如:MX)或星号(如:MX*)表示低电平有效4.2.2地址/数据信号AD7~AD0(Address/Data)地址/数据分时复用引脚,双向、三态在访问存储器或外设的总线操作周期中,这些引脚在第一个时钟周期输出存储器或I/O端口的低8位地址A7~A0其他时间用于传送8位数据D7~D04.2.2地址/数据信号(续1)A15~A8(Address)

中间8位地址引脚,输出、三态这些引脚在访问存储器或外设时,提供全部20位地址中的中间8位地址A15~A84.2.2地址/数据信号(续2)A19/S6~A16/S3(Address/Status)地址/状态分时复用引脚,输出、三态这些引脚在访问存储器的第一个时钟周期输出高4位地址A19~A16在访问外设的第一个时钟周期全部输出低电平无效其他时间输出状态信号S6~S34.2.3读写控制信号用于控制存储器或I/O端口进行数据传输存储器外设CPURead

Write1.基本读写引脚ALE(AddressLatchEnable)地址锁存允许,输出、三态、高电平有效ALE引脚高有效时,表示复用引脚:AD7~AD0和A19/S6~A16/S3正在传送地址信息由于地址信息在这些复用引脚上出现的时间很短暂,所以系统可以利用ALE引脚将地址锁存起来1.基本读写引脚(续1)IO/M*(InputandOutput/Memory)

I/O或存储器访问,输出、三态该引脚输出高电平时,表示CPU将访问I/O端口,这时地址总线A15~A0提供16位I/O口地址该引脚输出低电平时,表示CPU将访问存储器,这时地址总线A19~A0提供20位存储器地址1.基本读写引脚(续2)WR*(Write)

写控制,输出、三态、低电平有效有效时,表示CPU正在写出数据给存储器或I/O端口RD*(Read)读控制,输出、三态、低电平有效有效时,表示CPU正在从存储器或I/O端口读入数据2.基本总线操作IO/M*、WR*和RD*是最基本的控制信号组合后,控制4种基本的总线操作总线操作信号IO/M*WR*RD*存储器读MEMR*低高低存储器写MEMW*低低高I/O读IOR*高高低I/O写IOW*高低高3.同步操作引脚READY存储器或I/O口就绪,输入、高电平有效总线操作周期中,CPU会测试该引脚如果测到高有效,CPU直接进入下一步如果测到无效,CPU将插入等待周期等待周期中仍然要监测READY信号,确定是否继续插入等待周期4.2.4其他控制信号处理器必定具有地址总线数据总线基本读写控制信号还有中断请求和响应信号总线请求和响应信号时钟信号、复位信号电源Vcc地线GND1.中断请求和响应引脚INTR(InterruptRequest)可屏蔽中断请求,输入、高电平有效有效时,表示请求设备向CPU申请可屏蔽中断该中断请求是否响应受控于IF(中断允许标志)、可以被屏蔽掉1.中断请求和响应引脚(续1)INTA*(InterruptAcknowledge)可屏蔽中断响应,输出、低电平有效有效时,表示来自INTR引脚的中断请求已被CPU响应,CPU进入中断响应周期1.中断请求和响应引脚(续2)NMI(Non-MaskableInterrupt)不可屏蔽中断请求,输入、上升沿有效有效表示外界向CPU申请不可屏蔽中断该中断请求不能被CPU屏蔽,所以优先级别高于INTR(可屏蔽中断)主机与外设进行数据交换通常采用可屏蔽中断不可屏蔽中断通常用于处理掉电等系统故障2.总线请求和响应引脚HOLD总线保持(即总线请求),输入、高电平有效有效时,表示总线请求设备向CPU申请占有总线该信号从有效回到无效时,表示总线请求设备对总线的使用已经结束,通知CPU收回对总线的控制权2.总线请求和响应引脚(续1)HLDA(HOLDAcknowledge)总线保持响应(总线响应),输出、高电平有效有效表示CPU已响应总线请求并已将总线释放此时CPU的地址总线、数据总线及具有三态输出能力的控制总线将全面呈现高阻,使总线请求设备可以顺利接管总线待到总线请求信号HOLD无效,总线响应信号HLDA也转为无效,CPU重新获得总线控制权3.其它引脚RESET复位请求,输入、高电平有效该信号有效,将使CPU回到其初始状态;当他再度返回无效时,CPU将重新开始工作8088复位后CS=FFFFH、IP=0000H,所以程序入口在物理地址FFFF0H3.其它引脚(续1)CLK(Clock)

时钟输入系统通过该引脚给CPU提供内部定时信号8088的标准工作时钟为5MHzIBMPC/XT机的8088采用了4.77MHz的时钟,其时钟周期约为210ns3.其它引脚(续2)MN/MX*(Minimum/Maximum)组态选择,输入接高电平时,8088引脚工作在最小组态;反之,8088工作在最大组态TEST*测试,输入、低电平有效使用协处理器8087时,通过该引脚和WAIT指令,可使8088与8087的操作保持同步“引脚”小结CPU引脚是系统总线的基本信号可以分成三类信号8位数据线:D0~D720位地址线:A0~A19控制线:ALE、IO/M*、WR*、RD*、READYINTR、INTA*、NMI,HOLD、HLDARESET、CLK、Vcc、GND4.38088的总线时序时序(Timing)是指信号高低电平(有效或无效)变化及相互间的时间顺序关系CPU时序决定系统各部件间的同步和定时总线时序描述CPU引脚如何实现总线操作什么是总线操作?4.38088的总线时序(续1)总线操作是指CPU通过总线对外的各种操作8088的总线操作主要有:存储器读、I/O读操作存储器写、I/O写操作中断响应操作总线请求及响应操作CPU正在进行内部操作、并不进行实际对外操作的空闲状态Ti描述总线操作的微处理器时序有三级指令周期→总线周期

→时钟周期什么是指令、总线和时钟周期?4.38088的总线时序(续2)指令周期是指一条指令经取指、译码、读写操作数到执行完成的过程。若干总线周期组成一个指令周期总线周期是指CPU通过总线操作与外部(存储器或I/O端口)进行一次数据交换的过程8088的基本总线周期需要4个时钟周期4个时钟周期编号为T1、T2、T3和T4总线周期中的时钟周期也被称作“T状态”时钟周期的时间长度就是时钟频率的倒数当需要延长总线周期时插入等待状态TwCPU进行内部操作,没有对外操作时,其引脚就处于空闲状态Ti何时有总线周期?4.38088的总线时序(续3)任何指令的取指阶段都需要存储器读总线周期,读取的内容是指令代码任何一条以存储单元为源操作数的指令都将引起存储器读总线周期,任何一条以存储单元为目的操作数的指令都将引起存储器写总线周期只有执行IN指令才出现I/O读总线周期,执行OUT指令才出现I/O写总线周期CPU响应可屏蔽中断时生成中断响应总线周期如何实现同步?4.38088的总线时序(续4)总线操作中如何实现时序同步是关键CPU总线周期采用半同步时序:各部件都以系统时钟信号为基准当相互不能配合时,快速部件(CPU)插入等待状态等待慢速部件(I/O和存储器)CPU与外设接口常采用异步时序,它们通过应答联络信号实现同步操作存储器写总线周期T4T3T2T1ALECLKA19/S6~A16/S3A15~A8AD7~AD0A15~A8A7~A0输出数据A19~A16S6~S3READY(高电平)IO/M*WR*T1状态——输出20位存储器地址A19~A0IO/M*输出低电平,表示存储器操作;ALE输出正脉冲,表示复用总线输出地址T2状态——输出控制信号WR*和数据D7~D0T3和Tw状态——检测数据传送是否能够完成T4状态——完成数据传送I/O(输入/输出)写总线周期T4T3T2T1ALECLKA19/S6~A16/S3A15~A8AD7~AD0A15~A8A7~A0输出数据0000S6~S3READY(高电平)IO/M*WR*T1状态——输出16位I/O地址A15~A0IO/M*输出高电平,表示I/O操作;ALE输出正脉冲,表示复用总线输出地址T2状态——输出控制信号WR*和数据D7~D0T3和Tw状态——检测数据传送是否能够完成T4状态——完成数据传送存储器读总线周期T4T3T2T1ALECLKA19/S6~A16/S3A15~A8AD7~AD0A15~A8A7~A0输入数据A19~A16S6~S3READY(高电平)IO/M*RD*T1状态——输出20位存储器地址A19~A0IO/M*输出低电平,表示存储器操作;ALE输出正脉冲,表示复用总线输出地址T2状态——输出控制信号RD*T3和Tw状态——检测数据传送是否能够完成T4状态——前沿读取数据,完成数据传送I/O读总线周期T4T3T2T1ALECLKA19/S6~A16/S3A15~A8AD7~AD0A15~A8A7~A0输入数据S6~S3READY(高电平)IO/M*RD*0000T1状态——输出16位I/O地址A15~A0IO/M*输出高电平,表示I/O操作;ALE输出正脉冲,表示复用总线输出地址T2状态——输出控制信号RD*T3和Tw状态——检测数据传送是否能够完成T4状态——前沿读取数据,完成数据传送等待状态Tw同步时序通过插入等待状态,来使速度差别较大的两部分保持同步在读写总线周期中,判断是否插入Tw1.在T3的前沿检测READY引脚是否有效2.如果READY无效,在T3和它T4之间插入一个等效于T3的Tw,转13.如果READY有效,执行完该T状态,进入T4状态演示4.48086和80286的引脚1.8086内部结构:指令队列长度为6个字节外部引脚:16位的数据/地址复用总线AD15~AD0数据总线的高字节有效BHE*/S7存储器、I/O选择M/IO*2.80286内部结构:增加存储管理单元MMU等外部引脚:68条,多数引脚信号在功能和命名上与8086相同4.5微机系统总线IBMPC系列机的系统总线以I/O扩展插槽形式提供给用户,所以被称为I/O通道IBMPC系列机的许多外设,例如显示器、打印机等,都是通过各自插在I/O通道上的接口电路卡(适配器)与微机系统连接组合起来的4.5.1IBMPC总线IBMPC总线是IBMPC/XT机上使用的8位系统总线有62条信号线,用双列插槽连接,分A面(元件面)和B面(焊接面)实际上是8088CPU核心电路总线的扩充和重新驱动与最大组态下的8088总线相似1.信号功能D7~D0——8位双向数据线A19~A0——20位输出地址线ALE——地址锁存允许MEMR*——存储器读,输出、低有效MEMW*——存储器写,输出、低有效IOR*——I/O读,输出、低有效IOW*——I/O写,输出、低有效I/OCHRDY——I/O通道准备好1.信号功能(续1)IRQ2~IRQ7——中断请求信号,输入、高有效AEN——地址允许信号,输出、高有效,用于指示DMA总线周期DRQ1~DRQ3——DMA请求信号,输入、高有效DACK0*~DACK3*——DMA响应信号,输出、低有效T/C——计数结束信号,输出、正脉冲有效1.信号功能(续2)RESET——复位信号,输出、高有效IOCHCK*——I/O通道校验,输入、低有效OSC——晶振频率脉冲,输出14.31818MHz的主振频率信号CLK——系统时钟,输出4.77MHz的系统时钟信号+5V、-5V、+12V、-12V、GND——电源和地线2.存储器读总线周期I/OCHRDYA19~A0D7~D0T4T3T2T1ALECLKMEMR*T1状态——送出存储器地址T2状态——存储器读控制信号有效T3状态——检测I/OCHRDY准备好信号,确定是否插入等待状态TwT4状态——读取存储器送来的数据2.存储器写总线周期I/OCHRDY

A19~A0D7~D0T4T3T2T1ALECLKMEMW*T1状态——送出存储器地址T2状态——存储器写控制信号有效;同时送出数据T3状态——检测I/OCHRDY准备好信号,确定是否插入等待状态TwT4状态——存储器读取数据3.I/O读总线周期I/OCHRDYA15~A0D7~D0T4TwT3T2T1ALECLKIOR*T1状态——送出I/O地址T2状态——I/O读控制信号有效T3状态——确定插入一个等待状态TwTw状态——检测I/OCHRDY准备好信号,确定是否再插入等待状态TwT4状态——CPU读取外设送来的数据3.I/O写总线周期I/OCHRDYA15~A0D7~D0T4TwT3T2T1ALECLKIOW*T1状态——送出I/O地址T2状态——I/O写控制信号有效;同时在送出数据T3状态——确定插入一个等待状态TwTw状态——检测I/OCHRDY准备好信号,确定是否再插入等待状态TwT4状态——外设读取CPU送来的数据4.5.2ISA总线16位系统总线,用于IBMPC/AT及其兼容机由前62引脚(A和B面)和后36引脚(C和D接面)两个插槽组成:IBMPC机和IBMPC/XT机的IBMPC总线前62个信号,其中8位数

温馨提示

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

评论

0/150

提交评论