2011年9月16日 星期五

我的超大型 BIOS 燒錄器 (Part II)

有一天,想拿「我的超大型 BIOS 燒錄器 (Part I)」中的M571主機板來燒 Flash ROM 時,才發現它早就駕鶴西歸,怎麼叫都叫不醒了。

東西壞了還是要用,怎麼辦呢?只好想辦法再找一塊適用的主機板嘍。

這次找到的是別人不要的K7主機板--K7S5A2:


K7S5A2 的 BIOS 是 2M 的 F29C51002T:


K7S5A2 可以直接拿來燒錄 1M 或 2M 的 Flash ROM。如果想燒 PLCC 的 Flash ROM,可以加裝 PLCC-DIP 轉接器:


PLCC-DIP 轉接器側面圖:


K7S5A2主機板接上PLCC-DIP轉接器後的雄姿:


觀察K7S5A2主機板BIOS的第一隻腳,發現它接了一顆4K7電阻到VCC:

這表示它無法直接拿來燒錄4M的Flash ROM。

無法「直接」但是卻可以「間接」哦~請繼續往下看。

為了方便說明,我們可以把 4M 的 BIOS 檔案看成是由「前2M」與「後2M」構成。而BIOS晶片的A18則用來控制兩個「2M空間」。如下圖所示:

當4M晶片的A18接VCC時,就只有「後2M空間」能夠被定址:

當4M晶片的A18接GND時,就只有「前2M空間」能夠被定址:


因此在A18接VCC的情況下,4M 檔案的前2M會先被寫入4M Flash ROM 的後半段,然後4M 檔案的後2M也會被寫入4M Flash ROM 的後半段:

因為只燒入後半段資料,因此在燒完驗證時自然就會出現壞一半的訊息:

如果將A18接GND再燒錄,會發生什麼狀況呢?

第一隻腳接第十六隻腳就是把A18接GND。可以用鱷魚夾來完成:



結果是:4M 檔案的前2M會先被寫入4M Flash ROM 的前半段,然後4M 檔案的後2M也會被寫入4M Flash ROM 的前半段:

這樣子燒出來的4M Flash ROM當然無法使用。但是這樣的機制卻帶給我們一個點子:如果先製造一份內含兩個前2M的4M檔案,就可以成功的把4M檔案的前2M寫入4M Flash ROM 的前2M空間:


這樣就可以完成用 2M BIOS 主機板燒 4M Flash ROM 的「艱難任務」。

再把整個過程整理一次:
1.備妥4M資料檔。(第一個檔案)
2.複製上面的檔案再加工成內含兩個「前2M」的檔案。(第二個檔案)
3.開機後熱插拔置換 2M BIOS 與 4M Flash ROM。
4.A18接VCC,燒錄第一個檔案。
5.A18接GND,燒錄第二個檔案。
6.完成。


還有一種方法,就是在主機板上抓A18訊號。

K7S5A2主機板上的A18訊號由 IT8705F 的第75隻腳提供:



IT8705F 屬 QFP 封裝,接腳極細,你要靠放大鏡及夠細的烙鐵才有辦法焊一條線連接 IT8705F 的第75隻腳及 Flash ROM 的第一隻腳 A18。



個人裝備不足以在這麼細的接腳上焊一條線,因此我是用變通的方式來完成任務,也就是用一條鱷魚夾線,一頭夾A18,一頭夾一根細針,然後用細針碰觸 IT8705F 的第75隻腳。燒錄過程,握針的手指必須維持絕對穩定。




加註:
Flash ROM 有5V、3.3V之分,燒錄時需與主機板配合。上圖中的JP4就是用來調整 Flash ROM 電壓的。




,

沒有留言: