|
|
最近下載了一個叫ClockGen的軟件,它可調CPU,PCI等的頻率,覺得很挺有意思的,很想知道的它的原理。在搜索了一番,了解到:
! C; h0 D- @" x4 e5 b! N0 i1 W' ~" N. v
CPU總頻率 = CPU外頻 X CPU倍頻+ k: F7 T$ O5 b* |0 v0 g, |
|5 b1 v; L# I+ [9 D一般況下CPU倍頻不能修改,而CPU外頻是可以在Clock Generator是調整的!在網上搜到小華的布落格,裡面有講到:
* U0 q0 e. d I; R3 R& t8 W2 S5 M; m: l! N ~* y
更正:其實PLL 不是單純一個的 div. 鎖相迴路的參數是兩的divider 組成 M(VCO divider)/N(REF divider) " a/ d; d2 d( _& ?) @
補充:觀念上來說是 PLL所振出的頻率經 div後可得到 desired frequency. 但在 clockgen中:- T3 J# ~0 D6 b( r3 H
1. 有 2 bytes(即所謂的M,N)來決定 VCO
- _3 z2 K9 f* d' l+ \' \# B2. 有幾個 bits來決定 div;一些主要的 frequency都有相對應的div1 P5 u9 ]7 [: n, @- P G9 H
3. VCO / div = frequency/ _7 _, R9 @6 V3 ~* d
' L8 f a5 G0 [( j* ?
這裡我有幾個疑問:
$ n4 b0 i( L7 m8 i/ @+ f1.VCO 是怎樣通過M,N算出來的呢,有計算公式嗎?
9 \8 C% s. F, D( u- j" T C) P+ o2。div,在哪裡能知道呢?是在Clock Generator的哪個寄存器,我看了Spec,可是還沒找到。, h' n# U! q( h% T+ j
3。如果我們能得到CPU外頻了,那怎樣讀取到CPU的倍頻呢,是在CPU MSR Register裡 得到的嗎?如果是,那怎樣讀取CPU MSR Register呢?
1 _- I# b* p9 [- `4 b' H& N4。不同廠商的Clock Generator產生的CPU外頻計算公式都一樣嗎?有沒有一個標准?
; R5 Z& D( P H: J' G3 e+ f7 |# O1 x4 K, a0 ?! J
還要我在VCBase裡看到的一篇文章是這樣計算CPU外頻的:& l8 ]4 q8 e$ M* s
FREQ=G*(N+3)/(M+3); 他說G是特定的一常量。這樣對嗎,那這個常量在哪得到?8 G A9 q3 w |, n, \7 L
(具體看vckbase.com/document/viewdoc/?id=465[/url])3 a" i( G) ~ v, d
, b4 ` I$ Q" K4 o: H還望這裡的高手指導指導小弟一下,小弟不勝感激! |
|