以下の表に、13 個の sxtest モジュールを示します。
表 40-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 |
GRIF (モジュール 11) (続き) |
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 オプションが無効な場合、これらのサブテストは行われません。 |