|
|
最近下載了一個叫ClockGen的軟件,它可調CPU,PCI等的頻率,覺得很挺有意思的,很想知道的它的原理。在搜索了一番,了解到:) p9 g+ b# }% O. G
' [* m" Z# `: [/ O; n
CPU總頻率 = CPU外頻 X CPU倍頻. w; y3 f4 ^9 l6 _9 K, S$ t
. V. b4 {/ i3 Z一般況下CPU倍頻不能修改,而CPU外頻是可以在Clock Generator是調整的!在網上搜到小華的布落格,裡面有講到:3 z/ Z; N4 q/ r- ?3 z
) q9 H3 I2 ?! w" r# N 更正:其實PLL 不是單純一個的 div. 鎖相迴路的參數是兩的divider 組成 M(VCO divider)/N(REF divider) 9 b7 ?5 e. S# }. N
補充:觀念上來說是 PLL所振出的頻率經 div後可得到 desired frequency. 但在 clockgen中:% r8 e u! [3 M1 L
1. 有 2 bytes(即所謂的M,N)來決定 VCO
9 t! \# b* F9 L% l, ?2. 有幾個 bits來決定 div;一些主要的 frequency都有相對應的div$ ` g w5 H6 _
3. VCO / div = frequency
8 T* L) A5 o' f* v6 ^1 d
* l4 w! F c1 [) K這裡我有幾個疑問:# U O7 X3 h n V7 s
1.VCO 是怎樣通過M,N算出來的呢,有計算公式嗎?
! O2 m# x) E) B8 P5 T% J, T. e2。div,在哪裡能知道呢?是在Clock Generator的哪個寄存器,我看了Spec,可是還沒找到。
- _9 f5 I+ R9 `, h, K$ Q3。如果我們能得到CPU外頻了,那怎樣讀取到CPU的倍頻呢,是在CPU MSR Register裡 得到的嗎?如果是,那怎樣讀取CPU MSR Register呢?
$ |" O; p' ^. F! ~! L4。不同廠商的Clock Generator產生的CPU外頻計算公式都一樣嗎?有沒有一個標准?
) s( ^( C2 `: w$ C% c
: n4 l5 Q* {- [& K% {/ E' f# o 還要我在VCBase裡看到的一篇文章是這樣計算CPU外頻的:
7 f: N3 f/ Y `. g$ C0 J FREQ=G*(N+3)/(M+3); 他說G是特定的一常量。這樣對嗎,那這個常量在哪得到?; s4 V& Q& `5 F7 V- K
(具體看vckbase.com/document/viewdoc/?id=465[/url])' O- O8 ^: s' d/ E+ r1 }" ^% h
7 _; W2 l6 e& C' a
還望這裡的高手指導指導小弟一下,小弟不勝感激! |
|