The Multi-Channel Option diagnostics tests are an extension of the Integrated Diagnostics Environment (IDE) test suite. These diagnostic tests provide a thorough examination of the Multi-Channel Option.
There are three versions of the IDE tests, for MCO installed under:
4.0.5H
5.0.1
5.1 and 5.2
This chapter explains how to use the Multi-Channel Option diagnostics:
installing the tests
using the 4.0.5H test menu
using the 5.0.1 test menu
using the 5.1 (5.2) test menu
running tests from the test menu
running individual vs2ide tests
![]() | Note: Because the Multi-Channel Option diagnostics are incompatible with the X Window System™, a TTY console monitor is required for testing. |
Use the inst program to load the graphics diagnostics from the CD-ROM. After installation, the system loads the diagnostics tests into the appropriate directory.
![]() | Note: You must install the operating system before you can run the Multi-Channel Option diagnostics. Refer to your operating system documentation for information on loading the software. |
To install the tests from the CD-ROM, follow these steps:
Install IRIX from the CD (4.0.5H: 806-0007-009; 5.0.1: 812=0121-002; 5.1.1: 812-0121-003).
When installation is complete, quit inst; bring up the system again.
Insert your CD containing the diagnostics. At the Inst> prompt, type
help beginner |
and press <Enter> to display the menu.
Select option 7, set "[keywords] [names]" to enter interactive mode.
The system prints messages about the installation history database and disk changes.
In the list
diag.man.diag * 0 267+ Diagnostic Manual Pages diag.man.relnotes * 0 93+ Diagnostic Release Notes diag.sw.diag * 1381+ 1760016+ Diagnostic Software diag.sw.mco * 0 544+ Diagnostic MCO Software |
request installation of diag.sw.mco:
diag.man.diag * 0 267+ Diagnostic Manual Pages diag.man.relnotes * 0 93+ Diagnostic Release Notes diag.sw.diag * 1381+ 1760016+ Diagnostic Software i diag.sw.mco * 0 544+ Diagnostic MCO Software |
The system prints a disk space summary.
At the prompt, type go and press <Enter>.
When the process finishes, type quit and press <Enter>. The diagnostics are installed in a separate directory; the name depends on the platform:
for 4.0.5H:
for 5.0.1, 5.1 (5.1.1), and 5.2:
After you have completed the installation, return to the System Maintenance Menu and select option 1, "Start System. "
To run the Multi-Channel Option diagnostic tests, follow these steps:
Turn on the system; a login prompt appears. Type diag and press <Enter>.
The system informs you that it is running 4.0.5H and RealityEngine graphics, and prints the following message:
To run MCO diagnostics, please do not automatically run RealityEngine diagnostics. Type vs2 at the diag prompt instead. Automatically run RealityEngine diagnostics? (y or n) |
Type n or press <Enter>.
Type vs2 and press <Enter> to display the test menu.
The software tells you that results will be logged in /usr/tmp/vs2.log0 or /usr/tmp/vs2.log1, depending on whether the Multi-Channel Option is running on pipe 0 or pipe 1.
![]() | Note: The MCO release concurrent with this version of IRIX does not run on pipe 1. |
The software displays a menu of tests:
RealityEngine Multi-Channel Options Diagnostics - Test Time(mi:se) ------------------------------------------------------------------(Estimated test time based on a 310 system with 16MB of memory) 1- Quick Check of MCO 1:15 2- Full Check of MCO 2:25 3- MCO Board Initialization Test 0:20 4- MCO Register Test 0:40 5- MCO DAC Test 0:35 6- MCO Read DAC Test Register 0:30 7- MCO Load Gamma Constant 0:25 8- MCO XILINX Test 0:35 9- MCO VOF Loader 0:40 10- EXIT from menu Please choose an item (1-10) > |
To check the newly installed MCO, type 2 and press <Enter>.
If an error is encountered, the test does not stop running; diagnostic tests stop only after all tests have run.
To run the Multi-Channel Option diagnostic tests from the test menu, follow these steps:
Turn on the system; a login prompt appears. Type diag and press <Enter>.
The system informs you that it is running 5.0.1, and prints the following message:
To run MCO diagnostics, please do not automatically run RealityEngine diagnostics. Type vs2 at the diag prompt instead. Automatically run RealityEngine diagnostics? (y or n) |
Type n or press <Enter>. The following message appears:
If you wish to run ide manually, please make sure you do the following first: |
- /usr/gfx/stopgfx - setenv PIPE to the correct pipe number - rmib - if rmib detects IB2, setenv VENICE_SKIP_IB_CRCS |
This message applies to RealityEngine or RealityEngine2.
Type vs2 and press <Enter> to display the test menu.
The software displays these messages and a menu of tests:
In a multi-pipe MCO configuration system, test(s) will run on the default pipe 0, and test results will be logged in /usr/tmp/vs2.log0. If you wish to run diagnostic test(s) on a specific pipe, use Pipe Select to change the pipe identification number. RealityEngine Multi-Channel Options Diagnostics - Test Time(mi:se) ------------------------------------------------------------------ (Estimated test time based on a 310 system with 16MB of memory) 1- Pipe Select 2- Quick Check of MCO 1:15 3- Full Check of MCO 3.45 4- MCO Board Initialization Test 0:20 5- MCO Register Test 0:40 6- MCO DAC Test 0:35 7- MCO Read DAC Test Register 0:30 8- MCO Load Gamma Constant 0:25 9- MCO XILINX Test 0:35 10- MCO VOF Loader 0:40 11- View Test Output 12- EXIT from menu Please choose an item (1-12) > |
In a multipipe system, the diagnostic tests run on pipe 0. To select a different pipe from the default pipe, type 1 and press <Enter>. At the prompt, type the pipe identification number. The software accepts only ID numbers corresponding to pipes that are available.
When you select a pipe, the software displays the log filename, for example:
Select Pipe (0-1-2) >1 PIPE = 1 Results will be logged in: /usr/tmp/vs2.log1 <CR> to return to menu |
To check the newly installed MCO, type 3 and press <Enter>.
If an error is encountered, the test does not stop running; diagnostic tests stop only after all tests have run.
To see if an error occurred, select 11 or display test results by typing
grep ERR /usr/tmp/vs2.log0 |
or /usr/tmp/vs2.log1 or /usr/tmp/vs2.log2, depending on the pipe on
which the MCO is running. In a multipipe system, tests run on default pipe 0 and test results are logged in /usr/tmp/vs2.log0.
To run the Multi-Channel Option diagnostic tests from the test menu, follow these steps:
Turn on the system; a login prompt appears. Type diag and press <Enter>.
The system informs you that it is running 5.1 or 5.2, and prints the following message:
To run MCO diagnostics, please do not automatically run RealityEngine diagnostics. Type vs2 at the diag prompt instead. Automatically run RealityEngine diagnostics? (y or n) |
Type n or press <Enter>. The following message appears:
If you wish to run ide manually, please make sure you do the following first: |
- /usr/gfx/stopgfx - setenv PIPE to the correct pipe number - rmib - if rmib detects IB2, setenv VENICE_SKIP_IB_CRCS |
This message applies to RealityEngine or RealityEngine2.
Type vs2 and press <Enter> to display the test menu.
The software displays these messages and a menu of tests:
In a multi-pipe MCO configuration system, test(s) will run on the default pipe 0, and test results will be logged in /usr/tmp/vs2.log0 If you wish to run diagnostic test(s) on a specific pipe, use Pipe Select to change the pipe identification number. RealityEngine Multi-Channel Options Diagnostics - Test Time(mi:se) ------------------------------------------------------------------ (Estimated test time based on a 32MB RE/ONYX 10-span system) 1- Pipe Select 2- Quick Check of MCO 1:15 3- Full Check of MCO 13.45 4- MCO Board Initialization Test 0:20 5- MCO Register Test 0:40 6- MCO DAC Test 0:35 7- MCO Read DAC Test Register 0:30 8- MCO Load Gamma Constant 0:25 9- MCO XILINX Test 0:35 10- MCO VOF Loader 0:40 11- MCO Data Path Test 10:00 12- View Test Output 13- EXIT from menu Please choose an item (1-13) > |
In a multipipe system, the diagnostic tests run on pipe 0. To select a different pipe from the default pipe, type 1 and press <Enter>. At the prompt, type the pipe identification number. The software accepts only ID numbers corresponding to pipes that are available.
When you select a pipe, the software displays the log filename, for example:
Select Pipe (0-1-2) >1 PIPE = 1 Results will be logged in: /usr/tmp/vs2.log1 <CR> to return to menu |
To check the newly installed MCO, type 3 and press <Enter>.
If an error is encountered, the test does not stop running; diagnostic tests stop only after all tests have run.
To see if an error occurred, select 11 or display test results by typing
grep ERR /usr/tmp/vs2.log0 |
or /usr/tmp/vs2.log1 or /usr/tmp/vs2.log2, depending on the pipe on
which the MCO is running. In a multipipe system, tests run on default pipe 0 and test results are logged in /usr/tmp/vs2.log0.
This section explains the tests listed in the RealityEngine Multi-Channel Options Diagnostics menu.
![]() | Note: Initialization is required for full and accurate MCO testing. Always invoke the MCO board initialization test before each MCO IDE test (script). |
This test is a short dry run of the MCO hardware to check all accessible components via the VME interface. This test invokes the following MCO IDE tests, which are explained later in this chapter:
MCO board initialization test (vs2init)
MCO Register Test (vs2regs)
MCO DAC Test (vs2dac)
MCO Read DAC Test Register (vs2rdactr)
The full check tests all accessible components on the MCO hardware and MCO full functionality via the VME interface. This test invokes the following MCO IDE tests, which are explained later in this chapter.
MCO board initialization test (vs2init)
MCO Register Test (vs2regs)
MCO DAC Test (vs2dac)
MCO Read DAC Test Register (vs2rdactr)
MCO VOF Loader (vs2vl))
MCO XILINX Test (vs2xilinx)
MCO Load Gamma Constant (vx2gammaconst)
MCO Data Path Test (vs2datapath), for MCO running under 5.1 or 5.2 only
![]() | Note: Ignore the message ERROR: vd_ioctl: ioctl: Not privileged that appears after the MCO Data Path Test runs. |
This test initializes the MCO to a fully known state to ready it for full testing; this task can also be accomplished by invoking the MCO board initialization test (vs2init).
![]() | Note: For the 5.0.1, 5.1, or 5.2 IDE test, output may vary from that shown here. In a multipipe system, information on all available pipes is given. |
Initialization output is:
MCO datecode: March 3, 1993 MCO Board Initialization Test Mon Mar 8 21:59:09 PST 1993 Welcome to unix ide ide>> ide>> Programming Multi-Channel Option XILINX Initializing Multi-Channel Option VOF[0] Edge Table VIF_SYNC_WIDTH = 0x30 VIF_HPHASE_LOOPGAIN = 0xcc VIF_MCOUNTER = 0x0 VIF_HORZ_LENGTH = 0x5 VIF_GENSRC_CNTRL = 0xc0 VIF_BPORCH_CLAMP = 0x4f VIF_FINE_PHASE_ADJ = 0x0 VIF_MAGIC_HIGH = 0x54 Initializing Multi-Channel Option VOF[1] Edge Table VIF_SYNC_WIDTH = 0x14 VIF_HPHASE_LOOPGAIN = 0xcc VIF_MCOUNTER = 0x0 VIF_HORZ_LENGTH = 0x5 VIF_GENSRC_CNTRL = 0xc0 VIF_BPORCH_CLAMP = 0x56 VIF_FINE_PHASE_ADJ = 0x0 VIF_MAGIC_HIGH = 0x54 |
![]() | Note: Initialization is required for full and accurate MCO testing. Always invoke the MCO board initialization test before each MCO IDE test. |
This test checks every testable register on the MCO board; this task can also be accomplished by invoking the MCO IDE vs2regs test. The test vs2regs performs pattern tests (for example, 0x00, 0x55, 0xAA, 0xFF), walking ones, walking zeroes, and walking ones/zeroes tests on all accessible MCO registers. This test verifies that there is no short, open, or stuck circuitry behavior on the MCO hardware.
![]() | Note: For the 5.0.1, 5.1, or 5.2 IDE test, output may vary from that shown here. In a multipipe system, information on all available pipes is given. |
Register test output is:
INFO: Starting VS2 Registers Test INFO: (100): Starting subtest VS2 Registers Write Read ... INFO: (100): Write Read: vs2RegsWriteRead: Direct vs2RWregs PASSED INFO: (100): Write Read: Write-Only: Direct vs2WOregs PASSED INFO: (100): Write Read: Read-Only: Direct vs2ROregs PASSED INFO: (100): Write Read: Write-Only: venice_load_vs2_xilinx PASSED INFO: (100): Write Read: Write-Only: Indirect vs2vofWOregs PASSED INFO: (100): Write Read: Write-Only: Indirect vs2vifWOregs PASSED INFO: (100): Done subtest VS2 Registers Write Read ... PASSED INFO: (102): Starting subtest VS2 Registers Walk One ... INFO: (102): Walk One: vs2RegsWalkOne: Direct vs2RWregs PASSED INFO: (102): Done subtest VS2 Registers Walk One ... PASSED INFO: (104): Starting subtest VS2 Registers Walk Zero ... INFO: (104): Walk Zero: vs2RegsWalkZero: Direct vs2RWregs PASSED INFO: (104): Done subtest VS2 Registers Walk Zero ... PASSED INFO: (106): Starting subtest VS2 Registers Walk One/Zero ... INFO: (106): Walk One/Zero: vs2RegsWalkOneZero: Direct vs2RWregs PASSED INFO: (106): Done subtest VS2 Registers Walk One/Zero ... PASSED |
If an error occurs, a message like the following appears:
ERROR: (104) Walk Zero: register3: (addr 4030), wrote ff read 7f ERROR: (106) Walk One/Zero: register4: (addr 4040), wrote 20 read 0 |
The first message indicates that a failure occurred during the walk zero test (subtest 104) on register 3; the second message indicates that a failure occurred during the walk one/zero test (subtest 106) on register 4.
If an error message appears, invoke the MCO IDE directly and try to duplicate the error. A reproducible error indicates a hardware failure, requiring replacement of the board.
If the problem cannot be easily duplicated, follow these steps:
Shut down the IRIX system and power it off.
Power on the IRIS system again and restart it.
Start the MCO IDE directly, bypassing the script, by logging in as diag.
To display a list of commands, type help at the ide>> prompt.
At the ide>> prompt, type repeat 10 vs2regs to repeat the register test ten times.
![]() | Note: For the 5.0.1, 5.1, or 5.2 IDE test, output may vary from that shown here. |
If this test runs ten times with no failures, the following output appears ten times:
INFO: Starting VS2 Registers Test INFO: (100): Starting subtest VS2 Registers Write Read ... INFO: (100): Write Read: vs2RegsWriteRead: Direct vs2RWregs PASSED INFO: (100): Write Read: Write-Only: Direct vs2WOregs PASSED INFO: (100): Write Read: Read-Only: Direct vs2ROregs PASSED INFO: (100): Write Read: Write-Only: venice_load_vs2_xilinx PASSED INFO: (100): Write Read: Write-Only: Indirect vs2vofWOregs PASSED INFO: (100): Write Read: Write-Only: Indirect vs2vifWOregs PASSED INFO: (100): Done subtest VS2 Registers Write Read ... PASSED INFO: (102): Starting subtest VS2 Registers Walk One ... INFO: (102): Walk One: vs2RegsWalkOne: Direct vs2RWregs PASSED INFO: (102): Done subtest VS2 Registers Walk One ... PASSED INFO: (104): Starting subtest VS2 Registers Walk Zero ... INFO: (104): Walk Zero: vs2RegsWalkZero: Direct vs2RWregs PASSED INFO: (104): Done subtest VS2 Registers Walk Zero ... PASSED INFO: (106): Starting subtest VS2 Registers Walk One/Zero ... INFO: (106): Walk One/Zero: vs2RegsWalkOneZero: Direct vs2RWregs PASSED INFO: (106): Done subtest VS2 Registers Walk One/Zero ... PASSED |
This test verifies the functionality of each of the 18 DACs on the MCO board. This task can also be accomplished by invoking the MCO IDE vs2dac test. Via the VME bus interface, this test performs pattern tests (for example, 0x00, 0x55, 0xAA, 0xFF), walking ones, walking zeroes, walking ones/zeroes tests, and RAM tests.
![]() | Note: For the 5.0.1, 5.1, or 5.2 IDE test, output may vary from that shown here. In a multipipe system, information on all available pipes is given. |
The output of this test is:
INFO: Starting VS2 Bt462-DAC Test INFO: (200): Starting subtest DAC Regs Patterns ... INFO: (200): vs2Bt462RegsPatterns: DAC Regs Patterns PASSED INFO: (200): Done subtest DAC Regs Patterns ... PASSED INFO: (202): Starting subtest DAC Regs Walk One ... INFO: (202): vs2Bt462RegsWalkOne: DAC Regs Walk One PASSED INFO: (202): Done subtest DAC Regs Walk One ... PASSED INFO: (204): Starting subtest DAC Regs Walk Zero ... INFO: (204): vs2Bt462RegsWalkZero: DAC Regs Walk Zero PASSED INFO: (204): Done subtest DAC Regs Walk Zero ... PASSED INFO: (206): Starting subtest DAC Regs Walk One/Zero ... INFO: (206): vs2Bt462RegsWalkOneZero: DAC Regs Walk One/Zero PASSED INFO: (206): Done subtest DAC Regs Walk One/Zero ... PASSED |
If an error occurs, an output message like the following appears:
ERROR: (202) Regs Walk One: Bt462_4_blue-pixel_blink_mask_reg_high: (addr 4067), wrote 4 read 0 |
This message indicates that a failure occurred during the walk one test (subtest 202) on the pixel blink mask register high in the fifth set blue color DAC. The MCO board has six sets of three-color RGB DACs; the sets are numbered 0 through 5, and colors are ordered red, green, and blue.
This test enables you to read the values currently in all the DAC test registers, making it an effective tool for verifying and debugging the MCO hardware via the VME bus interface.
![]() | Note: For the 5.0.1, 5.1, or 5.2 IDE test, output may vary from that shown here. |
Invoking the read DAC test register test prints the following:
INFO: (990): Starting VS2 Utility subtest Read DAC Test Reg ... INFO: (990): Read DAC Test Reg: addr 0x428c, dac#0, test reg value = 3f INFO: (990): Read DAC Test Reg: addr 0x429c, dac#1, test reg value = ff INFO: (990): Read DAC Test Reg: addr 0x42ac, dac#2, test reg value = ff INFO: (990): Read DAC Test Reg: addr 0x42bc, dac#3, test reg value = ed INFO: (990): Read DAC Test Reg: addr 0x42cc, dac#4, test reg value = bd INFO: (990): Read DAC Test Reg: addr 0x42dc, dac#5, test reg value = 8 INFO: (990): Read DAC Test Reg: addr 0x42ec, dac#6, test reg value = fa INFO: (990): Read DAC Test Reg: addr 0x42fc, dac#7, test reg value = 0 INFO: (990): Read DAC Test Reg: addr 0x430c, dac#8, test reg value = 0 INFO: (990): Read DAC Test Reg: addr 0x431c, dac#9, test reg value = f7 INFO: (990): Read DAC Test Reg: addr 0x432c, dac#10, test reg value = 77 INFO: (990): Read DAC Test Reg: addr 0x433c, dac#11, test reg value = 81 INFO: (990): Read DAC Test Reg: addr 0x434c, dac#12, test reg value = ff INFO: (990): Read DAC Test Reg: addr 0x435c, dac#13, test reg value = 0 INFO: (990): Read DAC Test Reg: addr 0x436c, dac#14, test reg value = f3 INFO: (990): Read DAC Test Reg: addr 0x437c, dac#15, test reg value = ff INFO: (990): Read DAC Test Reg: addr 0x438c, dac#16, test reg value = c INFO: (990): Read DAC Test Reg: addr 0x439c, dac#17, test reg value = c5 INFO: (990): Done VS2 Utility subtest Read DAC Test Reg ... PASSED |
This test enables you to load a known desirable constant into the gamma table in all DACs on the MCO board. For example, to load the constant 0xFF into all gamma tables, type
vs2gammaconst 0xff |
at the prompt.
This test displays no comprehensive output.
On the MCO board are two pairs of Xilinx chips: two chips for video output formats (VOFs) and two chips for video input formats (VIFs). This test verifies the functionality of the Xilinx chips by loading and verifying the Xilinx configuration files into the pairs of VOFs and VIFs.
The terse output of this test under 4.0.5H and 5.0.1 is:
INFO: Starting VS2 Xilinx Test INFO: (400): Starting subtest VS2 Xilinx Load Verify ... INFO: (400): Done subtest VS2 Xilinx Load Verify ... PASSED |
Under 5.1 or 5.2, this test gives a separate report for each of the four Xilinx chips. Under 4.0.5H and 5.0.1, this test gives one report for all four Xilinx chips.
This test enables you to load a desired VOF into an on-board Xilinx chip. It loads the default format into channels 0 and 1.
![]() | Note: For the 5.0.1, 5.1, or 5.2 IDE test, output may vary from that shown here. In a multipipe system, information on all available pipes is given. |
Output is as follows:
ide>> Programming Multi-Channel Option XILINX Initializing Multi-Channel Option VOF[0] Edge Table VIF_SYNC_WIDTH = 0x30 VIF_HPHASE_LOOPGAIN = 0xcc VIF_MCOUNTER = 0x0 VIF_HORZ_LENGTH = 0x5 VIF_GENSRC_CNTRL = 0xc0 VIF_BPORCH_CLAMP = 0x4f VIF_FINE_PHASE_ADg VS2 Xilinx Test INFO: (400): SJ = 0x0 VIF_MAGIC_HIGH = 0x54 Initializing Multi-Channel Option VOF[1] Edge Table VIF_SYNC_WIDTH = 0x14 VIF_HPHASE_LOOPGAIN = 0xcc VIF_MCOUNTER = 0x0 VIF_HORZ_LENGTH = 0x5 VIF_GENSRC_CNTRL = 0xc0 VIF_BPORCH_CLAMP = 0x56 VIF_FINE_PHASE_ADJ = 0x0 VIF_MAGIC_HIGH = 0x54 VOF path /usr/gfx/ucode/RE/vs2/vof/1280x1024_60.u ide>> VIF_SYNC_WIDTH = 0x14 VIF_HPHASE_LOOPGAIN = 0x40 VIF_MCOUNTER = 0x0 VIF_HORZ_LENGTH = 0x4 VIF_GENSRC_CNTRL = 0xf4 VIF_BPORCH_CLAMP = 0x56 VIF_FINE_PHASE_ADJ = 0x30 VIF_MAGIC_HIGH = 0x53 VOF path /usr/gfx/ucode/RE/vs2/vof/1280x1024_60.u ide>> VIF_SYNC_WIDTH = 0x14 VIF_HPHASE_LOOPGAIN = 0x40 VIF_MCOUNTER = 0x0 VIF_HORZ_LENGTH = 0x4 VIF_GENSRC_CNTRL = 0xf4 VIF_BPORCH_CLAMP = 0x56 VIF_FINE_PHASE_ADJ = 0x30 VIF_MAGIC_HIGH = 0x53 ide>> Programming Multi-Channel Option XILINX Initializing Multi-Channel Option VOF[0] Edge Table VIF_SYNC_WIDTH = 0x30 VIF_HPHASE_LOOPGAIN = 0xcc VIF_MCOUNTER = 0x0 VIF_HORZ_LENGTH = 0x5 VIF_GENSRC_CNTRL = 0xc0 VIF_BPORCH_CLAMP = 0x4f VIF_FINE_PHASE_ADJ = 0x0 VIF_MAGIC_HIGH = 0x54 Initializing Multi-Channel Option VOF[1] Edge Table VIF_SYNC_WIDTH = 0x14 VIF_HPHASE_LOOPGAIN = 0xcc VIF_MCOUNTER = 0x0 VIF_HORZ_LENGTH = 0x5 VIF_GENSRC_CNTRL = 0xc0 VIF_BPORCH_CLAMP = 0x56 VIF_FINE_PHASE_ADJ = 0x0 VIF_MAGIC_HIGH = 0x54 |
The MCO Data Path Test checks and verifies the following functional path:
DG2: DG2/DVI → multistrip connectors →
DG2 → VS2: DG2/paddleboard → cable → VS2/paddleboard →
VS2: multistrip connectors → VS2/DVI → line FIFOs → DACs
![]() | Note: For the MCO Data Path Test to work correctly, the DG2 DVI bus must function properly. |
The DG2 board drives the DVI interface. These signals originate just before the BT462 DACs on the DG2 board. The DG2 then registers these signals before it drives the bus; the outputs of these registers are used only by the DVI bus (for details, refer to the DG2 documentation). The register outputs drive the bus through series-terminating resistors. The data and control signals go to the three multistrip connectors, which in turn connect to a paddleboard and impedance-controlled cable assembly, which then connects to the VS2 board. From here, the data passes through the VS2 DVI register, the line FIFOs, and finally to the DACs. The VS2 board has 18 BT462 DACs: six sets, each containing the three colors.
Inside each DAC is a special test register, which can capture full-speed data at the DAC gamma table output. However, the data it captures has some limitations, because the gamma table has 10 bits of input but only 8 bits of output. Also, bit 9 of the gamma table input is used as a capture trigger for the test register: when this bit is a logical one (0x1) data is latched into the test register. Thus, it is critical that all testable bits be tested; in this case, bits 0-8 are tested, because bit 9 is used as a trigger bit. The MCO Data Path Test achieves this in two separate steps, setting the gamma table to look first at bits 0 through 7, and then at bits 1 through 8.
Because the VS2's line FIFOs contain only 1130 x 5 storage locations per color bit, instead of a frame's worth (the default 1280x1024_60, for example), a special VS2 diagnostic video format called 1130x5_60.u is used to accelerate the testing process. IRIS GL routines are used to generate an array of 1130x5 known-value pixels; each pixel is sent separately to the VS2 FIFOs. Each pixel transaction must go across the DG2 DVI to the VS2 DVI to fill up the VS2 line FIFOs. Because only one known pixel is sent, with the MSB bit per one frame's worth of 1130 pixels x 5 lines, it takes 5650 loops to complete the testing process.
Actually, for each pixel sent, the entire frame of 1130 x 5 storage locations is transmitted, not merely one pixel with the MSB set. Simply put, only one transmission of the pixel with an MSB bit turned on is rendered for the entire frame (1130x5_60) and then decoded for test results. Thus, the entire MCO Data Path Test executions are 1130 x 5 pixel/frame loops. The data with the MSB bit set triggers the test register in each BT462 DAC, which in turn outputs the gamma table output. The test register value for each DAC is then compared with the expected data for the final test result.
If the error data is interpreted properly, the failing section of the data path can be identified. For instance, if all DAC test registers fail the test, hardware failure lies most likely in the area before the VS2 line FIFOs. Partial or unique failures can help isolate the specific FIFO bank or DAC failure. The color, pixel, and error bit failures can help isolate the defect in the hardware further..
MCO Data Path Test error messages are interpreted on the basis of the following information:
six well-defined channels, 0 through 5
three DAC colors: red, green, and blue
five identifiable pixels, 0 through 4
1130 pixels in each line, x = 0 through x = 1129
five lines, 0 through 4
For example, the error messages
ERROR: (800) CHANNEL#0, RED_DAC, PIXEL#0, x=1125, line=0 ,(errbits=[0x65]), got 0x0, exp 0x65 ERROR: (800) CHANNEL#0, RED_DAC, PIXEL#0, x=1125, line=1 ,(errbits=[0x65]), got 0x0, exp 0x65 ERROR: (800) CHANNEL#0, RED_DAC, PIXEL#0, x=1125, line=2 ,(errbits=[0x65]), got 0x0, exp 0x65 ERROR: (800) CHANNEL#0, RED_DAC, PIXEL#0, x=1125, line=3 ,(errbits=[0x65]), got 0x0, exp 0x65 ERROR: (800) CHANNEL#0, RED_DAC, PIXEL#0, x=1125, line=4 ,(errbits=[0x65]), got 0x0, exp 0x65 |
can be interpreted as follows:
There are five errors, all with the same channel number, DAC color, pixel number, and x location. All five occurred on all lines, 0 through 4. This is a classic example, showing that the problems mostly likely lie in the VS2 FIFO storage locations for channel 0, red DACs, pixel 0, at x = 1125, on lines 0 through 4.
The problems are not caused by a bad red DAC, since everything was passed except at locations x = 1125 and line = 0-4. Also, the problems are not caused by a bad channel 0, because the problems occurred only during the test for x = 1125 and line = 0-4. Thus, the problems must have been caused by bad storage, related defective circuitry in the VS2 FIFO hardware, or both.
If these error messages had displayed on all test register outputs (on every channel, 0 through 5, and for all DAC colors, red, green, and blue), the problems originate somewhere before the VS2 line FIFOs.
Occasionally, the message
Segmentation fault
appears when the MCO Data Path Test starts. This message is probably the result of wedged MCO EEPROM content, possibly because the MCO EEPROM is not reprogrammed when the MCO is swapped from a RealityEngine system to an ONYX system. In such cases, type
cd /usr/gfx/ucode/RE/vs2
vs2prom -bw /dev/null
The message
Writing default values to EEPROM....
appears; this procedure takes about a minute. Invoke the MCO Data Path Test again.
Output from this test is shown below.
![]() | Note: The MCO Data Path Test is available for 5.1 and 5.2 only. The test, which does 200,000 compares, takes ten minutes. |
ide>> INFO: Starting VS2 Data Path Test INFO: (800): Starting subtest VS2 Data Path ... INFO: (800): DO NOT INTERRUPT! THIS TEST WILL TAKE A WHILE TO COMPLETE... Programming Multi-Channel Option XILINX Initializing Multi-Channel Option VOF[0] Edge Table vif parameters for mco channel 0: VIF_SYNC_WIDTH = 0x12 VIF_HPHASE_LOOPGAIN = 0xe4 VIF_MCOUNTER = 0x0 VIF_HORZ_LENGTH = 0x4 VIF_GENSRC_CNTRL = 0x80 VIF_BPORCH_CLAMP = 0x37 VIF_FINE_PHASE_ADJ = 0x20 VIF_MAGIC_HIGH = 0x54 VIF_SYNC_WIDTH_INT = 0x13 VIF_GENSRC_CNTRL_INT = 0xc0 VIF_BPORCH_CLAMP_INT = 0x56 setting internal VIF0_SYNC_WIDTH = 0x13 setting internal VIF0_GENSRC_CNTRL = 0xc0 setting internal VIF0_BPORCH_CLAMP = 0x56 Initializing Multi-Channel Option VOF[1] Edge Table vif parameters for mco channel 1: VIF_SYNC_WIDTH = 0x12 VIF_HPHASE_LOOPGAIN = 0xe4 VIF_MCOUNTER = 0x0 VIF_HORZ_LENGTH = 0x4 VIF_GENSRC_CNTRL = 0xc0 VIF_BPORCH_CLAMP = 0x37 VIF_FINE_PHASE_ADJ = 0x20 VIF_MAGIC_HIGH = 0x54 VIF_SYNC_WIDTH_INT = 0x13 VIF_GENSRC_CNTRL_INT = 0xc0 VIF_BPORCH_CLAMP_INT = 0x56 VOF path /usr/gfx/ucode/RE/vs2/vof/vs21130x5_60.u vif parameters for mco channel 0: VIF_SYNC_WIDTH = 0x12 VIF_HPHASE_LOOPGAIN = 0xe4 VIF_MCOUNTER = 0x0 VIF_HORZ_LENGTH = 0x4 VIF_GENSRC_CNTRL = 0x80 VIF_BPORCH_CLAMP = 0x37 VIF_FINE_PHASE_ADJ = 0x20 VIF_MAGIC_HIGH = 0x54 VIF_SYNC_WIDTH_INT = 0x13 VIF_GENSRC_CNTRL_INT = 0xc0 VIF_BPORCH_CLAMP_INT = 0x56 setting internal VIF0_SYNC_WIDTH = 0x13 setting internal VIF0_GENSRC_CNTRL = 0xc0 setting internal VIF0_BPORCH_CLAMP = 0x56 VOF path /usr/gfx/ucode/RE/vs2/vof/vs21130x5_60.u vif parameters for mco channel 1: VIF_SYNC_WIDTH = 0x12 VIF_HPHASE_LOOPGAIN = 0xe4 VIF_MCOUNTER = 0x0 VIF_HORZ_LENGTH = 0x4 VIF_GENSRC_CNTRL = 0xc0 VIF_BPORCH_CLAMP = 0x37 VIF_FINE_PHASE_ADJ = 0x20 VIF_MAGIC_HIGH = 0x54 VIF_SYNC_WIDTH_INT = 0x13 VIF_GENSRC_CNTRL_INT = 0xc0 VIF_BPORCH_CLAMP_INT = 0x56 INFO: (800): **************************************************************** INFO: (800): Input test pattern: linear ramp across a line with magnitude 512 INFO: (800): Gamma table loaded with 4 by 256 linear ramps INFO: (800): This makes gamma table ignores bits 8 and 9 INFO: (800): Bit 9 is always used to trigger DAC Test Register INFO: (800): Now testing datapath pixel bits 0th through 7th ... INFO: (800): **************************************************************** INFO: (800): Input test pattern: linear ramp across a line with magnitude 512 INFO: (800): Gamma table loaded with 4 fixed patterns INFO: (800): Blocks 0 and 2 are loaded with 0 INFO: (800): Blocks 1 and 3 are loaded with 1 INFO: (800): This makes gamma table ignores bits 0-7 and 9 INFO: (800): Bit 9 is always used to trigger DAC Test Register INFO: (800): Now testing datapath pixel bit 8th ... INFO: (800): **************************************************************** INFO: (800): VS2 Data Path test summary: INFO: (800): done testing the DVI datapath pixel bits 0th-7th ... PASSED INFO: (800): done testing the DVI datapath pixel bit 8th ... PASSED INFO: (800): Done subtest VS2 Data Path ... PASSED ide>> ERROR: vd_ioctl: ioctl: Not privileged <CR> to return to menu |
![]() | Note: Ignore the message ERROR: vd_ioctl: ioctl: Not privileged. |
To run an individual vs2ide test, follow these steps:
Log in as diag to bypass the vs2ide script (test menu).
At the prompt, type vs2ide.
To display a list of commands, type help at the ide>> prompt. The following list appears:
IDE Commands:
dumpsym -
echo - echo ["STRING"|VAL ...]
exit - exit [VAL]
quit - exit [VAL]
help - displays summary of commands and statements
printenv - printenv [ENV_VAR_LIST]
printf - printf "FORMAT" [ARG1 ARG2...]
setenv - setenv ENV_VAR STRING
source - source SOURCE_PATH
stat -
testcmd -
unsetenv - unsetenv ENV_VAR
status - status [RESERVE_VAR_LIST]
reset - reset RESERVE VARS to their default values
vs2init - VS2 board initialization
vs2regs - VS2 registers test
vs2eeprom - VS2 EEPROM patterns/address test
vs2dac - VS2 DAC regs/rams test
vs2vl - VS2 VOF loader
vs2xilinx - VS2 XILINX load/read/verify test
vs2gammaconst - VS2 load all DACs with gamma constant
vs2rdactr - Read all VS2 DACs test regs
repeat n cmd
repeat `cmd' n times
while ( expr ) cmd
repeat `cmd' while expr is true
for ( expr1; expr2; expr3 ) cmd
repeat `cmd' while expr2 is true
if ( expr ) cmd1 [ else cmd2 ] [fi]
execute cmd1 if expr is true, cmd2 otherwise; `fi' is optional
{ cmd ; cmd ... }
commands may grouped with `{' and `}' |
![]() | Caution: Do not use the
vs2eeprom test, which tests the Multi-Channel Option EEPROM. The MCO Data Path Test, vs2datapath, does not appear in this menu and should not be run manually. This test requires special settings, which are invoked only when the test is started from the 5.1 (5.2) version of the test menu. |
![]() | Note: The vs2cal test, listed in the 4.0.5H version, is not currently available. |
At the ide>> prompt, type a command; for example:
vs2init |
or
repeat 10 vs2init |
or
vs2dac |
To see if an error occurred, display test results by typing
In a multipipe system, type one of the following:
grep ERR /usr/tmp/vs2.log0
grep ERR /usr/tmp/vs2.log1
grep ERR /usr/tmp/vs2.log2
depending on the pipe on which the MCO is running. In a multipipe system, tests run on default pipe 0 and test results are logged in /usr/tmp/vs2.log0, unless you selected a different pipe.
![]() | Note: To use the Multi-Channel Option panel for testing output, see instructions in Chapter 5, "Testing the Installation." |