第02章 IO端口地址译码技术

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5、CS的作用 片选信号CS是CPU用来在系统中选中某一个接口芯片 或控制芯片的。 若选中某一芯片,就是选中某一个相应的 外设。选中某一个接口芯片的实质是利用CS这个信号去打
通接口芯片的数据线与系统数据总线的连接, 使该芯片的
数据线与系统数据总线接通, 即选中了这个外设,才能与 CPU进行信息传送。
DMA控制器1 000H~01FH DMA控制器2 0C0H~0DFH DMA页面寄存器 080H~09FH 中断控制器1 中断控制器2 定时器 并行接口芯片 RT/CMOS RAM 020H~03FH 0A0H~0BFH 040H~05FH 060H~06FH 070H~07FH
协处理器
0F0H~0FFH
插件板(用户) 同步通信卡1 同步通信卡2 单显MDA 彩显CGA 彩显EGA/VGA 硬驱控制卡 软驱控制卡 PC网卡
300H~31FH 3A0H~3AFH 380H~38FH 3B0H~3BFH 3D0H~3DFH 3C0H~3CFH 1F0H~1FFH 3F0H~3FFH 360H~36FH
8
11
第2章 I/O端口地址译码技术
(2)译码电路的输入信号:包括来自系统总线的地址线和控制线。
① 地址线:把10位地址线分成高位/低位两部分地址线。高
位地址线输入译码电路, 并和控制信号经过逻 辑组合后,产生片选信号,选中接口芯片。 低
地址线不参加译码, 直接连到被选中的接口芯
片,去选中接口芯片内部的寄存器, 实现片内 端口寻址。
6
第2章 I/O端口地址译码技术
二、I/O端口地址分配
1、I/O端口硬件分类 (1)系统板上的I/O芯片 定时/计数器、中断控制器、DMA控制器、并行接口等 (2)I/O扩展槽上的接口控制卡(适配器) 软驱卡、硬驱卡、显卡、声卡、网卡、并行、串行通信卡 2、I/O端口地址分配 早期IBM—PC使用10条地址线中的低10位,A0~A9寻址范 围0000H~03FFH共1024个端口,前512个端口分给主板,后512 个端口分配给扩展槽的常规外设。 后来PC/AT系统中前256个端口00H~0FFH供系统板上的I/O 接口芯片使用,后768个100H~3FFH供扩展槽上的接口控制卡使 用,其中允许用户使用的地址是300H~31FH。
指令加以区别。因此这种编址方式又称为覆盖编址方式。
5
第2章 I/O端口地址译码技术
② 优点:是不占用存储器地址,因而不会减少存储器容量,专门的 I/O指令比存储器指令执行速度快, 并且与存储器指令区 别明显,从而使程序中的I/O操作清晰,可读性强。 ③ 缺点:是这种方式只能传送数据而无算术或逻辑运算功能。 (3)独立编址方式的端口访问 单字节——当端口地址为单字节宽度时,采用直接寻址方式(AL,AX) 最多可访问256个端口,系统主板上接口芯片的端口。 例:IN AL,port; 将port端口内容送AL IN AX,port; 将port和port+1端口内容送AX OUT port,AL; 将AL内容输出到port端口 OUT port,AX; 将AX内容送port和port+1端口 双字节——当端口地址宽度为双字节宽度时采用间接寻址方式(DX) 最多可访问216,64K 个端口,I/O扩展槽的接口控制卡上 的端口。 例:MOV DX,port IN AL,DX ;将DX指向的端口中读一个字节送AL MOV DX,poHale Waihona Puke Baidut IN AX,DX ;将DX和DX+1指向的2个端口组成一个字送AX
译码器是一种能实现译码功能的元件,是一种IC芯片。
I/O地址译码电路是一种电路,它一般除了译码器作为核心 芯片之外,还需要一些其他门电路或元器件作为辅助芯片, 一起进行逻辑组合,组成一个能实现I/O端口地址译码功能
的电路。可见,译码器并不是I/O地址译码电路的全部,而
是其中的一部分。
15
第2章 I/O端口地址译码技术
7
第2章 I/O端口地址译码技术
扩展槽上接口控制卡的端口地址 I/O芯片名称 系统板上接口芯片的端口地址 I/O芯片名称 端口地址 游戏控制卡 并行控制卡1 并行控制卡2 串行控制卡1 串行控制卡2 端口地址 200H~20FH 370H~37FH 270H~27FH 3F8H~3FFH 2F8H~2FFH
7、I/O地址译码电路设计的几个问题 (1)根据系统对I/O地址分配情况和选用I/O地址的原则, 合理选用 I/O 端口的地址范围。即选用用户可用的地 址,或未被占用的地址段,避免地址冲突。 (2)依据端口地址是否需要改变,选用译码电路的结构形 式。若需要改变,则采用开关式,否则采用固定式。 (3)根据用户对端口地址的设计要求,正确选用译码方法。 一般是单端口地址译码采用全译码法;多端口地址译 码采用部分译码法。 (4)根据应用系统中接口电路的规模,适当选用译码电路 的类型。 I/O端口地址译码有单个端口、 单个接口和 多个接口三种电路类型可供选择。 (5)由于产生相同端口的译码电路不是唯一的,设计者可 灵活选用不同的元器件和对参加译码的地址、控制信 号采用不同的逻辑组合,来设计地址译码电路。
故不设状态口。
② 端口的数目设置:与接口电路的规模和功能有关。 (4)端口的共用技术 一般情况下,一个端口只允许接纳一种信息,但有些接口 芯片允许同一端口既作命令口用,有作状态口用,或允许向同
一命令口写多个命令字,这就产生了端口共用问题。
当多个命令字写到同一命令口时,命令寄存器采用以下办 法来识别不同的命令:
存,缺一不可的两个方面。 IOR和IOW是CPU对外设进行读/ 写的硬件上的控制信号, 低电平有效。 但是, 这两个控制信
号本身不能激活自己,使之变为有效, 去控制读/写操作。 而
必须由软件编程,在程序中执行IN/OUT指令,才能激活IOR/ IOW,使之变为有效,实施对外设的读/写操作。
9
第2章 I/O端口地址译码技术
17
第2章 I/O端口地址译码技术
地址线
二进制 十六进制 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 AEN IOR
A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0 0 2 1 0 1 1 F 1 1 1 0 8 0 0
74LS30 (与非门) &
74LS32 (或门) ≥1
第2章 I/O端口地址译码技术
3、I/O端口地址选用原则 (1)系统占用的不能使用。 (2)厂商保留的不能使用。
(3)用户只用使用300H~31FH一段区间,为了避免与其他用户
开发的插板发生地址冲突,最好使用地址开关。 4、输入/输出指令(IN/OUT)与读/写控制信号(IOR/IOW)的关系
它们是为完成 I/O操作这一共同任务的软件和硬件相互依
16
第2章 I/O端口地址译码技术
四、I/O端口译码电路设计举例
1、固定式单个端口地址译码电路的设计 (1)要求:设计一个端口地址为2F8H的译码电路。 (2)分析:由于是单个端口地址的译码电路,不需要片选信号 CS ,故采用全译码方法。10 根地址线全部作为译 码电路的输入线,参加译码。并从题目要求的端口 地址是2F8H,可知10位输入地址线的取值是: A9~A0对应的值为1011111000 (3)设计:能够实现上述地址线取值的译码电路有很多种,一 般采用门电路就可以实现,而且很方便。常用的门 电路有:与门、或门、非门及与非、或非等。本例 设计采用的门电路有 74LS04 非门、74LS20 四输入 端与非门、74LS30 八输入端与非门、 74LS32 或门 和74LS133十三输入端与非门中的几个。
② 控制线:AEN、IOR、IOW、SBHE、I/OCS16等。
(3)译码电路的输出信号:把输入的地址线和控制线经过逻辑组 合后,所产生的输出信号线就是 1根
选中线,低电平有效。
12
第2章 I/O端口地址译码技术
3、译码电路的形式及组成
译码电路形式可分成固定式和开关(可选)式等几种。
(1)固定式:译出的I/O地址不能改变,不灵活(接口中用 到的端口地址不能改变), 一般由IC芯片或 译码器组成。 (2)开关式:地址可以改变, 一般由地址开关、译码器和 比较器组成。 (3)另外,采用GAL(PAL)器件来构建地址译码电路。 4、地址译码的译码方法 (1)要求产生单个端口时,采用全译码方法。 (2)要求产生多个端口时,采用部分译码方法。 (3)要求产生的端口可变时,采用地址开关的译码方法。
2F8H
74LS20 &
练习:设计可执行只读操作的端 口地址为2E2H的译码电路
18
第2章 I/O端口地址译码技术
2、固定式单个接口电路地址译码电路的设计 (1)要求:设计一个片内拥有8个端口的接口电路的I/O地址译码 电路,其端口地址为310H~317H。 (2)分析:由于接口芯片内部包括8个端口地址,应先选中芯片, 再从选中的芯片内部选端口,因此,需要产生片选信 号 CS, 故采用部分译码方法。 从题目要求端口地址 范围为310H~317H可知,其输入地址线的取值为: A9~A0对应的值为 1100010???,其中低 3 位不参加地 址译码电路译码,这3位地址变化范围为 000~111,可 满足在接口芯片内部寻址8个端口的要求。 高7位的地 址线固定不变,作为门电路的输入。 因此,在保证这 7 根输入线取值不变的条件下, 输出线为低电平的任 何一种逻辑组合电路, 都能满足本例题设计要求。 (3)设计:考虑到是单个接口电路,只需一个片选信号CS,故采 用IC门电路来组成译码电路。
4
第2章 I/O端口地址译码技术
② 优点:是CPU访问外设的操作比较灵活、方便,有利于提高端口 数据处理速度。 ③ 缺点:是外设端口占用了有效的存储器空间, 造成存储器有效 容量减小。另外,访内存指令一般都比专门I/O指令需要
更多的字节,因而执行时间较长。
(2)外设端口单独编址 ① 在这种编址方式下,外设的地址不占用存储器空间, 所有的外 设端口地址单独构成一个输入/输出空间,例如与存储器交换数 据用MOV传递指令,而与外设交换数据则用专用的输入指令IN和 输出指令OUT。这种单独编址会使得外设端口的地址与存储器单 元的地址有可能重叠,是访问存储器还是访问外设, 用不同的
13
第2章 I/O端口地址译码技术
I/O端口地址部分译码方法图
控制线
地址线高位
译 码 器
CS
接 口 芯 片
地址线低位
芯片中寄存器(端口)
14
第2章 I/O端口地址译码技术
5、地址译码电路的类型 (1)单个端口的地址译码电路(无需片选信号) (2)单个接口的译码电路(需要一个片选信号) (3)多个接口的地址译码电路(需要产生多个接口芯片的 片选信号) 6、译码器和I/O地址译码电路
3
第2章 I/O端口地址译码技术
(1)在命令字中设置特征位或设置专门的访问位,根据特征位 来识别不同的命令(8255)。 (2)在编写初始化程序时,按先后顺序向同一端口写不同的命 令字,命令寄存器就根据这种先后顺序的约定来识别不同 的命令(8251)。 (3)有的是采用两种方法相结合的手段来解决端口的共用问题 (8259)。 2、端口的编址 (1)外设端口和存储器统一编址 ① 在这种编址方式中, 将存储器空间分出一部分给外设 端口,CPU对存储器的访问或对外设的访问使用同一个 操作指令。例如与存储器交换数据用MOV传送指令,与 外设交换数据也用MOV传送指令,是访问存储器还是访 问外设,用不同的地址加以区别。
① 作用:CPU通过端口向接口电路中的寄存器发送命令、读
取状态和传送数据。 ② 类型:命令端口、状态端口、数据端口。
2
第2章 I/O端口地址译码技术
(3)端口的设置 一个接口电路中端口的设置包括端口的类型和数目两个方面。 ① 端口的类型设置:跟接口电路与 CPU交换数据的方式有关, 对无条件传送方式,因为不要查询状态,
第2章 I/O端口地址译码技术
主要内容:1、I/O端口及其编址方式 2、I/O端口地址分配 3、I/O端口地址译码 重点内容: I/O端口地址译码电路的设计
1
第2章 I/O端口地址译码技术
2.1 I/O端口地址译码
一、I/O端口及其编址方式
1、I/O端口 (1)定义:是接口电路中能被CPU直接访问的寄存器的地址。CPU 通过这些地址(端口)向接口电路的寄存器发送命令, 读取状态和传送数据。 I/O操作:对I/O端口的读写操作。 (2)端口的作用与类型
CS信号不是由CPU直接发出的,而是由I/O地址译码电
路发出来的。
10
第2章 I/O端口地址译码技术
三、I/O端口地址译码
1、端口地址译码 在执行I/O指令时,CPU首先把所要访问端口的地址放 到地址总线上(既选中该端口), 然后才能对其进行读或 写操作, 将总线上的地址信号转换为某个端口的“使能”信 号, 这个操作就称为端口地址的译码, 实现译码这个“媒 介”就为I/O地址译码电路。 2、I/O地址译码电路工作原理及作用 (1)作用:把地址和控制信号进行逻辑组合, 从而产生对 接口芯片的选择信号。
相关文档
最新文档