|
最近下載了一個叫ClockGen的軟件,它可調CPU,PCI等的頻率,覺得很挺有意思的,很想知道的它的原理。在搜索了一番,了解到:2 F2 r$ K4 I6 \' l- y1 o# t; q5 b
# v' `, Y4 j6 {. H CPU總頻率 = CPU外頻 X CPU倍頻
$ z9 |4 |) s. m5 o
5 F! K9 [ M" C2 y) i* d. d* e一般況下CPU倍頻不能修改,而CPU外頻是可以在Clock Generator是調整的!在網上搜到小華的布落格,裡面有講到:
: ~& o( e9 S8 J: F6 s9 v0 `( r3 |
& i5 W5 V" X$ R8 d 更正:其實PLL 不是單純一個的 div. 鎖相迴路的參數是兩的divider 組成 M(VCO divider)/N(REF divider) : U) m+ [# A2 H
補充:觀念上來說是 PLL所振出的頻率經 div後可得到 desired frequency. 但在 clockgen中:
+ v+ t3 E' j5 g* N( o; y, L1. 有 2 bytes(即所謂的M,N)來決定 VCO
3 o% M- h W% i3 R5 P2. 有幾個 bits來決定 div;一些主要的 frequency都有相對應的div) F* _( S! Z* c o' a
3. VCO / div = frequency
, H& Q4 I9 _. D, B. u
2 P- [; ^2 @8 B( t. s! m這裡我有幾個疑問:
( }! Z1 C4 u, s1.VCO 是怎樣通過M,N算出來的呢,有計算公式嗎?
& M* L0 i, v0 T4 ?0 h3 b2。div,在哪裡能知道呢?是在Clock Generator的哪個寄存器,我看了Spec,可是還沒找到。- ^3 _" J" H3 l: T l
3。如果我們能得到CPU外頻了,那怎樣讀取到CPU的倍頻呢,是在CPU MSR Register裡 得到的嗎?如果是,那怎樣讀取CPU MSR Register呢?! h. Z6 @% h, S
4。不同廠商的Clock Generator產生的CPU外頻計算公式都一樣嗎?有沒有一個標准?
* M1 P0 n& Z! ?# E( |
' D) V- d- Y) q7 x$ G8 u7 ~+ a/ P 還要我在VCBase裡看到的一篇文章是這樣計算CPU外頻的:
3 a" R, A9 ^1 c9 C' Y$ B( i& d FREQ=G*(N+3)/(M+3); 他說G是特定的一常量。這樣對嗎,那這個常量在哪得到?& b; B: ?2 w5 t' P
(具體看vckbase.com/document/viewdoc/?id=465[/url])
5 U/ r7 R9 j7 T, S* U; r3 k( V: d! x
, U! J O0 ~. Q" o還望這裡的高手指導指導小弟一下,小弟不勝感激! |
|