2.画出DMA 方式接口电路的基本组成框图,并说明其工作过程(以输入设备为例)。
答:DMA方式接口电路的基本组成框图如下:
以数据输入为例,具体操作如下:
① 从设备读入一个字到 DMA 的数据缓冲寄存器 BR 中,表示数据缓冲寄存器“满”(如果I/O 设备是面向字符的,则一次读入一个字节,组装成一个字); ② 设备向DMA接口发请求(DREQ);
③ DMA接口向CPU申请总线控制权(HRQ);
④ CPU发回HLDA信号,表示允许将总线控制权交给DMA接口; ⑤ 将DMA主存地址寄存器中的主存地址送地址总线; ⑥ 通知设备已被授予一个 DMA 周期(DACK),并为交换下一个字做准备;
33
⑦ 将DMA数据缓冲寄存器的内容送数据总线; ⑧ 命令存储器作写操作;
⑨ 修改主存地址和字计数值;
⑩ 判断数据块是否传送结束,若未结束,则继续传送;若己结束,(字计数器溢出),则向CPU申请程序中断,标志数据块传送结束。
五、
设计题
1、设CPU 共有16 根地址线,8 根数据线,并用MREQ作访存控制信号(低电平有效), WR用作读写控制信号(高电平为读,低电平为写)。现有下列存储芯片:1K×4 位RAM, 4K×8 位RAM,2K×8 位ROM,以及74138 译码器和各种门电路,如图所示。画出CPU 与存储器连接图,要求:
(1)主存地址空间分配:8000H~87FFH 为系统程序区;8800H~8BFFH 为用户程序区。
(2)合理选用上述存储芯片,说明各选几片? (3)详细画出存储芯片的片选逻辑。
答:
1)根据主存地址空间分配为
A15 ??? A0
2K×8位 ???1000 0000 0000 0000 1000 0111 1111 1111 1K×8位 ???1000 1000 0000 0000 1000 1011 1111 1111
34
2)选出所用芯片类型及数量 2K×8位ROM 1片 1K×4位RAM 2片
3)CPU与存储芯片的连接图如图所示:
2、设CPU 共有16 根地址线,8 根数据线,并用MREQ(低电平有效)作访存控制信号,WR作读写命令信号(高电平为读,低电平为写)。现有下列存储芯片: ROM(2K?8 位,4K?4 位,8K?8 位), RAM(1K?4 位,2K?8 位,4K?8 位)
及74138 译码器和其他门电路(门电路自定)。
试从上述规格中选用合适芯片,画出CPU 和存储芯片的连接图。要求: (1)最小4K 地址为系统程序区,4096~16383 地址范围为用户程序区; (2)指出选用的存储芯片类型及数量; (3)详细画出片选逻辑。
35
解:(1)地址空间分配图:
系统程序区(ROM共4KB):0000H-0FFFH 用户程序区(RAM共12KB):1000H-3FFFH (2)选片:ROM:选择4K×4位芯片2片,位并联 RAM:选择4K×8位芯片3片,字串联(RAM1地址范围为:1000H-1FFFH,RAM2地址范围为2000H-2FFFH, RAM3地址范围为:3000H-3FFFH)
(3)各芯片二进制地址分配如下: A1A1A1A1A1A1AAAAAAAAAA5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 ROM0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,2 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 RAM0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 RAM0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 RAM0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 CPU和存储器连接逻辑图及片选逻辑如下图(3)所示: 36