|
|
最近下載了一個叫ClockGen的軟件,它可調CPU,PCI等的頻率,覺得很挺有意思的,很想知道的它的原理。在搜索了一番,了解到: L Y5 y* x8 s o
5 x1 ]% V* Z# P0 h& e
CPU總頻率 = CPU外頻 X CPU倍頻4 {8 q" P' I1 a" X, S5 C t1 G
; A# z& H3 A) P6 Z W, n
一般況下CPU倍頻不能修改,而CPU外頻是可以在Clock Generator是調整的!在網上搜到小華的布落格,裡面有講到:# x& J9 R: h9 V. G& b3 Z: U
8 P4 w6 f( M) g# l$ G 更正:其實PLL 不是單純一個的 div. 鎖相迴路的參數是兩的divider 組成 M(VCO divider)/N(REF divider)
9 a) f0 j# \" w: u" E補充:觀念上來說是 PLL所振出的頻率經 div後可得到 desired frequency. 但在 clockgen中:
0 }# B2 u. r Q% e% l* ~* q$ `1. 有 2 bytes(即所謂的M,N)來決定 VCO) q/ |- N# [8 \
2. 有幾個 bits來決定 div;一些主要的 frequency都有相對應的div
! {2 g4 n. y1 C) W9 Y3. VCO / div = frequency
1 C/ _2 o! A5 K( a& J
2 I5 m2 Y" ?9 X7 I5 T$ J9 e這裡我有幾個疑問:/ a% N$ b i' m' b
1.VCO 是怎樣通過M,N算出來的呢,有計算公式嗎?
; ~2 f7 J9 M5 \/ P1 R7 P2。div,在哪裡能知道呢?是在Clock Generator的哪個寄存器,我看了Spec,可是還沒找到。
! W* a7 ?1 j: G! E3。如果我們能得到CPU外頻了,那怎樣讀取到CPU的倍頻呢,是在CPU MSR Register裡 得到的嗎?如果是,那怎樣讀取CPU MSR Register呢?
# j! f! z) \5 k0 I4。不同廠商的Clock Generator產生的CPU外頻計算公式都一樣嗎?有沒有一個標准?
0 [% Y% F. d; r
1 D- [7 L3 L5 k, F f+ }* ~ 還要我在VCBase裡看到的一篇文章是這樣計算CPU外頻的:3 b* f! |2 s: |" X2 r
FREQ=G*(N+3)/(M+3); 他說G是特定的一常量。這樣對嗎,那這個常量在哪得到?: ~3 `3 B6 R2 ^
(具體看vckbase.com/document/viewdoc/?id=465[/url])
' r. b, S4 M* [# y' m0 D2 B
) V/ N! ] Q/ \ @- }) s- \# X還望這裡的高手指導指導小弟一下,小弟不勝感激! |
|