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: LC4064B_XXT100

-- ********************************************************************
-- * LC4064B BSDL Model                                               *
-- * File Version:      1.05                                          *
-- * File Date:         10/05/06                                      *
-- *                                                                  *
-- * Standard Test Access Port and Boundary-Scan Architecture         *
-- * VHDL Description File                                            *
-- *                                                                  *
-- * This BSDL file is created by ispBDF v3.1 according to:           *
-- * - IEEE 1532 2001 spec.                                           *
-- * - IEEE 1149.1 2001 spec.                                         *
-- *                                                                  *
-- * This BSDL has been validated for syntax and semantics            *
-- * compliance to IEEE 1149.1 using:                                 *
-- * - Lattice BSDL Syntax Checker                                    *
-- * - Goepel BSDL Syntax Checker V3.0.1                              *
-- * - ASSET/Agilent BSDL Validation Service                          *
-- * - JTAG Technologies BSDL Syntax Checker                          *
-- *                                                                  *
-- * Copyright 2000 - 2006                                            *
-- *  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 1.05: 10/05/06                                               *
-- *  - rcs: Updated Version Control to STD_1149_1_2001.all.          *
-- *  - rcs: Updated COMPONENT_CONFORMANCE to STD_1149_1_2001.        *
-- *  - rcs: Added INSTRUCTION_OPCODE PRELOAD.                        *
-- *  - rcs: Changed ISC_PROGRAM_INC to ISC_PROGRAM, and it's         *
-- *         REGISTER_ACCESS to ISC_PDATA.                            *
-- *  - rcs: Changed ISC_READ_INC to ISC_READ, and it's               *
-- *         REGISTER_ACCESS to ISC_PDATA.                            *
-- *  - rcs: Changed LSC_ADDRESS_INIT to ISC_ADDRESS_INIT.            *
-- *  - rcs: Added PRIVATE instruction.                               *
-- *  - rcs: Updated delay times in the ISC_FLOW.                     *
-- *  - rcs: Changed proc_program_security to proc_program(security). *
-- * Rev 1.04: 06/19/03                                               *
-- *  - rcs: Removed INTEST instruction.                              *
-- * Rev 1.03: 02/12/03                                               *
-- *  - rcs: Changed CLK's and Inputs to BC_2.                        *
-- * Rev 1.02: 08/08/02                                               *
-- *  - rcs: Generated with ispBDF V2.1.                              *
-- * Rev 1.01: 07/09/02                                               *
-- *  - jao: Changed pin names to match data sheet.                   *
-- *  - jao: Mask out verison bits(31-28) from Device IDCODE.         *
-- * Rev 1.00: 02/06/02                                               *
-- *  - Initial version                                               *
-- *                                                                  *
-- ********************************************************************

-- The Overall Structure of the Entity Description
entity LC4064B_XXT100 is

-- Generic Parameter Statement
generic (PHYSICAL_PIN_MAP : string := "TQFP_100");
-- Logical Port Description Statement
port (
      GND: linkage bit_vector(0 to 3);
      TDI: in bit;
      IOA8: inout bit;
      IOA9: inout bit;
      IOA10: inout bit;
      IOA11: inout bit;
      GNDO0: linkage bit_vector(0 to 3);
      IOA12: inout bit;
      IOA13: inout bit;
      IOA14: inout bit;
      IOA15: inout bit;
      I: in bit_vector(0 to 5);
      VCCO0: linkage bit_vector(0 to 2);
      IOB15: inout bit;
      IOB14: inout bit;
      IOB13: inout bit;
      IOB12: inout bit;
      IOB11: inout bit;
      IOB10: inout bit;
      IOB9: inout bit;
      IOB8: inout bit;
      TCK: in bit;
      VCC: linkage bit_vector(0 to 3);
      IOB7: inout bit;
      IOB6: inout bit;
      IOB5: inout bit;
      IOB4: inout bit;
      IOB3: inout bit;
      IOB2: inout bit;
      IOB1: inout bit;
      IOB0: inout bit;
      CLK1: in bit;
      CLK2: in bit;
      IOC0: inout bit;
      IOC1: inout bit;
      IOC2: inout bit;
      IOC3: inout bit;
      VCCO1: linkage bit_vector(0 to 2);
      GNDO1: linkage bit_vector(0 to 3);
      IOC4: inout bit;
      IOC5: inout bit;
      IOC6: inout bit;
      IOC7: inout bit;
      TMS: in bit;
      IOC8: inout bit;
      IOC9: inout bit;
      IOC10: inout bit;
      IOC11: inout bit;
      IOC12: inout bit;
      IOC13: inout bit;
      IOC14: inout bit;
      IOC15: inout bit;
      IOD15: inout bit;
      IOD14: inout bit;
      IOD13: inout bit;
      IOD12: inout bit;
      IOD11: inout bit;
      IOD10: inout bit;
      IOD9: inout bit;
      IOD8: inout bit;
      TDO: out bit;
      IOD7: inout bit;
      IOD6: inout bit;
      IOD5: inout bit;
      IOD4: inout bit;
      IOD3: inout bit;
      IOD2: inout bit;
      IOD1: inout bit;
      IOD0: inout bit;
      CLK3: in bit;
      CLK0: in bit;
      IOA0: inout bit;
      IOA1: inout bit;
      IOA2: inout bit;
      IOA3: inout bit;
      IOA4: inout bit;
      IOA5: inout bit;
      IOA6: inout bit;
      IOA7: inout bit
);

-- Version Control
use STD_1149_1_2001.all;              -- 1149.1-2001 attributes
use STD_1532_2001.all;                -- 1532-2001 attributes

-- Component Conformance Statement
attribute COMPONENT_CONFORMANCE of LC4064B_XXT100 : entity is
"STD_1149_1_2001";

-- Device Package Pin Mapping
attribute PIN_MAP of LC4064B_XXT100 : entity is PHYSICAL_PIN_MAP;

constant TQFP_100 : PIN_MAP_STRING :=

      "GND: (1, 26, 51, 76), "&          
      "TDI: 2,"&                      
      "IOA8: 3,"&                      
      "IOA9: 4,"&                      
      "IOA10: 5,"&                      
      "IOA11: 6,"&                      
      "GNDO0: (7, 18, 32, 96), "&          
      "IOA12: 8,"&                      
      "IOA13: 9,"&                      
      "IOA14: 10,"&                      
      "IOA15: 11,"&                      
      "I: (12, 23, 27, 62, 73, 77), "&          
      "VCCO0: (13, 33, 95), "&          
      "IOB15: 14,"&                      
      "IOB14: 15,"&                      
      "IOB13: 16,"&                      
      "IOB12: 17,"&                      
      "IOB11: 19,"&                      
      "IOB10: 20,"&                      
      "IOB9: 21,"&                      
      "IOB8: 22,"&                      
      "TCK: 24,"&                      
      "VCC: (25, 40, 75, 90), "&          
      "IOB7: 28,"&                      
      "IOB6: 29,"&                      
      "IOB5: 30,"&                      
      "IOB4: 31,"&                      
      "IOB3: 34,"&                      
      "IOB2: 35,"&                      
      "IOB1: 36,"&                      
      "IOB0: 37,"&                      
      "CLK1: 38,"&                      
      "CLK2: 39,"&                      
      "IOC0: 41,"&                      
      "IOC1: 42,"&                      
      "IOC2: 43,"&                      
      "IOC3: 44,"&                      
      "VCCO1: (45, 63, 83), "&          
      "GNDO1: (46, 57, 68, 82), "&          
      "IOC4: 47,"&                      
      "IOC5: 48,"&                      
      "IOC6: 49,"&                      
      "IOC7: 50,"&                      
      "TMS: 52,"&                      
      "IOC8: 53,"&                      
      "IOC9: 54,"&                      
      "IOC10: 55,"&                      
      "IOC11: 56,"&                      
      "IOC12: 58,"&                      
      "IOC13: 59,"&                      
      "IOC14: 60,"&                      
      "IOC15: 61,"&                      
      "IOD15: 64,"&                      
      "IOD14: 65,"&                      
      "IOD13: 66,"&                      
      "IOD12: 67,"&                      
      "IOD11: 69,"&                      
      "IOD10: 70,"&                      
      "IOD9: 71,"&                      
      "IOD8: 72,"&                      
      "TDO: 74,"&                      
      "IOD7: 78,"&                      
      "IOD6: 79,"&                      
      "IOD5: 80,"&                      
      "IOD4: 81,"&                      
      "IOD3: 84,"&                      
      "IOD2: 85,"&                      
      "IOD1: 86,"&                      
      "IOD0: 87,"&                      
      "CLK3: 88,"&                      
      "CLK0: 89,"&                      
      "IOA0: 91,"&                      
      "IOA1: 92,"&                      
      "IOA2: 93,"&                      
      "IOA3: 94,"&                      
      "IOA4: 97,"&                      
      "IOA5: 98,"&                      
      "IOA6: 99,"&                      
      "IOA7: 100";                       

-- Scan Port Identification

      attribute TAP_SCAN_CLOCK of TCK : Signal is (25.0e6, BOTH);
      attribute TAP_SCAN_IN of TDI : Signal is True;
      attribute TAP_SCAN_OUT of TDO : Signal is True;
      attribute TAP_SCAN_MODE of TMS : Signal is True;

-- Instruction Register Description

      attribute INSTRUCTION_LENGTH of LC4064B_XXT100 : entity is 8;
      attribute INSTRUCTION_OPCODE of LC4064B_XXT100 : entity is

-- 1149.1 instructions
      "BYPASS                 (11111111),"&
      "SAMPLE                 (00011100),"&
      "PRELOAD                (00011100),"&
      "EXTEST                 (00000000),"&
      "IDCODE                 (00010110),"&
      "USERCODE               (00010111),"&
      "HIGHZ                  (00011000),"&
      "CLAMP                  (00100000),"&
-- ISC instructions
      "ISC_ENABLE             (00010101),"&
      "ISC_DISABLE            (00011110),"&
      "ISC_NOOP               (00110000),"&
      "ISC_ADDRESS_SHIFT      (00000001),"&
      "ISC_DATA_SHIFT         (00000010),"&
      "ISC_ERASE              (00000011),"&
      "ISC_DISCHARGE          (00010100),"&
      "ISC_PROGRAM            (00100111),"&
      "ISC_READ               (00101010),"&
      "ISC_PROGRAM_SECURITY   (00001001),"&
      "ISC_PROGRAM_DONE       (00101111),"&
      "ISC_ERASE_DONE         (00100100),"&
      "ISC_PROGRAM_USERCODE   (00011010),"&
      "ISC_ADDRESS_INIT       (00100001),"&
-- PRIVATE instructions
      "PRIVATE                (00101100)";

      attribute INSTRUCTION_CAPTURE of LC4064B_XXT100 : entity is
      "00011X01";
      attribute INSTRUCTION_PRIVATE of LC4064B_XXT100 : entity is 
      "PRIVATE";

-- IDCODE Definition
      attribute IDCODE_REGISTER of LC4064B_XXT100 : entity is
      "XXXX"&          -- version number
      "0001100000001101"&          -- part identification
      "00000100001"&          -- company code
      "1";          -- mandatory

-- USERCODE Definition
      attribute USERCODE_REGISTER of LC4064B_XXT100 : entity is
      "11111111111111111111111111111111";

-- Register Access Description
      attribute REGISTER_ACCESS of LC4064B_XXT100 : entity is
      "BYPASS                  (BYPASS, "&
      "                        HIGHZ, "&
      "                        CLAMP),"&
      "BOUNDARY                (SAMPLE, "&
      "                        EXTEST),"&
      "DEVICE_ID               (IDCODE, "&
      "                        USERCODE, "&
      "                        ISC_PROGRAM_USERCODE),"&
      "ISC_DEFAULT[1]          (ISC_ENABLE, "&
      "                        ISC_DISABLE, "&
      "                        ISC_NOOP, "&
      "                        ISC_ERASE, "&
      "                        ISC_DISCHARGE, "&
      "                        ISC_PROGRAM_SECURITY, "&
      "                        ISC_PROGRAM_DONE, "&
      "                        ISC_ERASE_DONE, "&
      "                        ISC_ADDRESS_INIT),"&
      "ISC_ADDRESS[100]        (ISC_ADDRESS_SHIFT),"&
      "ISC_DATA[356]          (ISC_DATA_SHIFT),"&
      "ISC_PDATA[356]         (ISC_PROGRAM, "&
      "                       ISC_READ)";

