SunVTS 3.0 Test Reference Manual

sxtest Module Descriptions

The 13 sxtest modules are described in the table below.

Table 38-2 sxtest Modules

Module 

Description 

Display (module0) 

Click Enable to display visual patterns.  

 

Three subtests call the SPAM library and display pictures to verify the integrity of a subset of the kernel and the SPAM libraries through the SPARCstation 10 SX video system. These routines are ported from the SPAM demonstration programs. All subtests in this module are skipped if the cg14 frame buffer does not exist, or if the VRAM is disabled. 

 

One of the following subtests displays screens between other subtests. This helps you determine whether the system is hung or if sxtest is running.

 

rect_test: The screen is filled with random rectangles. The rectangles are drawn in CHUNKY_XBGR mode if 32-bit mode OpenWindows is running. If not, they are drawn in CHUNKY_C8 mode with the SPAM library routine sl_rect_fill_32.

 

shaa: A picture of shaded lines is drawn in CHUNKY_BGR mode with the SPAM library routines sl_line_shaa_32, sl_span_load_8, and sl_rect_fill_8.

NOTE: The shaa test is skipped if the test is running on an 8-bit window.

 

lines -- The screen is filled with lines of various colors. These lines are drawn in CHUNKY_XBGR mode if 32-bit mode OpenWindows is running; If not, they are drawn in CHUNKY_C8 mode with SPAM library routine sl_line_fill_8.

MUL (module1) 

 

Click Enable to test the multiplier operations. 

 

Eight subtests are called, each having 2500 randomly generated MUL SPAM macros.  

sp_mul0

sp_mul1

sp_mul2

sp_mul3

sp_mul4

sp_mul5

sp_mul6

sp_mul7

 

Each subtest tests SPAM MUL instruction sets by running random SPAM MUL macro patterns, for example: 

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 (Module2) 

 

Click Enable to test ALU operations.  

 

Five subtests are called, each having 2500 randomly generated ALU SPAM macros.  

sp_alu0

sp_alu1

sp_alu2

sp_alu3

sp_alu4

 

Each subtest tests SPAM ALU instruction sets by running random SPAM ALU macro patterns, for example: 

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 (Module3) 

 

Click Enable to test the ROP operations. 

 

Five subtests are called, each having 2500 randomly generated ROP SPAM macros.  

sp_rop0

sp_rop1

sp_rop2

sp_rop3

sp_rop4

 

Each subtest tests SPAM ROP instruction sets by running random SPAM ROP macro patterns, for example: 

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 (Module4) 

 

Click Enable to test the logical operations. 

 

Five subtests are called, each having 2500 randomly generated LOGIC SPAM macros. 

sp_logic0

sp_logic1

sp_logic2

sp_logic3

sp_logic4

 

Each subtest tests SPAM LOGIC instruction sets by running random SPAM LOGIC macro patterns, for example: 

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 (Module5) 

Click Enable to test the shift operations. 

 

Five subtests are called, each having 2500 randomly generated SHIFT SPAM macros.  

sp_shift0

sp_shift1

sp_shift2

sp_shift3

sp_shift4

 

Each subtest checks SPAM SHIFT instruction sets by running random SPAM SHIFT macro patterns, for example: 

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 (Module6) 

 

Click Enable to test the compare operations. 

 

Five subtests are called, each having 2500 randomly generated COMP SPAM macros.  

sp_comp0

sp_comp1

sp_comp2

sp_comp3

sp_comp4

 

Each subtest checks SPAM COMP instruction sets by running random SPAM COMP macro patterns. For example: 

spam_cmpv_gt(R101,R31,R42,1) spam_cmps_lt(R90,R44,R90,14) spam_cmps_eq(R95,R112,R19,12) spam_cmpv_gt(R44,R43,R29,14) 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 (Module7) 

 

Click Enable to test the miscellaneous operations.  

 

Five subtests are called, each having 2500 randomly generated MISC SPAM macros.  

sp_misc0

sp_misc1

sp_misc2

sp_misc3

sp_misc4

 

Each subtest checks SPAM MISC instruction sets by running random SPAM MISC macro patterns, for example: 

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 (Module8) 

Click Enable to test the address lines of sx.

 

Eight subtests are called; each subtest verifies the 0x100000 SPAM address with spam_stld and spam_ldld instructions. All address bits and data bits of 4 Mbytes of VRAM and 4 Mbytes of DRAM are tested after running through the eight subtests.

0x00000000-0x000fffff

0x00100000-0x001fffff

0x00200000-0x002fffff

0x00300000-0x003fffff

0xfc000000-0xfc0fffff *

0xfc100000-0xfc1fffff *

0xfc200000-0xfc2fffff *

0xfc300000-0xfc3fffff *

 

* These subtests are skipped if the CMEM option is disabled.  

SMCALL (Module9) 

 

Click Enable for a brief test of sxtest functionality.

 

Eleven subtests are called from spam.smcall to verify the general function of the SMC chip. All subtests have a cg14 version and a non-cg14 version. These subtests repeat four times, each time with the IQ FIFO programmed to a different number of entries (8, 16, 32, or 64).

shift_ldst

instr_mix *

arith_ldst

cmp_ldst

select_ldst

interlock_all *

logic_ldst

mult_ldst

rop

scat_ldst

delt_ldst

* These subtests are skipped if the VRAM option is set to disable.  

MCNT (Module10) 

Click Enable to test the load and store functions with different repeat counts. 

 

Twelve subtests are called; they test the SPAM store functions by varying address offset and item count.  

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 (Module11) 

Click Enable to test the graphic interface logic. 

 

Thirty-six subtests are called; they test the SPAM graphic interface login with load/store instructions. All subtests are skipped if cg14 does not exist.

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 (Module12) 

Click Enable to test the register file pointer logic. 

 

Twenty-two subtests are called from spam.regfile to verify the register file's logic with assorted SPAM instructions.

readpointer1 *

readpointer2 *

readpointer3 *

readpointer4 *

writepointer1 *

writepointer2 *

writepointer3 *

writepointer4 *

readpointer5 *

writepointer5 *

rdptr0  

wrptr0  

rdptr1  

wrptr1  

rdptr2  

wrptr2  

rdptr3  

wrptr3  

rdptr4  

wrptr4  

rdptr5  

wrptr5  

* These subtests are skipped if the VRAM option is disabled. 

These subtests are skipped if the CMEM option is disabled.