你知道io端口与io内存有哪些区别吗?.doc
《你知道io端口与io内存有哪些区别吗?.doc》由会员分享,可在线阅读,更多相关《你知道io端口与io内存有哪些区别吗?.doc(4页珍藏版)》请在三一文库上搜索。
1、你知道io端口与io内存有哪些区别吗?(一)地址的概念物理地址:2)总线地址:总线的地址线或在地址周期上产生的信号。外设使用的是总线地址,CPU使用的是物理地址。,这是因为它们共享相同的地址空间这句话有点难理解,详见下面的“独立编址”。在其他平台上,可能需要转换/映射。比如:CPU需要访问物理地址是0xfa000的单元,那么在x86平台上,会产生一个PCI总线上对0xfa000地址的访问。因为物理地址和总线地址相同。3)虚拟地址:现代操作系统普遍采用虚拟内存管理(VirtualMemory Management)机制,这需要MMU(MemoryManagement Unit)的支持。MMU通常
2、是CPU的一部分,如果处理器没有MMU,或者有MMU但没有启用,CPU执行单元发出的内存地址将直接传到芯片引脚上,被内存芯片(物理内存)接收,这称为物理地址(Physical Address),如果处理器启用了MMU,CPU执行单元发出的内存地址将被MMU截获,从CPU到MMU的地址称为虚拟地址(Virtual Address),而MMU将这个地址翻译成另一个地址发到CPU芯片的外部地址引脚上,也就是将虚拟地址映射成物理地址。 外设都是通过读写设备上的统一编址也称为“I/O内存”方式,外设寄存器位于“内存空间”(很多外设有自己的内存、缓冲区,外设的寄存器和内存统称“I/O空间”)。 如,S独立
3、编址(单独编址):IO地址与存储地址分开独立编址,I/0端口地址不占用存储空间的地址范围,这样,在系统中就存在了另一种与存储地址无关的IO地址,CPU也必须具有专用与输入输出操作的IO指令(IN、OUT等)和控制逻辑。独立编址下,地址总线上过来一个地址,设备不知道是给IO端口的、还是给存储器的,于是处理器通过MEMR/MEMW和IOR/IOW两组控制信号来实现对I/O端口和存储器的不同寻址。如,CPU内存和I/O是一起编址的,就是说内存一部分的地址和I/O地址是重叠的。独立编址也称为“I/O端口”方式,外设寄存器位于“I/O(地址)空间”。 对于x86架构来说,通过IN/OUT指令访问。PC架
4、构一共有65536个8bit的I/O端口,组成64K个I/O地址空间,编号从00xFFFF,有16位,80x86用低16位地址线A0-A15来寻址。连续两个8bit的端口可以组成一个16bit的端口,连续4个组成一个 32bit的端口。I/O地址空间和CPU的物理地址空间是两个不同的概念,例如I/O地址空间为64K,一个32bit的CPU物理地址空间是4G。如,在Intel 8086+Redhat9.0 下用“more/proc/ioports”可看到:0000-001f : (三)不同体系结构编址方式总结几乎每一种外设都是通过读写设备上的寄存器来进行的。外设寄存器也称为“I/O端口”,通常包
5、括:控制寄存器、状态寄存器和数据寄存器三大类,而且一个外设的寄存器通常被连续地编址。CPU对外设IO端口物理地址的编址方式有两种:一种是I/O映射方式(I/Omapped),另一种是内存映射方式(Memorymapped)。而具体采用哪一种则取决于CPU的体系结构。内存映射方式”(Memorymapped)。这是一个与CPU地RAM物理地址空间不同的地址空间,所有外设的I/O端口均在这一空间中进行编址。CPU通过设立专门的I/O指令(如X86的IN和OUT指令)来访问这一空间中的地址单元(也即I/O端口)。这就是所谓的“I/O映射方式”(I/Omapped)。与RAM物理地址空间相比,I/O地
6、址空间通常都比较小,如x86 CPU的I/O空间就只有64KB(00xffff)。这是“I/O映射方式”的一个主要缺点。(四)IO端口与IO内存区别1.CPU是i386架构的情况2.CPU是ARM或PPC架构的情况X86体系中,具有两个地址空间:IO空间和内存空间,而IO空间:X86特有的一个空间,与内存空间彼此独立的地址空间,32位X86有64K的IO空间。IO端口:当寄存器或内存位于IO空间时,称为IO端口。一般寄存器也俗称I/O端口,或者说I/Oports,这个I/O端口可以被映射在MemorySpace,也可以被映射在I/IO内存:当寄存器或内存位于内存空间时,称为IO内存。(五)在L
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 知道 io 端口 存有 哪些 区别
链接地址:https://www.31doc.com/p-3381721.html