-- *****************************************************************
-- Boundary Scan Register Description, Cell 0 is the closest to TDO
-- *****************************************************************
      attribute BOUNDARY_LENGTH of LC4064B_XXT100 : entity is 138;
      attribute BOUNDARY_REGISTER of LC4064B_XXT100 : entity is

      --num cell  port  function  safe  [ccell  disval  rslt]
      "137 (BC_2, CLK0, INPUT, X           ),"&
      "136 (BC_7, IOA0, BIDIR, X, 135, 0, Z),"&
      "135 (BC_2,    *, CONTROL, 0           ),"&
      "134 (BC_7, IOA1, BIDIR, X, 133, 0, Z),"&
      "133 (BC_2,    *, CONTROL, 0           ),"&
      "132 (BC_7, IOA2, BIDIR, X, 131, 0, Z),"&
      "131 (BC_2,    *, CONTROL, 0           ),"&
      "130 (BC_7, IOA3, BIDIR, X, 129, 0, Z),"&
      "129 (BC_2,    *, CONTROL, 0           ),"&
      "128 (BC_7, IOA4, BIDIR, X, 127, 0, Z),"&
      "127 (BC_2,    *, CONTROL, 0           ),"&
      "126 (BC_7, IOA5, BIDIR, X, 125, 0, Z),"&
      "125 (BC_2,    *, CONTROL, 0           ),"&
      "124 (BC_7, IOA6, BIDIR, X, 123, 0, Z),"&
      "123 (BC_2,    *, CONTROL, 0           ),"&
      "122 (BC_7, IOA7, BIDIR, X, 121, 0, Z),"&
      "121 (BC_2,    *, CONTROL, 0           ),"&
      "120 (BC_7, IOA8, BIDIR, X, 119, 0, Z),"&
      "119 (BC_2,    *, CONTROL, 0           ),"&
      "118 (BC_7, IOA9, BIDIR, X, 117, 0, Z),"&
      "117 (BC_2,    *, CONTROL, 0           ),"&
      "116 (BC_7, IOA10, BIDIR, X, 115, 0, Z),"&
      "115 (BC_2,    *, CONTROL, 0           ),"&
      "114 (BC_7, IOA11, BIDIR, X, 113, 0, Z),"&
      "113 (BC_2,    *, CONTROL, 0           ),"&
      "112 (BC_7, IOA12, BIDIR, X, 111, 0, Z),"&
      "111 (BC_2,    *, CONTROL, 0           ),"&
      "110 (BC_7, IOA13, BIDIR, X, 109, 0, Z),"&
      "109 (BC_2,    *, CONTROL, 0           ),"&
      "108 (BC_7, IOA14, BIDIR, X, 107, 0, Z),"&
      "107 (BC_2,    *, CONTROL, 0           ),"&
      "106 (BC_7, IOA15, BIDIR, X, 105, 0, Z),"&
      "105 (BC_2,    *, CONTROL, 0           ),"&
      "104 (BC_2, I(0), INPUT, X           ),"&
      "103 (BC_2, I(1), INPUT, X           ),"&
      "102 (BC_2, I(2), INPUT, X           ),"&
      "101 (BC_7, IOB0, BIDIR, X, 100, 0, Z),"&
      "100 (BC_2,    *, CONTROL, 0           ),"&
      "99 (BC_7, IOB1, BIDIR, X, 98, 0, Z),"&
      "98 (BC_2,    *, CONTROL, 0           ),"&
      "97 (BC_7, IOB2, BIDIR, X, 96, 0, Z),"&
      "96 (BC_2,    *, CONTROL, 0           ),"&
      "95 (BC_7, IOB3, BIDIR, X, 94, 0, Z),"&
      "94 (BC_2,    *, CONTROL, 0           ),"&
      "93 (BC_7, IOB4, BIDIR, X, 92, 0, Z),"&
      "92 (BC_2,    *, CONTROL, 0           ),"&
      "91 (BC_7, IOB5, BIDIR, X, 90, 0, Z),"&
      "90 (BC_2,    *, CONTROL, 0           ),"&
      "89 (BC_7, IOB6, BIDIR, X, 88, 0, Z),"&
      "88 (BC_2,    *, CONTROL, 0           ),"&
      "87 (BC_7, IOB7, BIDIR, X, 86, 0, Z),"&
      "86 (BC_2,    *, CONTROL, 0           ),"&
      "85 (BC_7, IOB8, BIDIR, X, 84, 0, Z),"&
      "84 (BC_2,    *, CONTROL, 0           ),"&
      "83 (BC_7, IOB9, BIDIR, X, 82, 0, Z),"&
      "82 (BC_2,    *, CONTROL, 0           ),"&
      "81 (BC_7, IOB10, BIDIR, X, 80, 0, Z),"&
      "80 (BC_2,    *, CONTROL, 0           ),"&
      "79 (BC_7, IOB11, BIDIR, X, 78, 0, Z),"&
      "78 (BC_2,    *, CONTROL, 0           ),"&
      "77 (BC_7, IOB12, BIDIR, X, 76, 0, Z),"&
      "76 (BC_2,    *, CONTROL, 0           ),"&
      "75 (BC_7, IOB13, BIDIR, X, 74, 0, Z),"&
      "74 (BC_2,    *, CONTROL, 0           ),"&
      "73 (BC_7, IOB14, BIDIR, X, 72, 0, Z),"&
      "72 (BC_2,    *, CONTROL, 0           ),"&
      "71 (BC_7, IOB15, BIDIR, X, 70, 0, Z),"&
      "70 (BC_2,    *, CONTROL, 0           ),"&
      "69 (BC_2, CLK1, INPUT, X           ),"&
      "68 (BC_2, CLK2, INPUT, X           ),"&
      "67 (BC_7, IOC0, BIDIR, X, 66, 0, Z),"&
      "66 (BC_2,    *, CONTROL, 0           ),"&
      "65 (BC_7, IOC1, BIDIR, X, 64, 0, Z),"&
      "64 (BC_2,    *, CONTROL, 0           ),"&
      "63 (BC_7, IOC2, BIDIR, X, 62, 0, Z),"&
      "62 (BC_2,    *, CONTROL, 0           ),"&
      "61 (BC_7, IOC3, BIDIR, X, 60, 0, Z),"&
      "60 (BC_2,    *, CONTROL, 0           ),"&
      "59 (BC_7, IOC4, BIDIR, X, 58, 0, Z),"&
      "58 (BC_2,    *, CONTROL, 0           ),"&
      "57 (BC_7, IOC5, BIDIR, X, 56, 0, Z),"&
      "56 (BC_2,    *, CONTROL, 0           ),"&
      "55 (BC_7, IOC6, BIDIR, X, 54, 0, Z),"&
      "54 (BC_2,    *, CONTROL, 0           ),"&
      "53 (BC_7, IOC7, BIDIR, X, 52, 0, Z),"&
      "52 (BC_2,    *, CONTROL, 0           ),"&
      "51 (BC_7, IOC8, BIDIR, X, 50, 0, Z),"&
      "50 (BC_2,    *, CONTROL, 0           ),"&
      "49 (BC_7, IOC9, BIDIR, X, 48, 0, Z),"&
      "48 (BC_2,    *, CONTROL, 0           ),"&
      "47 (BC_7, IOC10, BIDIR, X, 46, 0, Z),"&
      "46 (BC_2,    *, CONTROL, 0           ),"&
      "45 (BC_7, IOC11, BIDIR, X, 44, 0, Z),"&
      "44 (BC_2,    *, CONTROL, 0           ),"&
      "43 (BC_7, IOC12, BIDIR, X, 42, 0, Z),"&
      "42 (BC_2,    *, CONTROL, 0           ),"&
      "41 (BC_7, IOC13, BIDIR, X, 40, 0, Z),"&
      "40 (BC_2,    *, CONTROL, 0           ),"&
      "39 (BC_7, IOC14, BIDIR, X, 38, 0, Z),"&
      "38 (BC_2,    *, CONTROL, 0           ),"&
      "37 (BC_7, IOC15, BIDIR, X, 36, 0, Z),"&
      "36 (BC_2,    *, CONTROL, 0           ),"&
      "35 (BC_2, I(3), INPUT, X           ),"&
      "34 (BC_2, I(4), INPUT, X           ),"&
      "33 (BC_2, I(5), INPUT, X           ),"&
      "32 (BC_7, IOD0, BIDIR, X, 31, 0, Z),"&
      "31 (BC_2,    *, CONTROL, 0           ),"&
      "30 (BC_7, IOD1, BIDIR, X, 29, 0, Z),"&
      "29 (BC_2,    *, CONTROL, 0           ),"&
      "28 (BC_7, IOD2, BIDIR, X, 27, 0, Z),"&
      "27 (BC_2,    *, CONTROL, 0           ),"&
      "26 (BC_7, IOD3, BIDIR, X, 25, 0, Z),"&
      "25 (BC_2,    *, CONTROL, 0           ),"&
      "24 (BC_7, IOD4, BIDIR, X, 23, 0, Z),"&
      "23 (BC_2,    *, CONTROL, 0           ),"&
      "22 (BC_7, IOD5, BIDIR, X, 21, 0, Z),"&
      "21 (BC_2,    *, CONTROL, 0           ),"&
      "20 (BC_7, IOD6, BIDIR, X, 19, 0, Z),"&
      "19 (BC_2,    *, CONTROL, 0           ),"&
      "18 (BC_7, IOD7, BIDIR, X, 17, 0, Z),"&
      "17 (BC_2,    *, CONTROL, 0           ),"&
      "16 (BC_7, IOD8, BIDIR, X, 15, 0, Z),"&
      "15 (BC_2,    *, CONTROL, 0           ),"&
      "14 (BC_7, IOD9, BIDIR, X, 13, 0, Z),"&
      "13 (BC_2,    *, CONTROL, 0           ),"&
      "12 (BC_7, IOD10, BIDIR, X, 11, 0, Z),"&
      "11 (BC_2,    *, CONTROL, 0           ),"&
      "10 (BC_7, IOD11, BIDIR, X, 9, 0, Z),"&
      "9 (BC_2,    *, CONTROL, 0           ),"&
      "8 (BC_7, IOD12, BIDIR, X, 7, 0, Z),"&
      "7 (BC_2,    *, CONTROL, 0           ),"&
      "6 (BC_7, IOD13, BIDIR, X, 5, 0, Z),"&
      "5 (BC_2,    *, CONTROL, 0           ),"&
      "4 (BC_7, IOD14, BIDIR, X, 3, 0, Z),"&
      "3 (BC_2,    *, CONTROL, 0           ),"&
      "2 (BC_7, IOD15, BIDIR, X, 1, 0, Z),"&
      "1 (BC_2,    *, CONTROL, 0           ),"&
      "0 (BC_2, CLK3, INPUT, X           )";

