sxtest テストは、オンボードのピクセルプロセッサモジュールを搭載した SPARCstation 10 と SPARCstation 20 を検査します。sxtest は、SPARCstation 10 SX および 20 SX の VSIMM (ビデオ SIMM)、および SX メモリーコントローラデバイス専用のテストです。
cg14 SunVTS フレームバッファーテストと、cg14 フレームバッファーを使用する OpenWindows アプリケーションが衝突する可能性があるため、sxtest テストを実行するときには以下の制限が適用されます。
SunVTS フレームバッファーテストの実行中に、OpenWindows 以外のグラフィックアプリケーションを実行しないでください。
vtsk ではなく、vtsui を使用して SunVTS を起動するには、xhost + ホスト名というように xhost にホスト名を指定する必要があります。
SunVTS ウィンドウの外部または内部のビデオ更新情報を生成する OpenWindows プログラムを実行しないでください。
フレームバッファーテストの実行中に SunVTS ウィンドウを閉じてアイコン化しないでください。
システムコンソール cg14 デバイスに対して、オプションウィンドウからフレームバッファーロックオプションを有効にする必要があります (図 39-1 参照)。
VRAM を有効にして sxtest を実行する場合は、フレームバッファーロックも有効にする必要があります。
sxtest は、ピクセルプロセッサの制御レジスタ、仮想メモリー、ビデオメモリーからデータを読み取って照合することによって、ピクセルプロセッサの読み込みエラー、格納エラー、ALU エラー、ロジックエラーなどを検出します。
また、cg14 フレームバッファーとそのデバイスドライバ、ビデオメモリー、データメモリーの統合機能を検査します。さらに、目視検査のためにフレームバッファーにテストパターンを書き込みます。このテストの正確さは、CPU、メモリーカード、cg14 グラフィックスカードなどの他のハードウェアに依存するため、sxtest は、cg14test やその他のテストの実行後に実行してください。sxtest は、図 39-1 に示す 13 個のモジュールから構成されます。
sxtest オプションメニューは、テストシステムの構成を基に作成されます。
sxtest のオプションは以下のとおりです。
表 39-1 sxtest のテストパラメタオプション
オプション |
説明 |
---|---|
FB ロック |
OpenWindows ソフトウェアが動作するウィンドウサーバーでは、フレームバッファーロックはデフォルトで有効になります。 詳細は、『SunVTS 3.2 ユーザーマニュアル』のマルチフレームバッファーのテストの説明を参照してください。 |
CMEM (連続メモリー) |
システムに使用可能な連続メモリーが 4 MB 以上ある場合は、0 または 4 を選択します。 SPARCstation 10 で CMEM を設定する場合は、以下のように入力します。 cd/usr/platform/SUNW,SPARCstation10,SX/sbin CMEM を設定するには、システムに 32 MB 以上のメモリーが必要です。 例:) % sxconfig -s 4 -1 28 -f |
VRAM (ビデオランダムアクセスメモリー) |
ビデオランダムアクセスメモリーとして、0、4、8 のいずれかを選択します。 注意: VRAM を有効にして sxtest を実行する場合は、フレームバッファーロックも有効にしてください。有効にしないと、SunVTS がエラーになります。 |
以下の表に、13 個の sxtest モジュールを示します。
表 39-2 sxtest モジュール
モジュール |
説明 |
---|---|
Display (モジュール 0) |
クリックして有効にし、画像パターンを表示します。
以下の 3 つのサブテストでは、SPAM ライブラリを呼び出して絵を表示し、SPARCstation 10 SX ビデオシステムを介して、カーネルおよび SPAM ライブラリのサブセットの完全性を検査します。これらのルーチンは、SPAM デモプログラムから移植されています。cg14 フレームバッファーが存在しない場合、または、VRAM が無効にされている場合、このモジュールのサブテストは、いずれも実行されません。
以下のサブテストは、それぞれ他のサブテストの合間に絵を表示することによって、システムが停止しているのか、または sxtest が実行中であるのかを判断しやすくします。
rect_test : 数多くのランダムな矩形を画面一杯に描画します。32 ビットモードの OpenWindows が動作していると、矩形は CHUNKY_XBGR モードで描画され、動作していなければ、SPAM ライブラリルーチン sl_rect_fill_32 を使用して CHUNKY_C8 モードで描画されます。
shaa : SPAM ライブラリルーチン sl_line_shaa_32、 sl_span_load_8、sl_rect_fill_8 を使用して、CHUNKY_BGR モードで陰影付きの線分の絵を描画します。 注 - テストが 8 ビットウィンドウで実行されている場合は、shaa テストは行われません。
lines : 様々な色の線分を画面一杯に描画します。これらの線分は、32 ビットモードの OpenWindows が動作している場合は CHUNKY_XBGR モードで描画され、動作していない場合は、SPAM ライブラリルーチン sl_line_fill_8 を使用して CHUNKY_C8 モードで描画されます。 |
MUL (モジュール 1) |
クリックして有効にし、乗算器の動作のテストを選択します。
以下の 8 つのサブテストが呼び出されます。各サブテストには、ランダムに生成された 2500 個の MUL SPAM マクロが割り当てられます。 sp_mul0 sp_mul1 sp_mul2 sp_mul3 sp_mul4 sp_mul5 sp_mul6 sp_mul7
各サブテストは、以下に示すように、ランダムな SPAM MUL マクロパターンを実行して、SPAM MUL 命令セットを検査します。 spam_dot(S_0,R42,R45,R31,5) spam_mulr(L_16,R44,R29,R52,1) spam_mul(S_15,R115,R114,R58,4) spam_mul(L_16,R89,R110,R81,8) spam_mulr(S_8,R21,R76,R53,1) spam_saxpr(S_8,R54,R46,R98,2) spam_dotr(L_16,R75,R40,R20,5) spam_dot(L_16,R44,R45,R84,4) spam_saxp(L_0,R93,R96,R44,8) spam_mulr(L_0,R86,R56,R56,5) spam_dotr(L_0,R14,R62,R40,2) spam_saxpr(S_15,R112,R85,R95,7) |
ALU (モジュール 2) |
クリックして有効にし、ALU の動作のテストを選択します。
以下の 5 つのサブテストが呼び出されます。各サブテストには、ランダムに生成された 2500 個の ALU SPAM マクロが割り当てられます。 sp_alu0 sp_alu1 sp_alu2 sp_alu3 sp_alu4
各サブテストは、以下に示すように、ランダムな SPAM ALU マクロパターンを実行して、SPAM ALU 命令セットを検査します。 spam_subv(R101,R31,R42,1) spam_subs(R90,R44,R90,14) spam_subv(R44,R70,R29,14) spam_sum(R58,R95,R114,9) spam_adds(R54,R46,R98,10) spam_addi(R9,51,R68,9) spam_abs(R76,R28,7) spam_addv(R80,R59,R93,11) |
ROP (モジュール 3) |
クリックして有効にし、ROP の動作のテストを選択します。 以下の 5 つのサブテストが呼び出され、各サブテストには、2500 個のランダムに生成された ROP SPAM マクロが割り当てられます。 sp_rop0 sp_rop1 sp_rop2 sp_rop3 sp_rop4
各サブテストは、以下に示すように、ランダムな SPAM ROP マクロパターンを実行して、SPAM ROP 命令セットを検査します。 spam_selb(R101,R31,R42,1) spam_ropl(R90,R27,R44,14) spam_sels(R19,R16,R112,15) spam_ropm(R47,R29,R96,16) spam_selb(R52,R43,R29,5) spam_ropb(R115,R114,R58,7) spam_selv(R57,R75,R16,2) spam_ropm(R110,R93,R83,13) |
LOGIC (モジュール 4) |
クリックして有効にし、論理演算のテストを選択します。
以下の 5 種類のサブテストが呼び出されます。各サブテストには、2500 個のランダムに生成された LOGIC SPAM マクロが割り当てられます。 sp_logic0 sp_logic1 sp_logic2 sp_logic3 sp_logic4
各サブテストは、以下に示すように、ランダムな SPAM LOGIC マクロパターンを実行して、SPAM LOGIC 命令セットを検査します。 spam_xors(R101,R31,R42,1) spam_xori(R90,101,R90,14) spam_xorv(R30,R19,R95,13) spam_ands(R108,R16,R125,1) spam_andv(R115,R114,R58,7) spam_ors(R46,R89,R8,16) spam_orv(R57,R75,R16,2) spam_andi(R9,51,R68,9) |
SHIFT (モジュール 5) |
クリックして有効にし、シフト操作のテストを選択します。
以下の 5 つのサブテストが呼び出されます。各サブテストには、2500 個のランダムに生成された SHIFT SPAM マクロが割り当てられます。 sp_shift0 sp_shift1 sp_shift2 sp_shift3 sp_shift4
各サブテストは、以下に示すように、ランダムな SPAM SHIFT マクロパターンを実行して、SPAM SHIFT 命令セットを検査します。 spam_sllv(R101,R31,R42,1) spam_slli(R90,5,R90,14) spam_srai(R30,19,R95,13) spam_srli(R108,16,R125,1) spam_sllv(R52,R43,R29,5) spam_slfi(R46,25,R8,16) spam_slfs(R57,R75,R16,2) spam_srav(R54,R44,R93,8) spam_srlv(R58,R60,R96,16) |
COMP (モジュール 6) |
クリックして有効にし、比較操作のテストを選択します。
以下の 5 つのサブテストが呼び出されます。各サブテストには、2500 個のランダムに生成された COMP SPAM マクロが割り当てられます。 sp_comp0 sp_comp1 sp_comp2 sp_comp3 sp_comp4
各サブテストは、以下に示すように、ランダムな SPAM COMP マクロパターンを実行して、SPAM COMP 命令セットを検査します。 spam_cmpv_gt(R101,R31,R42,1) spam_cmps_lt(R90,R44,R90,14) spam_cmps_eq(R95,R112,R19,12) spam_cmpv_lt(R115,R114,R58,7) spam_cmps_gt(R46,R89,R8,16) spam_cmps_eq(R57,R75,R16,2) spam_cmpv_le(R54,R46,R98,10) spam_cmpv_eq(R9,R51,R68,9) spam_cmps_gt(R76,R103,R28,7) spam_cmpv_eq(R52,R37,R50,8) spam_cmpv_ge(R61,R86,R16,12) |
MISC (モジュール 7) |
クリックして有効にし、補助操作のテストを選択します。
以下の 5 つのサブテストが呼び出されます。各サブテストには、2500 個のランダムに生成された MISC SPAM マクロが割り当てられます。 sp_misc0 sp_misc1 sp_misc2 sp_misc3 sp_misc4
各サブテストは、以下に示す SPAM MISC マクロパターンを実行して、SPAM MISC 命令セットを検査します。 spam_scat(R45,-1,R29,1) spam_gath(R95,-6,R114,9) spam_delt(R89,R9,R16,16) spam_plot(R54,R46,R98,10) spam_plot(R53,R20,R75,16) spam_scat(R91,-2,R70,9) spam_gath(R120,-2,R51,15) spam_delt(R59,R95,R120,1) |
MADR (モジュール 8) |
クリックして有効にし、sx のアドレス線のテストを選択します。
以下の 8 つのサブテストが呼び出されます。各サブテストは spam_stld 命令と spam_ldld 命令を使用して 0x100000 DRAM アドレスを検証します。8 つのサブテストをすべて実行した後に、4 MB の VRAM と 4 MB の DRAM のすべてのアドレスビットとデータビットが検査されます。 0x00000000-0x000fffff 0x00100000-0x001fffff 0x00200000-0x002fffff 0x00300000-0x003fffff 0xfc000000-0xfc0fffff * 0xfc100000-0xfc1fffff * 0xfc200000-0xfc2fffff * 0xfc300000-0xfc3fffff * * CMEM オプションが無効な場合、これらのサブテストは行われません。 |
SMCALL (モジュール 9) |
クリックして有効にし、sxtest 機能の簡易テストを選択します。
spam.smcall から以下の 11 のサブテストが呼び出され、SMC チップの全般的な機能を検証します。サブテストすべてに、cg14 バージョンと非 cg14 バージョンがあります。各サブテストは 4 回繰り返され、実行のたびに IQ FIFO のエントリ数 (8、16、32、64) が変更されます。 shift_ldst instr_mix * arith_ldst cmp_ldst select_ldst interlock_all * logic_ldst mult_ldst rop scat_ldst delt_ldst * VRAM オプションが無効な場合、これらのサブテストは行われません。 |
MCNT (モジュール 10) |
クリックして有効にし、繰り返し回数を変更しながら、読み込み機能と格納機能のテストを実行します。
以下の 12 のサブテストが呼び出されます。各サブテストは、アドレスオフセットとアイテム数を変更して、SPAM の格納機能を検査します。 spsd_stba_cnt spsd_stbd_cnt spsd_stbds_cnt spsd_stcd_cnt spsd_stla_cnt spsd_stld_cnt spsd_stlds_cnt spsd_stpd_cnt spsd_stqd_cnt spsd_stsa_cnt spsd_stsd_cnt spsd_stsds_cnt |
GRIF (モジュール 11) |
クリックして有効にし、グラフィックインタフェースロジックのテストを選択します。
以下の 36 のサブテストが呼び出されます。各サブテストは、読み込み命令と格納命令を使用して SPAM のグラフィックインタフェースロジックを検査します。cg14 が存在しない場合、これらのサブテストは実行されません。 spsd_stbd_dram spsd_stbd_xbgr spsd_stbd_bgr spsd_stbd_8x spsd_stbd_8c spsd_stbd_x32 spsd_stbd_b32 spsd_stbd_g32 spsd_stbd_r32 spsd_stsd_dram spsd_stsd_xbgr spsd_stsd_bgr spsd_stsd_8x spsd_stsd_8c spsd_stsd_x32 spsd_stsd_b32 spsd_stsd_g32 spsd_stsd_r32 spsd_ldbd_dram spsd_ldbd_xbgr spsd_ldbd_bgr spsd_ldbd_8x spsd_ldbd_8c spsd_ldbd_x32 spsd_ldbd_b32 spsd_ldbd_g32 spsd_ldbd_r32 spsd_ldsd_dram spsd_ldsd_xbgr |
spsd_ldsd_bgr spsd_ldsd_8x spsd_ldsd_8c spsd_ldsd_x32 spsd_ldsd_b32 spsd_ldsd_g32 spsd_ldsd_r32 |
|
REGF (モジュール 12) |
クリックして有効にし、レジスタファイルのポインタロジックのテストを選択します。
spam.regfile ファイルから以下の 22 のサブテストが呼び出され、各種 SPAM 命令を使用してレジスタファイルのロジックを検査します。 readpointer1 * readpointer2 * readpointer3 * readpointer4 * writepointer1 * writepointer2 * writepointer3 * writepointer4 * readpointer5 * writepointer5 * rdptr0 �/LITERAL> wrptr0 �/LITERAL> rdptr1 �/LITERAL> wrptr1 �/LITERAL> rdptr2 �/LITERAL> wrptr2 �/LITERAL> rdptr3 �/LITERAL> wrptr3 �/LITERAL> rdptr4 �/LITERAL> wrptr4 �/LITERAL> rdptr5 �/LITERAL> wrptr5 �/LITERAL> * VRAM オプションが無効な場合、これらのサブテストは行われません。 �CMEM オプションが無効な場合、これらのサブテストは行われません。 |
グラフィックテストの性格上、グラフィックテスト中にフレームバッファーを読み書きすると、ユーザーの作業の障害になることがあります。sxtest は、オフラインの機能テスト (Functional Test) モードでのみ実行することができます。デフォルトでは、このテストモードでは、sxtest は画像サブテスト、メモリーアドレスサブテスト、メモリーカウントサブテスト、グラフィックインタフェースサブテスト、レジスタファイルサブテストを実行しますが、必要に応じてその他のサブテストの選択および選択解除もできます。
/opt/SUNWvts/bin/sxtest 標準引数 -o dev=デバイス名, lock=E(有効)/D(無効),tm=終了モジュール番号,cmem=n,vram=n,md=XXX
表 39-3 sxtest のコマンド行構文
引数 |
説明 |
---|---|
dev=デバイス名 |
テストを行うデバイス名を指定します。 |
lock=E(有効)/D(無効) |
フレームバッファーロックを有効または無効にします。詳細は、『SunVTS 3.2 ユーザーマニュアル』の「フレームバッファーのテスト」の節を参照してください。OpenWindows ソフトウェアを動作させているウィンドウサーバーでは、デフォルトでフレームバッファーロックが有効になります。 |
tm=終了モジュール番号 |
最後にテストするモジュール番号を指定します。これ以降の最後の 4 つの引数を使用し、sxtest を特定のテスト範囲に狭めます。 |
cmem=0|4 |
連続メモリーを有効または無効にします。1 を選択して有効にするか、0 を選択して無効にします。 注 - システムの連続メモリーが 4MB 未満の場合は、無効 (0) を選択する必要があります。 |
cgfourteen0=0|4|8 |
ビデオランダムアクセスメモリーを有効または無効にします。 1 を選択して有効にするか、0 を選択して無効にします。 |
md=vis+alu+... |
1 回のパスでテストするモジュールを選択します。 |
64 ビットのテストは、sparcv9 サブディレクトリに格納されています (/opt/SUNWvts/bin/sparcv9/テスト名)。このディレクトリにテストが存在しない場合、そのテストは、32 ビットのテストとしてだけ実行することができます。詳細は、「32 ビットテストと 64 ビットテスト」を参照してください。
|
エラーメッセージ |
考えられる原因 |
対処方法 |
---|---|---|---|
6002 |
Unable to lock frame buffer |
ウィンドウシステムが動作していないのに、FB ロックが有効になっています。 |
|
6004 |
Can't get sem 数値 |
|
|
6006 |
Failed lock sem:dev 数値, type 数値 |
|
|
6008 |
Failed unlock sem |
|
|
6010 |
Failed GETVAL sem= |
|
|
6012 |
Failed sem_val |
|
|
6014 |
console_p() failed: |
|
|
6016 |
Failed sem_setall |
|
|
6017 |
Failed sem_rmid |
|
|
6018 |
Failed get sem |
|
|
6020 |
ioctl command 名前 failed |
|
|
6022 |
エラーメッセージ |
|
|
6024 |
Failed to malloc for 名前 |
|
|
6026 |
mem ccitt[名前+数値,名前+数値]: o:数値 e:数値 o^e:数値 |
|
|
6028 |
mem crc16[名前+数値,名前+数値]: o:数値 e:数値 o^e:数値 |
|
|
6030 |
reg ccitt: o:数値 e:数値 o^e:数値 |
|
|
6032 |
reg crc16: o:数値 e:数値 o^e:数値 |
|
|
6034 |
Failed to open 名前 device |
|
|
6035 |
First Open of sx device |
|
|
6036 |
Modules selected improperly!!! |
|
|
6038 |
名前, i_module = 名前 |
|
|
6040 |
FB unlock request failed |
|
|
8000 |
Can't acquire console semaphore |
システムに過大な負荷がかかっています。 |
システムの負荷を減らしてください。 |
システムエラー |
エラーがなくならない場合は、購入先に問い合わせてください。 |
||
8002 |
Can't get sem 数値 |
|
|
8004 |
Unable to set page bounds |
|
|
8006 |
mmap: unable to map MDI control register space |
|
|
8008 |
Failed to mmap 名前 |
|
|
8010 |
sxtest is only running in Functional test |
|
|
8012 |
Failed to open 名前 |
|
|