教程成果所認知biosoptionrom_第1頁
教程成果所認知biosoptionrom_第2頁
教程成果所認知biosoptionrom_第3頁
教程成果所認知biosoptionrom_第4頁
教程成果所認知biosoptionrom_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

在這里添加一句,畢竟什么東東都是有相應的組織來定義了spec的,那么不管做什么動作我們都必須嚴格按照spec規(guī)定的動作來,否則你做出來的信號就只有你自己知道了,或者起碼說不適用于業(yè)界,所以處在我現(xiàn)在的這個初級階段我還是想把p在這里添加一句,畢竟什么東東都是有相應的組織來定義了spec的,那么不管做什么動作我們都必須嚴格按照spec規(guī)定的動作來,否則你做出來的信號就只有你自己知道了,或者起碼說不適用于業(yè)界,所以處在我現(xiàn)在的這個初級階段我還是想把pc都理解透徹,也鑒于此可能很多我的總結也都是會提到spec里的1、基本PCIoptionrom其實是叫做PCIExpansionROM,只是平時PCIoptionrom比較多而已,當然這都沒有什么區(qū)別啦。談談它2、PCIExpansionROMPCIspec2.3可以看的出PCIExpansionROMheader是個很重要的東西。它需要支持以下幾個功①標志了PCIdeviceROM在初始化時需要占用的地②表明ROMaddress空間④VendorIDdevice要記住,PCIExpansionROM永遠都不在space里執(zhí)行,它總是被copy到相RAM處RAM里執(zhí)行它。(筆者:隨便提一下,有PCIdeviceROM是不PCI卡上的,那么本應該有ROM的卡,怎么才能讓PCIdevice跑起來呢?這個一般都ROMcodeBIOScode中initialPCIoptionROM的時候再加壓出來。這也就是下一張要講的解壓縮過程。1PCIExpansionROMheader的格式截圖,圖片來源于spec1PCIExpansionROMheaderSepc是這樣定義的,那樣我們的rom實際又是不是這樣的呢,我就曾經(jīng)懷疑過。所以我就查了一下我上有的一個rom檔,我們來看看它的二進制形式。入圖32PCIExpansionROM2PCIExpansionROMheader2中我們可以清楚地PCIExpansionROMheader在每個byte上對應的格式。其它的信息應該都比較容易掌握,但是有個在initial的時候,直接callsegment:03h。(segmentROM在RAM中的鏡像的端地址。4PCIData在ROM3、PCIDataStructure3、PCIDataStructure顧名思義,ROM的數(shù)據(jù)結構也有一定的格式,它的格式如33PCIDataStructureFormat相互與header的對應信息還可以參見圖2的格式紅線標明處54、PCIoptionROM目前我遇到PCIoptionROM是作為4、PCIoptionROM目前我遇到PCIoptionROM是作為一個BIOS的bin檔里,燒到BIOS芯片里的。這種過程當然是可以省下一定的成本啦。那么這種PCI設備的初始化應該怎么樣去做了一個簡單的流程圖,見圖4文字敘述如下BIOScode中有一個標志AwXXXDecompressionBios,這是為了cbrom識別用的。那么在程序編譯的過程中,就會生成一些規(guī)定的格式,比如說一些table,它們是供CBrom在壓縮其它rom進BIOS.bin的時候方便改寫里面的值。或者說這些框架與cbrom都是相輔相成的,cbrom在壓rom進去的時候就是按照table逐個填入一些值。②而被壓縮進BIOS.bin的rom在Egroup的某個地方,它在bootblock的時候被BIOScodecopy到高端地址(比如說900000H處)③在準備initialPCIoptionROM的時候會被decompressengine解壓到了一buffer(如4000:0H)處,然后再copy到低端的ram處(比如D000~E000h)④就是整個POST的過程了,如optionrominitial之前,把cbrom壓入BIOScode中所有的PCI模塊都解壓到指定的ram處。(200000H起始處)這里的數(shù)據(jù)包括全部的VGA,PCIoptionrom完整信息。同時生一個ROMOrderList⑥遍歷所有的PCI設備,看是否還有網(wǎng)卡的存在。(如果班子需要用LANboot故特殊處理)這判斷網(wǎng)卡的存在一般會先查看在上面PCI模塊中去掃描,如VendorIDdeviceID都對應的上那么說明屬于這PCIROM找到。⑦如果網(wǎng)卡存在check是否是需boot的(當然如則)。不存在直。插入相應信息中去⑩根ROMOrderListAddressrom的全部信息copybuffer,再做相應的判buffer里的信copy到shadowRAM里面去。(D000

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論