|
|
最近下載了一個叫ClockGen的軟件,它可調CPU,PCI等的頻率,覺得很挺有意思的,很想知道的它的原理。在搜索了一番,了解到:/ n) n8 [- Z9 E. w
( i4 [3 d6 H& u3 |4 N" ~
CPU總頻率 = CPU外頻 X CPU倍頻
' [5 g6 V8 D* b& g" B, J5 X$ V7 e( l0 l# c* S+ d% w& V- t+ N
一般況下CPU倍頻不能修改,而CPU外頻是可以在Clock Generator是調整的!在網上搜到小華的布落格,裡面有講到:" P1 ~; F2 s( Y
/ R/ L+ m. M% s 更正:其實PLL 不是單純一個的 div. 鎖相迴路的參數是兩的divider 組成 M(VCO divider)/N(REF divider)
$ K0 h2 I7 W8 i* M( B補充:觀念上來說是 PLL所振出的頻率經 div後可得到 desired frequency. 但在 clockgen中:2 d& q4 M# T& `% r) S" @% X* W+ g& v
1. 有 2 bytes(即所謂的M,N)來決定 VCO
" r; r) k* W: |+ u# D2. 有幾個 bits來決定 div;一些主要的 frequency都有相對應的div
, ?% ^4 f5 w3 r3. VCO / div = frequency
9 d* I0 G/ v5 ?' r/ M, o. g* ?2 b, G, q/ I3 f! ]; R* H
這裡我有幾個疑問:' R" [" ?3 b# A+ \
1.VCO 是怎樣通過M,N算出來的呢,有計算公式嗎?) j% ]& r1 G, r- d9 ^6 O
2。div,在哪裡能知道呢?是在Clock Generator的哪個寄存器,我看了Spec,可是還沒找到。
' f4 i1 R, n( W5 H' q3。如果我們能得到CPU外頻了,那怎樣讀取到CPU的倍頻呢,是在CPU MSR Register裡 得到的嗎?如果是,那怎樣讀取CPU MSR Register呢?; ~ O x$ c% |( f
4。不同廠商的Clock Generator產生的CPU外頻計算公式都一樣嗎?有沒有一個標准?' o0 }7 L. Q0 b0 z( J! |
" R: b5 [! K& u8 d+ z2 u 還要我在VCBase裡看到的一篇文章是這樣計算CPU外頻的:
" L/ i7 w- e. i; Y, D. W FREQ=G*(N+3)/(M+3); 他說G是特定的一常量。這樣對嗎,那這個常量在哪得到?
* p r K* C+ g1 G5 E(具體看vckbase.com/document/viewdoc/?id=465[/url])7 n( L) I. m# D: u, @8 j+ c4 p
& z# S& O- R" y/ w
還望這裡的高手指導指導小弟一下,小弟不勝感激! |
|