//Info: Sample template for programming XILINX Spartan 6 FPGA
//Info: Created with output from Impact

--LITERAL START
TRST OFF;
ENDIR IDLE;
ENDDR IDLE;
STATE RESET;
STATE IDLE;
FREQUENCY 1E6 HZ;
//Operation: Program -p 0 
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
TIR 0 ;
HIR 0 ;
HDR 0 ;
TDR 0 ;
//Loading device with 'idcode' instruction.
SIR 6 TDI (09) SMASK (3f) ;
SDR 32 TDI (00000000) SMASK (ffffffff) TDO ($ID$) MASK ($IDMASK$) ;
//Boundary Scan Chain Contents
//Position 1: xc6slx16
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
TIR 0 ;
HIR 0 ;
HDR 0 ;
TDR 0 ;
//Loading device with 'idcode' instruction.
SIR 6 TDI (09) ;
SDR 32 TDI (00000000) TDO ($ID$) ;
//Loading device with 'bypass' instruction.
SIR 6 TDI (3f) ;
// Loading device with a `jprogram` instruction. 
SIR 6 TDI (0b) ;
// Loading device with a `cfg_in` instruction. 
SIR 6 TDI (05) ;
RUNTEST 10000 TCK;
STATE RESET;
// Loading device with a `cfg_in` instruction. 
SIR 6 TDI (05) ;
SDR 32 TDI (00000000) SMASK (ffffffff) ;
SIR 6 TDI (05) TDO (00) MASK (00) ;
SDR $SADDBITS(64)$ TDI ($DATA_INV(-1)$000000001000850c) SMASK ($FILL(0xFF,-1)$ffffffffffffffff) ;
// Loading device with a `jstart` instruction. 
SIR 6 TDI (0c) ;
RUNTEST 24 TCK;
//Loading device with 'bypass' instruction.
SIR 6 TDI (3f) ;
//Loading device with 'bypass' instruction.
SIR 6 TDI (3f) ;
TIR 0 ;
HIR 0 ;
HDR 0 ;
TDR 0 ;
TIR 0 ;
HIR 0 ;
HDR 0 ;
TDR 0 ;
// Loading device with a `jstart` instruction. 
SIR 6 TDI (0c) ;
RUNTEST 24 TCK;
//Checking done pin status.
//Loading device with 'Bypass' instruction.
SIR 6 TDI (3f) TDO (21) MASK (20) ;
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
SIR 6 TDI (3f) ;
SDR 1 TDI (00) SMASK (01) ;
--END
