|
最近下載了一個叫ClockGen的軟件,它可調CPU,PCI等的頻率,覺得很挺有意思的,很想知道的它的原理。在搜索了一番,了解到:/ t$ m3 U: y( h0 c/ B! X& b
- {! V0 O" P/ ?$ h5 r5 A" N ^ CPU總頻率 = CPU外頻 X CPU倍頻! i; l& U4 A& n% e
1 O2 p' i0 l; ~$ s; L, s一般況下CPU倍頻不能修改,而CPU外頻是可以在Clock Generator是調整的!在網上搜到小華的布落格,裡面有講到:
' Z( b1 F$ E! j! A, j* |
; K3 q' Q3 r' j( E4 L! J" q 更正:其實PLL 不是單純一個的 div. 鎖相迴路的參數是兩的divider 組成 M(VCO divider)/N(REF divider) & z- s& p1 a0 c/ t4 o
補充:觀念上來說是 PLL所振出的頻率經 div後可得到 desired frequency. 但在 clockgen中:
; c2 Z: `# c0 n9 F5 Q1. 有 2 bytes(即所謂的M,N)來決定 VCO
( X' `) T3 o( C, v/ X2. 有幾個 bits來決定 div;一些主要的 frequency都有相對應的div
: U& j8 y2 Y* s; j9 v+ O0 J- t) B3. VCO / div = frequency1 I: ?$ e, Z/ a0 v( v
7 p3 U$ f9 k" M, D9 \2 W" W4 q這裡我有幾個疑問:
6 d* y- w8 W1 P; ^5 i- i) P1.VCO 是怎樣通過M,N算出來的呢,有計算公式嗎?
1 ^) O3 G w! f2 t2。div,在哪裡能知道呢?是在Clock Generator的哪個寄存器,我看了Spec,可是還沒找到。
% [4 T( P% b: j% _7 `& h3。如果我們能得到CPU外頻了,那怎樣讀取到CPU的倍頻呢,是在CPU MSR Register裡 得到的嗎?如果是,那怎樣讀取CPU MSR Register呢?
3 |. {6 n$ a1 \0 u, Y/ D" q/ L1 p4。不同廠商的Clock Generator產生的CPU外頻計算公式都一樣嗎?有沒有一個標准?7 N, t+ N1 n2 o/ b+ u9 U
/ g1 p1 k5 ?# @: H- f
還要我在VCBase裡看到的一篇文章是這樣計算CPU外頻的:, [2 a% I2 ]. A( @& G. b Q, l' G
FREQ=G*(N+3)/(M+3); 他說G是特定的一常量。這樣對嗎,那這個常量在哪得到?
8 S8 b% S+ p0 T" r3 N: x(具體看vckbase.com/document/viewdoc/?id=465[/url])$ R6 c# q4 k, \6 r
' \+ ~2 o* m! o, C
還望這裡的高手指導指導小弟一下,小弟不勝感激! |
|