|
|
我是个软件工程师 没碰过硬件和芯片 我想咨询一个问题:
$ I: P4 j* q8 ^( n* D$ w1 @( S0 L" F) ~5 r# L6 @9 N
首先我的目标是希望架空主板上的bios 让cpu直接执行我自己的bios" O7 e* D- u) O/ H5 [
1 ^* f* |1 c+ `( Z; Q
经过调研(如果有错误请纠正,谢谢),发现有一种bios仿真器可以达成这个目的。
& n4 A8 A" C& t8 b+ x1 ]6 x; j; B* E: ?2 ]1 _
我找到一个bios仿真器 这个仿真器应该只能使用lpc和fwh的芯片 为了以防万一我打算买5片lpc/fwh自适应的芯片$ }/ U8 s7 O! R; l p i8 P6 Z
+ e" k: S. c1 n) z- K
于是就发现需要一款bios编程器 由于自己机器没有并口(太慢也是另外一个原因 不过我想请假一下 是不是lpc和fwh本身- y+ U8 E6 ?! ?, H' B" [
也不快 所以就算用了usb接口的也不会太快 而用了并口的也没慢到哪里 对么) 发现usb口的支持Lpc/fwh的bios编程器几乎没有 }3 R) P& h. ^2 L: q9 p
- ~/ T; i6 ^3 t+ i而bios编程器大都是dip的 所以还需要一个plcc32转dip32的转接座
* \5 t9 D. T2 R( I8 d5 }6 T! ?( U; m# }% U$ `% c0 R
最后还得买10跟带插头的杜邦线 用于连接主板上的lpc header和bios仿真器上的lpc header
4 K8 j. r! ]; `/ Y3 o. g" P" D1 ~3 b7 |4 p8 }: s0 i
然后还得记得买个拔取夹来拔出plcc32的lpc/fwh芯片...
& s( J( r& |/ W2 B4 o' w/ x' h; U' j1 Z
如果还有疏漏请提醒 谢谢/ Y( X# l+ d1 S: u% C5 V" L
( H" R0 P3 }! P. D% n
然后是boot bios destination的问题 主板上的bios是连接在spi上的 而Boot BIOS Strap引脚内部有2个上拉电阻
) E& l6 H0 G B根据文档说明 如果Boot BIOS Strap引脚在PWROK的上升沿时是11(2位)则从spi flash抓码 如果是00就从lpc抓码 那如果
. z% r% ~- s& n/ R' N/ Z9 T* r按照我的思路 是不是我需要在这2个Boot BIOS Strap引脚焊2个下拉电阻才能从lpc抓吗?
V Y( L! p4 [1 M# Y# _2 E1 }7 b) ? ~8 s$ o9 u' Y
另外如果抛开上面的Boot BIOS Strap问题 我看手册上有提到软strap 而且这个软strap会先于bios和软件来决定一些配置$ A; Y* x; f0 }- A* U
而软strap的机制也是依赖于spi flash 如果这个spi flash的signature正确 就会读取其中的descriptor 而descriptor % J6 D! _8 n( ^0 f6 w
又会包含指向PCH Soft Straps区域 那我的问题是如果这个区域的内容包含了Boot BIOS Strap的设置 是不是Boot BIOS Strap
) `. _6 {9 z( {' d引脚的电平是多少也无法影响了 哪怕被我给下拉了结果还是可能会从spi flash抓码? 这里我有点糊涂 因为soft strap的加载
$ d. d( w( U% W2 ^是先于boot BIOS Strap引脚的 那么到底听谁的?还是说soft strap里根本不包含boot BIOS Strap相关的设置?3 f$ P k- J% w9 S( T+ ~
' I" W V" h1 _+ ~" q
如果soft strap里包含boot BIOS Strap相关的设置 那么我是不是应该用什么方法来破坏flash上的signature 这样
$ f% \- V" T1 Ldescriptor mode就会无效 这样硬件也就不会去load PCH Soft Straps的设置了 对么?& ~4 F5 c1 ^. b% {
2 c7 p% c( Z3 t8 N
最后 有个GCS—General Control and Status寄存器 这个寄存器是可读写的 读功能明白 写功能是什么意思呢? 如果有代码访问$ I" v( m8 {$ o
到并修改了这个寄存器的值 请问还有什么意义?难道说我可以往spi flash里写入一段程序 这段程序修改这个寄存器 把这里的
# X1 S, d4 C$ p! @3 yBoot BIOS Strap设置给改成lpc 那么下条指令cpu就会从lpc抓了么 我没弄明白这个寄存器里的Boot BIOS Strap是可写的到底
3 ^) b0 q: E3 H) P, R0 f. o有什么用处; @6 R$ Y1 |2 o R8 f6 G) K
. I# l! p# i0 S7 [$ p) B
上面就是我的全部问题 一方面是硬件上的准备是否齐全 另一方面是我担心焊2个下拉电阻是不是有用
/ d/ C8 J% P# a- C2 n8 P4 f: b) e$ B( F* L" _
[ 本帖最后由 growlanser 于 2012-2-27 22:26 编辑 ] |
|