|
|
最近下載了一個叫ClockGen的軟件,它可調CPU,PCI等的頻率,覺得很挺有意思的,很想知道的它的原理。在搜索了一番,了解到:
9 d& Y6 Y }, d+ Y2 U/ M: x, T$ ?
CPU總頻率 = CPU外頻 X CPU倍頻" {# \) g. _: Y, Y
1 K" _. F9 ^, [8 Y" N5 O \
一般況下CPU倍頻不能修改,而CPU外頻是可以在Clock Generator是調整的!在網上搜到小華的布落格,裡面有講到:
W+ `% q0 v$ R* C* Y8 q& D, f2 h$ {% a: U) o* U, [$ }7 l: u( t
更正:其實PLL 不是單純一個的 div. 鎖相迴路的參數是兩的divider 組成 M(VCO divider)/N(REF divider)
Z0 T5 d1 {$ P# M- g6 L; j0 n2 o補充:觀念上來說是 PLL所振出的頻率經 div後可得到 desired frequency. 但在 clockgen中:) p6 ?! n( ?( u( C3 _: I# d: E# [
1. 有 2 bytes(即所謂的M,N)來決定 VCO
; x! k' B6 v1 Q( Z! @9 A3 p7 y) Y. r2. 有幾個 bits來決定 div;一些主要的 frequency都有相對應的div* t6 O! F3 y6 U0 t4 T
3. VCO / div = frequency @6 z# k: q$ l! z( }
$ b! l& l' Z; T; K% s, ~) g: [. X4 u這裡我有幾個疑問:
: B5 u4 h+ ~6 A4 f9 j- }1.VCO 是怎樣通過M,N算出來的呢,有計算公式嗎?
/ j7 j4 {7 O* I2。div,在哪裡能知道呢?是在Clock Generator的哪個寄存器,我看了Spec,可是還沒找到。
$ _8 @" p( w; c! P; V3。如果我們能得到CPU外頻了,那怎樣讀取到CPU的倍頻呢,是在CPU MSR Register裡 得到的嗎?如果是,那怎樣讀取CPU MSR Register呢?( g* O: l# F R2 Z( J
4。不同廠商的Clock Generator產生的CPU外頻計算公式都一樣嗎?有沒有一個標准?: i9 Y4 ` {* i& [ X3 p) N: B! d( s
5 b. y, a* z' [4 q4 o! H 還要我在VCBase裡看到的一篇文章是這樣計算CPU外頻的:
9 [* b8 `; [+ D FREQ=G*(N+3)/(M+3); 他說G是特定的一常量。這樣對嗎,那這個常量在哪得到?' V6 [9 X2 @+ R* Y- _
(具體看vckbase.com/document/viewdoc/?id=465[/url]): t* Q4 s1 H' q, w* P, p
C2 s3 ?9 j# g3 Q
還望這裡的高手指導指導小弟一下,小弟不勝感激! |
|