|
|
最近下載了一個叫ClockGen的軟件,它可調CPU,PCI等的頻率,覺得很挺有意思的,很想知道的它的原理。在搜索了一番,了解到: O7 j4 K- N- w/ V r
: B. I) f4 A: @/ y/ b% y9 H CPU總頻率 = CPU外頻 X CPU倍頻
, b7 O) I% f3 Y
; A; t$ @- K0 ~) c3 Q6 k: V$ p8 X一般況下CPU倍頻不能修改,而CPU外頻是可以在Clock Generator是調整的!在網上搜到小華的布落格,裡面有講到:5 ]; P c, V. `# a1 q J
8 G5 v6 z) S: ? 更正:其實PLL 不是單純一個的 div. 鎖相迴路的參數是兩的divider 組成 M(VCO divider)/N(REF divider) ; f& ^/ Z! E) d
補充:觀念上來說是 PLL所振出的頻率經 div後可得到 desired frequency. 但在 clockgen中:
- ~3 m$ u6 u+ J" H% W4 [1. 有 2 bytes(即所謂的M,N)來決定 VCO
8 v; _- I0 r [ Q2. 有幾個 bits來決定 div;一些主要的 frequency都有相對應的div* k9 ~- ^" _' J0 R' l# I
3. VCO / div = frequency) B: A7 Q0 ?* C+ v( @
' j C/ t9 ] [2 @2 t5 x$ y8 M5 T7 n. @
這裡我有幾個疑問:
C* n1 o0 w$ m7 `: D4 z5 ?1.VCO 是怎樣通過M,N算出來的呢,有計算公式嗎?
$ a5 J4 j" f$ A3 O( k2。div,在哪裡能知道呢?是在Clock Generator的哪個寄存器,我看了Spec,可是還沒找到。
5 [7 ]4 g: \7 l3。如果我們能得到CPU外頻了,那怎樣讀取到CPU的倍頻呢,是在CPU MSR Register裡 得到的嗎?如果是,那怎樣讀取CPU MSR Register呢?
1 A4 ^7 U! r6 y& n4。不同廠商的Clock Generator產生的CPU外頻計算公式都一樣嗎?有沒有一個標准?
B2 l |8 W I6 ^; f5 T3 u' {$ A- n6 x# T
還要我在VCBase裡看到的一篇文章是這樣計算CPU外頻的:$ D9 o3 s$ q3 q3 a/ ]) c* I* d
FREQ=G*(N+3)/(M+3); 他說G是特定的一常量。這樣對嗎,那這個常量在哪得到?, S$ O& L& N! x; f6 z, V5 ^# p5 u
(具體看vckbase.com/document/viewdoc/?id=465[/url])
" f; Q2 N+ H- t Q5 f3 p& s4 ]+ |9 y2 |& D g
還望這裡的高手指導指導小弟一下,小弟不勝感激! |
|