BSDL Files Library for JTAG

The only free public library that contains thousands of BSDL (Boundary Scan Description Language) models to use with BScan/JTAG tools

BSDL model: M4A5_32_32_XXJC

-- ********************************************************************
-- * M4A5-32/32 44 Pin PLCC 5.0V BSDL Model                           *
-- *                                                                  *
-- * File Version:      V2.00                                         *
-- * File Date:         Dec. 4, 2001                                  *
-- *                                                                  *
-- * Standard Test Access Port and Boundary-Scan Architecture         *
-- * VHDL Description File                                            *
-- *                                                                  *
-- * This BSDL can be used for Boundary-Scan Test as well as          *
-- * ISC 1532 Programming support.                                    *
-- *                                                                  *
-- * This BSDL file is created according to:                          *
-- * - IEEE 1532 2001 spec.                                           *
-- * - IEEE 1149.1 1994 spec.                                         *
-- *                                                                  *
-- * This BSDL file has been syntax checked with:                     *
-- * - Lattice BSDL Syntax Checker                                    *
-- * - Agilent BSDL Syntax Checker                                    *
-- *                                                                  *
-- *  Copyright 2000, 2001 Lattice Semiconductor Corporation          *
-- *  5555 NE Moore Ct., Hillsboro, OR 97124                          *
-- *  All rights reserved.  No part of this program or publication    *
-- *  may be reproduced, transmitted, transcribed, stored in a        *
-- *  retrieval system, or translated into any language or            *
-- *  computer language, in any form or by any means without this     *
-- *  notice appearing within.                                        *
-- ********************************************************************
-- *                                                                  *
-- *                           IMPORTANT                              *
-- *                                                                  *
-- * The following is a BSDL file that tests all of the I/O pins      *
-- * as bidirectional pins.  The functionality of the BSCAN register  *
-- * for this device is independent of the pattern programmed         *
-- * into the device.  An additional programming step is not          *
-- * required to configure the I/O pins prior to BSCAN test.          *
-- *                                                                  *
-- * This file contains additional information that may cause a BSDL  *
-- * parser to reject or error if your parser does not contain the    *
-- * 1532 library. BSDL files without ISC extensions are available    *
-- * on the Lattice website at www.latticesemi.com.                   *
-- *                                                                  *
-- * For Further assistance, please contact Tech Support at           *
-- *       1-800-LATTICE or techsupport@latticesemi.com.              *
-- ********************************************************************
-- *                                                                  *
-- *                      Revision History                            *
-- *                                                                  *
-- * Rev 2.00: 12/04/2001                                             *
-- *  - Changed entity name from iMA5_32_32_XXJC to M4A5_32_32_XXJC.  *
-- *    Edit file column length to 72 characters max.                 *
-- *    Updtaed Header.                                               *
-- * Rev 1.12: 10/23/2001                                             *
-- *  - Changed ISC_READ in flow_verify and flow_read                 *
-- *    from WAIT TCK 1 to WAIT TCK 3, 2.0E-3.                        *
-- * Rev 1.11: 10/03/2001                                             *
-- *  - Changed USERCODE_TDO array to USERCODE.                       *
-- * Rev 1.10: 08/30/2001                                             *
-- *  - Updated entity name.                                          *
-- * Rev 1.9: 07/10/2001                                              *
-- *  - Added IEEE 1532 Extension                                     *
-- * Rev 1.8: 06/07/2001                                              *
-- *  - Add Lattice phone number and email address.                   *
-- * Rev 1.7: 04/21/2000                                              *
-- *  - Changed IDCODE bit 12 from 1 to X.                            *
-- * Rev 1.6: 03/31/2000                                              *
-- *  - Updated Copyright comments.                                   *
-- * Rev 1.5: 03/29/2000                                              *
-- *  - Changed port, PIN_MAP_STRING, and BSDL description statements *
-- *    from IO array to IO Segment arrays.                           *
-- * Rev 1.4: 01/19/2000                                              *
-- *  - Corrected boundary scan information for block B.              *
-- * Rev 1.3: 02/17/1999                                              *
-- *  - Converted from M4_032P5.BSM.                                  *
-- * Rev 1.2: 10/08/1998                                              *
-- *  - Moved some instructions from private to public.               *
-- * Rev 1.1: 09/04/1998                                              *
-- *  - Updated entity to descriptive, 14-char strings.               *
-- *                                                                  *
-- ********************************************************************
--
--  Entity format: iMabc_ddd_eee_XXff
--  a = family (1, 2, 4, 5)
--  b = A for "A" type parts
--  c = Vcc level: 5, 3, 2, or 1 for 5.0, 3.3, 2.5, or 1.8 VDC
--  ddd = number of macrocells, such as 064
--  eee = number of I/O pins, such as 032
--  ff = package: JC, YC, VC, or AC for PLCC, PQFP, TQFP, or BGA
--
entity M4A5_32_32_XXJC is

        generic(PHYSICAL_PIN_MAP : string := "PLCC_44pin");

    port    (
        DED_IN     : in    bit_vector(0 to  1); --  Clocks/Inputs

        IOA        : inout bit_vector(0 to 15); --  I/O Segment A pins
        IOB        : inout bit_vector(0 to 15); --  I/O Segment B pins

        TCK, TMS, TDI   : in  bit;                   --  JTAG inputs
        TDO             : out bit;                   --  JTAG outputs

        VCC             : linkage bit_vector(0 to 1);
        GND             : linkage bit_vector(0 to 3)
        );

    use STD_1149_1_1994.all;         -- Standard 'use' statement
    use STD_1532_2001.all;           -- BSDL Extension for ISC devices

    attribute COMPONENT_CONFORMANCE of M4A5_32_32_XXJC : entity is
       "STD_1149_1_1993";

    attribute PIN_MAP of M4A5_32_32_XXJC : entity is PHYSICAL_PIN_MAP;

    constant PLCC_44pin :  PIN_MAP_STRING :=
        "DED_IN:(11, 33),  "&           -- Dedicated Clock/Input Pins

            "IOA:(  9,  8,  7,  6,  5,  4,  3,  2,   "&   --  I/O A
            "      14, 15, 16, 17, 18, 19, 20, 21),  "&
            "IOB:( 36, 37, 38, 39, 40, 41, 42, 43,   "&   --  I/O B
            "      31, 30, 29, 28, 27, 26, 25, 24),  "&

            "TDI:10, TMS:32, TCK:13, TDO:35,         "&   --  JTAG

            "VCC:(22, 44),  "&                         --  POWER
            "GND:(1, 12, 23, 34)";                     --  GROUND PINS
                                            -- END OF PIN DEFINITION

    attribute TAP_SCAN_IN   of TDI : signal is true;
    attribute TAP_SCAN_MODE of TMS : signal is true;
    attribute TAP_SCAN_OUT  of TDO : signal is true;
    attribute TAP_SCAN_CLOCK of TCK: signal is (20.0e6, BOTH);