-- ****************************************************
-- *       IEEE 1532 EXTENSION INFORMATION            *
-- ****************************************************
attribute ISC_PIN_BEHAVIOR of LC4064B_XXT100 : entity is 
  "CLAMP";

attribute ISC_STATUS of LC4064B_XXT100 : entity is
     "Not Implemented";

attribute ISC_BLANK_USERCODE of LC4064B_XXT100 : entity is
    "11111111111111111111111111111111";

attribute ISC_FLOW of LC4064B_XXT100 : entity is

  "flow_verify(idcode) "&
    "initialize "&
      "(IDCODE        WAIT TCK 1 32:0180D043*0FFFFFFF), "&

  "flow_enable "&
    "initialize "&
      "(ISC_ENABLE    WAIT TCK 3, 20.0e-3), "&

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

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

  "flow_program(array) "&
    "initialize "&
      "(ISC_ADDRESS_INIT         WAIT TCK 1) "&
    "repeat 100"&
      "(ISC_PROGRAM 356:? WAIT TCK 3, 13.0e-3), "&

  "flow_verify(array) "&
    "initialize "&
      "(ISC_ADDRESS_SHIFT 100:$addr=800000000000000000000000"&
      "0 "&
      " WAIT TCK 1) "&
    "repeat 100"&
      "(ISC_READ  WAIT TCK 1, 1.0e-3 356:?:CRC) "&
      "(ISC_ADDRESS_SHIFT 100:$addr>>1 WAIT TCK 1), "&

  "flow_read(array) "&
    "initialize "&
      "(ISC_ADDRESS_SHIFT 100:$addr=800000000000000000000000"&
      "0 "&
      " WAIT TCK 1) "&
    "repeat 100"&
      "(ISC_READ  WAIT TCK 1, 1.0e-3 356:!:CRC) "&
      "(ISC_ADDRESS_SHIFT 100:$addr>>1 WAIT TCK 1), "&

  "flow_program(usercode) "&
    "initialize "&
      "(ISC_PROGRAM_USERCODE  32:? WAIT TCK 3, 13.0e-3), "&

  "flow_verify(usercode) "&
    "initialize "&
      "(USERCODE WAIT TCK 1 32:?), "&

  "flow_read(usercode) "&
    "initialize "&
      "(USERCODE WAIT TCK 1 32:!), "&

  "flow_read(sysio) "&
    "initialize "&
      "(ISC_ADDRESS_SHIFT 100:20 WAIT TCK 1) "&
      "(ISC_READ  WAIT TCK 1, 1.0e-3 356:!), "&

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

  "flow_disable "&
    "initialize "&
      "(ISC_DISABLE           WAIT TCK 3, 200.0e-3), "&

  "flow_program_done "&
    "initialize "&
      "(ISC_PROGRAM_DONE      WAIT TCK 3, 50.0e-3)";

