版权归原作者所有,如有侵权,请联系我们

[科普中国]-A20总线

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

A20总线,是x86体系的扩充电子线路之一。A20总线是专门用来转换地址总线的第二十一位。

历史当IBM设计IBM PC AT机器时,他们决定采用性能更好但是在实模式下并不完全兼容以前的Intel 8088与Intel 8086系列的Intel 80286微处理器。以前的x86体系微处理器并没有从A20到A23的总线。80286微处理器能够寻址到16MB的系统内存。

许多实模式程序仍然利用这一点,因此使不改变微处理器的段寄存器而去访问最开始的64KB内存成为一个通用的技巧。为了和这些程序保持兼容性,IBM自己在主板上去修复这个问题。在微处理器与系统总线间插入一个逻辑门完成了这个修复。这个逻辑门也因此被命名为A20总线。A20总线能被软件关闭或打开,以此来阻止或允许地址总线收到A20传来的信号。在引导系统时,BIOS先打开A20总线来统计和测试所有的系统内存。而当BIOS准备将计算机的控制权交给操作系统时会先将A20总线关闭。一开始,这个逻辑门连接到Intel 8042的键盘控制器。控制它是相对较慢。

激活A20总线是保护模式在引导阶段的步骤之一,通常在引导程序将控制权交给内核之前完成(例如在Linux下)。1

地址总线地址总线Address Bus)是一种计算机总线,是CPU或有DMA能力的单元,用来沟通这些单元想要访问(读取/写入)计算机内存组件/地方的物理地址。

数据总线的宽度,随可定址的内存组件大小而变,决定有多少的内存可以被访问。取个例子,一个16位宽度的地址总线(通常在1970年和1980年早期的8位处理器中使用)到达2的16次方 = 65536 = 64KB的内存地址,而一个32位地址总线(通常在像现今2004年的PC处理器中),在一个内存地址占据一个字节的前提下,可定址4,294,967,296 = 4GB的内存空间。

在大多数的微计算机中,可定址的组件都是8位的"字节"(所以"K"在这情况像相等于"KB"或kilobyte),有很多的计算机例子是以更大的数据区块当作他们实体上最小的可定址组件,像是大型主机、超级计算机以及某些工作站的CPU。2

x86x86泛指一系列由英特尔公司开发处理器的架构,这类处理器最早为1978年面市的“Intel 8086”CPU。

该系列较早期的处理器名称是以数字来表示80x86。由于以“86”作为结尾,包括Intel 8086、80186、80286、80386以及80486,因此其架构被称为“x86”。由于数字并不能作为注册商标,因此Intel及其竞争者均在新一代处理器使用可注册的名称,如Pentium。现时英特尔将其称为IA-32,全名为“IntelArchitecture,32-bit”,一般情形下指代32位的架构。3

参见内存地址

本词条内容贡献者为:

王慧维 - 副研究员 - 西南大学