已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
激活A20地址线详解A20地址线是一个很不容易理解的地方,这主要是由于历史原因造成的。在8086/8088中,有20根地址线,所以可以访问的地址是220=1M,但由于8086/8088是16位地址模式,能够表示的地址范围是0-64K,为了在8086/8088下能够访问1M内存,Intel采取了分段的模式:16位段基地址:16位偏移。但是这种方式有一个问题,他的最大的访问空间为:0xFFFF:0xFFFF=0x10FFEF=1M+64K-16Bytes,但8086/8088只有20位地址线,如果访问100000h10FFEFh之间的内存,则必须有第21根地址线。所以当程序员给出超过1M(100000H-10FFEFH)的地址时,系统并不认为其访问越界而产生异常,而是自动从重新0开始计算。到了80286,系统的地址总线发展为24根,这样能够访问的内存可以达到224=16M。在实模式下,80286和其后续系统所表现的行为应该和8086/8088所表现的完全一样,但是,80286芯片却存在一个BUG:如果程序员访问100000H-10FFEFH之间的内存,系统将实际访问这块内存,而不是重新从0开始。为了解决这个问题,IBM使用键盘控制器上剩余的一些输出线来管理第21根地址线,即A20 Gate。如果A20 Gate被打开,则当程序员给出100000H-10FFEFH之间的地址的时候,系统将真正访问这块内存区域;如果A20 Gate被禁止,则当程序员给出100000H-10FFEFH之间的地址的时候,系统仍然使用8086/8088的方式。从80286开始,系统出现了一种新的机制,被称为保护模式。那为什么进入保护模式一定要打开A20呢,它对保护模式有什么影响?如果A20 Gate被禁止,对于80286来说,其地址为24bit,其地址表示为EFFFFF;对于80386极其随后的32-bit芯片来说,其地址表示为FFEFFFFF。这种表示的意思是如果A20 Gate被禁止,则其第20-bit在CPU做地址访问的时候是无效的,永远只能被作为0;如果A20 Gate被打开,则其第20-bit是有效的,其值既可以是0,又可以是1。 所以,如果A20被禁止,可访问的内存只能是奇数段(2N+1)M,只有当A20被打开的时候才能访问连续的内存。 下面讨论一下如何打开A20地址线: 通常的方法是通过设置键盘控制器的端口值,不过有些系统觉得键盘控制器很慢,为此引入了一个Fast Gate A20,它用IO端口的0x92来处理A20信号线。还有一种方法是通过读取0xee端口来开启A20地址线,写端口则会禁止地址线。 我给大家介绍的是最普通的方法. 先看看804x的逻辑图 由此可见,端口p2的第1位(从0开始)就是控制A20地址线的地方,如果它置位,则开通A20地址线。分配给IO控制器的端口为0x60-0x6f,但IBM PC只用0x60和0x64,如下图: 系统在向0x60发送一字节的时候,就是发送键盘命令,键盘在接受命令后20ms内给予反应,并返回一个0xfa相应码。 键盘命令如下图: 系统向0x64写一字节,就是发送一个键盘控制器命令,可带参数,参数由0x60发送。键盘控制命令如图: 从理论上讲,打开A20 Gate的方法是通过设置8042芯片输出端口(64h)的2nd-bit,但事实上,当你向8042芯片输出端口进行写操作的时候,在键盘缓冲区中,或许还有别的数据尚未处理,因此你必须首先处理这些数据。 所以,激活A20地址线的流程为: 1.禁止中断; 2.等待,直到8042 Input buffer为空为止; 3.发送Write 8042 Output Port命令到8042 Input buffer 4.等待,直到8042 Input buffer为空为止; 5.向P2写入数据,将OR2置1; 相关程序如下: act20addr: call wait_8042free ;等待8042为空 mov al,0x0D1 ;D1的意思是向8042端口的P2写数据 mov dx,0x064 out dx,al call wait_8042free mov al,0x0DF ;DF为11011111,写入P2,根据图示,A20位置1,开通了A20地址线 mov dx,0x060 out dx,al ret wait_8042free: .ll_begin: in al,0x64 test al,0x02 ;测试指令,与运算
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 防踩踏教学课件
- 分层审核案例课件
- 钒产品介绍课件
- 分层开挖课件
- 妇产科课件模板课件
- 8-Glucosyl-5-7-dihydroxy-2-isopropylchromone-生命科学试剂-MCE
- 房产概念介绍课件
- 防触电安全宣传课件
- 2026-2027学年初中信息技术(信息科技)八年级 第11册滇人版(旧版)第6课 安全地使用网络课时检测卷
- 2026-2027学年初中心理健康七年级下册(2025)北师大版(2025)第十三课 人际交往的艺术课时达标卷
- 2025年-集团公司投资管理办法
- 文物建筑勘查设计取费标准(2020年版)
- 商事调解员管理办法
- 港口码头装卸作业安全规定
- 中医门诊病历书写规范与技巧
- 2025年中海油能源发展装备技术有限公司招聘笔试参考题库含答案解析
- 生物化学课件 第三章 维生素、激素与抗生素
- 07FS02防空地下室给排水设施安装
- 2024年上海《大飞机》杂志社有限公司招聘笔试参考题库含答案解析
- 贵州省遵义市2023-2022学年高二下学期学科竞赛生物试题扫描版有答案
- GB/T 41836-2022共享经济指导原则与基础框架
评论
0/150
提交评论