|
|
我是个软件工程师 没碰过硬件和芯片 我想咨询一个问题:' z+ a* O5 s, B' y7 O
# F- N- x- ~5 X" ], m首先我的目标是希望架空主板上的bios 让cpu直接执行我自己的bios
8 u" r) S5 J7 h+ ]
9 A1 W/ _: ]5 M0 e. L2 k* _, i% c经过调研(如果有错误请纠正,谢谢),发现有一种bios仿真器可以达成这个目的。; Q# r, z% Z: z M
2 w; p$ x+ X9 m8 f我找到一个bios仿真器 这个仿真器应该只能使用lpc和fwh的芯片 为了以防万一我打算买5片lpc/fwh自适应的芯片
" v$ O2 n1 B9 b3 L/ S
5 X! f! _; f, Y4 E) R6 E于是就发现需要一款bios编程器 由于自己机器没有并口(太慢也是另外一个原因 不过我想请假一下 是不是lpc和fwh本身
/ J9 o5 @6 p1 S( C9 z g也不快 所以就算用了usb接口的也不会太快 而用了并口的也没慢到哪里 对么) 发现usb口的支持Lpc/fwh的bios编程器几乎没有
$ l6 V. g: h3 }4 l& K: \' p, H
4 j8 e/ Z3 H% b* ^/ I而bios编程器大都是dip的 所以还需要一个plcc32转dip32的转接座
, A- Z8 q9 E8 ]+ F: p2 t8 N- B7 V# x1 ~, T" S6 l3 X
最后还得买10跟带插头的杜邦线 用于连接主板上的lpc header和bios仿真器上的lpc header
' r" R4 G. B% G% O' i% |6 F* O% z) H7 y1 W0 x. B( @
然后还得记得买个拔取夹来拔出plcc32的lpc/fwh芯片...
! r) e. n; o1 x8 ^
% w2 J6 {4 [: a% x' I Y0 V如果还有疏漏请提醒 谢谢
4 z* z$ T9 ]! t5 T# t3 F: ^
) j* ]1 c* d9 x& c: u1 e然后是boot bios destination的问题 主板上的bios是连接在spi上的 而Boot BIOS Strap引脚内部有2个上拉电阻% W" X. `) c4 l) {+ Q
根据文档说明 如果Boot BIOS Strap引脚在PWROK的上升沿时是11(2位)则从spi flash抓码 如果是00就从lpc抓码 那如果
7 v( a1 m0 D2 `! c/ A) N5 [按照我的思路 是不是我需要在这2个Boot BIOS Strap引脚焊2个下拉电阻才能从lpc抓吗?6 Y# b+ b3 n9 s) K! l
3 k1 d; ^! O: ]8 a* k
另外如果抛开上面的Boot BIOS Strap问题 我看手册上有提到软strap 而且这个软strap会先于bios和软件来决定一些配置
- g' q% a) c5 U5 x$ _而软strap的机制也是依赖于spi flash 如果这个spi flash的signature正确 就会读取其中的descriptor 而descriptor y* m! t ~/ X# U5 D5 B
又会包含指向PCH Soft Straps区域 那我的问题是如果这个区域的内容包含了Boot BIOS Strap的设置 是不是Boot BIOS Strap) x. ?( N7 `/ B- L
引脚的电平是多少也无法影响了 哪怕被我给下拉了结果还是可能会从spi flash抓码? 这里我有点糊涂 因为soft strap的加载5 w2 p* L, c0 o
是先于boot BIOS Strap引脚的 那么到底听谁的?还是说soft strap里根本不包含boot BIOS Strap相关的设置?
8 y# @4 }6 o( S8 V, |( |& b' u: K7 N, J+ F: _% P2 g, ]; S% Z
如果soft strap里包含boot BIOS Strap相关的设置 那么我是不是应该用什么方法来破坏flash上的signature 这样
+ N; r' D' \0 g# B0 J* xdescriptor mode就会无效 这样硬件也就不会去load PCH Soft Straps的设置了 对么?
# }3 S! j7 Z( D; `1 R7 S/ U! [* N0 f2 e; I! f3 ^# j
最后 有个GCS—General Control and Status寄存器 这个寄存器是可读写的 读功能明白 写功能是什么意思呢? 如果有代码访问' n- j- N0 b1 n5 x+ ^* i, i# W
到并修改了这个寄存器的值 请问还有什么意义?难道说我可以往spi flash里写入一段程序 这段程序修改这个寄存器 把这里的" i' E5 r, @5 J% b# ^ q$ a. R
Boot BIOS Strap设置给改成lpc 那么下条指令cpu就会从lpc抓了么 我没弄明白这个寄存器里的Boot BIOS Strap是可写的到底( M6 k5 r0 }0 D8 `2 J8 }3 B4 W
有什么用处2 k4 u- X* w0 \) d' Z
. S4 T: N1 @2 W2 N9 r上面就是我的全部问题 一方面是硬件上的准备是否齐全 另一方面是我担心焊2个下拉电阻是不是有用
' z, Y# C9 D3 Q( u7 O$ Z" d
# T4 a, F9 Q5 _' B[ 本帖最后由 growlanser 于 2012-2-27 22:26 编辑 ] |
|