--  Instruction register definitions

    attribute INSTRUCTION_LENGTH of M4A5_32_32_XXJC : entity is 6;
    attribute INSTRUCTION_OPCODE of M4A5_32_32_XXJC : entity is
        "BYPASS    (111111), "&
        "EXTEST    (000000), "&
        "SAMPLE    (000010), "&
        "IDCODE    (000001), "&
        "USERCODE  (010000), "&
        "HIGHZ     (010001), "&
    -- ISC Instructions
        "ISC_ADDRESS_SHIFT    (000011), "&
        "ISC_DATA_SHIFT       (000100), "&
        "ISC_ERASE            (000101), "&
        "ISC_PROGRAM          (000110), "&
        "ISC_READ             (000111), "&
        "ISC_PROGRAM_SECURITY (001000), "&
        "ISC_ENABLE           (001111), "&
        "ISC_DISABLE          (111111), "&
        "ISC_NOOP             (111111), "&
       -- Private Instructions
        "PRIV009   (001001), "&
        "PRIVATE   (110011,110100,110000,110010,100101,101110, "&
                   "100111,101101,001100,001101,001110)";

    attribute INSTRUCTION_CAPTURE of M4A5_32_32_XXJC : 
    									entity is "000001";
    attribute INSTRUCTION_PRIVATE of M4A5_32_32_XXJC : 
    									entity is "PRIVATE";

    attribute IDCODE_REGISTER of M4A5_32_32_XXJC : entity is
            "0001"&                 -- version number (1)
            "011101000011001X"&     -- part identification (7432)
            "00010101011"&          -- company code (157)
            "1";                    -- mandatory 1

    attribute USERCODE_REGISTER of M4A5_32_32_XXJC : entity is
            "11111111111111111111111111111111";

    attribute REGISTER_ACCESS of M4A5_32_32_XXJC : entity is
      "BYPASS          (BYPASS, HIGHZ, PRIV009), "&
      "ISC_DEFAULT[1]  (ISC_PROGRAM, ISC_DISABLE, ISC_NOOP, "&
                       "ISC_ERASE, ISC_PROGRAM_SECURITY), "&
      "BOUNDARY        (EXTEST, SAMPLE), "&
      "ISC_ADDRESS[80] (ISC_ADDRESS_SHIFT), "&
      "ISC_DATA[202]   (ISC_DATA_SHIFT), "&
      "ISC_RDATA[202]  (ISC_READ), "&
      "DEVICE_ID       (USERCODE, IDCODE), "&
      "ISC_CONFIG[5]   (ISC_ENABLE)";

