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

-- ********************************************************************
-- * LC4032C BSDL Model                                               *
-- * File Version:      1.04                                          *
-- * 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.04: 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.03: 06/17/03                                               *
-- *  - rcs: Removed INTEST instruction.                              *
-- * Rev 1.02: 02/12/03                                               *
-- *  - rcs: Changed CLKs to BC_2.                                    *
-- * Rev 1.01: 07/15/02                                               *
-- *  - rcs: Changed pin names to match data sheet.                   *
-- *  - rcs: Masked out the ID revision bits.                         *
-- * Rev 1.00: 02/06/02                                               *
-- *  - Initial version                                               *
-- *                                                                  *
-- ********************************************************************

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

-- Generic Parameter Statement
generic (PHYSICAL_PIN_MAP : string := "TQFP_44");
-- Logical Port Description Statement
port (
      TDI: in bit;
      IOA5: inout bit;
      IOA6: inout bit;
      IOA7: inout bit;
      GND0: linkage bit;
      VCCO0: linkage bit;
      IOA8: inout bit;
      IOA9: inout bit;
      IOA10: inout bit;
      TCK: in bit;
      VCC: linkage bit_vector(0 to 1);
      GND: linkage bit_vector(0 to 1);
      IOA12: inout bit;
      IOA13: inout bit;
      IOA14: inout bit;
      IOA15: inout bit;
      CLK2: in bit;
      IOB0: inout bit;
      IOB1: inout bit;
      IOB2: inout bit;
      IOB3: inout bit;
      IOB4: inout bit;
      TMS: in bit;
      IOB5: inout bit;
      IOB6: inout bit;
      IOB7: inout bit;
      GND1: linkage bit;
      VCCO1: linkage bit;
      IOB8: inout bit;
      IOB9: inout bit;
      IOB10: inout bit;
      TDO: out bit;
      IOB12: inout bit;
      IOB13: inout bit;
      IOB14: inout bit;
      IOB15: inout bit;
      CLK0: in bit;
      IOA0: inout bit;
      IOA1: inout bit;
      IOA2: inout bit;
      IOA3: inout bit;
      IOA4: 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 LC4032C_XXT44 : entity is
"STD_1149_1_2001";

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

constant TQFP_44 : PIN_MAP_STRING :=

      "TDI: 1,"&                      
      "IOA5: 2,"&                      
      "IOA6: 3,"&                      
      "IOA7: 4,"&                      
      "GND0: 5,"&                      
      "VCCO0: 6,"&                      
      "IOA8: 7,"&                      
      "IOA9: 8,"&                      
      "IOA10: 9,"&                      
      "TCK: 10,"&                      
      "VCC: (11, 33), "&          
      "GND: (12, 34), "&          
      "IOA12: 13,"&                      
      "IOA13: 14,"&                      
      "IOA14: 15,"&                      
      "IOA15: 16,"&                      
      "CLK2: 17,"&                      
      "IOB0: 18,"&                      
      "IOB1: 19,"&                      
      "IOB2: 20,"&                      
      "IOB3: 21,"&                      
      "IOB4: 22,"&                      
      "TMS: 23,"&                      
      "IOB5: 24,"&                      
      "IOB6: 25,"&                      
      "IOB7: 26,"&                      
      "GND1: 27,"&                      
      "VCCO1: 28,"&                      
      "IOB8: 29,"&                      
      "IOB9: 30,"&                      
      "IOB10: 31,"&                      
      "TDO: 32,"&                      
      "IOB12: 35,"&                      
      "IOB13: 36,"&                      
      "IOB14: 37,"&                      
      "IOB15: 38,"&                      
      "CLK0: 39,"&                      
      "IOA0: 40,"&                      
      "IOA1: 41,"&                      
      "IOA2: 42,"&                      
      "IOA3: 43,"&                      
      "IOA4: 44";                       

-- 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 LC4032C_XXT44 : entity is 8;
      attribute INSTRUCTION_OPCODE of LC4032C_XXT44 : 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 LC4032C_XXT44 : entity is
      "00011X01";
      attribute INSTRUCTION_PRIVATE of LC4032C_XXT44 : entity is 
      "PRIVATE";

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

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

-- Register Access Description
      attribute REGISTER_ACCESS of LC4032C_XXT44 : 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[172]          (ISC_DATA_SHIFT),"&
      "ISC_PDATA[172]         (ISC_PROGRAM, "&
      "                       ISC_READ)";

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

      --num cell  port  function  safe  [ccell  disval  rslt]
      "67 (BC_2, CLK0, INPUT, X           ),"&
      "66 (BC_7, IOA0, BIDIR, X, 65, 0, Z),"&
      "65 (BC_2,    *, CONTROL, 0           ),"&
      "64 (BC_7, IOA1, BIDIR, X, 63, 0, Z),"&
      "63 (BC_2,    *, CONTROL, 0           ),"&
      "62 (BC_7, IOA2, BIDIR, X, 61, 0, Z),"&
      "61 (BC_2,    *, CONTROL, 0           ),"&
      "60 (BC_7, IOA3, BIDIR, X, 59, 0, Z),"&
      "59 (BC_2,    *, CONTROL, 0           ),"&
      "58 (BC_7, IOA4, BIDIR, X, 57, 0, Z),"&
      "57 (BC_2,    *, CONTROL, 0           ),"&
      "56 (BC_7, IOA5, BIDIR, X, 55, 0, Z),"&
      "55 (BC_2,    *, CONTROL, 0           ),"&
      "54 (BC_7, IOA6, BIDIR, X, 53, 0, Z),"&
      "53 (BC_2,    *, CONTROL, 0           ),"&
      "52 (BC_7, IOA7, BIDIR, X, 51, 0, Z),"&
      "51 (BC_2,    *, CONTROL, 0           ),"&
      "50 (BC_7, IOA8, BIDIR, X, 49, 0, Z),"&
      "49 (BC_2,    *, CONTROL, 0           ),"&
      "48 (BC_7, IOA9, BIDIR, X, 47, 0, Z),"&
      "47 (BC_2,    *, CONTROL, 0           ),"&
      "46 (BC_7, IOA10, BIDIR, X, 45, 0, Z),"&
      "45 (BC_2,    *, CONTROL, 0           ),"&
      "44 (BC_2,   *, INTERNAL, 0           ),"&
      "43 (BC_2,   *, INTERNAL, 0           ),"&
      "42 (BC_7, IOA12, BIDIR, X, 41, 0, Z),"&
      "41 (BC_2,    *, CONTROL, 0           ),"&
      "40 (BC_7, IOA13, BIDIR, X, 39, 0, Z),"&
      "39 (BC_2,    *, CONTROL, 0           ),"&
      "38 (BC_7, IOA14, BIDIR, X, 37, 0, Z),"&
      "37 (BC_2,    *, CONTROL, 0           ),"&
      "36 (BC_7, IOA15, BIDIR, X, 35, 0, Z),"&
      "35 (BC_2,    *, CONTROL, 0           ),"&
      "34 (BC_2,   *, INTERNAL, 0           ),"&
      "33 (BC_2, CLK2, INPUT, X           ),"&
      "32 (BC_7, IOB0, BIDIR, X, 31, 0, Z),"&
      "31 (BC_2,    *, CONTROL, 0           ),"&
      "30 (BC_7, IOB1, BIDIR, X, 29, 0, Z),"&
      "29 (BC_2,    *, CONTROL, 0           ),"&
      "28 (BC_7, IOB2, BIDIR, X, 27, 0, Z),"&
      "27 (BC_2,    *, CONTROL, 0           ),"&
      "26 (BC_7, IOB3, BIDIR, X, 25, 0, Z),"&
      "25 (BC_2,    *, CONTROL, 0           ),"&
      "24 (BC_7, IOB4, BIDIR, X, 23, 0, Z),"&
      "23 (BC_2,    *, CONTROL, 0           ),"&
      "22 (BC_7, IOB5, BIDIR, X, 21, 0, Z),"&
      "21 (BC_2,    *, CONTROL, 0           ),"&
      "20 (BC_7, IOB6, BIDIR, X, 19, 0, Z),"&
      "19 (BC_2,    *, CONTROL, 0           ),"&
      "18 (BC_7, IOB7, BIDIR, X, 17, 0, Z),"&
      "17 (BC_2,    *, CONTROL, 0           ),"&
      "16 (BC_7, IOB8, BIDIR, X, 15, 0, Z),"&
      "15 (BC_2,    *, CONTROL, 0           ),"&
      "14 (BC_7, IOB9, BIDIR, X, 13, 0, Z),"&
      "13 (BC_2,    *, CONTROL, 0           ),"&
      "12 (BC_7, IOB10, BIDIR, X, 11, 0, Z),"&
      "11 (BC_2,    *, CONTROL, 0           ),"&
      "10 (BC_2,   *, INTERNAL, 0           ),"&
      "9 (BC_2,   *, INTERNAL, 0           ),"&
      "8 (BC_7, IOB12, BIDIR, X, 7, 0, Z),"&
      "7 (BC_2,    *, CONTROL, 0           ),"&
      "6 (BC_7, IOB13, BIDIR, X, 5, 0, Z),"&
      "5 (BC_2,    *, CONTROL, 0           ),"&
      "4 (BC_7, IOB14, BIDIR, X, 3, 0, Z),"&
      "3 (BC_2,    *, CONTROL, 0           ),"&
      "2 (BC_7, IOB15, BIDIR, X, 1, 0, Z),"&
      "1 (BC_2,    *, CONTROL, 0           ),"&
      "0 (BC_2,   *, INTERNAL, 0           )";

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

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

attribute ISC_BLANK_USERCODE of LC4032C_XXT44 : entity is
    "11111111111111111111111111111111";

attribute ISC_FLOW of LC4032C_XXT44 : entity is

  "flow_verify(idcode) "&
    "initialize "&
      "(IDCODE        WAIT TCK 1 32:01804043*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 68:0 WAIT TCK 1), "&

  "flow_program(array) "&
    "initialize "&
      "(ISC_ADDRESS_INIT         WAIT TCK 1) "&
    "repeat 100"&
      "(ISC_PROGRAM 172:? 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 172:?: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 172:!: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 172:!), "&

  "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 LC4032C_XXT44 : 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 LC4032C_XXT44 : 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 LC4032C_XXT44;