STIL 1.00; Bin "Pass"{ ProgramResult = "Pass"; BinNumber = 1; } Bin "Fail Contact"{ ProgramResult = "Fail"; BinNumber = 2; } Bin "Fail Min"{ ProgramResult = "Fail"; BinNumber = 3; } Bin "Fail Nom"{ ProgramResult = "Fail"; BinNumber = 4; } Bin "Pass Nom Only"{ ProgramResult = "Pass"; BinNumber = 5; } Bin "Fail LeakH"{ ProgramResult = "Fail"; BinNumber = 6; } Bin "Fail LeakL"{ ProgramResult = "Fail"; BinNumber = 7; } Bin "Fail Block"{ ProgramResult = "Fail"; BinNumber = 8; } Signals { pin000 InOut; pin001 InOut; pin002 InOut; pin003 InOut; pin004 InOut; pin005 InOut; pin006 InOut; pin007 InOut; pin008 InOut; pin009 InOut; pin010 InOut; pin011 InOut; pin012 InOut; pin013 InOut; pin014 InOut; pin015 InOut; pin016 InOut; pin017 InOut; pin018 InOut; pin019 InOut; pin020 InOut; pin021 InOut; pin022 InOut; pin023 InOut; pin024 InOut; pin025 InOut; pin026 InOut; pin027 InOut; pin028 InOut; pin029 InOut; pin030 InOut; pin031 InOut; } Pattern OddEvenTogglePat { SourceFile ".\OddEvenTogglePat.spat"; } ProgSeq "Main"{ Segment 2{ Type TEST; Test TestContinuity; Start true; Title "Contact"; Position 160,80; Action PASS|GOTO|3; Action FAIL|BIN|2; } Segment 3{ Type TEST; Test TestOddEvenFuncMin; Title "OddEven Min"; Position 160,200; Action PASS|GOTO|4; Action FAIL|BIN|3; } Segment 4{ Type TEST; Test TestOddEvenFuncMax; Title "OddEven Max"; Position 160,320; Action FAIL|GOTO|10; Action PASS|GOTO|6; } Segment 10{ Type BLOCK; Title "Block segment <>"; Position 400,320; Action PASS|GOTO|11; Action FAIL|BIN|8; SequenceName "SEQ005"; } Segment 6{ Type TEST; Test LeakHigh; Title "Leakage High"; Position 280,600; Action PASS|GOTO|7; Action FAIL|BIN|6; } Segment 7{ Type TEST; Test LeakLow; Title "Leakage Low"; Position 280,720; Action FAIL|BIN|7; Action PASS|BIN|1; } Segment 11{ Type BRANCH; Title "Branch segment <>"; TestOption 'MyTestOption'; Position 400,440; Action TRUE|GOTO|6; } } ProgSeq "Start"{ Segment 1{ Type TEST; Test ConnectUp; Start true; Title "Connect Resources"; Position 160,80; } } ProgSeq "Finish"{ Segment 9{ Type TEST; Test Disconnect; Start true; Title "Disconnect Resources"; Position 160,80; } } ProgSeq "Load"{ } ProgSeq "Unload"{ } ProgSeq "SEQ005"{ Segment 5{ Type TEST; Test TestOddEvenFuncNom; Title "OddEven Nom"; Position 400,320; Action FAIL|BIN|4; Action PASS|GOTO|8; } Segment 8{ Type TEST; Test FuncMaxLog; Title "Failed Max, Passed Nom"; Position 400,440; } } PinList "LoopBackBoard" { Sites 16; pin000 ( 0, 32, 64, 96, 128, 160, 192, 224, 256, 288, 320, 352, 384, 416, 448, 480); pin001 ( 1, 33, 65, 97, 129, 161, 193, 225, 257, 289, 321, 353, 385, 417, 449, 481); pin002 ( 2, 34, 66, 98, 130, 162, 194, 226, 258, 290, 322, 354, 386, 418, 450, 482); pin003 ( 3, 35, 67, 99, 131, 163, 195, 227, 259, 291, 323, 355, 387, 419, 451, 483); pin004 ( 4, 36, 68, 100, 132, 164, 196, 228, 260, 292, 324, 356, 388, 420, 452, 484); pin005 ( 5, 37, 69, 101, 133, 165, 197, 229, 261, 293, 325, 357, 389, 421, 453, 485); pin006 ( 6, 38, 70, 102, 134, 166, 198, 230, 262, 294, 326, 358, 390, 422, 454, 486); pin007 ( 7, 39, 71, 103, 135, 167, 199, 231, 263, 295, 327, 359, 391, 423, 455, 487); pin008 ( 8, 40, 72, 104, 136, 168, 200, 232, 264, 296, 328, 360, 392, 424, 456, 488); pin009 ( 9, 41, 73, 105, 137, 169, 201, 233, 265, 297, 329, 361, 393, 425, 457, 489); pin010 ( 10, 42, 74, 106, 138, 170, 202, 234, 266, 298, 330, 362, 394, 426, 458, 490); pin011 ( 11, 43, 75, 107, 139, 171, 203, 235, 267, 299, 331, 363, 395, 427, 459, 491); pin012 ( 12, 44, 76, 108, 140, 172, 204, 236, 268, 300, 332, 364, 396, 428, 460, 492); pin013 ( 13, 45, 77, 109, 141, 173, 205, 237, 269, 301, 333, 365, 397, 429, 461, 493); pin014 ( 14, 46, 78, 110, 142, 174, 206, 238, 270, 302, 334, 366, 398, 430, 462, 494); pin015 ( 15, 47, 79, 111, 143, 175, 207, 239, 271, 303, 335, 367, 399, 431, 463, 495); pin016 ( 16, 48, 80, 112, 144, 176, 208, 240, 272, 304, 336, 368, 400, 432, 464, 496); pin017 ( 17, 49, 81, 113, 145, 177, 209, 241, 273, 305, 337, 369, 401, 433, 465, 497); pin018 ( 18, 50, 82, 114, 146, 178, 210, 242, 274, 306, 338, 370, 402, 434, 466, 498); pin019 ( 19, 51, 83, 115, 147, 179, 211, 243, 275, 307, 339, 371, 403, 435, 467, 499); pin020 ( 20, 52, 84, 116, 148, 180, 212, 244, 276, 308, 340, 372, 404, 436, 468, 500); pin021 ( 21, 53, 85, 117, 149, 181, 213, 245, 277, 309, 341, 373, 405, 437, 469, 501); pin022 ( 22, 54, 86, 118, 150, 182, 214, 246, 278, 310, 342, 374, 406, 438, 470, 502); pin023 ( 23, 55, 87, 119, 151, 183, 215, 247, 279, 311, 343, 375, 407, 439, 471, 503); pin024 ( 24, 56, 88, 120, 152, 184, 216, 248, 280, 312, 344, 376, 408, 440, 472, 504); pin025 ( 25, 57, 89, 121, 153, 185, 217, 249, 281, 313, 345, 377, 409, 441, 473, 505); pin026 ( 26, 58, 90, 122, 154, 186, 218, 250, 282, 314, 346, 378, 410, 442, 474, 506); pin027 ( 27, 59, 91, 123, 155, 187, 219, 251, 283, 315, 347, 379, 411, 443, 475, 507); pin028 ( 28, 60, 92, 124, 156, 188, 220, 252, 284, 316, 348, 380, 412, 444, 476, 508); pin029 ( 29, 61, 93, 125, 157, 189, 221, 253, 285, 317, 349, 381, 413, 445, 477, 509); pin030 ( 30, 62, 94, 126, 158, 190, 222, 254, 286, 318, 350, 382, 414, 446, 478, 510); pin031 ( 31, 63, 95, 127, 159, 191, 223, 255, 287, 319, 351, 383, 415, 447, 479, 511); } SignalGroups { EVENPINS = 'pin000+pin002+pin004+pin006+pin008+pin010+pin012+pin014+pin016+pin018+pin020+pin022+pin024+pin026+pin028+pin030'; ODDPINS = 'pin001+pin003+pin005+pin007+pin009+pin011+pin013+pin015+pin017+pin019+pin021+pin023+pin025+pin027+pin029+pin031'; BANK0 = 'pin000+pin001+pin002+pin003+pin004+pin005+pin006+pin007+pin008+pin009+pin010+pin011+pin012+pin013+pin014+pin015'; BANK1 = 'pin016+pin017+pin018+pin019+pin020+pin021+pin022+pin023+pin024+pin025+pin026+pin027+pin028+pin029+pin030+pin031'; ALLPINS = 'BANK0+BANK1'; PATPINS = 'BANK0+BANK1'; } PatternExec "FuncMin"{ Timing Timing_NRZ; PatternBurst BurstOddEven; DCLevels dcSetupLevMin; } PatternExec "FuncNom"{ Timing Timing_NRZ; PatternBurst BurstOddEven; DCLevels dcSetupLevNom; } PatternExec "FuncMax"{ Timing Timing_NRZ; PatternBurst BurstOddEven; DCLevels dcSetupLevMax; } PatternExec "FuncNomClock"{ Timing Timing_RZ; PatternBurst BurstOddEven; DCLevels dcSetupLevNom; } PatternBurst BurstOddEven { PatList { OddEvenTogglePat; } } Timing "Timing_NRZ" { WaveformTable "Wft_NRZ" { Period '50nS'; Waveforms { ALLPINS { 01 { : '0S' D/U; }} ALLPINS { LH { : '0S' Z; : '30nS' L/H; }} ALLPINS { X { : '0S' Z; }} } } } Timing "Timing_RZ" { WaveformTable "Wft_RZ" { Period '50nS'; Waveforms { ALLPINS { 01 { : '0S' D/U; : '25nS' D; }} ALLPINS { LH { : '0S' Z; : '25nS' L/H; }} ALLPINS { X { : '0S' Z; }} } } } DCLevels "dcSetupLevMin"{ 'PATPINS'{ VIH 1.8; VOH 0.8; } } DCLevels "dcSetupLevNom"{ 'PATPINS'{ VIH 2.5; VOH 1.0; } } DCLevels "dcSetupLevMax"{ 'PATPINS'{ VIH 3; VOH 2.2; } } DCLevels "dcSetupPowerDown"{ 'ALLPINS'{ VIH 0V; VOH 0V; } } DCLevels "dcSetupPowerUp"{ 'PATPINS'{ VIH 1.8; VOH 0.8; } } TestOptions { , "MyTestOption"; } TestParams "ConnectUp"{ Method "Setup"{"DCLevels" "dcSetupPowerUp";} } TestParams "TestContinuity"{ Method "Contact"{"SignalRefExpr" 'PATPINS';"Current" -1mA;"Min V" -1.2V;"Max V" -600mV;"Delay" 500uS;} } TestParams "TestOddEvenFuncMin"{ Method "Pattern"{"SignalRefExpr" 'PATPINS';"PatternExec" "FuncMin";} } TestParams "TestOddEvenFuncMax"{ Method "Pattern"{"SignalRefExpr" 'PATPINS';"PatternExec" "FuncMax";} } TestParams "FuncMaxLog"{ Method "Log"{} } TestParams "TestOddEvenFuncNom"{ Method "Pattern"{"SignalRefExpr" 'PATPINS';"PatternExec" "FuncNom";} } TestParams "LeakLow"{ Method "SetPins"{"SignalRefExpr" 'BANK1';"State" "SetHi";} Method "SetPins"{"SignalRefExpr" 'BANK0';"State" "SetHi";} Method "Current"{"SignalRefExpr" 'BANK0';"Force Voltage" 0.8;"Max I" 10uA;"Delay" 5mS;} Method "Current"{"SignalRefExpr" 'BANK1';"Force Voltage" 0.8V;"Max I" 10uA;"Delay" 5mS;} } TestParams "LeakHigh"{ Method "SetPins"{"SignalRefExpr" 'BANK1';"State" "SetLo";} Method "SetPins"{"SignalRefExpr" 'BANK0';"State" "SetLo";} Method "Current"{"SignalRefExpr" 'BANK0';"Force Voltage" 1.8V;"Max I" 40uA;"Delay" 5mS;} Method "Current"{"SignalRefExpr" 'BANK1';"Force Voltage" 1.8V;"Max I" 40uA;"Delay" 5ms;} } TestParams "Disconnect"{ Method "Setup"{"DCLevels" "dcSetupPowerDown";} } ProgramObjects { ActivePinList "LoopBackBoard"; ActiveTestOption "MyTestOption"; }