-- **************************************************************
-- *    BOUNDARY SCAN CELL REGISTER DESCRIPTION
-- *    THE FIRST CELL (0) IS THE CELL CLOSEST TO TDO
-- **************************************************************
    attribute BOUNDARY_LENGTH of M4A5_32_32_XXJC : entity is 98;
    attribute BOUNDARY_REGISTER of M4A5_32_32_XXJC : entity is

    --  1.  The order of the I/O cell is OE - OUTPUT - INPUT
    --  2.  The output is disabled when a 0 is shifted into the
    --        OE cell.
    --  3.  The pictoral representation of the Boundary scan 
    --      register is found in VANTIS document no. 93-009-6105-JT-01.
    -- Begin Block A
        " 97 (BC_1, IOA(0), INPUT  , X), "&
        " 96 (BC_1, IOA(0), OUTPUT3, X, 95, 0, Z), "&
        " 95 (BC_1,     *, CONTROL, 0), "& 

        " 94 (BC_1, IOA(1), INPUT  , X), "&
        " 93 (BC_1, IOA(1), OUTPUT3, X, 92, 0, Z), "&
        " 92 (BC_1,     *, CONTROL, 0), "& 

        " 91 (BC_1, IOA(2), INPUT  , X), "&
        " 90 (BC_1, IOA(2), OUTPUT3, X, 89, 0, Z), "&
        " 89 (BC_1,     *, CONTROL, 0), "& 

        " 88 (BC_1, IOA(3), INPUT  , X), "&
        " 87 (BC_1, IOA(3), OUTPUT3, X, 86, 0, Z), "&
        " 86 (BC_1,     *, CONTROL, 0), "& 

        " 85 (BC_1, IOA(4), INPUT  , X), "&
        " 84 (BC_1, IOA(4), OUTPUT3, X, 83, 0, Z), "&
        " 83 (BC_1,     *, CONTROL, 0), "& 

        " 82 (BC_1, IOA(5), INPUT  , X), "&
        " 81 (BC_1, IOA(5), OUTPUT3, X, 80, 0, Z), "&
        " 80 (BC_1,     *, CONTROL, 0), "& 

        " 79 (BC_1, IOA(6), INPUT  , X), "&
        " 78 (BC_1, IOA(6), OUTPUT3, X, 77, 0, Z), "&
        " 77 (BC_1,     *, CONTROL, 0), "& 

        " 76 (BC_1, IOA(7), INPUT  , X), "&
        " 75 (BC_1, IOA(7), OUTPUT3, X, 74, 0, Z), "&
        " 74 (BC_1,     *, CONTROL, 0), "& 

    -- Begin DED_IN0
        " 73 (BC_1, DED_IN(0), INPUT, X), "&   -- Input 0 / Clock 0

    -- Continue Block A
        " 72 (BC_1, IOA(8), INPUT  , X), "&
        " 71 (BC_1, IOA(8), OUTPUT3, X, 70, 0, Z), "&
        " 70 (BC_1,     *, CONTROL, 0), "& 
    
        " 69 (BC_1, IOA(9), INPUT  , X), "&
        " 68 (BC_1, IOA(9), OUTPUT3, X, 67, 0, Z), "&
        " 67 (BC_1,     *, CONTROL, 0), "& 

        " 66 (BC_1, IOA(10), INPUT  , X), "&
        " 65 (BC_1, IOA(10), OUTPUT3, X, 64, 0, Z), "&
        " 64 (BC_1,      *, CONTROL, 0), "&

         " 63 (BC_1, IOA(11), INPUT  , X), "&
        " 62 (BC_1, IOA(11), OUTPUT3, X, 61, 0, Z), "&
        " 61 (BC_1,     *, CONTROL , 0), "&

        " 60 (BC_1, IOA(12), INPUT  , X), "&
        " 59 (BC_1, IOA(12), OUTPUT3, X, 58, 0, Z), "&
        " 58 (BC_1,     *, CONTROL , 0), "&

         " 57 (BC_1, IOA(13), INPUT  , X), "&
        " 56 (BC_1, IOA(13), OUTPUT3, X, 55, 0, Z), "&
        " 55 (BC_1,     *, CONTROL , 0), "&

        " 54 (BC_1, IOA(14), INPUT  , X),"  &
        " 53 (BC_1, IOA(14), OUTPUT3, X,  52, 0, Z), "&
        " 52 (BC_1,     *, CONTROL , 0), "&

        " 51 (BC_1, IOA(15), INPUT  , X),"  &
        " 50 (BC_1, IOA(15), OUTPUT3, X,  49, 0, Z), "&
                " 49 (BC_1,     *, CONTROL , 0), "&
    -- End Block A

    -- Begin Block B
        " 48 (BC_1, IOB(8), INPUT  , X), "&
        " 47 (BC_1, IOB(8), OUTPUT3, X, 46, 0, Z), "&
        " 46 (BC_1,     *, CONTROL , 0), "&

        " 45 (BC_1, IOB(9), INPUT  , X), "&
        " 44 (BC_1, IOB(9), OUTPUT3, X, 43, 0, Z), "&
        " 43 (BC_1,     *, CONTROL , 0), "&

        " 42 (BC_1, IOB(10), INPUT  , X), "&
        " 41 (BC_1, IOB(10), OUTPUT3, X, 40, 0, Z), "&
        " 40 (BC_1,     *, CONTROL , 0), "&

        " 39 (BC_1, IOB(11), INPUT  , X), "&
        " 38 (BC_1, IOB(11), OUTPUT3, X, 37, 0, Z), "&
        " 37 (BC_1,     *, CONTROL , 0), "&

        " 36 (BC_1, IOB(12), INPUT  , X), "&
        " 35 (BC_1, IOB(12), OUTPUT3, X, 34, 0, Z), "&
        " 34 (BC_1,     *, CONTROL , 0), "&

        " 33 (BC_1, IOB(13), INPUT  , X), "&
        " 32 (BC_1, IOB(13), OUTPUT3, X, 31, 0, Z), "&
        " 31 (BC_1,     *, CONTROL , 0), "&

        " 30 (BC_1, IOB(14), INPUT  , X), "&
        " 29 (BC_1, IOB(14), OUTPUT3, X, 28, 0, Z), "&
        " 28 (BC_1,     *, CONTROL , 0), "&

        " 27 (BC_1, IOB(15), INPUT  , X), "&
        " 26 (BC_1, IOB(15), OUTPUT3, X, 25, 0, Z), "&
        " 25 (BC_1,     *, CONTROL , 0), "&

    -- Begin DED_IN1
        " 24 (BC_1, DED_IN(1), INPUT, X), "&   -- Input 1 / Clock 1

    -- Continue Block B
        " 23 (BC_1, IOB(0), INPUT  , X), "&
        " 22 (BC_1, IOB(0), OUTPUT3, X, 21, 0, Z), "& 
        " 21 (BC_1,     *, CONTROL , 0), "&

        " 20 (BC_1, IOB(1), INPUT  , X), "&
        " 19 (BC_1, IOB(1), OUTPUT3, X, 18, 0, Z), "& 
        " 18 (BC_1,     *, CONTROL , 0), "&

        " 17 (BC_1, IOB(2), INPUT  , X), "&
        " 16 (BC_1, IOB(2), OUTPUT3, X, 15, 0, Z), "& 
        " 15 (BC_1,     *, CONTROL , 0), "&

        " 14 (BC_1, IOB(3), INPUT  , X), "&
        " 13 (BC_1, IOB(3), OUTPUT3, X, 12, 0, Z), "& 
        " 12 (BC_1,     *, CONTROL , 0), "&

        " 11 (BC_1, IOB(4), INPUT  , X), "&
        " 10 (BC_1, IOB(4), OUTPUT3, X, 9, 0, Z), "& 
        "  9 (BC_1,     *, CONTROL , 0), "&

        "  8 (BC_1, IOB(5), INPUT  , X), "&
        "  7 (BC_1, IOB(5), OUTPUT3, X, 6, 0, Z), "&
        "  6 (BC_1,     *, CONTROL , 0), "&

        "  5 (BC_1, IOB(6), INPUT  , X), "&
        "  4 (BC_1, IOB(6), OUTPUT3, X, 3, 0, Z), "&
        "  3 (BC_1,     *, CONTROL , 0), "&

        "  2 (BC_1, IOB(7), INPUT  , X), "&
        "  1 (BC_1, IOB(7), OUTPUT3, X, 0, 0, Z), "&
        "  0 (BC_1,     *, CONTROL , 0)";
    -- End Block B

