|
|
最近下載了一個叫ClockGen的軟件,它可調CPU,PCI等的頻率,覺得很挺有意思的,很想知道的它的原理。在搜索了一番,了解到:
9 T7 S) T0 w% g g' G; G4 c
" `, B7 S3 E- r- a, o3 T CPU總頻率 = CPU外頻 X CPU倍頻/ E6 l2 G5 b0 N9 \
- k) \1 q0 L. P- _
一般況下CPU倍頻不能修改,而CPU外頻是可以在Clock Generator是調整的!在網上搜到小華的布落格,裡面有講到:$ }( H4 U1 j6 c- ~9 n
3 \+ j" F3 u r' e9 b% U, J 更正:其實PLL 不是單純一個的 div. 鎖相迴路的參數是兩的divider 組成 M(VCO divider)/N(REF divider)
; W" M" M7 O+ L# y; s4 N補充:觀念上來說是 PLL所振出的頻率經 div後可得到 desired frequency. 但在 clockgen中:9 T1 w/ P& F: c$ }0 m4 A/ w
1. 有 2 bytes(即所謂的M,N)來決定 VCO+ x+ F, Y z# V4 O: u, q
2. 有幾個 bits來決定 div;一些主要的 frequency都有相對應的div5 r7 W$ x: A* w* S- t
3. VCO / div = frequency
: S& G! H, ?! ], `# f) t. E" Q' |3 i5 \0 R2 J
這裡我有幾個疑問:4 f+ ~ {0 y. j: C
1.VCO 是怎樣通過M,N算出來的呢,有計算公式嗎?. y2 r3 D% \' n( S3 D& M
2。div,在哪裡能知道呢?是在Clock Generator的哪個寄存器,我看了Spec,可是還沒找到。6 t$ j' x3 i# N* {: K0 r& m
3。如果我們能得到CPU外頻了,那怎樣讀取到CPU的倍頻呢,是在CPU MSR Register裡 得到的嗎?如果是,那怎樣讀取CPU MSR Register呢?- [( h, w! z% Y2 j. G
4。不同廠商的Clock Generator產生的CPU外頻計算公式都一樣嗎?有沒有一個標准?- g0 v3 U: [# g% J" M
+ s6 p. b$ ?3 z' ~ M7 [* q 還要我在VCBase裡看到的一篇文章是這樣計算CPU外頻的:' l- Q& f; A1 h7 V6 D4 Y) t
FREQ=G*(N+3)/(M+3); 他說G是特定的一常量。這樣對嗎,那這個常量在哪得到?: k# Q6 r; G* J4 k. s
(具體看vckbase.com/document/viewdoc/?id=465[/url])7 O& t7 s6 `5 m8 \
2 v6 p: R6 }& e
還望這裡的高手指導指導小弟一下,小弟不勝感激! |
|