|
|
我是个软件工程师 没碰过硬件和芯片 我想咨询一个问题:) r! R; o9 m9 F7 B
& F( j' a( R' }) z$ E首先我的目标是希望架空主板上的bios 让cpu直接执行我自己的bios8 @8 }5 k( h9 D5 H' x' {
0 m: w2 `' E% l1 e3 a/ }7 v3 p
经过调研(如果有错误请纠正,谢谢),发现有一种bios仿真器可以达成这个目的。
4 M) {9 g# d( u0 S) w# A$ M4 F% n% G
" e; G1 @$ I; J2 p$ B* `我找到一个bios仿真器 这个仿真器应该只能使用lpc和fwh的芯片 为了以防万一我打算买5片lpc/fwh自适应的芯片
+ {# J+ X( {, S1 p% a: O9 C3 o- W- W& K) x0 S8 p+ |2 a
于是就发现需要一款bios编程器 由于自己机器没有并口(太慢也是另外一个原因 不过我想请假一下 是不是lpc和fwh本身0 F5 N+ h2 f! ~ o; t
也不快 所以就算用了usb接口的也不会太快 而用了并口的也没慢到哪里 对么) 发现usb口的支持Lpc/fwh的bios编程器几乎没有
/ ^3 L. t4 k) R3 v
+ T0 w6 _' X2 g$ R% |而bios编程器大都是dip的 所以还需要一个plcc32转dip32的转接座 ' F9 |* {( P P
+ k3 n) S. P. a最后还得买10跟带插头的杜邦线 用于连接主板上的lpc header和bios仿真器上的lpc header- o! U( H" _3 X, m
! q+ I/ U/ |4 R; A8 a ]! Y然后还得记得买个拔取夹来拔出plcc32的lpc/fwh芯片...) ^# ?$ f" W) k* k7 h- L
; a/ c8 }3 D. ?) |. ]
如果还有疏漏请提醒 谢谢 L( [- g7 I/ k
$ r+ S/ j7 S# |. Y& D# [然后是boot bios destination的问题 主板上的bios是连接在spi上的 而Boot BIOS Strap引脚内部有2个上拉电阻
% H6 R6 R1 y% h* p& s {根据文档说明 如果Boot BIOS Strap引脚在PWROK的上升沿时是11(2位)则从spi flash抓码 如果是00就从lpc抓码 那如果$ K" w1 m7 w7 z6 b6 M! T4 c
按照我的思路 是不是我需要在这2个Boot BIOS Strap引脚焊2个下拉电阻才能从lpc抓吗?- K: m/ z9 L s9 `, z! A% S
G, X8 c' b) q) N另外如果抛开上面的Boot BIOS Strap问题 我看手册上有提到软strap 而且这个软strap会先于bios和软件来决定一些配置4 b W5 ~. ?. A3 `
而软strap的机制也是依赖于spi flash 如果这个spi flash的signature正确 就会读取其中的descriptor 而descriptor 7 C6 @3 y2 g) j2 K
又会包含指向PCH Soft Straps区域 那我的问题是如果这个区域的内容包含了Boot BIOS Strap的设置 是不是Boot BIOS Strap
$ f8 E, ~6 K2 A$ l: c引脚的电平是多少也无法影响了 哪怕被我给下拉了结果还是可能会从spi flash抓码? 这里我有点糊涂 因为soft strap的加载
2 @2 d9 Q$ f( ?9 t是先于boot BIOS Strap引脚的 那么到底听谁的?还是说soft strap里根本不包含boot BIOS Strap相关的设置?
$ D+ o0 @9 \6 P) B+ W1 c* o- b* p; G* [9 _: j- D) D. m
如果soft strap里包含boot BIOS Strap相关的设置 那么我是不是应该用什么方法来破坏flash上的signature 这样
1 W5 K/ N J! r. |2 O+ l2 Qdescriptor mode就会无效 这样硬件也就不会去load PCH Soft Straps的设置了 对么?
% j3 X- e5 }% M8 \2 J2 i3 |* E" j7 s% X* E0 G
最后 有个GCS—General Control and Status寄存器 这个寄存器是可读写的 读功能明白 写功能是什么意思呢? 如果有代码访问
7 \, i' I" n g8 W u8 m到并修改了这个寄存器的值 请问还有什么意义?难道说我可以往spi flash里写入一段程序 这段程序修改这个寄存器 把这里的" }0 ?9 G+ Y; F( l# q
Boot BIOS Strap设置给改成lpc 那么下条指令cpu就会从lpc抓了么 我没弄明白这个寄存器里的Boot BIOS Strap是可写的到底
, Q3 z5 o/ C$ W5 V+ x! r, E/ L) S, E有什么用处
+ q5 S. e- [+ ~5 ]. U/ j; d z+ q, h8 Q# j6 f/ A
上面就是我的全部问题 一方面是硬件上的准备是否齐全 另一方面是我担心焊2个下拉电阻是不是有用
8 e; S; [4 f# F
" x* X$ u# y. K: t$ s- P8 y[ 本帖最后由 growlanser 于 2012-2-27 22:26 编辑 ] |
|