-- ********************************************************************
-- *                    IEEE 1532 EXTENSION INFORMATION               *
-- ********************************************************************

attribute ISC_PIN_BEHAVIOR of M4A5_32_32_XXJC : entity is
    "CLAMP"; -- clamp behavior

attribute ISC_STATUS of M4A5_32_32_XXJC : entity is
    "NOT IMPLEMENTED";

attribute ISC_BLANK_USERCODE of M4A5_32_32_XXJC : entity is
    "11111111111111111111111111111111";

attribute ISC_FLOW of M4A5_32_32_XXJC : entity is
  "flow_verify(idcode) "&
    "initialize "&
      "(IDCODE          WAIT TCK 3, 2.0E-3 32:17433157*0FFFEFFF), "&

  "flow_enable "&
    "initialize "&
      "(ISC_ENABLE 5:8  WAIT TCK 3), "&

  "flow_bypass "&
    "initialize "&
      "(BYPASS          WAIT TCK 1), "&

  "flow_erase "&
    "initialize "&
      "(ISC_ERASE       WAIT TCK 3, 100.0e-3), "&

  "flow_erase_program "&
    "initialize "&
      "(ISC_ADDRESS_SHIFT 80:0        WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:0        WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 100.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr=80000000000000000000 WAIT TCK 1)"&
    "repeat 66 "&
      "(ISC_DATA_SHIFT 202:3FBEFBEFBEFBEFBEFBEFBEFBEFEFBEFBEFBEFBEFBE"&
      "FBEFBEFBF  WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
    "terminate "&
      "(ISC_DATA_SHIFT 202:$epgm1=3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"&
      "FFFFFFFFFFFFFFE1  WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT 202:$epgm1     WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT 202:$epgm1     WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT 202:$epgm1     WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT 202:$epgm1     WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT 202:$epgm1     WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT 202:$epgm1     WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT 202:$epgm1     WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT 202:$epgm2=3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"&
      "FFFFFFFFFFFFFFFF  WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT 202:$epgm2     WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT 202:$epgm2     WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT 202:$epgm2     WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT 202:$epgm2     WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT 202:$epgm2     WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:0        WAIT TCK 1) "&
      "(ISC_ENABLE         5:9        WAIT TCK 3) "&
      "(ISC_DATA_SHIFT 202:20410410410410410410410418104104104104104"&
      "1041041060  WAIT TCK 1) "&
      "(ISC_PROGRAM                   WAIT TCK 3, 50.0e-3) "&
      "(ISC_ENABLE         5:8        WAIT TCK 3), "&

  "flow_preload "&
    "initialize "&
      "(SAMPLE            98:0  WAIT TCK 1), "&

  "flow_program_init "&
    "initialize "&
      "(ISC_ADDRESS_SHIFT 80:0  WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:0  WAIT TCK 1) "&
      "(ISC_PROGRAM             WAIT TCK 3, 100.0e-3), "&

  "flow_program(array) "&
    "initialize "&
      "(ISC_ADDRESS_SHIFT 80:$addr=80000000000000000000 WAIT TCK 1)"&
    "repeat 80 "&
      "(ISC_DATA_SHIFT   202:?  WAIT TCK 1) "&
      "(ISC_PROGRAM             WAIT TCK 3, 50.0e-3) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
    "terminate "&
      "(ISC_ADDRESS_SHIFT 80:0  WAIT TCK 1) "&
      "(ISC_ENABLE         5:9  WAIT TCK 3) "&
      "(ISC_DATA_SHIFT   202:?  WAIT TCK 1) "&
      "(ISC_PROGRAM             WAIT TCK 3, 50.0e-3) "&
      "(ISC_ENABLE         5:8  WAIT TCK 3), "&

  "flow_read_init "&
    "initialize "&
      "(ISC_ADDRESS_SHIFT 80:0  WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:0  WAIT TCK 1), "&

  "flow_verify(array_tdo) "&
    "initialize "&
      "(ISC_ADDRESS_SHIFT 80:$addr=80000000000000000000 WAIT TCK 1)"&
    "repeat 1 "&
      "(ISC_DATA_SHIFT   202:$adsel=200000000000000000000000000000000"&
      "000000000000000000  WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ WAIT TCK 3, 2.0E-3 202:?*$em1=0004104104104104104104"&
      "10410104104104104104104104104:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:?*$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:?*$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ WAIT TCK 3, 2.0E-3 202:?*$em2=2104104104104104104104"&
      "10410104104104104104104104104:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:?*$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:?*$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:?*$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:?*$em2:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:?*$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:?*$em2:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:?*$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:?*$em2:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:?*$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:?*$em1:CRC) "&
    "terminate "&
      "(ISC_ADDRESS_SHIFT 80:0        WAIT TCK 1) "&
      "(ISC_ENABLE         5:9        WAIT TCK 3) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ WAIT TCK 3, 2.0E-3 202:?*018208208208208208208208206"&
      "082082082082082082082081:CRC) "&
      "(ISC_ENABLE         5:8        WAIT TCK 3), "&

  "flow_verify(usercode) "&
    "initialize "&
      "(USERCODE  WAIT TCK 3, 2.0E-3  32:?), "&

  "flow_read(array_tdo) Unprocessed "&
    "initialize "&
      "(ISC_ADDRESS_SHIFT 80:$addr=80000000000000000000 WAIT TCK 1)"&
    "repeat 1 "&
      "(ISC_DATA_SHIFT   202:$adsel=200000000000000000000000000000000"&
      "000000000000000000  WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, 2.0E-3 202:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ  WAIT TCK 3, 2.0E-3 202:*!$em1=0004104104104104104"&
      "10410410104104104104104104104104:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:*!$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:*!$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ  WAIT TCK 3, 2.0E-3 202:*!$em2=2104104104104104104"&
      "10410410104104104104104104104104:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:*!$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:*!$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:*!$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:*!$em2:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:*!$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:*!$em2:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:*!$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:*!$em2:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:*!$em1:CRC) "&
      "(ISC_ADDRESS_SHIFT 80:$addr>>1 WAIT TCK 1) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ                      WAIT TCK 3, "&
      " 2.0E-3 202:*!$em1:CRC) "&
      "terminate "&
      "(ISC_ADDRESS_SHIFT 80:0        WAIT TCK 1) "&
      "(ISC_ENABLE         5:9        WAIT TCK 3) "&
      "(ISC_DATA_SHIFT   202:$adsel   WAIT TCK 1) "&
      "(ISC_READ  WAIT TCK 3, 2.0E-3 202:*!018208208208208208208208"&
      "208082082082082082082082081:CRC) "&
      "(ISC_ENABLE         5:8        WAIT TCK 3), "&

  "flow_read(usercode) Unprocessed "&
    "initialize "&
      "(USERCODE   WAIT TCK 3, 2.0E-3  32:!), "&

  "flow_program_done "&
    "initialize "&
      "(ISC_NOOP  WAIT TCK 1), "&

  "flow_program_security "&
    "initialize "&
      "(ISC_PROGRAM_SECURITY  WAIT TCK 3, 50.0e-3), "&

  "flow_disable "&
    "initialize "&
      "(ISC_ENABLE       5:C  WAIT TCK 3) "&
      "(ISC_DISABLE           WAIT TCK 3)";

