|
|
我是个软件工程师 没碰过硬件和芯片 我想咨询一个问题:8 @/ W4 k) ^/ V
# O3 F; L3 ~" w; o/ Z
首先我的目标是希望架空主板上的bios 让cpu直接执行我自己的bios7 Z. ]* L4 R! f: s4 t
0 C1 U' h; J7 p3 v9 |
经过调研(如果有错误请纠正,谢谢),发现有一种bios仿真器可以达成这个目的。
) Q. B* ?) Y' U( E" B* N [' j, Q+ k* ]7 r
我找到一个bios仿真器 这个仿真器应该只能使用lpc和fwh的芯片 为了以防万一我打算买5片lpc/fwh自适应的芯片8 x% i# W) ?0 |3 r5 [- \
5 N( s" } Y3 E4 T: C: ^* }$ N
于是就发现需要一款bios编程器 由于自己机器没有并口(太慢也是另外一个原因 不过我想请假一下 是不是lpc和fwh本身
1 \( C( H7 `; I也不快 所以就算用了usb接口的也不会太快 而用了并口的也没慢到哪里 对么) 发现usb口的支持Lpc/fwh的bios编程器几乎没有
1 U Q# g: J' P$ a+ Y2 ~
6 H) u, T+ r. `! K* {4 [$ f而bios编程器大都是dip的 所以还需要一个plcc32转dip32的转接座
5 K/ u! g `6 A+ h) g. T" C T/ c/ s# F( M" r# g* T# ~
最后还得买10跟带插头的杜邦线 用于连接主板上的lpc header和bios仿真器上的lpc header
' D6 i9 T$ ^. [ K
# s/ J8 u& L. g6 _ m0 r然后还得记得买个拔取夹来拔出plcc32的lpc/fwh芯片...
$ T8 C: m7 W1 o
) [( f' G' U3 \7 K( H5 \$ T0 q) ~如果还有疏漏请提醒 谢谢5 m5 k: M M8 X$ F) ~2 C9 v
5 I3 x( r9 V0 c! s6 j3 `3 ^
然后是boot bios destination的问题 主板上的bios是连接在spi上的 而Boot BIOS Strap引脚内部有2个上拉电阻6 W* Y/ Z! T% n& v
根据文档说明 如果Boot BIOS Strap引脚在PWROK的上升沿时是11(2位)则从spi flash抓码 如果是00就从lpc抓码 那如果% v. O2 V& A [: t, t8 n
按照我的思路 是不是我需要在这2个Boot BIOS Strap引脚焊2个下拉电阻才能从lpc抓吗?: O2 u/ W# P+ Z
% k* U) k* e b0 }1 o另外如果抛开上面的Boot BIOS Strap问题 我看手册上有提到软strap 而且这个软strap会先于bios和软件来决定一些配置' q# n% x& E2 N" M
而软strap的机制也是依赖于spi flash 如果这个spi flash的signature正确 就会读取其中的descriptor 而descriptor
3 ]% ~5 V; n, R) l9 q1 O又会包含指向PCH Soft Straps区域 那我的问题是如果这个区域的内容包含了Boot BIOS Strap的设置 是不是Boot BIOS Strap
- \5 x9 \6 q9 g1 v引脚的电平是多少也无法影响了 哪怕被我给下拉了结果还是可能会从spi flash抓码? 这里我有点糊涂 因为soft strap的加载% {; q- m3 R% Y# K4 o' j/ o
是先于boot BIOS Strap引脚的 那么到底听谁的?还是说soft strap里根本不包含boot BIOS Strap相关的设置?
) G. g( ~8 X3 H" y6 v+ W7 z% B& f
1 Q( m: p8 V8 l如果soft strap里包含boot BIOS Strap相关的设置 那么我是不是应该用什么方法来破坏flash上的signature 这样9 P1 @5 ~( j7 q; ?' ~1 j, g
descriptor mode就会无效 这样硬件也就不会去load PCH Soft Straps的设置了 对么?9 B* [, e+ E$ M- ~
7 T. k3 j7 @) z* r: ~; O
最后 有个GCS—General Control and Status寄存器 这个寄存器是可读写的 读功能明白 写功能是什么意思呢? 如果有代码访问! `- G# x2 u6 t0 K2 P, G
到并修改了这个寄存器的值 请问还有什么意义?难道说我可以往spi flash里写入一段程序 这段程序修改这个寄存器 把这里的
4 I/ b2 X9 W6 r1 q' EBoot BIOS Strap设置给改成lpc 那么下条指令cpu就会从lpc抓了么 我没弄明白这个寄存器里的Boot BIOS Strap是可写的到底$ E. G. K9 I, D& P3 [; m
有什么用处
0 y1 T& U7 L5 T- g( A8 l6 N5 w& f1 E4 v- h2 Q: T. S b% i- `
上面就是我的全部问题 一方面是硬件上的准备是否齐全 另一方面是我担心焊2个下拉电阻是不是有用
7 w: z( T, u# |2 C, N, F- v6 G& ]) f( l/ h
[ 本帖最后由 growlanser 于 2012-2-27 22:26 编辑 ] |
|