华东理工大学微机原理历年真题第七章PPT课件下载推荐.ppt
《华东理工大学微机原理历年真题第七章PPT课件下载推荐.ppt》由会员分享,可在线阅读,更多相关《华东理工大学微机原理历年真题第七章PPT课件下载推荐.ppt(27页珍藏版)》请在冰豆网上搜索。
u
(1)I/O指令寻址(独立的I/O寻址)u
(2)存储器映象寻址一、一、I/OI/O指令寻址指令寻址z输入输出地址空间与存储器地址空间是独立分开的。
z说明:
z
(1)指令中分别设立了面向存储器和I/O的指令。
z
(2)有控制信号IO/M来区分存储器读写和I/Oz(3)地址信号:
存储器A0A19I/O直接寻址A0A7DX间接寻址A0A15I/O空间存储器空间二、存储器映象寻址二、存储器映象寻址z把一个外设端口作为存储器的一个单元来对待,一个外设端口占有一个存储器的地址。
在进行I/O传送时,用和存储器传送相同的指令就可实现。
z
(1)在内存中辟出一部分空间作为I/O地址空间z
(2)没有存储器和I/O的控制信号。
存储空间z(3)CPU对外设的操作可使用全部存储器操作指令。
z(4)I/O有较大的编程空间,但占用了部分内存单元。
I/O空间第二节CPU与外设数据传送方式一、一、CPUCPU与与I/OI/O设备之间的接口信息设备之间的接口信息z1.数据数据数字量、模拟量、开关量z2.状态信息状态信息用于确保CPU与外设间可靠交换数据的一类信息,通常反映出外设当前的工作状态。
如:
输入数据是否准备好,输出设备是否空。
z3.控制信息控制信息用于控制外设的启动与停止。
AB数据DB状态CB控制说明:
(1)状态,控制信息可通过数据总线在CPU和I/O接口之间传送,在I/O接口中,它们有各自的寄存器,有各自的端口地址。
(2)CPU通过IN读入状态寄存器的内容,了解外设运行情况。
CPU通过OUT写入控制寄存器内容,控制外设工作。
(3)一个外设接口往往有几个端口地址。
34CPU外设接口外设二、无条件传送方式二、无条件传送方式(同步方式同步方式)应用场合已知外部设备(如开关,七段显示器等)已经准备好,而不必查询它们的状态的情况下,可直接用IN和OUT指令同外设传送信息。
DB至输出设备来自输入设备ABWRIO/MRD说明:
(1)输入接三态缓冲器与CPUDB相连,只有当CPU执行INA,(PORT)时选中三态缓冲器,数据送至DB。
(2)输出接锁存器,因为CPU执行OUT指令时只需几s,而外设数据需保持一段时间。
(3)由地址线译码,与WR,RD,IO/M组合得端口选择信号(4)接口电路与程序都简单锁存器三态缓冲器地址译码三、查询传送方式三、查询传送方式(条件传送条件传送)
(1)从外设接口读入状态字。
(2)检查就绪位,判断是否传送数据。
N(3)如果外设未就绪,重复Y
(1)
(2)(4)外设就绪,CPU从外设读入数据或把数据写入外设,同时清除外设的就绪状态标志位。
输入状态字就绪?
传送数据1.程序查询输入程序查询输入D0D7数据Ready(D7)IO/MSTBRD+5VA0A7说明:
(1)输入接口:
数据信息,锁存器,三态缓冲器状态信息,触发器,三态缓冲器
(2)接口有两个端口地址:
数据口(DATA_PORT)状态口(STATUS_PORT)。
(3)输入设备一边发出数据,一边发出选通信号(STB)(4)CPU先从状态口读入状态信息,数据若准备好,从数据口读入数据。
锁存器三态缓冲器输入设备三态缓冲器RQ状态D地址译码器程序如下:
POLL:
INAL,STATUS_PORTTESTAL,80HJEPOLLINAL,DATA_PORT2.程序查询输出程序查询输出D0D7WRIO/MRDBUSYA0A7+5V(D7)ACK说明:
(1)输出接口:
数据信息,锁存器,数据端口地址状态信息,触发器,三态缓冲器,状态端口地址
(2)输出设备接收到CPU发出的数据后,发出ACK信号,使状态触发器置0,即BUSY=0。
CPU读入这状态信息,送下一个数据。
(3)CPU执行OUT指令,WR,IO/M,地址译码信号有效,数据送至数据缓冲器,同时令状态触发器Q=1,一方面通知输出设备数据已准备好,另一方面使BUSY=1。
锁存器输出设备三态缓冲器Q状态状态RD地址译码器程序如下:
INAL,STATUS_PORTTESTAL,80HJNEPOLLMOVAL,STOREOUTDATA_PORT,AL3.多个外设的查询传送多个外设的查询传送YNYNYN读设备1状态就绪?
就绪?
设备1服务设备2服务设备3服务读设备2状态读设备3状态总结:
z
(1)查询传送,CPU需不断地查询外设接口的状态,这样占用CPU的大量工作时间。
z
(2)外设越多,查询的周期越长。
35四、中断传送方式四、中断传送方式为了提高CPU的工作效率,可采用中断方式。
z1.中断中断主程序中断服务程序中断请求2.中断传送的接口电路中断传送的接口电路D0D7数据IO/MSTBRDA0A7+5VINTR8INTA锁存器三态缓冲器输入设备三态缓冲器中断中断请求请求DQ地址译码DQ中断中断屏蔽屏蔽中断中断矢量矢量中断过程:
z
(1)输入设备发数据和STB信号,把数据打入锁存器,并使中断请求触发器Q=1。
z
(2)中断允许的话(中断屏蔽Q=1),门打开,发出INTR,中断禁止的话(中断屏蔽Q=0),门关闭,不能发INTRz(3)CPU接收此请求,发中断响应INTA,一方面开启三态缓冲器,把接口的中断矢量经DB送CPU,使CPU根据此中断矢量转向执行此外设的中断服务程序。
另一方面将中断请求触发器复位,清除INTR。
z(4)CPU执行中断服务程序,输入数据。
z(5)中断服务程序执行完毕,CPU返回主程序继续执行。
查询传送方式输入状态字就绪?
传送数据NY中断传送方式主程序中断服务程序中断请求五、直接内存存取五、直接内存存取(DMA)DMA)传送方式传送方式中断传送方式的特点z
(1)中断传送比程序查询大大提高了CPU的效率。
z
(2)中断传送仍由CPU通过程序来传送数据。
1.DMA传送方式传送方式z
(1)利用专门的DMA电路,让外设与内存间直接进行高速数据传送,而不通过CPU,这样不用涉及保护现场,而只跟存储器的工作速度有关。
z
(2)DMA传送时CPU交出总线的管理权,处于保持状态,由DMA控制器管理总线。
2.DMA控制器的功能控制器的功能z
(1)能向CPU发DMA请求信号HOLD。
z
(2)CPU响应总线请求,发出响应信号HLDA,给DMAC后,接管总线控制权,进入DMA方式。
z(3)发地址信息,能对存储器寻址及能修改地址指针。
z(4)发读写等控制信号。
z(5)能决定传送的字节数,判断DMA传送是否结束。
z(6)发DMA结束信号,使CPU恢复正常工作状态。
3.DMA过程HOLDReadyHLDADMA请求请求DMA响应响应CPU存储器输入设备输入设备DMA控制器数据数据控制控制/状态状态端口端口端口端口数据数据缓冲缓冲寄存器寄存器DMA请求请求触发器触发器地址寄存器计数器控制/状态z
(1)外设数据准备好,发一个选通脉冲使DMA请求触发器置1,一方面使控制/状态端口发就绪信号,另一方面向DMAC发DMA请求信号。
z
(2)DMAC向CPU发HOLD,当CPU现行机器周期结束后响应总线请求,发HLDA,把总线控制权让给DMAC。
z(3)DMAC接管总线,发地址和控制信息,控制外设和内存间直接传送数据,然后修改地址指针和计数器,检查传送是否结束,直至传送结束。
z(4)传送完,DMAC撤消HOLD在下一周期使HLDA变低,CPU恢复正常工作状态。
36