attribute ISC_PROCEDURE of LC4064B_XXT100 : entity is
  "proc_verify(idcode)     = (flow_verify(idcode)), "&
  "proc_enable             = (flow_enable), "&
  "proc_disable            = (flow_disable), "&
  "proc_program(array)     = (flow_program(array)), "&
  "proc_verify(array)      = (flow_verify(array)), "&
  "proc_erase              = (flow_erase), "&
  "proc_read(array)        = (flow_read(array)), "&
  "proc_program(usercode)  = (flow_program(usercode)), "&
  "proc_verify(usercode)   = (flow_verify(usercode)), "&
  "proc_read(usercode)     = (flow_read(usercode)), "&
  "proc_read(sysio)        = (flow_read(sysio)), "&
  "proc_program_done       = (flow_program_done), "&
  "proc_error_exit         = (flow_disable), "&
  "proc_preload            = (flow_preload), "&
  "proc_program(security)  = (flow_program_security)";

attribute ISC_ACTION of LC4064B_XXT100 : entity is
  "erase          = ( proc_verify(idcode) recommended, "&
                     "proc_preload recommended, "&
                     "proc_enable, "&
                     "proc_erase, "&
                     "proc_disable), "&
  "program        = ( proc_verify(idcode) recommended, "&
                     "proc_preload recommended, "&
                     "proc_enable, "&
                     "proc_erase, "&
                     "proc_program(array), "&
                     "proc_program(usercode), "&
                     "proc_verify(array), "&
                     "proc_verify(usercode), "&
                     "proc_program(security) optional, "&
                     "proc_program_done, "&
                     "proc_disable), "&
  "verify         = ( proc_verify(idcode) recommended, "&
                     "proc_preload recommended, "&
                     "proc_enable, "&
                     "proc_verify(array), "&
                     "proc_verify(usercode), "&
                     "proc_disable), "&
  "read           = ( proc_verify(idcode) recommended, "&
                     "proc_preload recommended, "&
                     "proc_enable, "&
                     "proc_read(array) proprietary, "&
                     "proc_read(sysio), "&
                     "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 LC4064B_XXT100;