!!!! 6 0 1 990474744 V1eef ! Device : 742952 ! Function : 8-Bit Bus Register Transceiver ! revision : B.01.00 ! safeguard : high_out_lsttl ! Modifications : Modified for AwareTest xi ! warning "This library has not been verified with hardware." !Monolithic Memories Spec. sheet sequential vector cycle 2000n receive delay 1900n !assignment for PLCC packages assign VCC to pins 28 assign GND to pins 14 assign Clk_A to pins 12 assign Clk_B to pins 17 assign Clk_Enable_A to pins 13 assign Clk_Enable_B to pins 16 assign OutputA_to_B to pins 11 assign OutputB_to_A to pins 18 assign Side_A to pins 27,26,25,24 assign Side_A to pins 23,21,20,19 assign A0 to pins 19 !AT Added for minimum pin test. assign A1 to pins 20 !AT Added for minimum pin test. assign A2 to pins 21 !AT Added for minimum pin test. assign A3 to pins 23 !AT Added for minimum pin test. assign A4 to pins 24 !AT Added for minimum pin test. assign A5 to pins 25 !AT Added for minimum pin test. assign A6 to pins 26 !AT Added for minimum pin test. assign A7 to pins 27 !AT Added for minimum pin test. assign Side_B to pins 2,3,4,5 assign Side_B to pins 6,7,9,10 assign B0 to pins 10 !AT Added for minimum pin test. assign B1 to pins 9 !AT Added for minimum pin test. assign B2 to pins 7 !AT Added for minimum pin test. assign B3 to pins 6 !AT Added for minimum pin test. assign B4 to pins 5 !AT Added for minimum pin test. assign B5 to pins 4 !AT Added for minimum pin test. assign B6 to pins 3 !AT Added for minimum pin test. assign B7 to pins 2 !AT Added for minimum pin test. assign NC to pins 1,8,15,22 assign Disable_1 to pins 12,17,13,16 assign Disable_2 to pins 13,16 family TTL power VCC,GND format hexadecimal Side_A,Side_B nondigital NC inputs Clk_A,Clk_B,Clk_Enable_A,Clk_Enable_B inputs OutputA_to_B,OutputB_to_A bidirectional Side_A,Side_B bidirectional A0, A1, A2, A3, A4, A5, A6, A7 !AT Added for minimum pin test. bidirectional B0, B1, B2, B3, B4, B5, B6, B7 !AT Added for minimum pin test. !******************* Disable Information ************************ disable Side_A,Side_B with Disable_1 to "tt11" 5 times !******************* Backtrace Information *********************** when Disable_2 is "11" inactive Side_A,Side_B when Disable_2 is "00" inputs Side_A,Side_B when Disable_2 is "01" inputs Side_A when Disable_2 is "01" inactive Side_B when Disable_2 is "10" inputs Side_B when Disable_2 is "10" inactive Side_A trace Side_A,Side_B to Clk_A,Clk_B,Clk_Enable_A,Clk_Enable_B trace Side_A,Side_B to OutputA_to_B,OutputB_to_A !This test checks all pins. If Clk_Enable_A and Clk_Enable_B are !tied low, the unit "Test Clock Enable pins" can be commented !out and the test will check all other pins. !This program uses the storage mode and the transfer of data from !A to B and B to A. !******************************************************************** ! VECTOR DEFINITION SECTION BEGINS !******************************************************************** vector Set_Values !Set the device with known values. drive Side_A drive Side_B set OutputA_to_B to "1" set OutputB_to_A to "1" set Clk_A to "0" set Clk_B to "0" set Clk_Enable_A to "0" set Clk_Enable_B to "0" set Side_A to "00" set Side_B to "00" end vector vector Save_Values !Keep values in known state. drive Side_A drive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Side_A to "kk" set Side_B to "kk" end vector vector Save_A_Values !Save values when driving A and receiving at B. drive Side_A receive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set Side_A to "kk" set Side_B to "xx" end vector vector Save_B_Values !Save values when driving B and receiving at A. drive Side_B receive Side_A set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set Side_A to "xx" set Side_B to "kk" end vector vector Clk_A_high !Clock A and latch values when storing data. initialize to Save_Values set Clk_A to "1" end vector vector Clk_A_low initialize to Save_Values set Clk_A to "0" end vector vector Clk_A_drive_high !Clock A and latch values initialize to Save_A_Values !when driving A and receiving B. set Clk_A to "1" end vector vector Clk_A_drive_low initialize to Save_A_Values set Clk_A to "0" end vector vector Clk_A_receive_high !Clock A and latch values initialize to Save_B_Values !when Side A is receiving. set Clk_A to "1" end vector vector Clk_A_receive_low initialize to Save_B_values set Clk_A to "0" end vector vector Clk_B_high !Latch values when storing data. initialize to Save_Values set Clk_B to "1" end vector vector Clk_B_low initialize to Save_Values set Clk_B to "0" end vector vector Clk_B_drive_low !Clock B and latch values when initialize to Save_B_values !driving B and receiving A. set Clk_B to "0" end vector vector Clk_B_drive_high initialize to Save_B_Values set Clk_B to "1" end vector vector Clk_B_receive_high !Clock B and latch values initialize to Save_A_Values !when Side B is receiving. set Clk_B to "1" end vector vector Clk_B_receive_low initialize to Save_A_values set Clk_B to "0" end vector vector Clk_A_Enable !Enable clock A when in the storage mode. initialize to Save_Values set Clk_Enable_A to "0" end vector vector Clk_enable_A_drive !Enable clock A when transmitting A to B. initialize to Save_A_Values set Clk_Enable_A to "0" end vector vector Clk_disable_A_drive !Disable clock A when transmitting A to B. initialize to Save_A_Values set Clk_Enable_A to "1" end vector vector Clk_enable_A_receive !Enable clock A when receiving at A. initialize to Save_B_values set Clk_enable_A to "0" end vector vector Clk_disable_A_receive !Disable clock A when receiving at A. initialize to Save_B_Values set Clk_Enable_A to "1" end vector vector Clk_B_enable !Enable clock B when in storage mode. initialize to Save_Values set Clk_Enable_B to "0" end vector vector Clk_enable_B_drive !Enable clock B when transmitting B to A initialize to Save_B_Values set Clk_Enable_B to "0" end vector vector Clk_disable_B_drive !Disable clock B when transmitting B to A. initialize to Save_B_Values set Clk_Enable_B to "1" end vector vector Clk_enable_B_receive !Enable clock B when transmitting A to B. initialize to Save_A_Values set Clk_Enable_B to "0" end vector vector Clk_disable_B_receive !Disable clock B when transmitting A to B. initialize to Save_A_Values set Clk_Enable_B to "1" end vector vector OutputA_to_B_Drive !Enable A to B output. initialize to Save_A_Values set OutputA_to_B to "0" end vector vector OutputA_to_B_Receive !Enable output received by A from B. initialize to Save_B_Values set OutputA_to_B to "1" end vector vector OutputB_to_A_Drive !Enable B to A output. initialize to Save_B_Values set OutputB_to_A to "0" end vector vector OutputB_to_A_Receive !Enable output received by B from A. initialize to Save_A_Values set OutputB_to_A to "1" end vector !********** The remaining vectors set the data lines. ************* vector A_to_B_00 initialize to Save_A_Values drive Side_A set Side_A to "00" end vector vector A_to_B_55 initialize to Save_A_Values drive Side_A set Side_A to "55" end vector vector Output_B_55 initialize to Save_A_Values receive Side_B set Side_B to "55" end vector vector A_to_B_AA initialize to Save_A_Values drive Side_A set Side_A to "AA" end vector vector Output_B_AA initialize to Save_A_Values receive Side_B set Side_B to "AA" end vector vector B_to_A_55 initialize to Save_B_Values drive Side_B set Side_B to "55" end vector vector B_to_A_00 initialize to Save_B_Values drive Side_B set Side_B to "00" end vector vector Output_A_55 initialize to Save_B_Values receive Side_A set Side_A to "55" end vector vector B_to_A_AA initialize to Save_B_Values drive Side_B set Side_B to "AA" end vector vector Output_A_AA initialize to Save_B_Values receive Side_A set Side_A to "AA" end vector !AT The following vectors have been added for a minimum pins test. Any !AT vectors that references the A or B bus was copied and modified to reference !AT only a single pin of the bus. vector Set_Values_A0_B0 !Set the device with known values. drive A0 drive B0 set OutputA_to_B to "1" set OutputB_to_A to "1" set Clk_A to "0" set Clk_B to "0" set Clk_Enable_A to "0" set Clk_Enable_B to "0" set A0 to "0" set B0 to "0" end vector vector Save_Values_A0_B0 !Keep values in known state. drive Side_A drive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set A0 to "k" set B0 to "k" end vector vector Save_A_Values_A0_B0 !Save values when driving A and receiving at B. drive Side_A receive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A0 to "k" set B0 to "x" end vector vector Save_B_Values_A0_B0 !Save values when driving B and receiving at A. drive Side_B receive Side_A set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A0 to "x" set B0 to "k" end vector vector Clk_A_high_A0_B0 !Clock A and latch values when storing data. initialize to Save_Values_A0_B0 set Clk_A to "1" end vector vector Clk_A_low_A0_B0 initialize to Save_Values_A0_B0 set Clk_A to "0" end vector vector Clk_A_drive_high_A0_B0 !Clock A and latch values initialize to Save_A_Values_A0_B0 !when driving A and receiving B. set Clk_A to "1" end vector vector Clk_A_drive_low_A0_B0 initialize to Save_A_Values_A0_B0 set Clk_A to "0" end vector vector Clk_A_receive_high_A0_B0 !Clock A and latch values initialize to Save_B_Values_A0_B0 !when Side A is receiving. set Clk_A to "1" end vector vector Clk_A_receive_low_A0_B0 initialize to Save_B_Values_A0_B0 set Clk_A to "0" end vector vector Clk_B_high_A0_B0 !Latch values when storing data. initialize to Save_Values_A0_B0 set Clk_B to "1" end vector vector Clk_B_low_A0_B0 initialize to Save_Values_A0_B0 set Clk_B to "0" end vector vector Clk_B_drive_low_A0_B0 !Clock B and latch values when initialize to Save_B_Values_A0_B0 !driving B and receiving A. set Clk_B to "0" end vector vector Clk_B_drive_high_A0_B0 initialize to Save_B_Values_A0_B0 set Clk_B to "1" end vector vector Clk_B_receive_high_A0_B0 !Clock B and latch values initialize to Save_A_Values_A0_B0 !when Side B is receiving. set Clk_B to "1" end vector vector Clk_B_receive_low_A0_B0 initialize to Save_A_Values_A0_B0 set Clk_B to "0" end vector vector Clk_A_Enable_A0_B0 !Enable clock A when in the storage mode. initialize to Save_Values_A0_B0 set Clk_Enable_A to "0" end vector vector Clk_enable_A_drive_A0_B0 !Enable clock A when transmitting A to B. initialize to Save_A_Values_A0_B0 set Clk_Enable_A to "0" end vector vector Clk_disable_A_drive_A0_B0 !Disable clock A when transmitting A to B. initialize to Save_A_Values_A0_B0 set Clk_Enable_A to "1" end vector vector Clk_enable_A_receive_A0_B0 !Enable clock A when receiving at A. initialize to Save_B_Values_A0_B0 set Clk_enable_A to "0" end vector vector Clk_disable_A_receive_A0_B0 !Disable clock A when receiving at A. initialize to Save_B_Values_A0_B0 set Clk_Enable_A to "1" end vector vector Clk_B_enable_A0_B0 !Enable clock B when in storage mode. initialize to Save_Values_A0_B0 set Clk_Enable_B to "0" end vector vector Clk_enable_B_drive_A0_B0 !Enable clock B when transmitting B to A initialize to Save_B_Values_A0_B0 set Clk_Enable_B to "0" end vector vector Clk_disable_B_drive_A0_B0 !Disable clock B when transmitting B to A. initialize to Save_B_Values_A0_B0 set Clk_Enable_B to "1" end vector vector Clk_enable_B_receive_A0_B0 !Enable clock B when transmitting A to B. initialize to Save_A_Values_A0_B0 set Clk_Enable_B to "0" end vector vector Clk_disable_B_receive_A0_B0 !Disable clock B when transmitting A to B. initialize to Save_A_Values_A0_B0 set Clk_Enable_B to "1" end vector vector OutputA_to_B_Drive_A0_B0 !Enable A to B output. initialize to Save_A_Values_A0_B0 set OutputA_to_B to "0" end vector vector OutputA_to_B_Receive_A0_B0 !Enable output received by A from B. initialize to Save_B_Values_A0_B0 set OutputA_to_B to "1" end vector vector OutputB_to_A_Drive_A0_B0 !Enable B to A output. initialize to Save_B_Values_A0_B0 set OutputB_to_A to "0" end vector vector OutputB_to_A_Receive_A0_B0 !Enable output received by B from A. initialize to Save_A_Values_A0_B0 set OutputB_to_A to "1" end vector vector A0_to_B0_0 initialize to Save_A_Values_A0_B0 drive A0 set A0 to "0" end vector vector A0_to_B0_1 initialize to Save_A_Values_A0_B0 drive A0 set A0 to "1" end vector vector B0_to_A0_0 initialize to Save_B_Values_A0_B0 drive B0 set B0 to "0" end vector vector B0_to_A0_1 initialize to Save_B_Values_A0_B0 drive B0 set B0 to "1" end vector vector Output_B0_0 initialize to Save_A_Values_A0_B0 receive B0 set B0 to "0" end vector vector Output_B0_1 initialize to Save_A_Values_A0_B0 receive B0 set B0 to "1" end vector vector Output_A0_0 initialize to Save_B_Values_A0_B0 receive A0 set A0 to "0" end vector vector Output_A0_1 initialize to Save_B_Values_A0_B0 receive A0 set A0 to "1" end vector vector Set_Values_A1_B1 !Set the device with known values. drive A1 drive B1 set OutputA_to_B to "1" set OutputB_to_A to "1" set Clk_A to "0" set Clk_B to "0" set Clk_Enable_A to "0" set Clk_Enable_B to "0" set A1 to "0" set B1 to "0" end vector vector Save_Values_A1_B1 !Keep values in known state. drive Side_A drive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set A1 to "k" set B1 to "k" end vector vector Save_A_Values_A1_B1 !Save values when driving A and receiving at B. drive Side_A receive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A1 to "k" set B1 to "x" end vector vector Save_B_Values_A1_B1 !Save values when driving B and receiving at A. drive Side_B receive Side_A set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A1 to "x" set B1 to "k" end vector vector Clk_A_high_A1_B1 !Clock A and latch values when storing data. initialize to Save_Values_A1_B1 set Clk_A to "1" end vector vector Clk_A_low_A1_B1 initialize to Save_Values_A1_B1 set Clk_A to "0" end vector vector Clk_A_drive_high_A1_B1 !Clock A and latch values initialize to Save_A_Values_A1_B1 !when driving A and receiving B. set Clk_A to "1" end vector vector Clk_A_drive_low_A1_B1 initialize to Save_A_Values_A1_B1 set Clk_A to "0" end vector vector Clk_A_receive_high_A1_B1 !Clock A and latch values initialize to Save_B_Values_A1_B1 !when Side A is receiving. set Clk_A to "1" end vector vector Clk_A_receive_low_A1_B1 initialize to Save_B_Values_A1_B1 set Clk_A to "0" end vector vector Clk_B_high_A1_B1 !Latch values when storing data. initialize to Save_Values_A1_B1 set Clk_B to "1" end vector vector Clk_B_low_A1_B1 initialize to Save_Values_A1_B1 set Clk_B to "0" end vector vector Clk_B_drive_low_A1_B1 !Clock B and latch values when initialize to Save_B_Values_A1_B1 !driving B and receiving A. set Clk_B to "0" end vector vector Clk_B_drive_high_A1_B1 initialize to Save_B_Values_A1_B1 set Clk_B to "1" end vector vector Clk_B_receive_high_A1_B1 !Clock B and latch values initialize to Save_A_Values_A1_B1 !when Side B is receiving. set Clk_B to "1" end vector vector Clk_B_receive_low_A1_B1 initialize to Save_A_Values_A1_B1 set Clk_B to "0" end vector vector Clk_A_Enable_A1_B1 !Enable clock A when in the storage mode. initialize to Save_Values_A1_B1 set Clk_Enable_A to "0" end vector vector Clk_enable_A_drive_A1_B1 !Enable clock A when transmitting A to B. initialize to Save_A_Values_A1_B1 set Clk_Enable_A to "0" end vector vector Clk_disable_A_drive_A1_B1 !Disable clock A when transmitting A to B. initialize to Save_A_Values_A1_B1 set Clk_Enable_A to "1" end vector vector Clk_enable_A_receive_A1_B1 !Enable clock A when receiving at A. initialize to Save_B_Values_A1_B1 set Clk_enable_A to "0" end vector vector Clk_disable_A_receive_A1_B1 !Disable clock A when receiving at A. initialize to Save_B_Values_A1_B1 set Clk_Enable_A to "1" end vector vector Clk_B_enable_A1_B1 !Enable clock B when in storage mode. initialize to Save_Values_A1_B1 set Clk_Enable_B to "0" end vector vector Clk_enable_B_drive_A1_B1 !Enable clock B when transmitting B to A initialize to Save_B_Values_A1_B1 set Clk_Enable_B to "0" end vector vector Clk_disable_B_drive_A1_B1 !Disable clock B when transmitting B to A. initialize to Save_B_Values_A1_B1 set Clk_Enable_B to "1" end vector vector Clk_enable_B_receive_A1_B1 !Enable clock B when transmitting A to B. initialize to Save_A_Values_A1_B1 set Clk_Enable_B to "0" end vector vector Clk_disable_B_receive_A1_B1 !Disable clock B when transmitting A to B. initialize to Save_A_Values_A1_B1 set Clk_Enable_B to "1" end vector vector OutputA_to_B_Drive_A1_B1 !Enable A to B output. initialize to Save_A_Values_A1_B1 set OutputA_to_B to "0" end vector vector OutputA_to_B_Receive_A1_B1 !Enable output received by A from B. initialize to Save_B_Values_A1_B1 set OutputA_to_B to "1" end vector vector OutputB_to_A_Drive_A1_B1 !Enable B to A output. initialize to Save_B_Values_A1_B1 set OutputB_to_A to "0" end vector vector OutputB_to_A_Receive_A1_B1 !Enable output received by B from A. initialize to Save_A_Values_A1_B1 set OutputB_to_A to "1" end vector vector A1_to_B1_0 initialize to Save_A_Values_A1_B1 drive A1 set A1 to "0" end vector vector A1_to_B1_1 initialize to Save_A_Values_A1_B1 drive A1 set A1 to "1" end vector vector B1_to_A1_0 initialize to Save_B_Values_A1_B1 drive B1 set B1 to "0" end vector vector B1_to_A1_1 initialize to Save_B_Values_A1_B1 drive B1 set B1 to "1" end vector vector Output_B1_0 initialize to Save_A_Values_A1_B1 receive B1 set B1 to "0" end vector vector Output_B1_1 initialize to Save_A_Values_A1_B1 receive B1 set B1 to "1" end vector vector Output_A1_0 initialize to Save_B_Values_A1_B1 receive A1 set A1 to "0" end vector vector Output_A1_1 initialize to Save_B_Values_A1_B1 receive A1 set A1 to "1" end vector vector Set_Values_A2_B2 !Set the device with known values. drive A2 drive B2 set OutputA_to_B to "1" set OutputB_to_A to "1" set Clk_A to "0" set Clk_B to "0" set Clk_Enable_A to "0" set Clk_Enable_B to "0" set A2 to "0" set B2 to "0" end vector vector Save_Values_A2_B2 !Keep values in known state. drive Side_A drive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set A2 to "k" set B2 to "k" end vector vector Save_A_Values_A2_B2 !Save values when driving A and receiving at B. drive Side_A receive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A2 to "k" set B2 to "x" end vector vector Save_B_Values_A2_B2 !Save values when driving B and receiving at A. drive Side_B receive Side_A set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A2 to "x" set B2 to "k" end vector vector Clk_A_high_A2_B2 !Clock A and latch values when storing data. initialize to Save_Values_A2_B2 set Clk_A to "1" end vector vector Clk_A_low_A2_B2 initialize to Save_Values_A2_B2 set Clk_A to "0" end vector vector Clk_A_drive_high_A2_B2 !Clock A and latch values initialize to Save_A_Values_A2_B2 !when driving A and receiving B. set Clk_A to "1" end vector vector Clk_A_drive_low_A2_B2 initialize to Save_A_Values_A2_B2 set Clk_A to "0" end vector vector Clk_A_receive_high_A2_B2 !Clock A and latch values initialize to Save_B_Values_A2_B2 !when Side A is receiving. set Clk_A to "1" end vector vector Clk_A_receive_low_A2_B2 initialize to Save_B_Values_A2_B2 set Clk_A to "0" end vector vector Clk_B_high_A2_B2 !Latch values when storing data. initialize to Save_Values_A2_B2 set Clk_B to "1" end vector vector Clk_B_low_A2_B2 initialize to Save_Values_A2_B2 set Clk_B to "0" end vector vector Clk_B_drive_low_A2_B2 !Clock B and latch values when initialize to Save_B_Values_A2_B2 !driving B and receiving A. set Clk_B to "0" end vector vector Clk_B_drive_high_A2_B2 initialize to Save_B_Values_A2_B2 set Clk_B to "1" end vector vector Clk_B_receive_high_A2_B2 !Clock B and latch values initialize to Save_A_Values_A2_B2 !when Side B is receiving. set Clk_B to "1" end vector vector Clk_B_receive_low_A2_B2 initialize to Save_A_Values_A2_B2 set Clk_B to "0" end vector vector Clk_A_Enable_A2_B2 !Enable clock A when in the storage mode. initialize to Save_Values_A2_B2 set Clk_Enable_A to "0" end vector vector Clk_enable_A_drive_A2_B2 !Enable clock A when transmitting A to B. initialize to Save_A_Values_A2_B2 set Clk_Enable_A to "0" end vector vector Clk_disable_A_drive_A2_B2 !Disable clock A when transmitting A to B. initialize to Save_A_Values_A2_B2 set Clk_Enable_A to "1" end vector vector Clk_enable_A_receive_A2_B2 !Enable clock A when receiving at A. initialize to Save_B_Values_A2_B2 set Clk_enable_A to "0" end vector vector Clk_disable_A_receive_A2_B2 !Disable clock A when receiving at A. initialize to Save_B_Values_A2_B2 set Clk_Enable_A to "1" end vector vector Clk_B_enable_A2_B2 !Enable clock B when in storage mode. initialize to Save_Values_A2_B2 set Clk_Enable_B to "0" end vector vector Clk_enable_B_drive_A2_B2 !Enable clock B when transmitting B to A initialize to Save_B_Values_A2_B2 set Clk_Enable_B to "0" end vector vector Clk_disable_B_drive_A2_B2 !Disable clock B when transmitting B to A. initialize to Save_B_Values_A2_B2 set Clk_Enable_B to "1" end vector vector Clk_enable_B_receive_A2_B2 !Enable clock B when transmitting A to B. initialize to Save_A_Values_A2_B2 set Clk_Enable_B to "0" end vector vector Clk_disable_B_receive_A2_B2 !Disable clock B when transmitting A to B. initialize to Save_A_Values_A2_B2 set Clk_Enable_B to "1" end vector vector OutputA_to_B_Drive_A2_B2 !Enable A to B output. initialize to Save_A_Values_A2_B2 set OutputA_to_B to "0" end vector vector OutputA_to_B_Receive_A2_B2 !Enable output received by A from B. initialize to Save_B_Values_A2_B2 set OutputA_to_B to "1" end vector vector OutputB_to_A_Drive_A2_B2 !Enable B to A output. initialize to Save_B_Values_A2_B2 set OutputB_to_A to "0" end vector vector OutputB_to_A_Receive_A2_B2 !Enable output received by B from A. initialize to Save_A_Values_A2_B2 set OutputB_to_A to "1" end vector vector A2_to_B2_0 initialize to Save_A_Values_A2_B2 drive A2 set A2 to "0" end vector vector A2_to_B2_1 initialize to Save_A_Values_A2_B2 drive A2 set A2 to "1" end vector vector B2_to_A2_0 initialize to Save_B_Values_A2_B2 drive B2 set B2 to "0" end vector vector B2_to_A2_1 initialize to Save_B_Values_A2_B2 drive B2 set B2 to "1" end vector vector Output_B2_0 initialize to Save_A_Values_A2_B2 receive B2 set B2 to "0" end vector vector Output_B2_1 initialize to Save_A_Values_A2_B2 receive B2 set B2 to "1" end vector vector Output_A2_0 initialize to Save_B_Values_A2_B2 receive A2 set A2 to "0" end vector vector Output_A2_1 initialize to Save_B_Values_A2_B2 receive A2 set A2 to "1" end vector vector Set_Values_A3_B3 !Set the device with known values. drive A3 drive B3 set OutputA_to_B to "1" set OutputB_to_A to "1" set Clk_A to "0" set Clk_B to "0" set Clk_Enable_A to "0" set Clk_Enable_B to "0" set A3 to "0" set B3 to "0" end vector vector Save_Values_A3_B3 !Keep values in known state. drive Side_A drive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set A3 to "k" set B3 to "k" end vector vector Save_A_Values_A3_B3 !Save values when driving A and receiving at B. drive Side_A receive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A3 to "k" set B3 to "x" end vector vector Save_B_Values_A3_B3 !Save values when driving B and receiving at A. drive Side_B receive Side_A set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A3 to "x" set B3 to "k" end vector vector Clk_A_high_A3_B3 !Clock A and latch values when storing data. initialize to Save_Values_A3_B3 set Clk_A to "1" end vector vector Clk_A_low_A3_B3 initialize to Save_Values_A3_B3 set Clk_A to "0" end vector vector Clk_A_drive_high_A3_B3 !Clock A and latch values initialize to Save_A_Values_A3_B3 !when driving A and receiving B. set Clk_A to "1" end vector vector Clk_A_drive_low_A3_B3 initialize to Save_A_Values_A3_B3 set Clk_A to "0" end vector vector Clk_A_receive_high_A3_B3 !Clock A and latch values initialize to Save_B_Values_A3_B3 !when Side A is receiving. set Clk_A to "1" end vector vector Clk_A_receive_low_A3_B3 initialize to Save_B_Values_A3_B3 set Clk_A to "0" end vector vector Clk_B_high_A3_B3 !Latch values when storing data. initialize to Save_Values_A3_B3 set Clk_B to "1" end vector vector Clk_B_low_A3_B3 initialize to Save_Values_A3_B3 set Clk_B to "0" end vector vector Clk_B_drive_low_A3_B3 !Clock B and latch values when initialize to Save_B_Values_A3_B3 !driving B and receiving A. set Clk_B to "0" end vector vector Clk_B_drive_high_A3_B3 initialize to Save_B_Values_A3_B3 set Clk_B to "1" end vector vector Clk_B_receive_high_A3_B3 !Clock B and latch values initialize to Save_A_Values_A3_B3 !when Side B is receiving. set Clk_B to "1" end vector vector Clk_B_receive_low_A3_B3 initialize to Save_A_Values_A3_B3 set Clk_B to "0" end vector vector Clk_A_Enable_A3_B3 !Enable clock A when in the storage mode. initialize to Save_Values_A3_B3 set Clk_Enable_A to "0" end vector vector Clk_enable_A_drive_A3_B3 !Enable clock A when transmitting A to B. initialize to Save_A_Values_A3_B3 set Clk_Enable_A to "0" end vector vector Clk_disable_A_drive_A3_B3 !Disable clock A when transmitting A to B. initialize to Save_A_Values_A3_B3 set Clk_Enable_A to "1" end vector vector Clk_enable_A_receive_A3_B3 !Enable clock A when receiving at A. initialize to Save_B_Values_A3_B3 set Clk_enable_A to "0" end vector vector Clk_disable_A_receive_A3_B3 !Disable clock A when receiving at A. initialize to Save_B_Values_A3_B3 set Clk_Enable_A to "1" end vector vector Clk_B_enable_A3_B3 !Enable clock B when in storage mode. initialize to Save_Values_A3_B3 set Clk_Enable_B to "0" end vector vector Clk_enable_B_drive_A3_B3 !Enable clock B when transmitting B to A initialize to Save_B_Values_A3_B3 set Clk_Enable_B to "0" end vector vector Clk_disable_B_drive_A3_B3 !Disable clock B when transmitting B to A. initialize to Save_B_Values_A3_B3 set Clk_Enable_B to "1" end vector vector Clk_enable_B_receive_A3_B3 !Enable clock B when transmitting A to B. initialize to Save_A_Values_A3_B3 set Clk_Enable_B to "0" end vector vector Clk_disable_B_receive_A3_B3 !Disable clock B when transmitting A to B. initialize to Save_A_Values_A3_B3 set Clk_Enable_B to "1" end vector vector OutputA_to_B_Drive_A3_B3 !Enable A to B output. initialize to Save_A_Values_A3_B3 set OutputA_to_B to "0" end vector vector OutputA_to_B_Receive_A3_B3 !Enable output received by A from B. initialize to Save_B_Values_A3_B3 set OutputA_to_B to "1" end vector vector OutputB_to_A_Drive_A3_B3 !Enable B to A output. initialize to Save_B_Values_A3_B3 set OutputB_to_A to "0" end vector vector OutputB_to_A_Receive_A3_B3 !Enable output received by B from A. initialize to Save_A_Values_A3_B3 set OutputB_to_A to "1" end vector vector A3_to_B3_0 initialize to Save_A_Values_A3_B3 drive A3 set A3 to "0" end vector vector A3_to_B3_1 initialize to Save_A_Values_A3_B3 drive A3 set A3 to "1" end vector vector B3_to_A3_0 initialize to Save_B_Values_A3_B3 drive B3 set B3 to "0" end vector vector B3_to_A3_1 initialize to Save_B_Values_A3_B3 drive B3 set B3 to "1" end vector vector Output_B3_0 initialize to Save_A_Values_A3_B3 receive B3 set B3 to "0" end vector vector Output_B3_1 initialize to Save_A_Values_A3_B3 receive B3 set B3 to "1" end vector vector Output_A3_0 initialize to Save_B_Values_A3_B3 receive A3 set A3 to "0" end vector vector Output_A3_1 initialize to Save_B_Values_A3_B3 receive A3 set A3 to "1" end vector vector Set_Values_A4_B4 !Set the device with known values. drive A4 drive B4 set OutputA_to_B to "1" set OutputB_to_A to "1" set Clk_A to "0" set Clk_B to "0" set Clk_Enable_A to "0" set Clk_Enable_B to "0" set A4 to "0" set B4 to "0" end vector vector Save_Values_A4_B4 !Keep values in known state. drive Side_A drive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set A4 to "k" set B4 to "k" end vector vector Save_A_Values_A4_B4 !Save values when driving A and receiving at B. drive Side_A receive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A4 to "k" set B4 to "x" end vector vector Save_B_Values_A4_B4 !Save values when driving B and receiving at A. drive Side_B receive Side_A set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A4 to "x" set B4 to "k" end vector vector Clk_A_high_A4_B4 !Clock A and latch values when storing data. initialize to Save_Values_A4_B4 set Clk_A to "1" end vector vector Clk_A_low_A4_B4 initialize to Save_Values_A4_B4 set Clk_A to "0" end vector vector Clk_A_drive_high_A4_B4 !Clock A and latch values initialize to Save_A_Values_A4_B4 !when driving A and receiving B. set Clk_A to "1" end vector vector Clk_A_drive_low_A4_B4 initialize to Save_A_Values_A4_B4 set Clk_A to "0" end vector vector Clk_A_receive_high_A4_B4 !Clock A and latch values initialize to Save_B_Values_A4_B4 !when Side A is receiving. set Clk_A to "1" end vector vector Clk_A_receive_low_A4_B4 initialize to Save_B_Values_A4_B4 set Clk_A to "0" end vector vector Clk_B_high_A4_B4 !Latch values when storing data. initialize to Save_Values_A4_B4 set Clk_B to "1" end vector vector Clk_B_low_A4_B4 initialize to Save_Values_A4_B4 set Clk_B to "0" end vector vector Clk_B_drive_low_A4_B4 !Clock B and latch values when initialize to Save_B_Values_A4_B4 !driving B and receiving A. set Clk_B to "0" end vector vector Clk_B_drive_high_A4_B4 initialize to Save_B_Values_A4_B4 set Clk_B to "1" end vector vector Clk_B_receive_high_A4_B4 !Clock B and latch values initialize to Save_A_Values_A4_B4 !when Side B is receiving. set Clk_B to "1" end vector vector Clk_B_receive_low_A4_B4 initialize to Save_A_Values_A4_B4 set Clk_B to "0" end vector vector Clk_A_Enable_A4_B4 !Enable clock A when in the storage mode. initialize to Save_Values_A4_B4 set Clk_Enable_A to "0" end vector vector Clk_enable_A_drive_A4_B4 !Enable clock A when transmitting A to B. initialize to Save_A_Values_A4_B4 set Clk_Enable_A to "0" end vector vector Clk_disable_A_drive_A4_B4 !Disable clock A when transmitting A to B. initialize to Save_A_Values_A4_B4 set Clk_Enable_A to "1" end vector vector Clk_enable_A_receive_A4_B4 !Enable clock A when receiving at A. initialize to Save_B_Values_A4_B4 set Clk_enable_A to "0" end vector vector Clk_disable_A_receive_A4_B4 !Disable clock A when receiving at A. initialize to Save_B_Values_A4_B4 set Clk_Enable_A to "1" end vector vector Clk_B_enable_A4_B4 !Enable clock B when in storage mode. initialize to Save_Values_A4_B4 set Clk_Enable_B to "0" end vector vector Clk_enable_B_drive_A4_B4 !Enable clock B when transmitting B to A initialize to Save_B_Values_A4_B4 set Clk_Enable_B to "0" end vector vector Clk_disable_B_drive_A4_B4 !Disable clock B when transmitting B to A. initialize to Save_B_Values_A4_B4 set Clk_Enable_B to "1" end vector vector Clk_enable_B_receive_A4_B4 !Enable clock B when transmitting A to B. initialize to Save_A_Values_A4_B4 set Clk_Enable_B to "0" end vector vector Clk_disable_B_receive_A4_B4 !Disable clock B when transmitting A to B. initialize to Save_A_Values_A4_B4 set Clk_Enable_B to "1" end vector vector OutputA_to_B_Drive_A4_B4 !Enable A to B output. initialize to Save_A_Values_A4_B4 set OutputA_to_B to "0" end vector vector OutputA_to_B_Receive_A4_B4 !Enable output received by A from B. initialize to Save_B_Values_A4_B4 set OutputA_to_B to "1" end vector vector OutputB_to_A_Drive_A4_B4 !Enable B to A output. initialize to Save_B_Values_A4_B4 set OutputB_to_A to "0" end vector vector OutputB_to_A_Receive_A4_B4 !Enable output received by B from A. initialize to Save_A_Values_A4_B4 set OutputB_to_A to "1" end vector vector A4_to_B4_0 initialize to Save_A_Values_A4_B4 drive A4 set A4 to "0" end vector vector A4_to_B4_1 initialize to Save_A_Values_A4_B4 drive A4 set A4 to "1" end vector vector B4_to_A4_0 initialize to Save_B_Values_A4_B4 drive B4 set B4 to "0" end vector vector B4_to_A4_1 initialize to Save_B_Values_A4_B4 drive B4 set B4 to "1" end vector vector Output_B4_0 initialize to Save_A_Values_A4_B4 receive B4 set B4 to "0" end vector vector Output_B4_1 initialize to Save_A_Values_A4_B4 receive B4 set B4 to "1" end vector vector Output_A4_0 initialize to Save_B_Values_A4_B4 receive A4 set A4 to "0" end vector vector Output_A4_1 initialize to Save_B_Values_A4_B4 receive A4 set A4 to "1" end vector vector Set_Values_A5_B5 !Set the device with known values. drive A5 drive B5 set OutputA_to_B to "1" set OutputB_to_A to "1" set Clk_A to "0" set Clk_B to "0" set Clk_Enable_A to "0" set Clk_Enable_B to "0" set A5 to "0" set B5 to "0" end vector vector Save_Values_A5_B5 !Keep values in known state. drive Side_A drive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set A5 to "k" set B5 to "k" end vector vector Save_A_Values_A5_B5 !Save values when driving A and receiving at B. drive Side_A receive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A5 to "k" set B5 to "x" end vector vector Save_B_Values_A5_B5 !Save values when driving B and receiving at A. drive Side_B receive Side_A set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A5 to "x" set B5 to "k" end vector vector Clk_A_high_A5_B5 !Clock A and latch values when storing data. initialize to Save_Values_A5_B5 set Clk_A to "1" end vector vector Clk_A_low_A5_B5 initialize to Save_Values_A5_B5 set Clk_A to "0" end vector vector Clk_A_drive_high_A5_B5 !Clock A and latch values initialize to Save_A_Values_A5_B5 !when driving A and receiving B. set Clk_A to "1" end vector vector Clk_A_drive_low_A5_B5 initialize to Save_A_Values_A5_B5 set Clk_A to "0" end vector vector Clk_A_receive_high_A5_B5 !Clock A and latch values initialize to Save_B_Values_A5_B5 !when Side A is receiving. set Clk_A to "1" end vector vector Clk_A_receive_low_A5_B5 initialize to Save_B_Values_A5_B5 set Clk_A to "0" end vector vector Clk_B_high_A5_B5 !Latch values when storing data. initialize to Save_Values_A5_B5 set Clk_B to "1" end vector vector Clk_B_low_A5_B5 initialize to Save_Values_A5_B5 set Clk_B to "0" end vector vector Clk_B_drive_low_A5_B5 !Clock B and latch values when initialize to Save_B_Values_A5_B5 !driving B and receiving A. set Clk_B to "0" end vector vector Clk_B_drive_high_A5_B5 initialize to Save_B_Values_A5_B5 set Clk_B to "1" end vector vector Clk_B_receive_high_A5_B5 !Clock B and latch values initialize to Save_A_Values_A5_B5 !when Side B is receiving. set Clk_B to "1" end vector vector Clk_B_receive_low_A5_B5 initialize to Save_A_Values_A5_B5 set Clk_B to "0" end vector vector Clk_A_Enable_A5_B5 !Enable clock A when in the storage mode. initialize to Save_Values_A5_B5 set Clk_Enable_A to "0" end vector vector Clk_enable_A_drive_A5_B5 !Enable clock A when transmitting A to B. initialize to Save_A_Values_A5_B5 set Clk_Enable_A to "0" end vector vector Clk_disable_A_drive_A5_B5 !Disable clock A when transmitting A to B. initialize to Save_A_Values_A5_B5 set Clk_Enable_A to "1" end vector vector Clk_enable_A_receive_A5_B5 !Enable clock A when receiving at A. initialize to Save_B_Values_A5_B5 set Clk_enable_A to "0" end vector vector Clk_disable_A_receive_A5_B5 !Disable clock A when receiving at A. initialize to Save_B_Values_A5_B5 set Clk_Enable_A to "1" end vector vector Clk_B_enable_A5_B5 !Enable clock B when in storage mode. initialize to Save_Values_A5_B5 set Clk_Enable_B to "0" end vector vector Clk_enable_B_drive_A5_B5 !Enable clock B when transmitting B to A initialize to Save_B_Values_A5_B5 set Clk_Enable_B to "0" end vector vector Clk_disable_B_drive_A5_B5 !Disable clock B when transmitting B to A. initialize to Save_B_Values_A5_B5 set Clk_Enable_B to "1" end vector vector Clk_enable_B_receive_A5_B5 !Enable clock B when transmitting A to B. initialize to Save_A_Values_A5_B5 set Clk_Enable_B to "0" end vector vector Clk_disable_B_receive_A5_B5 !Disable clock B when transmitting A to B. initialize to Save_A_Values_A5_B5 set Clk_Enable_B to "1" end vector vector OutputA_to_B_Drive_A5_B5 !Enable A to B output. initialize to Save_A_Values_A5_B5 set OutputA_to_B to "0" end vector vector OutputA_to_B_Receive_A5_B5 !Enable output received by A from B. initialize to Save_B_Values_A5_B5 set OutputA_to_B to "1" end vector vector OutputB_to_A_Drive_A5_B5 !Enable B to A output. initialize to Save_B_Values_A5_B5 set OutputB_to_A to "0" end vector vector OutputB_to_A_Receive_A5_B5 !Enable output received by B from A. initialize to Save_A_Values_A5_B5 set OutputB_to_A to "1" end vector vector A5_to_B5_0 initialize to Save_A_Values_A5_B5 drive A5 set A5 to "0" end vector vector A5_to_B5_1 initialize to Save_A_Values_A5_B5 drive A5 set A5 to "1" end vector vector B5_to_A5_0 initialize to Save_B_Values_A5_B5 drive B5 set B5 to "0" end vector vector B5_to_A5_1 initialize to Save_B_Values_A5_B5 drive B5 set B5 to "1" end vector vector Output_B5_0 initialize to Save_A_Values_A5_B5 receive B5 set B5 to "0" end vector vector Output_B5_1 initialize to Save_A_Values_A5_B5 receive B5 set B5 to "1" end vector vector Output_A5_0 initialize to Save_B_Values_A5_B5 receive A5 set A5 to "0" end vector vector Output_A5_1 initialize to Save_B_Values_A5_B5 receive A5 set A5 to "1" end vector vector Set_Values_A6_B6 !Set the device with known values. drive A6 drive B6 set OutputA_to_B to "1" set OutputB_to_A to "1" set Clk_A to "0" set Clk_B to "0" set Clk_Enable_A to "0" set Clk_Enable_B to "0" set A6 to "0" set B6 to "0" end vector vector Save_Values_A6_B6 !Keep values in known state. drive Side_A drive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set A6 to "k" set B6 to "k" end vector vector Save_A_Values_A6_B6 !Save values when driving A and receiving at B. drive Side_A receive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A6 to "k" set B6 to "x" end vector vector Save_B_Values_A6_B6 !Save values when driving B and receiving at A. drive Side_B receive Side_A set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A6 to "x" set B6 to "k" end vector vector Clk_A_high_A6_B6 !Clock A and latch values when storing data. initialize to Save_Values_A6_B6 set Clk_A to "1" end vector vector Clk_A_low_A6_B6 initialize to Save_Values_A6_B6 set Clk_A to "0" end vector vector Clk_A_drive_high_A6_B6 !Clock A and latch values initialize to Save_A_Values_A6_B6 !when driving A and receiving B. set Clk_A to "1" end vector vector Clk_A_drive_low_A6_B6 initialize to Save_A_Values_A6_B6 set Clk_A to "0" end vector vector Clk_A_receive_high_A6_B6 !Clock A and latch values initialize to Save_B_Values_A6_B6 !when Side A is receiving. set Clk_A to "1" end vector vector Clk_A_receive_low_A6_B6 initialize to Save_B_Values_A6_B6 set Clk_A to "0" end vector vector Clk_B_high_A6_B6 !Latch values when storing data. initialize to Save_Values_A6_B6 set Clk_B to "1" end vector vector Clk_B_low_A6_B6 initialize to Save_Values_A6_B6 set Clk_B to "0" end vector vector Clk_B_drive_low_A6_B6 !Clock B and latch values when initialize to Save_B_Values_A6_B6 !driving B and receiving A. set Clk_B to "0" end vector vector Clk_B_drive_high_A6_B6 initialize to Save_B_Values_A6_B6 set Clk_B to "1" end vector vector Clk_B_receive_high_A6_B6 !Clock B and latch values initialize to Save_A_Values_A6_B6 !when Side B is receiving. set Clk_B to "1" end vector vector Clk_B_receive_low_A6_B6 initialize to Save_A_Values_A6_B6 set Clk_B to "0" end vector vector Clk_A_Enable_A6_B6 !Enable clock A when in the storage mode. initialize to Save_Values_A6_B6 set Clk_Enable_A to "0" end vector vector Clk_enable_A_drive_A6_B6 !Enable clock A when transmitting A to B. initialize to Save_A_Values_A6_B6 set Clk_Enable_A to "0" end vector vector Clk_disable_A_drive_A6_B6 !Disable clock A when transmitting A to B. initialize to Save_A_Values_A6_B6 set Clk_Enable_A to "1" end vector vector Clk_enable_A_receive_A6_B6 !Enable clock A when receiving at A. initialize to Save_B_Values_A6_B6 set Clk_enable_A to "0" end vector vector Clk_disable_A_receive_A6_B6 !Disable clock A when receiving at A. initialize to Save_B_Values_A6_B6 set Clk_Enable_A to "1" end vector vector Clk_B_enable_A6_B6 !Enable clock B when in storage mode. initialize to Save_Values_A6_B6 set Clk_Enable_B to "0" end vector vector Clk_enable_B_drive_A6_B6 !Enable clock B when transmitting B to A initialize to Save_B_Values_A6_B6 set Clk_Enable_B to "0" end vector vector Clk_disable_B_drive_A6_B6 !Disable clock B when transmitting B to A. initialize to Save_B_Values_A6_B6 set Clk_Enable_B to "1" end vector vector Clk_enable_B_receive_A6_B6 !Enable clock B when transmitting A to B. initialize to Save_A_Values_A6_B6 set Clk_Enable_B to "0" end vector vector Clk_disable_B_receive_A6_B6 !Disable clock B when transmitting A to B. initialize to Save_A_Values_A6_B6 set Clk_Enable_B to "1" end vector vector OutputA_to_B_Drive_A6_B6 !Enable A to B output. initialize to Save_A_Values_A6_B6 set OutputA_to_B to "0" end vector vector OutputA_to_B_Receive_A6_B6 !Enable output received by A from B. initialize to Save_B_Values_A6_B6 set OutputA_to_B to "1" end vector vector OutputB_to_A_Drive_A6_B6 !Enable B to A output. initialize to Save_B_Values_A6_B6 set OutputB_to_A to "0" end vector vector OutputB_to_A_Receive_A6_B6 !Enable output received by B from A. initialize to Save_A_Values_A6_B6 set OutputB_to_A to "1" end vector vector A6_to_B6_0 initialize to Save_A_Values_A6_B6 drive A6 set A6 to "0" end vector vector A6_to_B6_1 initialize to Save_A_Values_A6_B6 drive A6 set A6 to "1" end vector vector B6_to_A6_0 initialize to Save_B_Values_A6_B6 drive B6 set B6 to "0" end vector vector B6_to_A6_1 initialize to Save_B_Values_A6_B6 drive B6 set B6 to "1" end vector vector Output_B6_0 initialize to Save_A_Values_A6_B6 receive B6 set B6 to "0" end vector vector Output_B6_1 initialize to Save_A_Values_A6_B6 receive B6 set B6 to "1" end vector vector Output_A6_0 initialize to Save_B_Values_A6_B6 receive A6 set A6 to "0" end vector vector Output_A6_1 initialize to Save_B_Values_A6_B6 receive A6 set A6 to "1" end vector vector Set_Values_A7_B7 !Set the device with known values. drive A7 drive B7 set OutputA_to_B to "1" set OutputB_to_A to "1" set Clk_A to "0" set Clk_B to "0" set Clk_Enable_A to "0" set Clk_Enable_B to "0" set A7 to "0" set B7 to "0" end vector vector Save_Values_A7_B7 !Keep values in known state. drive Side_A drive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set A7 to "k" set B7 to "k" end vector vector Save_A_Values_A7_B7 !Save values when driving A and receiving at B. drive Side_A receive Side_B set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A7 to "k" set B7 to "x" end vector vector Save_B_Values_A7_B7 !Save values when driving B and receiving at A. drive Side_B receive Side_A set OutputA_to_B to "k" set OutputB_to_A to "k" set Clk_A to "k" set Clk_B to "k" set Clk_Enable_A to "k" set Clk_Enable_B to "k" set A7 to "x" set B7 to "k" end vector vector Clk_A_high_A7_B7 !Clock A and latch values when storing data. initialize to Save_Values_A7_B7 set Clk_A to "1" end vector vector Clk_A_low_A7_B7 initialize to Save_Values_A7_B7 set Clk_A to "0" end vector vector Clk_A_drive_high_A7_B7 !Clock A and latch values initialize to Save_A_Values_A7_B7 !when driving A and receiving B. set Clk_A to "1" end vector vector Clk_A_drive_low_A7_B7 initialize to Save_A_Values_A7_B7 set Clk_A to "0" end vector vector Clk_A_receive_high_A7_B7 !Clock A and latch values initialize to Save_B_Values_A7_B7 !when Side A is receiving. set Clk_A to "1" end vector vector Clk_A_receive_low_A7_B7 initialize to Save_B_Values_A7_B7 set Clk_A to "0" end vector vector Clk_B_high_A7_B7 !Latch values when storing data. initialize to Save_Values_A7_B7 set Clk_B to "1" end vector vector Clk_B_low_A7_B7 initialize to Save_Values_A7_B7 set Clk_B to "0" end vector vector Clk_B_drive_low_A7_B7 !Clock B and latch values when initialize to Save_B_Values_A7_B7 !driving B and receiving A. set Clk_B to "0" end vector vector Clk_B_drive_high_A7_B7 initialize to Save_B_Values_A7_B7 set Clk_B to "1" end vector vector Clk_B_receive_high_A7_B7 !Clock B and latch values initialize to Save_A_Values_A7_B7 !when Side B is receiving. set Clk_B to "1" end vector vector Clk_B_receive_low_A7_B7 initialize to Save_A_Values_A7_B7 set Clk_B to "0" end vector vector Clk_A_Enable_A7_B7 !Enable clock A when in the storage mode. initialize to Save_Values_A7_B7 set Clk_Enable_A to "0" end vector vector Clk_enable_A_drive_A7_B7 !Enable clock A when transmitting A to B. initialize to Save_A_Values_A7_B7 set Clk_Enable_A to "0" end vector vector Clk_disable_A_drive_A7_B7 !Disable clock A when transmitting A to B. initialize to Save_A_Values_A7_B7 set Clk_Enable_A to "1" end vector vector Clk_enable_A_receive_A7_B7 !Enable clock A when receiving at A. initialize to Save_B_Values_A7_B7 set Clk_enable_A to "0" end vector vector Clk_disable_A_receive_A7_B7 !Disable clock A when receiving at A. initialize to Save_B_Values_A7_B7 set Clk_Enable_A to "1" end vector vector Clk_B_enable_A7_B7 !Enable clock B when in storage mode. initialize to Save_Values_A7_B7 set Clk_Enable_B to "0" end vector vector Clk_enable_B_drive_A7_B7 !Enable clock B when transmitting B to A initialize to Save_B_Values_A7_B7 set Clk_Enable_B to "0" end vector vector Clk_disable_B_drive_A7_B7 !Disable clock B when transmitting B to A. initialize to Save_B_Values_A7_B7 set Clk_Enable_B to "1" end vector vector Clk_enable_B_receive_A7_B7 !Enable clock B when transmitting A to B. initialize to Save_A_Values_A7_B7 set Clk_Enable_B to "0" end vector vector Clk_disable_B_receive_A7_B7 !Disable clock B when transmitting A to B. initialize to Save_A_Values_A7_B7 set Clk_Enable_B to "1" end vector vector OutputA_to_B_Drive_A7_B7 !Enable A to B output. initialize to Save_A_Values_A7_B7 set OutputA_to_B to "0" end vector vector OutputA_to_B_Receive_A7_B7 !Enable output received by A from B. initialize to Save_B_Values_A7_B7 set OutputA_to_B to "1" end vector vector OutputB_to_A_Drive_A7_B7 !Enable B to A output. initialize to Save_B_Values_A7_B7 set OutputB_to_A to "0" end vector vector OutputB_to_A_Receive_A7_B7 !Enable output received by B from A. initialize to Save_A_Values_A7_B7 set OutputB_to_A to "1" end vector vector A7_to_B7_0 initialize to Save_A_Values_A7_B7 drive A7 set A7 to "0" end vector vector A7_to_B7_1 initialize to Save_A_Values_A7_B7 drive A7 set A7 to "1" end vector vector B7_to_A7_0 initialize to Save_B_Values_A7_B7 drive B7 set B7 to "0" end vector vector B7_to_A7_1 initialize to Save_B_Values_A7_B7 drive B7 set B7 to "1" end vector vector Output_B7_0 initialize to Save_A_Values_A7_B7 receive B7 set B7 to "0" end vector vector Output_B7_1 initialize to Save_A_Values_A7_B7 receive B7 set B7 to "1" end vector vector Output_A7_0 initialize to Save_B_Values_A7_B7 receive A7 set A7 to "0" end vector vector Output_A7_1 initialize to Save_B_Values_A7_B7 receive A7 set A7 to "1" end vector !******************************************************************** ! SUBROUTINE SECTION BEGINS !******************************************************************** !This subroutine sets the transceiver into a known state by !storing zeros from the bidirectional lines (Side A and Side B) !into its registers. sub Storage execute Set_values !Set to a known state execute Clk_A_enable !clock to enable execute Clk_B_enable !then save values. execute Clk_A_high execute Clk_B_high execute Save_Values end sub !******************************************************************** ! UNIT SECTION BEGINS !******************************************************************** !AT The following AwareTest units have been added for minimum pins tests. Each !AT unit tests a separate data pin starting with A0 and B0. unit "awaretest A0 to B0 Test" execute Set_values_A0_B0 !Set to a known state execute Clk_A_enable_A0_B0 !clock to enable execute Clk_B_enable_A0_B0 !then save values. execute Clk_A_high_A0_B0 execute Clk_B_high_A0_B0 execute Save_Values_A0_B0 execute Clk_A_drive_low_A0_B0 execute OutputA_to_B_Drive_A0_B0 execute OutputB_to_A_Receive_A0_B0 execute Clk_Enable_A_Drive_A0_B0 execute A0_to_B0_0 execute Clk_A_Drive_High_A0_B0 execute Save_A_Values_A0_B0 execute Clk_Enable_B_Receive_A0_B0 execute Output_B0_0 execute Clk_B_receive_high_A0_B0 execute Set_values_A0_B0 !Set to a known state execute Clk_A_enable_A0_B0 !clock to enable execute Clk_B_enable_A0_B0 !then save values. execute Clk_A_high_A0_B0 execute Clk_B_high_A0_B0 execute Save_Values_A0_B0 execute Clk_A_drive_low_A0_B0 execute OutputA_to_B_Drive_A0_B0 execute OutputB_to_A_Receive_A0_B0 execute Clk_Enable_A_Drive_A0_B0 execute A0_to_B0_1 execute Clk_A_Drive_High_A0_B0 execute Save_A_Values_A0_B0 execute Clk_Enable_B_Receive_A0_B0 execute Output_B0_1 execute Clk_B_receive_high_A0_B0 end unit unit "awaretest A1 to B1 Test" execute Set_values_A1_B1 !Set to a known state execute Clk_A_enable_A1_B1 !clock to enable execute Clk_B_enable_A1_B1 !then save values. execute Clk_A_high_A1_B1 execute Clk_B_high_A1_B1 execute Save_Values_A1_B1 execute Clk_A_drive_low_A1_B1 execute OutputA_to_B_Drive_A1_B1 execute OutputB_to_A_Receive_A1_B1 execute Clk_Enable_A_Drive_A1_B1 execute A1_to_B1_0 execute Clk_A_Drive_High_A1_B1 execute Save_A_Values_A1_B1 execute Clk_Enable_B_Receive_A1_B1 execute Output_B1_0 execute Clk_B_receive_high_A1_B1 execute Set_values_A1_B1 !Set to a known state execute Clk_A_enable_A1_B1 !clock to enable execute Clk_B_enable_A1_B1 !then save values. execute Clk_A_high_A1_B1 execute Clk_B_high_A1_B1 execute Save_Values_A1_B1 execute Clk_A_drive_low_A1_B1 execute OutputA_to_B_Drive_A1_B1 execute OutputB_to_A_Receive_A1_B1 execute Clk_Enable_A_Drive_A1_B1 execute A1_to_B1_1 execute Clk_A_Drive_High_A1_B1 execute Save_A_Values_A1_B1 execute Clk_Enable_B_Receive_A1_B1 execute Output_B1_1 execute Clk_B_receive_high_A1_B1 end unit unit "awaretest A2 to B2 Test" execute Set_values_A2_B2 !Set to a known state execute Clk_A_enable_A2_B2 !clock to enable execute Clk_B_enable_A2_B2 !then save values. execute Clk_A_high_A2_B2 execute Clk_B_high_A2_B2 execute Save_Values_A2_B2 execute Clk_A_drive_low_A2_B2 execute OutputA_to_B_Drive_A2_B2 execute OutputB_to_A_Receive_A2_B2 execute Clk_Enable_A_Drive_A2_B2 execute A2_to_B2_0 execute Clk_A_Drive_High_A2_B2 execute Save_A_Values_A2_B2 execute Clk_Enable_B_Receive_A2_B2 execute Output_B2_0 execute Clk_B_receive_high_A2_B2 execute Set_values_A2_B2 !Set to a known state execute Clk_A_enable_A2_B2 !clock to enable execute Clk_B_enable_A2_B2 !then save values. execute Clk_A_high_A2_B2 execute Clk_B_high_A2_B2 execute Save_Values_A2_B2 execute Clk_A_drive_low_A2_B2 execute OutputA_to_B_Drive_A2_B2 execute OutputB_to_A_Receive_A2_B2 execute Clk_Enable_A_Drive_A2_B2 execute A2_to_B2_1 execute Clk_A_Drive_High_A2_B2 execute Save_A_Values_A2_B2 execute Clk_Enable_B_Receive_A2_B2 execute Output_B2_1 execute Clk_B_receive_high_A2_B2 end unit unit "awaretest A3 to B3 Test" execute Set_values_A3_B3 !Set to a known state execute Clk_A_enable_A3_B3 !clock to enable execute Clk_B_enable_A3_B3 !then save values. execute Clk_A_high_A3_B3 execute Clk_B_high_A3_B3 execute Save_Values_A3_B3 execute Clk_A_drive_low_A3_B3 execute OutputA_to_B_Drive_A3_B3 execute OutputB_to_A_Receive_A3_B3 execute Clk_Enable_A_Drive_A3_B3 execute A3_to_B3_0 execute Clk_A_Drive_High_A3_B3 execute Save_A_Values_A3_B3 execute Clk_Enable_B_Receive_A3_B3 execute Output_B3_0 execute Clk_B_receive_high_A3_B3 execute Set_values_A3_B3 !Set to a known state execute Clk_A_enable_A3_B3 !clock to enable execute Clk_B_enable_A3_B3 !then save values. execute Clk_A_high_A3_B3 execute Clk_B_high_A3_B3 execute Save_Values_A3_B3 execute Clk_A_drive_low_A3_B3 execute OutputA_to_B_Drive_A3_B3 execute OutputB_to_A_Receive_A3_B3 execute Clk_Enable_A_Drive_A3_B3 execute A3_to_B3_1 execute Clk_A_Drive_High_A3_B3 execute Save_A_Values_A3_B3 execute Clk_Enable_B_Receive_A3_B3 execute Output_B3_1 execute Clk_B_receive_high_A3_B3 end unit unit "awaretest A4 to B4 Test" execute Set_values_A4_B4 !Set to a known state execute Clk_A_enable_A4_B4 !clock to enable execute Clk_B_enable_A4_B4 !then save values. execute Clk_A_high_A4_B4 execute Clk_B_high_A4_B4 execute Save_Values_A4_B4 execute Clk_A_drive_low_A4_B4 execute OutputA_to_B_Drive_A4_B4 execute OutputB_to_A_Receive_A4_B4 execute Clk_Enable_A_Drive_A4_B4 execute A4_to_B4_0 execute Clk_A_Drive_High_A4_B4 execute Save_A_Values_A4_B4 execute Clk_Enable_B_Receive_A4_B4 execute Output_B4_0 execute Clk_B_receive_high_A4_B4 execute Set_values_A4_B4 !Set to a known state execute Clk_A_enable_A4_B4 !clock to enable execute Clk_B_enable_A4_B4 !then save values. execute Clk_A_high_A4_B4 execute Clk_B_high_A4_B4 execute Save_Values_A4_B4 execute Clk_A_drive_low_A4_B4 execute OutputA_to_B_Drive_A4_B4 execute OutputB_to_A_Receive_A4_B4 execute Clk_Enable_A_Drive_A4_B4 execute A4_to_B4_1 execute Clk_A_Drive_High_A4_B4 execute Save_A_Values_A4_B4 execute Clk_Enable_B_Receive_A4_B4 execute Output_B4_1 execute Clk_B_receive_high_A4_B4 end unit unit "awaretest A5 to B5 Test" execute Set_values_A5_B5 !Set to a known state execute Clk_A_enable_A5_B5 !clock to enable execute Clk_B_enable_A5_B5 !then save values. execute Clk_A_high_A5_B5 execute Clk_B_high_A5_B5 execute Save_Values_A5_B5 execute Clk_A_drive_low_A5_B5 execute OutputA_to_B_Drive_A5_B5 execute OutputB_to_A_Receive_A5_B5 execute Clk_Enable_A_Drive_A5_B5 execute A5_to_B5_0 execute Clk_A_Drive_High_A5_B5 execute Save_A_Values_A5_B5 execute Clk_Enable_B_Receive_A5_B5 execute Output_B5_0 execute Clk_B_receive_high_A5_B5 execute Set_values_A5_B5 !Set to a known state execute Clk_A_enable_A5_B5 !clock to enable execute Clk_B_enable_A5_B5 !then save values. execute Clk_A_high_A5_B5 execute Clk_B_high_A5_B5 execute Save_Values_A5_B5 execute Clk_A_drive_low_A5_B5 execute OutputA_to_B_Drive_A5_B5 execute OutputB_to_A_Receive_A5_B5 execute Clk_Enable_A_Drive_A5_B5 execute A5_to_B5_1 execute Clk_A_Drive_High_A5_B5 execute Save_A_Values_A5_B5 execute Clk_Enable_B_Receive_A5_B5 execute Output_B5_1 execute Clk_B_receive_high_A5_B5 end unit unit "awaretest A6 to B6 Test" execute Set_values_A6_B6 !Set to a known state execute Clk_A_enable_A6_B6 !clock to enable execute Clk_B_enable_A6_B6 !then save values. execute Clk_A_high_A6_B6 execute Clk_B_high_A6_B6 execute Save_Values_A6_B6 execute Clk_A_drive_low_A6_B6 execute OutputA_to_B_Drive_A6_B6 execute OutputB_to_A_Receive_A6_B6 execute Clk_Enable_A_Drive_A6_B6 execute A6_to_B6_0 execute Clk_A_Drive_High_A6_B6 execute Save_A_Values_A6_B6 execute Clk_Enable_B_Receive_A6_B6 execute Output_B6_0 execute Clk_B_receive_high_A6_B6 execute Set_values_A6_B6 !Set to a known state execute Clk_A_enable_A6_B6 !clock to enable execute Clk_B_enable_A6_B6 !then save values. execute Clk_A_high_A6_B6 execute Clk_B_high_A6_B6 execute Save_Values_A6_B6 execute Clk_A_drive_low_A6_B6 execute OutputA_to_B_Drive_A6_B6 execute OutputB_to_A_Receive_A6_B6 execute Clk_Enable_A_Drive_A6_B6 execute A6_to_B6_1 execute Clk_A_Drive_High_A6_B6 execute Save_A_Values_A6_B6 execute Clk_Enable_B_Receive_A6_B6 execute Output_B6_1 execute Clk_B_receive_high_A6_B6 end unit unit "awaretest A7 to B7 Test" execute Set_values_A7_B7 !Set to a known state execute Clk_A_enable_A7_B7 !clock to enable execute Clk_B_enable_A7_B7 !then save values. execute Clk_A_high_A7_B7 execute Clk_B_high_A7_B7 execute Save_Values_A7_B7 execute Clk_A_drive_low_A7_B7 execute OutputA_to_B_Drive_A7_B7 execute OutputB_to_A_Receive_A7_B7 execute Clk_Enable_A_Drive_A7_B7 execute A7_to_B7_0 execute Clk_A_Drive_High_A7_B7 execute Save_A_Values_A7_B7 execute Clk_Enable_B_Receive_A7_B7 execute Output_B7_0 execute Clk_B_receive_high_A7_B7 execute Set_values_A7_B7 !Set to a known state execute Clk_A_enable_A7_B7 !clock to enable execute Clk_B_enable_A7_B7 !then save values. execute Clk_A_high_A7_B7 execute Clk_B_high_A7_B7 execute Save_Values_A7_B7 execute Clk_A_drive_low_A7_B7 execute OutputA_to_B_Drive_A7_B7 execute OutputB_to_A_Receive_A7_B7 execute Clk_Enable_A_Drive_A7_B7 execute A7_to_B7_1 execute Clk_A_Drive_High_A7_B7 execute Save_A_Values_A7_B7 execute Clk_Enable_B_Receive_A7_B7 execute Output_B7_1 execute Clk_B_receive_high_A7_B7 end unit unit "awaretest B0 to A0 Test" execute Set_values_A0_B0 !Set to a known state execute Clk_A_enable_A0_B0 !clock to enable execute Clk_B_enable_A0_B0 !then save values. execute Clk_A_high_A0_B0 execute Clk_B_high_A0_B0 execute Save_Values_A0_B0 execute Clk_B_drive_low_A0_B0 execute OutputB_to_A_Drive_A0_B0 execute OutputA_to_B_Receive_A0_B0 execute Clk_Enable_B_Drive_A0_B0 execute B0_to_A0_0 execute Clk_B_Drive_High_A0_B0 execute Save_B_Values_A0_B0 execute Clk_enable_A_receive_A0_B0 execute Output_A0_0 execute Clk_A_receive_high_A0_B0 execute Set_values_A0_B0 !Set to a known state execute Clk_A_enable_A0_B0 !clock to enable execute Clk_B_enable_A0_B0 !then save values. execute Clk_A_high_A0_B0 execute Clk_B_high_A0_B0 execute Save_Values_A0_B0 execute Clk_B_drive_low_A0_B0 execute OutputB_to_A_Drive_A0_B0 execute OutputA_to_B_Receive_A0_B0 execute Clk_Enable_B_Drive_A0_B0 execute B0_to_A0_1 execute Clk_B_Drive_High_A0_B0 execute Save_B_Values_A0_B0 execute Clk_enable_A_receive_A0_B0 execute Output_A0_1 execute Clk_A_receive_high_A0_B0 end unit unit "awaretest B1 to A1 Test" execute Set_values_A1_B1 !Set to a known state execute Clk_A_enable_A1_B1 !clock to enable execute Clk_B_enable_A1_B1 !then save values. execute Clk_A_high_A1_B1 execute Clk_B_high_A1_B1 execute Save_Values_A1_B1 execute Clk_B_drive_low_A1_B1 execute OutputB_to_A_Drive_A1_B1 execute OutputA_to_B_Receive_A1_B1 execute Clk_Enable_B_Drive_A1_B1 execute B1_to_A1_0 execute Clk_B_Drive_High_A1_B1 execute Save_B_Values_A1_B1 execute Clk_enable_A_receive_A1_B1 execute Output_A1_0 execute Clk_A_receive_high_A1_B1 execute Set_values_A1_B1 !Set to a known state execute Clk_A_enable_A1_B1 !clock to enable execute Clk_B_enable_A1_B1 !then save values. execute Clk_A_high_A1_B1 execute Clk_B_high_A1_B1 execute Save_Values_A1_B1 execute Clk_B_drive_low_A1_B1 execute OutputB_to_A_Drive_A1_B1 execute OutputA_to_B_Receive_A1_B1 execute Clk_Enable_B_Drive_A1_B1 execute B1_to_A1_1 execute Clk_B_Drive_High_A1_B1 execute Save_B_Values_A1_B1 execute Clk_enable_A_receive_A1_B1 execute Output_A1_1 execute Clk_A_receive_high_A1_B1 end unit unit "awaretest B2 to A2 Test" execute Set_values_A2_B2 !Set to a known state execute Clk_A_enable_A2_B2 !clock to enable execute Clk_B_enable_A2_B2 !then save values. execute Clk_A_high_A2_B2 execute Clk_B_high_A2_B2 execute Save_Values_A2_B2 execute Clk_B_drive_low_A2_B2 execute OutputB_to_A_Drive_A2_B2 execute OutputA_to_B_Receive_A2_B2 execute Clk_Enable_B_Drive_A2_B2 execute B2_to_A2_0 execute Clk_B_Drive_High_A2_B2 execute Save_B_Values_A2_B2 execute Clk_enable_A_receive_A2_B2 execute Output_A2_0 execute Clk_A_receive_high_A2_B2 execute Set_values_A2_B2 !Set to a known state execute Clk_A_enable_A2_B2 !clock to enable execute Clk_B_enable_A2_B2 !then save values. execute Clk_A_high_A2_B2 execute Clk_B_high_A2_B2 execute Save_Values_A2_B2 execute Clk_B_drive_low_A2_B2 execute OutputB_to_A_Drive_A2_B2 execute OutputA_to_B_Receive_A2_B2 execute Clk_Enable_B_Drive_A2_B2 execute B2_to_A2_1 execute Clk_B_Drive_High_A2_B2 execute Save_B_Values_A2_B2 execute Clk_enable_A_receive_A2_B2 execute Output_A2_1 execute Clk_A_receive_high_A2_B2 end unit unit "awaretest B3 to A3 Test" execute Set_values_A3_B3 !Set to a known state execute Clk_A_enable_A3_B3 !clock to enable execute Clk_B_enable_A3_B3 !then save values. execute Clk_A_high_A3_B3 execute Clk_B_high_A3_B3 execute Save_Values_A3_B3 execute Clk_B_drive_low_A3_B3 execute OutputB_to_A_Drive_A3_B3 execute OutputA_to_B_Receive_A3_B3 execute Clk_Enable_B_Drive_A3_B3 execute B3_to_A3_0 execute Clk_B_Drive_High_A3_B3 execute Save_B_Values_A3_B3 execute Clk_enable_A_receive_A3_B3 execute Output_A3_0 execute Clk_A_receive_high_A3_B3 execute Set_values_A3_B3 !Set to a known state execute Clk_A_enable_A3_B3 !clock to enable execute Clk_B_enable_A3_B3 !then save values. execute Clk_A_high_A3_B3 execute Clk_B_high_A3_B3 execute Save_Values_A3_B3 execute Clk_B_drive_low_A3_B3 execute OutputB_to_A_Drive_A3_B3 execute OutputA_to_B_Receive_A3_B3 execute Clk_Enable_B_Drive_A3_B3 execute B3_to_A3_1 execute Clk_B_Drive_High_A3_B3 execute Save_B_Values_A3_B3 execute Clk_enable_A_receive_A3_B3 execute Output_A3_1 execute Clk_A_receive_high_A3_B3 end unit unit "awaretest B4 to A4 Test" execute Set_values_A4_B4 !Set to a known state execute Clk_A_enable_A4_B4 !clock to enable execute Clk_B_enable_A4_B4 !then save values. execute Clk_A_high_A4_B4 execute Clk_B_high_A4_B4 execute Save_Values_A4_B4 execute Clk_B_drive_low_A4_B4 execute OutputB_to_A_Drive_A4_B4 execute OutputA_to_B_Receive_A4_B4 execute Clk_Enable_B_Drive_A4_B4 execute B4_to_A4_0 execute Clk_B_Drive_High_A4_B4 execute Save_B_Values_A4_B4 execute Clk_enable_A_receive_A4_B4 execute Output_A4_0 execute Clk_A_receive_high_A4_B4 execute Set_values_A4_B4 !Set to a known state execute Clk_A_enable_A4_B4 !clock to enable execute Clk_B_enable_A4_B4 !then save values. execute Clk_A_high_A4_B4 execute Clk_B_high_A4_B4 execute Save_Values_A4_B4 execute Clk_B_drive_low_A4_B4 execute OutputB_to_A_Drive_A4_B4 execute OutputA_to_B_Receive_A4_B4 execute Clk_Enable_B_Drive_A4_B4 execute B4_to_A4_1 execute Clk_B_Drive_High_A4_B4 execute Save_B_Values_A4_B4 execute Clk_enable_A_receive_A4_B4 execute Output_A4_1 execute Clk_A_receive_high_A4_B4 end unit unit "awaretest B5 to A5 Test" execute Set_values_A5_B5 !Set to a known state execute Clk_A_enable_A5_B5 !clock to enable execute Clk_B_enable_A5_B5 !then save values. execute Clk_A_high_A5_B5 execute Clk_B_high_A5_B5 execute Save_Values_A5_B5 execute Clk_B_drive_low_A5_B5 execute OutputB_to_A_Drive_A5_B5 execute OutputA_to_B_Receive_A5_B5 execute Clk_Enable_B_Drive_A5_B5 execute B5_to_A5_0 execute Clk_B_Drive_High_A5_B5 execute Save_B_Values_A5_B5 execute Clk_enable_A_receive_A5_B5 execute Output_A5_0 execute Clk_A_receive_high_A5_B5 execute Set_values_A5_B5 !Set to a known state execute Clk_A_enable_A5_B5 !clock to enable execute Clk_B_enable_A5_B5 !then save values. execute Clk_A_high_A5_B5 execute Clk_B_high_A5_B5 execute Save_Values_A5_B5 execute Clk_B_drive_low_A5_B5 execute OutputB_to_A_Drive_A5_B5 execute OutputA_to_B_Receive_A5_B5 execute Clk_Enable_B_Drive_A5_B5 execute B5_to_A5_1 execute Clk_B_Drive_High_A5_B5 execute Save_B_Values_A5_B5 execute Clk_enable_A_receive_A5_B5 execute Output_A5_1 execute Clk_A_receive_high_A5_B5 end unit unit "awaretest B6 to A6 Test" execute Set_values_A6_B6 !Set to a known state execute Clk_A_enable_A6_B6 !clock to enable execute Clk_B_enable_A6_B6 !then save values. execute Clk_A_high_A6_B6 execute Clk_B_high_A6_B6 execute Save_Values_A6_B6 execute Clk_B_drive_low_A6_B6 execute OutputB_to_A_Drive_A6_B6 execute OutputA_to_B_Receive_A6_B6 execute Clk_Enable_B_Drive_A6_B6 execute B6_to_A6_0 execute Clk_B_Drive_High_A6_B6 execute Save_B_Values_A6_B6 execute Clk_enable_A_receive_A6_B6 execute Output_A6_0 execute Clk_A_receive_high_A6_B6 execute Set_values_A6_B6 !Set to a known state execute Clk_A_enable_A6_B6 !clock to enable execute Clk_B_enable_A6_B6 !then save values. execute Clk_A_high_A6_B6 execute Clk_B_high_A6_B6 execute Save_Values_A6_B6 execute Clk_B_drive_low_A6_B6 execute OutputB_to_A_Drive_A6_B6 execute OutputA_to_B_Receive_A6_B6 execute Clk_Enable_B_Drive_A6_B6 execute B6_to_A6_1 execute Clk_B_Drive_High_A6_B6 execute Save_B_Values_A6_B6 execute Clk_enable_A_receive_A6_B6 execute Output_A6_1 execute Clk_A_receive_high_A6_B6 end unit unit "awaretest B7 to A7 Test" execute Set_values_A7_B7 !Set to a known state execute Clk_A_enable_A7_B7 !clock to enable execute Clk_B_enable_A7_B7 !then save values. execute Clk_A_high_A7_B7 execute Clk_B_high_A7_B7 execute Save_Values_A7_B7 execute Clk_B_drive_low_A7_B7 execute OutputB_to_A_Drive_A7_B7 execute OutputA_to_B_Receive_A7_B7 execute Clk_Enable_B_Drive_A7_B7 execute B7_to_A7_0 execute Clk_B_Drive_High_A7_B7 execute Save_B_Values_A7_B7 execute Clk_enable_A_receive_A7_B7 execute Output_A7_0 execute Clk_A_receive_high_A7_B7 execute Set_values_A7_B7 !Set to a known state execute Clk_A_enable_A7_B7 !clock to enable execute Clk_B_enable_A7_B7 !then save values. execute Clk_A_high_A7_B7 execute Clk_B_high_A7_B7 execute Save_Values_A7_B7 execute Clk_B_drive_low_A7_B7 execute OutputB_to_A_Drive_A7_B7 execute OutputA_to_B_Receive_A7_B7 execute Clk_Enable_B_Drive_A7_B7 execute B7_to_A7_1 execute Clk_B_Drive_High_A7_B7 execute Save_B_Values_A7_B7 execute Clk_enable_A_receive_A7_B7 execute Output_A7_1 execute Clk_A_receive_high_A7_B7 end unit unit "A-to-B Operation" !The first unit puts the transceiver into A to B operation !by driving side A and receiving at side B. First the hex !number 55 is used as data and then AA is used. call Storage !Set into known state. execute Clk_A_drive_low execute OutputA_to_B_Drive execute OutputB_to_A_Receive execute Clk_Enable_A_Drive execute A_to_B_55 !Place 55h on input lines. execute Clk_A_Drive_High execute Save_A_Values execute Clk_Enable_B_Receive execute Output_B_55 !Check output. execute Clk_B_receive_high call Storage !Set into known state. execute Clk_A_drive_low execute OutputA_to_B_drive execute OutputB_to_A_receive execute Clk_Enable_A_drive execute A_to_B_AA !Place AAh on the input lines. execute Clk_A_drive_high execute Save_A_values execute Clk_Enable_B_Receive execute Output_B_AA !Check output. execute Clk_B_receive_high end unit unit "B-to-A Operation" !The second unit puts the transceiver into B to A operation using !the same method and the same data as in the previous unit. call Storage !Set up device into known state. execute Clk_B_drive_low execute OutputB_to_A_Drive execute OutputA_to_B_Receive execute Clk_Enable_B_Drive execute B_to_A_55 !Place 55h on input lines. execute Clk_B_Drive_High execute Save_B_Values execute Clk_enable_A_receive execute Output_A_55 !Check output. execute Clk_A_receive_high call Storage !Set device into known state. execute Clk_B_drive_low execute OutputB_to_A_Drive execute OutputA_to_B_Receive execute Clk_Enable_B_Drive execute B_to_A_AA !Place AAh on input lines. execute Clk_B_Drive_High execute Save_B_Values execute Clk_enable_A_receive execute Output_A_AA !Check output. execute Clk_A_receive_high end unit unit "Test Clock enable pins" !This unit can be commented out if the Clock enable pins are !not going to be tested. call Storage !Test Clk_Enable_A. execute Clk_A_drive_low execute OutputA_to_B_Drive execute OutputB_to_A_Receive execute Clk_Enable_A_Drive execute A_to_B_55 !Place 55h on input lines. execute Clk_A_Drive_High execute Save_A_Values call Storage !Set into a known state. execute Clk_disable_A_Drive !Disable Clock A enable pin. execute Clk_A_drive_low execute Clk_disable_B_receive execute OutputA_to_B_Drive execute OutputB_to_A_Receive execute A_to_B_AA !Place AAh on input lines. execute Clk_A_Drive_High execute Save_A_Values execute Clk_enable_B_receive execute Output_B_55 !Check output. execute Clk_B_receive_high call Storage !Test Clock_enable_B pin. execute Clk_B_drive_low execute OutputB_to_A_Drive execute OutputA_to_B_Receive execute Clk_Enable_B_Drive execute B_to_A_55 !Place 55h on input lines. execute Clk_B_Drive_High execute Save_B_Values call Storage !Set up in a known state. execute Clk_B_drive_low execute OutputB_to_A_Drive execute OutputA_to_B_Receive execute Clk_disable_B_Drive !Disable Clock B enable pin. execute B_to_A_00 execute Clk_B_Drive_High execute Save_B_Values execute Clk_disable_B_drive execute Clk_enable_A_receive execute Output_A_55 !Check output. execute Clk_A_receive_high end unit