次のページ 前のページ 目次へ

5. クロックの制限に関するまとまった説明

Chips and Technologies 社製のチップセットが持つクロックの制限とは 正確にはどういうことなのか、という点について 混乱している場合が多いようです。 この誤解を解くために、この節に説明を書くことにしました。

一般に、最高ドットクロックを決定する要因は 2 種類存在しています。 ビデオプロセッサが扱える最高ドットクロックによる制限と、 利用可能なメモリーの帯域幅による制限です。 メモリーの帯域幅はビデオメモリーのために使用されているクロックによって 決定されます。 65535 のように、 8bpp を超える色深度を使用できないチップセットの場合、 ビデオプロセッサが扱うことのできる最高ドットクロックによってのみ、 クロックの制限が決められます。 従ってこの制限は 655xx チップセットの場合、駆動電圧によってそれぞれ 56MHz または 68MHz のどちらかになり、64200 WinGine の場合には 80MHz と なります。

6554x 系列および 64300 WinGine チップセットは、 16bpp や 24bpp の色深度を扱うことができます。 しかし、これらのチップセットに使用されているメモリクロックを 確実かつ正確に検出する方法は今のところありません。 このため、ドットクロックの制限については より安全と思われる数値を使用する必要があります。 このため、 C&T ドライバーはビデオプロセッサのドットクロック制限を 1 画素あたりのバイト数 (number of bytes per pixel) で割り、 それを動作時のドットクロック制限として使用します。 したがって、 それぞれの色深度における使用可能な最高クロックは 次のようになります。

                        8bpp    16bpp   24bpp
64300                   85      42.5    28.33
65540/65545 3.3v        56      28      18.67
65540/65545 5v          68      34      22.67
65546/65548             80      40      26.67

CRT または TFT の表示装置に対して、これらの制限値は充分余裕のあるものであり、 "DacSpeed" オプションによってこれらの数値をある程度大きくしても 問題無く動作するでしょう。 しかし、これらの数値では DSTN 表示装置が必要とする特別な帯域幅のことを 考慮していません。

HiQV 系列のチップでは、メモリークロックをきちんと検出できます。 例えば startx のログを取ったファイルの中に

(--) SVGA: CHIPS: probed memory clock of 40090 KHz

という行があることに気がつくでしょう。

多くのチップでは、 BIOS によって実際に設定されている数値よりも 高いメモリークロックを扱うことができることに注目して下さい。 XF86Config ファイルの中で Set_MClk オプションを使うことで、 より高い MClk を指定できます。 ただし、例えば EDO のようなあまり速くないビデオメモリーのために 高い MClk を扱えず、表示画面に乱れを生じる場合もあります。 HiQV 系列のチップで使用可能な最高ドットクロックを求める公式を 次に示します。

Max Dotclock = min(MaxDClk,  0.70  * 4 * MemoryClk / (BytesPerPixel + 
                (isDSTN == TRUE ? 1 : 0)))

[最高ドットクロック] = [MaxDClk:ビデオプロセッサによる制限] または
                       {[0.70 * 4 * メモリークロック] を
                        [BytesPerPixel: 1 画素あたりのバイト数、
                        (DSTN 表示装置の場合はこれに 1 を加える)] で
                        割った数値} のどちらか低いほう

上記の公式を見ればわかるように、ドットクロックには 2 種類の制限があります。 ひとつは全体的な上限値であり、もうひとつはチップが使用できるメモリー帯域幅 によるものです。 メモリー帯域幅による制限について、計算の中身を説明すると、 まずクロックサイクルあたり 4 バイトが転送されます (したがってメモリークロックに 4 をかけます) が、 RAS/CAS シグナル処理のため、 実際に利用できる帯域幅はおよそ 70% 程度になってしまいます。 次にこの全体を 1 画素あたりのバイト数で割りますが、 DSTN 表示装置を使用する場合には 1 画素あたりのバイト数におまけの 1 バイトを追加した数値で割ります。 DSTN 表示装置の「おまけの 1 バイト」はフレームバッファ処理および フレーム高速化のために使用されます。 Chips and Technologies 社製チップの仕様を次に示します。

                    Max DClk MHz      Max Mem Clk MHz
65550 rev A 3.3v          80                38 
65550 rev A 5v           110                38
65550 rev B               95                50
65554                     94.5              55
65555                    110                55
68554                    110                55
69000                    220               100

65550 rev A 以外のチップはすべて 3.3v 専用であることに注意して下さい。 これはドットクロックが一時的に落ち込んでいる理由となっています。 ところで上記の最高メモリークロックは 単にビデオプロセッサがサポートしている数値というだけであり、 ビデオメモリーがサポートする最高クロックと同じであるという 保証はありません。 実際にメモリークロックとして使われている数値は 上記の最大値よりもずっと小さい場合があります。 しかし、 メモリークロックが上記の最高値にプログラムされていると 仮定した場合には、 それぞれのチップに対する最高ドットクロックの制限は 次のようになります。

                        ------CRT/TFT-------    --------DSTN--------
                        8bpp    16bpp   24bpp   8bpp    16bpp   24bpp
65550 rev A 3.3v        80      53.2    35.47   53.2    35.47   26.6
65550 rev A 5v          106.2   53.2    35.47   53.2    35.47   26.6
65550 rev B             95      70      46.67   70      46.67   35.0
65554                   94.5    77      51.33   77      51.33   38.5
65555                   110     77      51.33   77      51.33   38.5
68554                   110     77      51.33   77      51.33   38.5
69000                   220    140      93.33  140      93.33   70.0

メモリークロックによって決まる上限を超えて動かした場合、 HW BitBlt エンジンがクロックサイクルごとに必要とするデータを入手できず、 画像操作中の表示が乱れることになるでしょう。 もし (高すぎる MemClk を指定するなどによって) ビデオメモリーを速すぎるクロックで動かした場合には、 メモリーに実際に書き込まれるデータが壊れてしまうため 画素単位での表示異常を見ることになるでしょう。 TFT または CRT 上で 8bpp 表示の場合には、 おそらく Max DClk 値を 10% 程度超えて設定しても すこしばかり余分に熱を発生する以外の問題を生じることなく 描画速度を向上させることが可能です。 これは 8bpp におけるクロックが 使用可能なメモリーの帯域幅によって制限されないことによります。

もし、標準のクロック制限に従うと 必要なモードをどうしても使えないような場合には、 "DacSpeed" および "Set_MemClk" オプションを 調べてみましょう。 これらのオプションを使えば、特定のモードで動作させるために X サーバー内で必要とするすべての機能を得ることができます。 だたし、ビデオプロセッサをその仕様を超えて動作させた場合、 ダメージを受けないという保証はありません。 これらのオプションを使用するにあたっては、充分な注意が必要です。


次のページ 前のページ 目次へ