Prism
Operation Manual Issue 2.00
Page C.1
Appendix C - System Test Sequence Listings
This appendix contains listings of the four System (built-in) Test Sequences. These are
included as example source files with the Test Sequence Compiler software. You may
find it useful to use one of these Test Sequences as a starting point in developing your
own User Test Sequences.
Sequence 01: Global Test
This Sequence allows Consumer or Professional Channel Status, and is quite tolerant
of all parameters:
HEADER('Global Test ');
/*
Segment 1: tests carrier for lock, near-fail, block-length, and analogue
*/
SEGMENT( 1,'Carrier qual');
CLEAR_ERROR_COUNT;
SET_FAIL;
TEST_UNLOCK_BIT; JUMP_IF_ZERO(@lock_ok);
MESSAGE( 'No carrier lock '); SEGMENT_END;
@lock_ok:
TEST_NFAIL_BIT; JUMP_IF_ZERO(@carrier_ok);
MESSAGE('Carrier nr fail '); SEGMENT_END;
@carrier_ok:
TEST_BLOCKERR_BIT; JUMP_IF_ZERO(@block_ok);
MESSAGE('Block length err'); SEGMENT_END;
@block_ok:
TEST_ALOG_BIT; JUMP_IF_ZERO(@not_alog);
MESSAGE('Analogue signal '); SEGMENT_END;
@not_alog:
SET_PASS;
SEGMENT_END;
/************************************************************************/
/*
Segment 2: tests for a standard sampling rate, within 1000ppm
*/
SEGMENT( 2,'fs frequency');
SET_PASS;
MEAS_FS_BASE; JUMP_IF_GREATER_THAN(0,@not_48);
MEAS_FS_ERROR; AND(07FFFH); JUMP_IF_GREATER_THAN(1000ppm480,@bad_48);
SEGMENT_END;
@bad_48:
SET_FAIL; MESSAGE('48kHz, >1000ppm '); SEGMENT_END;
@not_48:
JUMP_IF_GREATER_THAN(1,@not_441);
MEAS_FS_ERROR; AND(07FFFH); JUMP_IF_GREATER_THAN(1000ppm441,@bad_441);
SEGMENT_END;
@bad_441:
SET_FAIL; MESSAGE('44k1Hz, >1000ppm'); SEGMENT_END;
@not_441:
JUMP_IF_GREATER_THAN(2,@not_440);
MEAS_FS_ERROR; AND(07FFFH); JUMP_IF_GREATER_THAN(1000ppm440,@bad_440);
SEGMENT_END;
@bad_440: