264.IO端口定义&编址方式&地址分配&译码

  • 时间:
  • 浏览:0
  • 来源:3分时时彩官网_3分时时彩投注平台注册_3分时时彩下注平台注册

1.1 I/O端口

端口(Port)是接口电路中能被CPU直接访问的寄存器(端口是寄存器,寄存器是存储器,容量小下行波特率 快)。CPU通过那此地址即端口向接口电路中的寄存器发送命令,读取情况汇报和传送数据,否则,另另另一个多接口可否 有多少端口,如情况汇报口、数据口和命令口,分别对应于情况汇报寄存器、数据寄存器和命令寄存器。



● 情况汇报端口

情况汇报端口(State Port)主要用来指示内部设备的当前情况汇报。每种情况汇报用另另另一个多二进制位表示,每个内部设备可否 有多少情况汇报位,它们可被CPU读取,以测试或检查内部设备的情况汇报,决定系统多多线程 的流程。一般接口电路中常见的情况汇报位有准备就绪位(Ready)、内部设备忙位(Busy)、错误位(Error)等。

● 数据端口

数据端口(Data Port)用以存放内部设备送往CPU的数据以及CPU输出到内部设备去的数据。那此数据是主机和内部设备之间交换的最基本信息,长度一般为1-4字节。数据端口主要起数据缓冲作用。

● 命令端口

命令端口(Command Port)也称控制端口(Control Port),用来存放CPU向接口发出的各种命令和控制字,以便控制接口或设备的动作。接口功能不同,接口芯片的形态也就不同,控制字的格式和内容自然各不相同。一般可编程接口芯片往往具有工作办法 命令字、操作命令字等。

1.2  I/O操作

通常所说的I/O操作是指对I/0端口的操作,而一定会对I/O设备的操作,即CPU所访问的是与I/O设备相关的端口,而一定会I/O设备三种。而I/O操作也这麼来不要 这麼来不要 这麼来不要 这麼来不要 CPU对端口寄存器的读写操作。CPU对数据端口进行一次读或写操作也这麼来不要 这麼来不要 这麼来不要 这麼来不要 与该接口连接的内部设备进行一次数据传送;CPU对情况汇报端口进行一次读操作,就可否 获得内部设备或接口自身的情况汇报代码;CPU把若干位控制代码写入控制端口,则原困对该接口或内部设备发出另另另一个多控制命令,要求该接口或内部设备按规定的要求工作。

I/O端口的编址办法 主要有三种:内存与I/O端口统一编址和I/O端口单独编址。

(1)统一编址

  统一编址是占据 整个存储空间中划分出一每种地址空间给外设端口使用,即把每另另另一个多I/O端口看作另另另一个多存储单元,与存储单元一样编址,访问存储器的所有指令均可用来访问I/O端口,我不要 设置专门的I/O指令,这麼来不要 这麼来不要 这麼来不要 这麼来不要 称为存储器映射I/O编址办法 ,地址空间分布情况汇报如图1-9所示 。 摩托罗拉公司的MC6800及68HC05等正确处理器就采用了什儿 办法 访问I/O设备。

  什儿 办法 的优点:

  • 在于I/O端口的地址空间较大
  • 对端口进行操作的指令功能较强
  • 使用时灵活方便

  什儿 办法 的缺点是

  • 端口占用了存储器的地址空间,
  • 使存储器容量减小,
  • 另外指令长度比专门I/O指令要长,因而执行下行波特率 较慢。

(2)独立编址

独立编址是指对系统中的I/O端口单独编址,与内存单元的地址空间相互分开,人及 独立,采用专门的I/O指令来访问具有独立空间的I/O端口,地址空间分布情况汇报如图1-10所示 。8086/8088系统中就采用什儿 编址办法 。

优点:

  • 不占用内存单元的有效地址空间,
  • 地址译码器较简单,
  • 端口操作指令长度较短,
  • 执行下行波特率 较快。

以上这三种I/O编址办法 各有利弊,不累似 型的CPU可根据内部设备特点采用不同的编制办法 。

项目名:

设计另另另一个多有6组I/O端口地址的译码电路

项目要求与目的:

(1)项目要求:通过项目了解74LS138译码器进行地址译码的办法 和工作原理。

(2)项目目的:●了解74LS138译码器的真值表。●了解用译码器设计I/O端口地址的办法 。

项目说明:

74LS138译码器有8个输出,本项目只用其中6个。而地址线的高5位A5~A9经过74LS138译码器,分别产生DMA控制器8237A、中断控制器8259A、定时/计数器8254、并行接口8255A等接口芯片的片选信号,而地址线的低5位A0~A4作为接口芯片内部寄存器的访问地址。由74LS138译码器真值表可知,当地址为000~01XH时,使输出为低,选中8237A,原困低位地址线A0~A3已接8237A,故8237A的端口地址为000H~01FH。某些端口与此同理,如8259A的片选地址是02X~03XH,端口地址为020~03FH。

 项目电路图:

另另另一个多有6组I/O端口地址的译码电路如图1-9所示。电路由地址总线、控制总线、74LS138译码器和门电路等组成。

3.1 地址分配

I/O端口地址分配

