免费注册 找回密码     

查看: 2099|回复: 0
打印 上一主题 下一主题

硬用:另类维修BIOS

[复制链接]

8776

主题

9753

帖子

1万

积分

金牌会员

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

跳转到指定楼层
1
发表于 2011/12/14 15:22 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
  有天,朋友来电话,告诉他单位的小局域网因为频繁停电损坏了三块主板,向我求救。于是我马上出动,到达现场后,采用替换法检查,发现主板的BIOS出现了问题无法正常开机。用热插拔法修复无效,断定是BIOS芯片物理损坏。

  朋友使用的主板是品牌机整合主板,CPU是P120(够老的),主板BIOS芯片为Intel的P28F002BX芯片,是2Mbit的芯片。用编程器测试,发现三片芯片均有不同程度的损坏,已不能使用。由于这种芯片现在早已找不到了,因此只能采用手头上现有的Winbond的29C020代用。用编程器把好芯片的数据读出,然后分别写到三片AT29C020中。没想到,当把写好的芯片插到主板上后,通电开机却没有反应,修复没有成功。

  28F002BX是Intel推出的第一代可擦除BIOS芯片,它的内部数据结构是分块的(如图所示)。其中的BOOTBLOCK块是存储BIOS基本启动信息的,它支持ISA形式的显卡,当BIOS升级失败后,可以从BOOTBLOCK启动并修复BIOS,这种设计思路被BIOS刷新程序采用并一直延续到今。在擦除时,28F001是以Byte为最小修改单位的;在写入数据时,芯片上要加上一定的编程电压,并且BOOTBLOCK块内数据的擦除要加上特定的删除电压。

  29C020是FlashROM(快闪ROM),属于单电压芯片。FlashROM和EEPROM芯片最大的区别是,在删除数据时,不需加特定的编程电压。另外,FlashROM在删除资料时,并非以Byte为基本单位,而是以Sector(又称Block)为最小单位。Sector的大小随厂商的不同而有所不同,只有在写入时,才以Byte为最小单位写入。

  以往主板上用的还有27系列的芯片。27系列的芯片属于EPROM,其内的资料是用EPROM擦除器(EPROMEraser)发出的紫外线照射来擦除的,并且要用专用的编程器才可以把资料重新再写入,往芯片中写内容时也必须要加一定的编程电压。

  在主板上,BIOS芯片平时只处于读数据的状态,从原理上分析,27、28、29系列的芯片是可以代用的,如果不考虑升级的因素,三者是兼容的。因此我怀疑,问题可能是属于主板太老,不支持按页刷新的芯片,亦即老主板与新型芯片“门不当,户不对”。找来一片28F020(也是老古董啦,现在市面上基本已找不到了),在编程器上刷入程序,插到主板上,开机恢复正常,证实了自己的猜测。为了进一步证实上述分析的正确性,用一片27C020写入程序,插入主板上BIOS插座后,通电开机,机器也能正常工作,由此说明此主板的确不支持新式的芯片。

  尽管从理论上讲,27、28、29系列的芯片是可以代用的。但实际应用中要注意,有些主板可能由于设计方面的原因,对有些类型的芯片可能不能很好地支持,若遇到这种情况,可以找不同类型的芯片多试几次。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

QQ|Archiver|兴宁A8 ( 粤ICP备08126561号-15 粤公网安备44140202000139号)  

GMT+8, 2024/11/11 10:13

© 兴宁A8

手机绑定 兴宁A8支持手机、电脑、平板一站式访问!

快速回复 返回顶部 返回列表