attribute ISC_PROCEDURE of M4A5_32_32_XXJC : entity is
  "proc_verify(idcode)     = (flow_verify(idcode)), "&
  "proc_enable             = (flow_enable), "& 
  "proc_disable            = (flow_disable), "&
  "proc_program_init       = (flow_program_init), "&
  "proc_program(array)     = (flow_program(array)), "&
  "proc_read_init          = (flow_read_init), "&
  "proc_verify(array)      = (flow_verify(array_tdo)), "&
  "proc_verify(usercode)   = (flow_verify(usercode)), "&
  "proc_erase              = (flow_erase), "&
  "proc_erase_program      = (flow_erase_program), "&
  "proc_read(array)        = (flow_read(array_tdo)), "&
  "proc_read(usercode)     = (flow_read(usercode)), "&
  "proc_error_exit         = (flow_disable), "&
  "proc_preload            = (flow_preload), "&
  "proc_program_done       = (flow_program_done), "&
  "proc_program_security   = (flow_program_security)";

attribute ISC_ACTION of M4A5_32_32_XXJC : entity is
  "erase         = ( proc_verify(idcode) recommended, "&
                    "proc_preload recommended, "&
                    "proc_enable, "&
                    "proc_erase, "&
                    "proc_erase_program, "&
                    "proc_disable), "&
  "program       = ( proc_verify(idcode) recommended, "&
                    "proc_preload recommended, "&
                    "proc_enable, "&
                    "proc_erase, "&
                    "proc_program_init, "&
                    "proc_program(array), "&
                    "proc_read_init, "&
                    "proc_verify(array) proprietary, "&
                    "proc_program_security optional, "&
                    "proc_program_done, "&
                    "proc_disable, "&
                    "proc_verify(usercode)), "&
  "verify        = ( proc_verify(idcode) recommended, "&
                    "proc_preload recommended, "&
                    "proc_enable, "&
                    "proc_read_init, "&
                    "proc_verify(array) proprietary, "&
                    "proc_disable, "&
                    "proc_verify(usercode)), "&
  "read          = ( proc_verify(idcode) recommended, "&
                    "proc_preload recommended, "&
                    "proc_enable, "&
                    "proc_read_init, "&
                    "proc_read(array) proprietary, "&
                    "proc_read(usercode), "&
                    "proc_disable), "&
  "verify_idcode = ( proc_verify(idcode)), "&
  "secure        = ( proc_verify(idcode) recommended, "&
                    "proc_preload recommended, "&
                    "proc_enable, "&
                    "proc_program_security, "&
                    "proc_disable)";

end M4A5_32_32_XXJC;