|
|
最近下載了一個叫ClockGen的軟件,它可調CPU,PCI等的頻率,覺得很挺有意思的,很想知道的它的原理。在搜索了一番,了解到:% ]& K7 o1 _6 `: x" j5 O: X7 c
+ x5 N0 b* Y# a+ O3 Z CPU總頻率 = CPU外頻 X CPU倍頻
' x* p- h( a! h) @% T( N B# W' j% k5 ~
一般況下CPU倍頻不能修改,而CPU外頻是可以在Clock Generator是調整的!在網上搜到小華的布落格,裡面有講到:: x* V3 g6 I# ^( k" e
0 J" [: r7 I3 ~' R+ |( k/ g9 a
更正:其實PLL 不是單純一個的 div. 鎖相迴路的參數是兩的divider 組成 M(VCO divider)/N(REF divider) / [8 x! c; V& e$ A5 J: C9 i
補充:觀念上來說是 PLL所振出的頻率經 div後可得到 desired frequency. 但在 clockgen中:
+ c3 w2 f1 R& q4 L1. 有 2 bytes(即所謂的M,N)來決定 VCO) D4 T8 |* O, a |
2. 有幾個 bits來決定 div;一些主要的 frequency都有相對應的div) C! t/ [5 |; F" p; z* a$ K
3. VCO / div = frequency, o6 }- m& |9 M
4 X: ^# H' E. D1 S6 G" H0 Q2 T這裡我有幾個疑問:! D' L5 p; K' T# V. G0 t }' m, r
1.VCO 是怎樣通過M,N算出來的呢,有計算公式嗎?2 Q% I% ~+ C& f( ?8 N
2。div,在哪裡能知道呢?是在Clock Generator的哪個寄存器,我看了Spec,可是還沒找到。
& p [7 A/ h$ R0 f6 ^6 w! M1 Y3。如果我們能得到CPU外頻了,那怎樣讀取到CPU的倍頻呢,是在CPU MSR Register裡 得到的嗎?如果是,那怎樣讀取CPU MSR Register呢?9 p8 D- R3 ?2 ~3 r! q
4。不同廠商的Clock Generator產生的CPU外頻計算公式都一樣嗎?有沒有一個標准?
3 ~$ v6 l" G9 S* R9 b8 {' {) O$ {# V/ ~; u" ?3 S* h
還要我在VCBase裡看到的一篇文章是這樣計算CPU外頻的:6 F. S) S1 q+ z, y$ n
FREQ=G*(N+3)/(M+3); 他說G是特定的一常量。這樣對嗎,那這個常量在哪得到?) Y% L1 c' L2 v! ?
(具體看vckbase.com/document/viewdoc/?id=465[/url])
- m$ I3 Y) ^. L( e# l) R% _3 c1 x. U6 A/ N% f
還望這裡的高手指導指導小弟一下,小弟不勝感激! |
|