第二章 输入输出接口和输入输出通道 2-2
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
TTL—CMOS电平转换:
TTL输出低电平最大值<CMOS允许输入低电平最大值 TTL输出高电平最小值>CMOS要求输入高电平最小值 +5V供电的CMOS可直接与TTL相连,TTL的输出电平较低,要用 上拉电阻Rv把TTL输出电平拉高。
+5V
附:
Rv
TTL
CMOS
TTL
2015-4-16
CMOS
输出 1 0 输入 1 0
2.2—5 0.4---0 2 --- 5 0.8--- 0
4.99-- 5 0.01- 0 3.5-- 5 1.5--0
23
CMOS器件的工作电压范围在5—15V,若CMOS器件用 5v以上电源时,TTL电路的输出级应用集电极开路的OC 门电路,用上拉电阻把输出电平提高到所需要的值,如图 +5 V 5—15V Rv值取决不同系列型 号的集成电路,一般 Rv 都可满足电平转换要 求。 TTL CMOS
2015-4-16
15
2 存储器容量的扩展
存储器容量:指一个存储器芯片所能存储的二进 制信息量。 容量 = 字数 X 字长
如:Intel 2732表示为4K X 8B、Intel27512表示为 64K X 8B。
当单片存储器芯片(RAM或ROM)的容量不能 满足系统要求时,许多片组合以扩充字长(位扩充) 或字数(字扩充)。 a)存储器位扩充——举例说明 用1K X 1B的SRAM芯片位扩充形成1K X 8B的芯片 组,所需芯片为:
0
0 1 1
0
1 0 1
1
0 1 0
读I/O口
写I/O口 读存储器 写存储器
IORC
IOWC MRDC MWTC
2015-4-16
4
独立编址方式示意图
00000H FFFFFH
存储器 执行指令MOV,ADD,SHL,……
0000H FFFFH
I/O端口 执行指令IN,OUT
2015-4-16
5
(二)I/O接口与存储器统一编址方式
再次:进行I/O端口的数量统计、数据流向安排和端口 地址号分配;
2015-4-16 26
四、I/O接口设计的方法、步骤及设计举例
第四:I/O接口硬件电路的扩展设计;(包括 扩展方案选择、地址译码器扩展和负载 能力扩展等) 第五:I/O接口控制软件设计。 最后:软硬件联调。
I/O接口扩展方案选择: 1) 购置现成的多功能I/O接口板 2) 自行设计、安装接口电路
解答步骤:
第一步、了解设计中所涉及到的芯片的引脚分布及其 工作原理; Z80CPU、并行接口芯片PIO、计数器/定时器CTC、 8位ADC0808、8位DAC0832 第二步、分析各芯片地址分配情况;
第三步、连线。
2015-4-16 13
2015-4-16
14
试分析下图中 8237A 、 8259A 、 8253 、 8255A 的地址范围
A4 0 0 0 0 0 0 0 0
A3 1 1 1Hale Waihona Puke Baidu1 1 1 1 1
A2 0 0 0 0 1 1 1 1
A1 0 0 1 1 0 0 1 1
A0 0 1 0 1 0 1 0 1
输出
输入
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
CEA CEB CEC CED CEE CEF CEG CEH
29
4000H
2015-4-16
19
用16KX8B的存储器芯片组成64KX8B存储器
2015-4-16 20
3 负载能力的的扩展
扩展的 I/O 接口和存储器的数据线都同时挂在 CPU 的数据线上,各芯片的地址都要挂到CPU的地址线上, 控制线也都挂到 CPU的控制总线上。但系统总线的负 载能力有限,所以在设计者自己设计微机控制系统时, 需要考虑CPU各总线的负载能力。 微机系统中,通常采用两种不同工艺制造的器件, 即 TTL 器 件 和 MOS 器 件 ( TTL 又 分 标 准 TTL 器 件 74XXX ,和低功耗肖特基 TTL 器件 74LSXXX )。它 们之间级连使用,逻辑电平是一致的(“ 1” 电平 ≥ 1.8~3.8V ,” 0” 电平 ≤ 0.8~0.3V ),但功耗和驱动能 力有差别。表2-4列出了TTL和MOS器件的I/O电流。
2015-4-16
二、I/O接口与系统的连接
常用的I/O接口芯片有Z-80PIO、8255A和8251A。
I/O接口与外设之间的连接
2015-4-16
7
接口芯片与CPU之间必要的连接信号有4类: 1)数据信号 2)读写控制信号
3)片选信号和地址线A1、A0
4)时钟、复位、中断控制、联络等信号
2015-4-16
2015-4-16
24
CMOS---TTL电平转换 采用+5V电源的CMOS器件可直接驱动LSTTL 门,但对标准门即74系列芯片一般要加一级晶 体管驱动级。 由表2-4可见, CMOS器件的输入电流小,驱 动能力也差。
2015-4-16 25
四、I/O接口设计的方法、步骤及设计举例
1) I/O接口设计的方法、步骤
8086在最小模式下利用M/IO来区分访问存储器还
是I/O接口。(P29)
2015-4-16
3
8086在最大模式下,由于引脚不够用,没有直接输
出M/IO、RD、WR,而是由S2, S1, S0输出三个总 线周期状态信号编码送至总线控制器8288,经8288 解决后,再生成IORC(读I/O口) IOWC(写I/O 口),即 S0 S1 S2 CPU总线时间 8288控制信号
该方式把所有的I/O接口的端口都当作是存储器的 一个单元对待,不设专门的I/O指令,所有传送和访 问存储器的指令都可用来对I/O 口操作。Intel51系 列、96系列单片机都是采用统一编址方式的。
比较两种编址方式:(P29) 独立编址:内存地址空间和I/O接口地址空间分开, 互不影响,译码电路较简单;设有专门的I/O指令, 程序易区分、执行时间短。缺点是要采用专门的I/O 周期、I/O控制线和有限的I/O指令,使微处理器复 杂化。 统一编址: I/O接口可与存储器公用译码和控制电 路;访问内存的指令都可以用于I/O操作,数据处理 能力强。缺点是I/O接口要占用存储器地址空间的一 部分;指令共用,难以区分I/O操作。 6
2015-4-16
17
字扩展示意图
存储器位数满足要求需要扩充字数(单元数)时, 同样需要多个芯片组成芯片组。如,用上述的1KX8B 芯片组扩充成4KX8B芯片组,则需要的芯片组数
4 K 8B 4(组) 1K 8B
2015-4-16
18
例二:
用4片16KX8B的存储器芯片组成64KX8B存储器连接 线路。 分析:16K存储器芯片的地址为14位,而64K存储器 的地址应有16位。连接时,各芯片的14位地址线可 直接接地址总线的A0~A13,而地址总线的A15、 A14则接到2—4译码器的输入端,其输出端四根选择 线分别接到四片芯片的片选CS端。
2015-4-16 27
2) 举例说明I/O接口设计
例1:8088CPU系统,有8组8位的数字量和 开关量由外部输入,同时有8组8位的控制 和显示数据输出到外部。若指定8个输入端 口号为E8H~EFH,8个输出端口地址号为 F0H ~F7H,所有输入输出信息交换均可 采用无条件传送方式。试按此要求为该微 机系统设计I/O接口电路。
2015-4-16
1K 8B 8(片) 1K 1B
16
位扩展示意图
这 8篇芯片地址线 A0~A9、片选信号 CS以及读/写控 制信号WE都分别连到一起,只有数据输出端8片各自 独立,每片代表一位。当CPU访问该芯片组时,其发 出的地址和控制信号同时传给 8 个芯片,选中每个芯 片的同一单元(一位),其单元内容被同时读至数据 线的相应位或数据总线上的内容分别同时写入相应单 元。
接口设计的任务包括确定各外围设备的控制方式, 接口硬件电路设计和接口控制软件设计。
具体设计步骤如下:
首先:了解外设或被控设备与 CPU之间信息交换的要 求;(联络信号、 I/O数据格式、 I/O 线数量、最短响 应时间和服务时间估算、I/O控制方式等) 其次:考虑软硬件功能分配;(速度、成本、特性、 设计难以程度等)
2015-4-16
11
74LS138(3:8)译码器
2015-4-16
12
例一: 采用8位的Z80CPU微机控制系统,按控制要求 扩展一个并行接口芯片 PIO、一个计数器/定时器CTC、 一个 8 位的 A/D 转换器 ADC0808 和一个 8 位的 D/A 转换 器 DAC0832 。 指 定 它 们 的 地 址 分 别 是 40H~43H 、 44H~47H、58H和5CH。
2015-4-16
2
一、I/O接口的编址方式
编址方式是为了区别存储器和I/O接口读写操作而 设定的。分为I/O接口和存储器统一编址,I/O接口 独立编址。编址方式是由所选定的微处理器决定的。 (一)I/O接口独立编址方式
将存储器地址空间和I/O接口地址空间分开设置,
互不影响。设有专门的IN、OUT指令来完成I/O操作。 如:Z80利用MREQ和IORQ区分访问存储器还是I/O 接口。
2015-4-16
8088
I/O接口电路设计
74LS32
&
A0A1A2A3A4A5A6A7 IOR
G1 G2B G2A C B A 》1
Y0
CE
74LS138A
1
G1 G2B G2A C B A
2015-4-16
74LS138B
: : :
30
74LS244
8088
I/O接口电路设计
74LS32
&
2.3 I/O接口设计
本节主要任务:
学会对存储器、I/O端口的编址;
掌握I/O接口与系统的连接,I/O接口的扩展 技术; 设计一般的I/O接口硬件电路。
2015-4-16
1
I/O接口设计任务: (1)根据生产过程和生产机械或管理的要 求及外设的特性选定I/O控制方式;(这取 决于对信息交换的速度和CPU的工作效率的 要求) (2)设计I/O接口硬件并编写相应的接口控 制程序。(这取决于控制速度、可靠性及成 本)
0 0
C A2 0 0 0 0 1 1 1 1
B A1 0 0 1 1 0 0 1 1
A A0 0 1 0 1 0 1 0 1
译码 器B 输出
273 片选 输入
地址总线
有 效 信 号
A7 1 1 1 1 1 1 1 1
A6 1 1 1 1 1 1 1 1
A5 1 1 1 1 1 1 1 1
A4 1 1 1 1 1 1 1 1
1
74LS244A
数据 输入
: : :
74LS273H
74LS32
1
G1 G2B G2A C B A
74LS138B
Y7
: : :
CP
》1
2015-4-16 21
MOS器件的输入电流小,驱动能力也差。一个 MOS器件只能带一个标准74XXX器件(约-1.6mA) 或四个74LSXXX器件(-0.4mA),但它可以驱动10 个左右的MOS器件。通常,同类器件带8~10个没有 问题,若超过了就要加驱动器。
2015-4-16
22
表2-4的讨论
A0A1A2A3A4A5A6A7 IOR
G1 G2B G2A C B A 》1
Y0
CE
74LS138A
1
G1 G2B G2A C B A
2015-4-16
74LS138B
: : :
31
74LS244
数据 输入
地址分析
输出端口8个用74LS273,端口地址号为F0H ~F7H
译码器
G1
1
G2B G2A
2015-4-16
28
地址分析
译码器 G174LS244 G2B,端口地址号为 G2A C B E8H A ~ 译码 输入端口8个用 EFH244 器A 片选 1 0 0 地址总线
有 效 信 号
A7 1 1 1 1 1 1 1 1
A6 1 1 1 1 1 1 1 1
A5 1 1 1 1 1 1 1 1
A3 0 0 0 0 0 0 0 0
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
CPA CPB CPC CPD CPE CPF CPG CPH
32
2015-4-16
8088
I/O接口电路设计
74LS32
&
A0A1A2A3A4A5A6A7 IOR
G1 G2B G2A C B A 》1
Y0
CE
74LS138A
8
2015-4-16
9
2015-4-16
10
三、I/O接口扩展 1 扩展I/O接口地址及存储器容量。 1) 地址扩展 常用地址译码器有2:4(四中选一)、3:8 (八中选一)和4:16(十六中选一)译码器 等。比如74LS138(3:8)译码器和74LS139 和74LS155(双2:4)译码器。
TTL输出低电平最大值<CMOS允许输入低电平最大值 TTL输出高电平最小值>CMOS要求输入高电平最小值 +5V供电的CMOS可直接与TTL相连,TTL的输出电平较低,要用 上拉电阻Rv把TTL输出电平拉高。
+5V
附:
Rv
TTL
CMOS
TTL
2015-4-16
CMOS
输出 1 0 输入 1 0
2.2—5 0.4---0 2 --- 5 0.8--- 0
4.99-- 5 0.01- 0 3.5-- 5 1.5--0
23
CMOS器件的工作电压范围在5—15V,若CMOS器件用 5v以上电源时,TTL电路的输出级应用集电极开路的OC 门电路,用上拉电阻把输出电平提高到所需要的值,如图 +5 V 5—15V Rv值取决不同系列型 号的集成电路,一般 Rv 都可满足电平转换要 求。 TTL CMOS
2015-4-16
15
2 存储器容量的扩展
存储器容量:指一个存储器芯片所能存储的二进 制信息量。 容量 = 字数 X 字长
如:Intel 2732表示为4K X 8B、Intel27512表示为 64K X 8B。
当单片存储器芯片(RAM或ROM)的容量不能 满足系统要求时,许多片组合以扩充字长(位扩充) 或字数(字扩充)。 a)存储器位扩充——举例说明 用1K X 1B的SRAM芯片位扩充形成1K X 8B的芯片 组,所需芯片为:
0
0 1 1
0
1 0 1
1
0 1 0
读I/O口
写I/O口 读存储器 写存储器
IORC
IOWC MRDC MWTC
2015-4-16
4
独立编址方式示意图
00000H FFFFFH
存储器 执行指令MOV,ADD,SHL,……
0000H FFFFH
I/O端口 执行指令IN,OUT
2015-4-16
5
(二)I/O接口与存储器统一编址方式
再次:进行I/O端口的数量统计、数据流向安排和端口 地址号分配;
2015-4-16 26
四、I/O接口设计的方法、步骤及设计举例
第四:I/O接口硬件电路的扩展设计;(包括 扩展方案选择、地址译码器扩展和负载 能力扩展等) 第五:I/O接口控制软件设计。 最后:软硬件联调。
I/O接口扩展方案选择: 1) 购置现成的多功能I/O接口板 2) 自行设计、安装接口电路
解答步骤:
第一步、了解设计中所涉及到的芯片的引脚分布及其 工作原理; Z80CPU、并行接口芯片PIO、计数器/定时器CTC、 8位ADC0808、8位DAC0832 第二步、分析各芯片地址分配情况;
第三步、连线。
2015-4-16 13
2015-4-16
14
试分析下图中 8237A 、 8259A 、 8253 、 8255A 的地址范围
A4 0 0 0 0 0 0 0 0
A3 1 1 1Hale Waihona Puke Baidu1 1 1 1 1
A2 0 0 0 0 1 1 1 1
A1 0 0 1 1 0 0 1 1
A0 0 1 0 1 0 1 0 1
输出
输入
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
CEA CEB CEC CED CEE CEF CEG CEH
29
4000H
2015-4-16
19
用16KX8B的存储器芯片组成64KX8B存储器
2015-4-16 20
3 负载能力的的扩展
扩展的 I/O 接口和存储器的数据线都同时挂在 CPU 的数据线上,各芯片的地址都要挂到CPU的地址线上, 控制线也都挂到 CPU的控制总线上。但系统总线的负 载能力有限,所以在设计者自己设计微机控制系统时, 需要考虑CPU各总线的负载能力。 微机系统中,通常采用两种不同工艺制造的器件, 即 TTL 器 件 和 MOS 器 件 ( TTL 又 分 标 准 TTL 器 件 74XXX ,和低功耗肖特基 TTL 器件 74LSXXX )。它 们之间级连使用,逻辑电平是一致的(“ 1” 电平 ≥ 1.8~3.8V ,” 0” 电平 ≤ 0.8~0.3V ),但功耗和驱动能 力有差别。表2-4列出了TTL和MOS器件的I/O电流。
2015-4-16
二、I/O接口与系统的连接
常用的I/O接口芯片有Z-80PIO、8255A和8251A。
I/O接口与外设之间的连接
2015-4-16
7
接口芯片与CPU之间必要的连接信号有4类: 1)数据信号 2)读写控制信号
3)片选信号和地址线A1、A0
4)时钟、复位、中断控制、联络等信号
2015-4-16
2015-4-16
24
CMOS---TTL电平转换 采用+5V电源的CMOS器件可直接驱动LSTTL 门,但对标准门即74系列芯片一般要加一级晶 体管驱动级。 由表2-4可见, CMOS器件的输入电流小,驱 动能力也差。
2015-4-16 25
四、I/O接口设计的方法、步骤及设计举例
1) I/O接口设计的方法、步骤
8086在最小模式下利用M/IO来区分访问存储器还
是I/O接口。(P29)
2015-4-16
3
8086在最大模式下,由于引脚不够用,没有直接输
出M/IO、RD、WR,而是由S2, S1, S0输出三个总 线周期状态信号编码送至总线控制器8288,经8288 解决后,再生成IORC(读I/O口) IOWC(写I/O 口),即 S0 S1 S2 CPU总线时间 8288控制信号
该方式把所有的I/O接口的端口都当作是存储器的 一个单元对待,不设专门的I/O指令,所有传送和访 问存储器的指令都可用来对I/O 口操作。Intel51系 列、96系列单片机都是采用统一编址方式的。
比较两种编址方式:(P29) 独立编址:内存地址空间和I/O接口地址空间分开, 互不影响,译码电路较简单;设有专门的I/O指令, 程序易区分、执行时间短。缺点是要采用专门的I/O 周期、I/O控制线和有限的I/O指令,使微处理器复 杂化。 统一编址: I/O接口可与存储器公用译码和控制电 路;访问内存的指令都可以用于I/O操作,数据处理 能力强。缺点是I/O接口要占用存储器地址空间的一 部分;指令共用,难以区分I/O操作。 6
2015-4-16
17
字扩展示意图
存储器位数满足要求需要扩充字数(单元数)时, 同样需要多个芯片组成芯片组。如,用上述的1KX8B 芯片组扩充成4KX8B芯片组,则需要的芯片组数
4 K 8B 4(组) 1K 8B
2015-4-16
18
例二:
用4片16KX8B的存储器芯片组成64KX8B存储器连接 线路。 分析:16K存储器芯片的地址为14位,而64K存储器 的地址应有16位。连接时,各芯片的14位地址线可 直接接地址总线的A0~A13,而地址总线的A15、 A14则接到2—4译码器的输入端,其输出端四根选择 线分别接到四片芯片的片选CS端。
2015-4-16 27
2) 举例说明I/O接口设计
例1:8088CPU系统,有8组8位的数字量和 开关量由外部输入,同时有8组8位的控制 和显示数据输出到外部。若指定8个输入端 口号为E8H~EFH,8个输出端口地址号为 F0H ~F7H,所有输入输出信息交换均可 采用无条件传送方式。试按此要求为该微 机系统设计I/O接口电路。
2015-4-16
1K 8B 8(片) 1K 1B
16
位扩展示意图
这 8篇芯片地址线 A0~A9、片选信号 CS以及读/写控 制信号WE都分别连到一起,只有数据输出端8片各自 独立,每片代表一位。当CPU访问该芯片组时,其发 出的地址和控制信号同时传给 8 个芯片,选中每个芯 片的同一单元(一位),其单元内容被同时读至数据 线的相应位或数据总线上的内容分别同时写入相应单 元。
接口设计的任务包括确定各外围设备的控制方式, 接口硬件电路设计和接口控制软件设计。
具体设计步骤如下:
首先:了解外设或被控设备与 CPU之间信息交换的要 求;(联络信号、 I/O数据格式、 I/O 线数量、最短响 应时间和服务时间估算、I/O控制方式等) 其次:考虑软硬件功能分配;(速度、成本、特性、 设计难以程度等)
2015-4-16
11
74LS138(3:8)译码器
2015-4-16
12
例一: 采用8位的Z80CPU微机控制系统,按控制要求 扩展一个并行接口芯片 PIO、一个计数器/定时器CTC、 一个 8 位的 A/D 转换器 ADC0808 和一个 8 位的 D/A 转换 器 DAC0832 。 指 定 它 们 的 地 址 分 别 是 40H~43H 、 44H~47H、58H和5CH。
2015-4-16
2
一、I/O接口的编址方式
编址方式是为了区别存储器和I/O接口读写操作而 设定的。分为I/O接口和存储器统一编址,I/O接口 独立编址。编址方式是由所选定的微处理器决定的。 (一)I/O接口独立编址方式
将存储器地址空间和I/O接口地址空间分开设置,
互不影响。设有专门的IN、OUT指令来完成I/O操作。 如:Z80利用MREQ和IORQ区分访问存储器还是I/O 接口。
2015-4-16
8088
I/O接口电路设计
74LS32
&
A0A1A2A3A4A5A6A7 IOR
G1 G2B G2A C B A 》1
Y0
CE
74LS138A
1
G1 G2B G2A C B A
2015-4-16
74LS138B
: : :
30
74LS244
8088
I/O接口电路设计
74LS32
&
2.3 I/O接口设计
本节主要任务:
学会对存储器、I/O端口的编址;
掌握I/O接口与系统的连接,I/O接口的扩展 技术; 设计一般的I/O接口硬件电路。
2015-4-16
1
I/O接口设计任务: (1)根据生产过程和生产机械或管理的要 求及外设的特性选定I/O控制方式;(这取 决于对信息交换的速度和CPU的工作效率的 要求) (2)设计I/O接口硬件并编写相应的接口控 制程序。(这取决于控制速度、可靠性及成 本)
0 0
C A2 0 0 0 0 1 1 1 1
B A1 0 0 1 1 0 0 1 1
A A0 0 1 0 1 0 1 0 1
译码 器B 输出
273 片选 输入
地址总线
有 效 信 号
A7 1 1 1 1 1 1 1 1
A6 1 1 1 1 1 1 1 1
A5 1 1 1 1 1 1 1 1
A4 1 1 1 1 1 1 1 1
1
74LS244A
数据 输入
: : :
74LS273H
74LS32
1
G1 G2B G2A C B A
74LS138B
Y7
: : :
CP
》1
2015-4-16 21
MOS器件的输入电流小,驱动能力也差。一个 MOS器件只能带一个标准74XXX器件(约-1.6mA) 或四个74LSXXX器件(-0.4mA),但它可以驱动10 个左右的MOS器件。通常,同类器件带8~10个没有 问题,若超过了就要加驱动器。
2015-4-16
22
表2-4的讨论
A0A1A2A3A4A5A6A7 IOR
G1 G2B G2A C B A 》1
Y0
CE
74LS138A
1
G1 G2B G2A C B A
2015-4-16
74LS138B
: : :
31
74LS244
数据 输入
地址分析
输出端口8个用74LS273,端口地址号为F0H ~F7H
译码器
G1
1
G2B G2A
2015-4-16
28
地址分析
译码器 G174LS244 G2B,端口地址号为 G2A C B E8H A ~ 译码 输入端口8个用 EFH244 器A 片选 1 0 0 地址总线
有 效 信 号
A7 1 1 1 1 1 1 1 1
A6 1 1 1 1 1 1 1 1
A5 1 1 1 1 1 1 1 1
A3 0 0 0 0 0 0 0 0
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
CPA CPB CPC CPD CPE CPF CPG CPH
32
2015-4-16
8088
I/O接口电路设计
74LS32
&
A0A1A2A3A4A5A6A7 IOR
G1 G2B G2A C B A 》1
Y0
CE
74LS138A
8
2015-4-16
9
2015-4-16
10
三、I/O接口扩展 1 扩展I/O接口地址及存储器容量。 1) 地址扩展 常用地址译码器有2:4(四中选一)、3:8 (八中选一)和4:16(十六中选一)译码器 等。比如74LS138(3:8)译码器和74LS139 和74LS155(双2:4)译码器。