gpt4 book ai didi

x86 - 哈斯韦尔和继任者还能掩盖 A20 线吗?

转载 作者:行者123 更新时间:2023-12-03 09:33:51 29 4
gpt4 key购买 nike

维基百科引用英特尔手册中的这一声明

The functionality of A20M# is used primarily by older operating systems and not used by modern operating systems. On newer Intel 64 processors, A20M# may be absent.



这是一个短语,它实际上在现在的手册中,但它是模棱两可的:
  • 是否 A20M#实际上仅指引脚还是整个遮蔽物?
  • A20M 事件/中断在许多指令的描述中被命名(例如 TXT GETSEC 或 VMX 指令)。

  • 我所知道的

    A20M# 引脚本身已经消失,它曾被 DMI 中的 VLW(虚拟传统线)接口(interface)取代。 DMI 协议(protocol)足够丰富,可以包含用于断言各种传统引脚的消息:

    The PCH supports VLW messages as alternative method of conveying the status of the following legacy sideband interface signals to the processor: • A20M#, INTR, SMI#, INIT#, NMI



    这句话来自PCH系列8(Haswell时代)。

    到目前为止,PCH 还具有 A20GATE Pass-Through 功能。
    当 PCH 配置为捕获对传统 8042 IO 端口(60h、64h)的访问并改为提供 SMI(用于 USB 键盘/鼠标的 PS2 模拟)时,它可以选择让 A20 线路启用序列通过而不被捕获.

    根据 PCH 的配置方式,这允许 EC(手机)或 SuperIO 芯片(台式机)成为命令序列的目标。

    奇怪的是,PCH 系列 8(Haswell 时代)数据表报告:

    Note: A20M# functionality is not supported.



    然而,在 LPC 部分(EC/SuperIO 连接到该部分)中,这可能仅意味着 PCH 本身不模拟 A20 门,并且必须由外部芯片(EC 或 SuperIO)处理它。

    在这种情况下,PCI 必须有一个引脚才能被外部芯片断言。数据表没有提到任何内容。

    但是,我在中文网站的某个地方找到了我以前的 Haswell 笔记本电脑的示意图,示意图显示引脚(实际上是球)AN10(又名 TP14)用作 A20M 输入引脚:

    PCH input A20M pin

    左侧的蓝光框标记为 LYNX-POINT-DH82LPMS_BGA695。

    GATEA20 信号的另一端来自 EC(如预期的那样):

    EC GATEA20 output

    IT8586E/AX 是联想的 EC(显然)。

    所以 A20 线仍然可以在 Haswell 平台上被屏蔽 ,除非我误解了原理图。

    因此,关于 A20M 方面的数据表并不完整。可能英特尔的 BIOS 编写器指南拥有一切。

    我想知道的

    可以在至少一个 Haswell 平台上禁用 A20 线吗? Skylake及其继任者呢?

    我做了什么

    I wrote a simple legacy boot loader that checks if the A20 line is enabled and try to disable it :
  • 如果 A20 线被禁用,则测试结束。 A20 门功能存在于测试平台上。
  • 否则,它 asks the BIOS支持的 A20 门方法,然后询问 disable the A20 line (我信任 OSDev 的功能命名法,即启用与禁用什么东西,所以我希望调用禁用 A20 线而不是屏蔽)
  • 如果 BIOS 返回错误,程序会通过 KBC 禁用 A20 线路,使用快速 a20 方法和端口 0eeh方法。
  • 再次测试 A20 线路状态。如果它仍然启用,请手动禁用它(除非它已经完成)并再次测试它。

  • 当我在我的 Skylake 笔记本电脑上运行此程序时,BIOS 返回仅支持快速 A20 方法并且没有发出错误信号,但 A20 线路仍处于启用状态。即使手动禁用它,A20 线仍然启用。

    我得出的结论是 A20 线不能在 Skylake 上禁用,即它不再存在。

    最佳答案

    似乎至少有一个 Skylake 平台无法再禁用 A20 线。

    除了我的测试之外,我还找到了我可以在网上找到的 Skylake 笔记本电脑的第一个示意图 (Acer Swift SF314-51):

    A20GATE signal connection

    右边是 EC,它有一个 A20GATE 连接/上拉到 +3VS。
    我对这个示意图中的符号不​​太熟悉,但这些是唯一存在的 A20GATE 迹线,与 PCH 没有连接。

    考虑到(根据数据表)PCH 不支持 A20 门仿真,这似乎是支持该平台上没有 A20 掩蔽功能的有力证据 .

    如果我正确理解了原理图并且仅证明存在最近的 x86 平台,其中 A20 掩码不再存在,则此推理是有效的。

    在有人给出更完整的答案之前,我将不回答这个问题。

    关于x86 - 哈斯韦尔和继任者还能掩盖 A20 线吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59919707/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com