|
|
最近下載了一個叫ClockGen的軟件,它可調CPU,PCI等的頻率,覺得很挺有意思的,很想知道的它的原理。在搜索了一番,了解到:# p# V& `' X, |' \7 o6 v
# \5 T6 Q% N) g& Y5 L0 g
CPU總頻率 = CPU外頻 X CPU倍頻
7 V$ i: p6 M8 e/ h$ J
% g$ K6 v! O- l, z" T. h一般況下CPU倍頻不能修改,而CPU外頻是可以在Clock Generator是調整的!在網上搜到小華的布落格,裡面有講到:
0 o' M3 p5 R5 F! e) d% I# G; b% z
* o) j& Y. _; {8 p3 @8 b8 S8 l 更正:其實PLL 不是單純一個的 div. 鎖相迴路的參數是兩的divider 組成 M(VCO divider)/N(REF divider)
* d( q! X5 C5 K Q. h補充:觀念上來說是 PLL所振出的頻率經 div後可得到 desired frequency. 但在 clockgen中:
+ e' _9 K/ k/ g, e1. 有 2 bytes(即所謂的M,N)來決定 VCO+ G: j3 |1 `9 W. n4 C! R
2. 有幾個 bits來決定 div;一些主要的 frequency都有相對應的div
& d: }+ o e. c: ]; f' T3. VCO / div = frequency; r& H: h) \7 k3 s3 U/ `; B
+ R6 G; s3 `' H% _) p: I1 a( D這裡我有幾個疑問:0 u% m( s: h% f# p7 x. ], L
1.VCO 是怎樣通過M,N算出來的呢,有計算公式嗎?/ Y$ R% T& P1 y0 O$ x2 h. Y
2。div,在哪裡能知道呢?是在Clock Generator的哪個寄存器,我看了Spec,可是還沒找到。- [( T/ L" b$ d ~+ H
3。如果我們能得到CPU外頻了,那怎樣讀取到CPU的倍頻呢,是在CPU MSR Register裡 得到的嗎?如果是,那怎樣讀取CPU MSR Register呢?1 Q8 v8 f. w; o$ P
4。不同廠商的Clock Generator產生的CPU外頻計算公式都一樣嗎?有沒有一個標准?! B0 }4 E) @3 b+ o
: h) ~: I7 w- _8 R. c
還要我在VCBase裡看到的一篇文章是這樣計算CPU外頻的:
+ w L* s h: @3 @2 [: c" C: h6 d FREQ=G*(N+3)/(M+3); 他說G是特定的一常量。這樣對嗎,那這個常量在哪得到?
3 w+ _* u( P, v. ?( I(具體看vckbase.com/document/viewdoc/?id=465[/url])* q+ r' ~' _/ b( P+ e- G! E
" E% |6 k# T' {還望這裡的高手指導指導小弟一下,小弟不勝感激! |
|