|
|
最近下載了一個叫ClockGen的軟件,它可調CPU,PCI等的頻率,覺得很挺有意思的,很想知道的它的原理。在搜索了一番,了解到:* r8 }" t* |0 D+ A5 d i6 q" R
7 ?. l& L+ R8 u CPU總頻率 = CPU外頻 X CPU倍頻
6 N% t8 }9 Q- }- U3 Q2 g8 B! R
3 s- I/ `# Y" @# }一般況下CPU倍頻不能修改,而CPU外頻是可以在Clock Generator是調整的!在網上搜到小華的布落格,裡面有講到:
$ R# D3 a% g& z" l; p3 r t @+ @( x( v( t. E& ^: g
更正:其實PLL 不是單純一個的 div. 鎖相迴路的參數是兩的divider 組成 M(VCO divider)/N(REF divider)
% J: |1 R2 T+ M" Q Q& U補充:觀念上來說是 PLL所振出的頻率經 div後可得到 desired frequency. 但在 clockgen中:
8 U; |5 U) _( d2 U6 N4 H6 Q1. 有 2 bytes(即所謂的M,N)來決定 VCO
$ Z ]. y$ ]6 G$ d2. 有幾個 bits來決定 div;一些主要的 frequency都有相對應的div
( d" [9 l" ~+ n3. VCO / div = frequency
! G( D) J( v0 F. |! `8 _
1 E* B% E) `! g: m- [這裡我有幾個疑問:5 Y2 r/ `4 d! Y# J' B: c' W" y
1.VCO 是怎樣通過M,N算出來的呢,有計算公式嗎?
5 x; y) R$ s6 R9 _2。div,在哪裡能知道呢?是在Clock Generator的哪個寄存器,我看了Spec,可是還沒找到。
$ l) t! T# M6 }$ }' `) x3。如果我們能得到CPU外頻了,那怎樣讀取到CPU的倍頻呢,是在CPU MSR Register裡 得到的嗎?如果是,那怎樣讀取CPU MSR Register呢?
8 L' Q) u8 V% j* l H, O4。不同廠商的Clock Generator產生的CPU外頻計算公式都一樣嗎?有沒有一個標准?
" R& i) O) L7 B" I* f: t* t9 T3 Z! } \
還要我在VCBase裡看到的一篇文章是這樣計算CPU外頻的:
3 o5 T( J m/ b1 d. _$ e FREQ=G*(N+3)/(M+3); 他說G是特定的一常量。這樣對嗎,那這個常量在哪得到?
7 v. S5 E0 w" s9 b, T* ~(具體看vckbase.com/document/viewdoc/?id=465[/url])
: m5 L( H& i4 _: M. L. l/ j& ?
1 _3 R; J! t! ~9 y1 U還望這裡的高手指導指導小弟一下,小弟不勝感激! |
|