找回密码
 加入计匠网
搜索
热搜: BIOS ACPI CPU Windows
查看: 9114|回复: 2

开机load 优化值的巧妙方法

[复制链接]
发表于 2007-11-25 02:14:22 | 显示全部楼层 |阅读模式
前段时间帮朋友修改一个 盈泰 bios, K8 AM2 主板,要锁定cpu 外频(如190MHZ,220MHz),! K8 f# d+ M, U  M7 ~6 `" I
mod 修改缺省就可以了,但不进cmos 存盘一次出来,它 仍然跑200MHz,特别是清cmos 后,按F1 进入绝对是跑200MHz。, [9 [0 z; A: j/ x+ f
8 w1 X% A8 @4 W3 Q$ l% q0 I# Y
第一次用一个很笨的方法,检测到是 cmos error , 就直接进入cmos,等待用户自己退出cmos,如果存盘就ok 了。3 e8 V/ P) G, R$ l; h6 G9 x( F
% j8 T3 b1 {0 y$ [$ b+ i
今天,一个朋友帮我弄一个PIII bios,清理思维,发现一下方法更巧妙,
1 b4 f$ g) a5 q* D& {% w, o1。检测到是 cmos error , 就软件复位一次,自然消除
9 D* ?4 D) I( q6 U% k+ P* n+ O6 u2。第二次启动好像自己 load 优化值了( _9 ~2 G3 k$ `6 w% H

5 L, x! C7 q% _! `8 T! K2 w这里请教高手, 0 g/ K4 v4 i( C1 a, Q
1。award bios 在哪里load 优化值, ami 呢?! D6 i" K5 j8 Y; ^
   就是说,检测到 cmos error, 不复位,而是直接load 优化值,怎么做? 不要进cmos 存盘!) t* @, q) O* C% N' W6 x" ?2 Q
2。有些 K8 bios 外频选项是 150~300MHz, 有些是200~450MHz,
2 Y* J. U. }. w: z, P   如果不用mod 改缺省(仍然是200MHz),比如 想设置220MHz,让bios load 优化值时候,偷偷修改为 220MHZ,. p6 U. N% d6 P/ f6 j8 ?! @9 N  [
   因为,每个时钟芯片操作都是不一样的,即使有源代码都是最难理解的东西,
4 v" X: _; D$ N9 \/ h    所以,我们判断的地方应该是程序比较那个外频可选的范围的地方,
+ a+ L- B' g9 g+ Z: X. O8 ^' n" O    就是说,mod 设置的外频缺省为 200MHz, load 优化值时就把  200 存到某个单元,然后调用设置时钟的子程序,
, e& U. Y9 Q( s- c  u    现在,我们并不mod 外频,仍然是 200MHz, 我们能不能把那“某个单元”修改成 190, 或者 220,6 x8 g- E; \& _" D& {3 y* ~
    这样,我们就可以不管时钟芯片的差异。
发表于 2007-11-26 09:29:39 | 显示全部楼层
“对于反编译BIOS这部分,我这边帮不上忙。”/ \" K4 n. g& i! d; |, n; H( |- i

3 R# i1 a) W5 Q- y如果象你说的:“即使有源代码都是最难理解的东西”...这好象想法就不对吧,你都反编译BIOS了...% c, J0 z3 z9 i: M" c
6 b; v2 |& D, W0 {
我这里对Clock generator给CPU率频的原理大致说一下:
5 t' q$ {4 s+ f) F+ ?. N# S1、CPU有FSB的Selection引脚,也就是说CPU的默认频率是通过自己的固定的几根Pin脚连到Clock generator的Frequency Select Pins上。4 b0 f8 X7 p- N$ U$ O( x
2、Clock generator上电收到CPU Power Good信号后根据Frequency Select Pins高低,来选择CPUs和FSB频率。8 n, a2 I$ p9 X$ m$ f* B/ p* |
3、软件对Clock generator进行编程,以达到超频或降频跑的目的。
! c0 [4 |* N* d1 F( J    a} 初始化南桥SMBUS总线+ T+ Z2 n' t0 J0 t" i6 x
    b) 对Clock generator以它的Datasheet和HW连线功能进行编程,Clock generator的SMBUS地址一般为D2。. Z6 b: U, o1 `- D
    c) 看CMOS值内有没有优化的选项,如果有,则按优化选项进行一次编程,编程一般会开启系统看门狗,几秒种后如系统无反应,那么就会跳变到安全值。不同BIOS/HW有不同的做法。
: r5 i. I' B; I5 a( T% f) z0 T( g& M: p4 `
如果说你要反编程BIOS来修改,这本身就是个人行为,如果是为了学习,还是得以了解原理为目的。: N7 i% |9 g0 ?0 ]3 R! L/ c( Q
如果说CMOS值部分的问题:
, J9 l/ V% N8 e对于Check CMOS error提示出现时,Clock编程估计已经完成(看BIOS的做法),而且很多设定已经按BIOS设定好,虽然是错的(最坏的情况你还会开不起来机器),所以Check CMOS值错时,一般会让你做出选择,继续还是进CMOS Load default值再继续,特别是那种设置选项多的BIOS,象你的可以让用户调频率的BIOS,更要给出提示让用户选择,以警示。如果你想改到直接Load default,这个Default是什么值?你要弄清楚,不同的CPU有不同的外频,你的default是多少?
回复

使用道具 举报

发表于 2008-1-14 16:38:21 | 显示全部楼层
有源代码就看咯,
. a* [$ [: [  N- k' y找关键字,关于setup不同情况下load值的判断,没那么难的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入计匠网

本版积分规则

Archiver|手机版|小黑屋|计匠网

GMT+8, 2026-1-18 22:41 , Processed in 1.543668 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表