BIOS 如何显示字符?(尝试修复故障的 GPU)

BIOS 如何显示字符?(尝试修复故障的 GPU)

我买了一块有问题的 Radeon HD 6850。我只被告知它在 Windows 启动后就停止工作了,如果我不接受它,前任主人就会把它扔掉。所以,现在我正在尝试解决这个问题:

我观察到的事情非常有趣:

  1. 我尝试在 Ubuntu 上使用这张卡,无需任何额外的驱动程序。它在此设置下工作正常。没有尝试玩游戏,也没有安装任何第三方驱动程序。

  2. 我安装了 Windows XP,只要不安装驱动程序,它就可以正常工作。安装驱动程序后,Windows“尝试”启动,但只要出现欢迎屏幕,屏幕就会变成宽高比的一半,并且保持黑色。

  3. 我发现 BIOS 确实到处都显示奇怪的字符。我进一步调查了这个问题:

    • 它显示 y 而不是 i
    • 它显示 u 而不是 e
    • ...如果你遵循这个模式,并且检查它背后的二进制 ascii 码,你会看到它背后有一个模式:

-> 在所有情况下,第四位始终为高位,但它应该为低位。

当然,这可能是内存故障,但我认为,这就像通信线路故障一样简单。我似乎已经测试了三种不同的操作模式。比如基本的“无驾驶员故障安全”模式,似乎运行完美无缺。

纯文本模式似乎在某些方面有效:

  • 它根据 ASCII 码正确显示字符(如果我想写一个“a”,它会显示一个 a - 而不是切碎的或任何东西)
  • 似乎保存屏幕上字符分布的内存也正常工作。没有闪烁或类似的东西
  • 但它没有将正确的字符写入内存。因此,如果 BIOS 告诉 GPU 将“e”写入“显示内存”,则卡会写入“u”

还有第三种模式,即“驱动程序安装模式”。我现在的想法是,操作系统正在尝试将 GPU 置于某种“操作模式”。它正在尝试执行初始化序列或类似操作。但由于我之前提到的通信错误,此操作失败。但我认为在此阶段没有将任何内容写入“显示内存”。

所以,我认为问题被归结为一个“小”区域。它一定是信号从 bios 传到“处理单元”的部分。

问题是我不知道这种通信的技术实现。我可以重新焊接一些东西,但实际上我不知道在哪里可以找到一些有故障的东西。

因此,如果有人能给我一些提示或资源来学习这些东西,我会非常高兴。如果对所提到的任何内容展开了热烈的讨论,我也很高兴。每一条意见都是有价值的。

谢谢! ;)

答案1

第一步是彻底检查卡上是否有任何明显的物理损坏。

这可能是这样的:

  • PCIe 连接器上的“针脚”弯曲或断裂
  • PCB(电路板)的划痕或损坏可能导致短路
  • 有明显的热损伤迹象(部件烧焦和/或塑料熔化)
  • 部件松动(本例中不太可能)

然后我会尝试在 PCIe x1 或 x4 模式下使用 GPU,看看是否有帮助。不过,您的主板可能不支持在 BIOS 中手动设置此项。

如果能找到其他驱动程序,请尝试一下,看看是否是软件问题。根据您的描述,这不太可能,但至少很容易做到。

祝愿患者一切顺利!

相关内容