不累似 型的微机系统采用不同的I/O地址编排办法 ,I/O地址空间的划分也各不相同。对80x86而言,采用独立编排办法 ,I/O端口地址的16位,最大寻址范围为64K个地址。否则,在IBM-PC机及其兼容机的设计中,主板上只用了10位I/O端口地址线,否则支持的I/O端口数位102另另另一个多,地址空间为0000H~03FFH,否则把前51另另另一个多端口分配给了主板,后51另另另一个多端口分配给了扩展槽上的常规外设。如果在PC/AT系统中,作了某些调整,其中前256个端口(000~0FFH)供系统板上的I/O接口芯片使用,如表1-2所示。后768(80~3FFH)供扩展槽上的I/O接口控制卡使用,如表1-2所示。按照I/O设备的配置情况汇报,I/O接口的硬件分为如下两类。

(1) 系统板上的I/O接口

系统板上的I/O接口也称为板内接口,寻址到的一定会可编程大规模集成电路,完成相应的板内接口操作。如定时/计数器、中断控制器、DMA控制器、并行接口等。随着大规模集成电路的发展,这麼来不要 这麼来不要 这麼来不要 这麼来不要 I/O接口芯片或控制器都原困集成在一片或几片大规模集成电路芯片中,形成了主板芯片组,并命名为南/北桥、MCH/ICH等。表1-2所示的各种接口芯片,我真是在主板上只能看见,否则仍然完正地占据 于主板芯片组中(一般一定会南桥中),其板内地址也保持不变。

(2)扩展卡上的I/O接口

扩展卡主这麼来不要 这麼来不要 这麼来不要 这麼来不要 指插接在主板插槽上的接口卡,通过系统总线与CPU系统相连。那此扩展卡一般由若干个集成电路按一定得逻辑组成另另另一个多部件,如软驱卡、硬驱卡、图形卡、声卡、打印卡、串行通信卡等,如表1-3所示。

3.2 译码

I/O端口地址译码

微机系统暗含多个接口占据 ,接口内部往往暗含多个端口,CPU是通过地址对不同的端口加以区分的。把CPU送出的地址转变为芯片挑选和端口区分办法 的这麼来不要 这麼来不要 这麼来不要 这麼来不要 地址译码电路。每当CPU执行输入输出指令时,就进入I/O端口读写周期,此时首先是端口地址有效,否则是I/O读写控制信号TOR或有效,这麼来不要 这麼来不要 这麼来不要 这麼来不要 就可否 很好的把端口地址译码产生的译码信号同或结合起来,一起去去控制对I/O端口读原困写。接口地址译码办法 这麼来不要 这麼来不要 这麼来不要 这麼来不要 ,下面主要介绍三种。

(1)用门电路进行I/O端口地址译码

门电路译码这麼来不要 这麼来不要 这麼来不要 这麼来不要 采用与门、不是门、反相器及或非门等简单逻辑门器件,如74LS20、74LS80、74LS32、74LS08、74LS04等,构成译码电路。这是三种最基本的I/O端口地址译码办法 ,下面通过举例来说明设计办法 。

【例1-5】 使用74LS20/80/32和74LS04设计I/O端口地址为2F8H的只读译码电路。

分析:若要产生2F8H端口地址,则译码电路的输入地址就应具有如表1-4所示的值。

设计:按照表1-4中地址表的值,采用门电路就可否 设计出译码电路,如图1-10(a)所示。

图1-10(a)中AEN信号还要参加译码,原困AEN为高电平时,I/O占据 DMA办法 ,或信号由DMA控制器发出;AEN为低电平时,I/O占据 正常办法 ,或信号由CPU发出。原困该接口电路中I/O占据 正常办法 ,AEN还要为低电平,故用AEN信号参加译码来区分这三种办法 。

同理可设计出能执行读/写操作的2E2H端口地址的译码电路,如图1-10(b)所示。

(2)译码器进行I/O端口地址译码

若接口电路中还要使用多个端口地址,则可采用译码器来进行译码。译码器的型号有这麼来不要 这麼来不要 这麼来不要 这麼来不要 ,常用的译码器有3-8译码器74LS138;4-16译码器74LS154;双2-4译码器74LS139、74LS155等。下面通过举例来说明设计办法 。

【例1-6】 使用74LS138设计另另另一个多系统板是上接口芯片的I/O端口地址译码电路,否则让每个接口芯片内部的端口数目为3另另另一个多。

分析:原困系统板上的I/O端口地址分配在000~0FFH范围内,故只使用低8位地址线,这原困A9和A8两位应赋0值。为了让每个被选中的芯片内部拥有3另另另一个多端口,假如留出5根低地址线不参加译码,其余的高位地址线作为74LS138的输入线,参加译码,或作为74LS138的控制线与AEN一起去,控制74LS138的译码不是有效。由上述分析,可否 得到译码电路输入地址线的值,如表1-5所示。

 

对于译码器74LS138的分析有两点:一是它的控制信号线G1、和。只能当满足控制信号线G1为高电平, ==0时,74LS138不可否进行译码。二是译码的逻辑关系,即输入(C,B,A)与输入(Y0~Y7)的对应关系。74LS138输入/输出的逻辑关系,如表1-6所示。

 

从表1-6可知,若满足控制条件,即G1为高电平, ==0,则由输入端C、B、A的编码来决定输出:CBA=000,则为低电平,某些输出端为高电平;CBA=001,为低电平,某些输出端为高电平;…;CBA=111,为低电平,某些输出端为高电平。由此可分别产生8个译码输出信号(低电平)。若控制条件不满足,则输出全“1”,不产生译码输出信号,即译码无效。