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


-- *********************************************************************
-- *                                                                   *
-- * ispLSI2032VE 48 pin TQFP -- 1149.1 and ISC 1532 Draft BSDL File   *
-- *                                                                   *
-- * File Version:      v1.0-00                                        *
-- * File Date:         September 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:                           *
-- * - P1532 Unapproved Draft 3.9                                      *
-- * - IEEE 1149.1 1994 spec.                                          *
-- *                                                                   *
-- * This BSDL file has been syntax checked with:                      *
-- * - Agilent BSDL Syntax Checking Service                            *
-- *                                                                   *
-- * Disclaimer: Since this document was generated according to a      *
-- *             working draft of ISC1532, Lattice reserves the right  *
-- *             to update the content of the file without notice.     *
-- *                                                                   *
-- * This BSDL file was made by Generate_BDF v. 1.1                    *
-- *                                                                   *
-- * Copyright 1996-2001, Lattice Semiconductor Corporation            *
-- *********************************************************************
-- *                                                                   *
-- *                           IMPORTANT                               *
-- *                                                                   *
-- * The following is a BSDL file that tests all of the I/O pins       *
-- * as bi-directional 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 web-site at www.latticesemi.com.                   *
-- *                                                                   *
-- * For Further assistance, please contact Tech Support.              *
-- *      1-800-LATTICE or techsupport@latticesemi.com                 *
-- *********************************************************************
-- *                                                                   *
-- *                          REVISION HISTORY                         *
-- *                                                                   *
-- * Date:              Sept 6 2001                                    *
-- * File Version:      v1.0-00                                        *
-- *                                                                   *
-- * This BSDL file has been syntax checked with:                      *
-- * - Teradyne VICTORY                                                *
-- * - Assett Intertech                                                *
-- *                                                                   *
-- *********************************************************************

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

   -- Generic Parameter Statement
   generic (PHYSICAL_PIN_MAP : string := "TQFP_48");

   -- Logical Port Description Statement
   port ( TDI: in bit;                             -- JTAG input pin
          TMS: in bit;                             -- JTAG input pin
          TCK: in bit;                             -- JTAG input pin
          TDO: out bit;                            -- JTAG output pin
          BSCAN: in bit;                           -- BSCAN pin
          RESET: in bit;                           -- Active low RESET pin
          GOE: in bit;                             -- Global Output Enable
          Clk: in bit;                             -- Clock input pin
          NoC: linkage bit_vector (0 to 3);        -- No connect pins
          BIp: inout bit_vector (0 to 31);         -- Bi-Directional pins
          VCC: linkage bit_vector (0 to 1);        -- VCC pins
          GND: linkage bit_vector (0 to 1)         -- GND pins
          );

   -- Version Control
   use STD_1149_1_1994.all;                     -- 1149.1-1994 attributes
   use STD_1532_2001.all;                       -- 1532_2001 attributes

   -- Component Conformance Statement
   attribute COMPONENT_CONFORMANCE of ispLSI2032VE_XXLT48 : entity is
   "STD_1149_1_1993";

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

   constant TQFP_48: PIN_MAP_STRING:=
   "TDI:8, "&                                      -- JTAG (TDI) input pin
   "TMS:32, "&                                     -- JTAG (TMS) input pin
   "TCK:29, "&                                     -- JTAG (TCK) input pin
   "TDO:19, "&                                     -- JTAG (TDO) output pin
   "RESET:31, "&                                   -- RESET input pin
   "BSCAN:7, "&                                    -- BSCAN control pin
   "GOE:43, "&                                     -- Global OE pin
   "Clk:5, "&                                      -- Clock pin
   "NoC:(   12,   24,   36,   48),                   "& -- No Connect pins
   "BIp:(    9,   10,   11,   13,   14,   15,   16,  "& -- I/O pins
   "        17,   20,   21,   22,   23,   25,   26,  "& -- I/O pins
   "        27,   28,   33,   34,   35,   37,   38,  "& -- I/O pins
   "        39,   40,   41,   44,   45,   46,   47,  "& -- I/O pins
   "         1,    2,    3,    4),                   "& -- I/O pins
   "VCC:(    6,   30),                               "& -- VCC pins
   "GND:(   18,   42)                                " ; -- GND pins

   -- Scan Port Identification
   attribute TAP_SCAN_CLOCK of TCK : Signal is (5.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;

   -- Compliance enable description
   attribute COMPLIANCE_PATTERNS of 
                          ispLSI2032VE_XXLT48 : entity is "(BSCAN)(0)";

   -- Instruction Register Description
   attribute INSTRUCTION_LENGTH of ispLSI2032VE_XXLT48 : entity is 5;
   attribute INSTRUCTION_OPCODE of ispLSI2032VE_XXLT48 : entity is

-- 1149.1 instructions
      "BYPASS                  (11111), "&
      "SAMPLE                  (11100), "&
      "EXTEST                  (00000), "&
      "HIGHZ                   (11000), "&
      "IDCODE                  (10110), "&
      "USERCODE                (10111), "&

-- ISC instructions
      "ISC_NOOP                (11001),"&
      "ISC_READ                (01010),"&
      "ISC_ERASE               (00011),"&
      "ISC_ENABLE              (10101),"&
      "ISC_DISABLE             (11110),"&
      "ISC_DISCHARGE           (10100),"&
      "ISC_PROGRAM_SECURITY    (01001),"&
      "ISC_DATA_SHIFT          (00010),"&
      "ISC_ADDRESS_SHIFT       (00001),"&

   -- Lattice Specific and Private instructions
      "LSC_PROGRAM             (00111),"&
      "LSC_PROGRAM_USERCODE    (11010),"&
      "PRIVATE     (00100,00101,00110,01000,10010,"&
                   "01100,01110,01111,10001,10011,"&
                   "01011,11011,11101,10000)";

   attribute INSTRUCTION_CAPTURE of 
                ispLSI2032VE_XXLT48 : entity is "11001";
   attribute INSTRUCTION_PRIVATE of 
                ispLSI2032VE_XXLT48 : entity is "PRIVATE";

   -- IDCODE Definition
   attribute IDCODE_REGISTER of ispLSI2032VE_XXLT48: entity is
   "0001"&                                       -- version 
   "0000001100000001"&                           -- part number (0301)
   "00000100001"&                                -- manufacturer's identity 
   "1";                                          -- required by 1149.1

   -- USERCODE Definition
   attribute USERCODE_REGISTER of ispLSI2032VE_XXLT48: entity is
   "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";

   -- Register Access Description
   attribute REGISTER_ACCESS of ispLSI2032VE_XXLT48 : entity is

      "BOUNDARY         (SAMPLE, EXTEST), "&
      "BYPASS           (BYPASS, HIGHZ), "&
      "DEVICE_ID           (USERCODE, IDCODE), "&
      "ISC_ADDRESS[102] (ISC_ADDRESS_SHIFT, LSC_PROGRAM), "&
      "ISC_DATA[80]     (ISC_DATA_SHIFT), "&
      "ISC_Rdata[80]    (ISC_READ), "&
      "ISC_DEFAULT[1]      (LSC_PROGRAM_USERCODE, ISC_PROGRAM_SECURITY, "&
      "                  ISC_DISCHARGE, ISC_DISABLE, ISC_ENABLE, "&
      "                  ISC_ERASE, ISC_NOOP)";

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

   -- num   cell    port        function  safe  [ccell  disval  rslt] 
   "0101   (BC_1,   *,          internal, X), "&
   "0100   (BC_1,   *,          internal, X), "&
   "0099   (BC_1,   Clk,        input,    X), "&
   "0098   (BC_1,   RESET,      input,    X), "&
   "0097   (BC_1,   *,          internal, X), "&
   "0096   (BC_1,   GOE,        input,    X), "&
   "0095   (BC_1,   *,          control,  0), "&
   "0094   (BC_1,   BIp(12),    output3,  X,      95,   0,      Z), "&
   "0093   (BC_1,   BIp(12),    input,    X), "&
   "0092   (BC_1,   *,          control,  0), "&
   "0091   (BC_1,   BIp(13),    output3,  X,      92,   0,      Z), "&
   "0090   (BC_1,   BIp(13),    input,    X), "&
   "0089   (BC_1,   *,          control,  0), "&
   "0088   (BC_1,   BIp(14),    output3,  X,      89,   0,      Z), "&
   "0087   (BC_1,   BIp(14),    input,    X), "&
   "0086   (BC_1,   *,          control,  0), "&
   "0085   (BC_1,   BIp(15),    output3,  X,      86,   0,      Z), "&
   "0084   (BC_1,   BIp(15),    input,    X), "&
   "0083   (BC_1,   *,          control,  0), "&
   "0082   (BC_1,   BIp(8),     output3,  X,      83,   0,      Z), "&
   "0081   (BC_1,   BIp(8),     input,    X), "&
   "0080   (BC_1,   *,          control,  0), "&
   "0079   (BC_1,   BIp(9),     output3,  X,      80,   0,      Z), "&
   "0078   (BC_1,   BIp(9),     input,    X), "&
   "0077   (BC_1,   *,          control,  0), "&
   "0076   (BC_1,   BIp(10),    output3,  X,      77,   0,      Z), "&
   "0075   (BC_1,   BIp(10),    input,    X), "&
   "0074   (BC_1,   *,          control,  0), "&
   "0073   (BC_1,   BIp(11),    output3,  X,      74,   0,      Z), "&
   "0072   (BC_1,   BIp(11),    input,    X), "&
   "0071   (BC_1,   *,          control,  0), "&
   "0070   (BC_1,   BIp(4),     output3,  X,      71,   0,      Z), "&
   "0069   (BC_1,   BIp(4),     input,    X), "&
   "0068   (BC_1,   *,          control,  0), "&
   "0067   (BC_1,   BIp(5),     output3,  X,      68,   0,      Z), "&
   "0066   (BC_1,   BIp(5),     input,    X), "&
   "0065   (BC_1,   *,          control,  0), "&
   "0064   (BC_1,   BIp(6),     output3,  X,      65,   0,      Z), "&
   "0063   (BC_1,   BIp(6),     input,    X), "&
   "0062   (BC_1,   *,          control,  0), "&
   "0061   (BC_1,   BIp(7),     output3,  X,      62,   0,      Z), "&
   "0060   (BC_1,   BIp(7),     input,    X), "&
   "0059   (BC_1,   *,          control,  0), "&
   "0058   (BC_1,   BIp(0),     output3,  X,      59,   0,      Z), "&
   "0057   (BC_1,   BIp(0),     input,    X), "&
   "0056   (BC_1,   *,          control,  0), "&
   "0055   (BC_1,   BIp(1),     output3,  X,      56,   0,      Z), "&
   "0054   (BC_1,   BIp(1),     input,    X), "&
   "0053   (BC_1,   *,          control,  0), "&
   "0052   (BC_1,   BIp(2),     output3,  X,      53,   0,      Z), "&
   "0051   (BC_1,   BIp(2),     input,    X), "&
   "0050   (BC_1,   *,          control,  0), "&
   "0049   (BC_1,   BIp(3),     output3,  X,      50,   0,      Z), "&
   "0048   (BC_1,   BIp(3),     input,    X), "&
   "0047   (BC_1,   *,          control,  0), "&
   "0046   (BC_1,   BIp(16),    output3,  X,      47,   0,      Z), "&
   "0045   (BC_1,   BIp(16),    input,    X), "&
   "0044   (BC_1,   *,          control,  0), "&
   "0043   (BC_1,   BIp(17),    output3,  X,      44,   0,      Z), "&
   "0042   (BC_1,   BIp(17),    input,    X), "&
   "0041   (BC_1,   *,          control,  0), "&
   "0040   (BC_1,   BIp(18),    output3,  X,      41,   0,      Z), "&
   "0039   (BC_1,   BIp(18),    input,    X), "&
   "0038   (BC_1,   *,          control,  0), "&
   "0037   (BC_1,   BIp(19),    output3,  X,      38,   0,      Z), "&
   "0036   (BC_1,   BIp(19),    input,    X), "&
   "0035   (BC_1,   *,          control,  0), "&
   "0034   (BC_1,   BIp(20),    output3,  X,      35,   0,      Z), "&
   "0033   (BC_1,   BIp(20),    input,    X), "&
   "0032   (BC_1,   *,          control,  0), "&
   "0031   (BC_1,   BIp(21),    output3,  X,      32,   0,      Z), "&
   "0030   (BC_1,   BIp(21),    input,    X), "&
   "0029   (BC_1,   *,          control,  0), "&
   "0028   (BC_1,   BIp(22),    output3,  X,      29,   0,      Z), "&
   "0027   (BC_1,   BIp(22),    input,    X), "&
   "0026   (BC_1,   *,          control,  0), "&
   "0025   (BC_1,   BIp(23),    output3,  X,      26,   0,      Z), "&
   "0024   (BC_1,   BIp(23),    input,    X), "&
   "0023   (BC_1,   *,          control,  0), "&
   "0022   (BC_1,   BIp(24),    output3,  X,      23,   0,      Z), "&
   "0021   (BC_1,   BIp(24),    input,    X), "&
   "0020   (BC_1,   *,          control,  0), "&
   "0019   (BC_1,   BIp(25),    output3,  X,      20,   0,      Z), "&
   "0018   (BC_1,   BIp(25),    input,    X), "&
   "0017   (BC_1,   *,          control,  0), "&
   "0016   (BC_1,   BIp(26),    output3,  X,      17,   0,      Z), "&
   "0015   (BC_1,   BIp(26),    input,    X), "&
   "0014   (BC_1,   *,          control,  0), "&
   "0013   (BC_1,   BIp(27),    output3,  X,      14,   0,      Z), "&
   "0012   (BC_1,   BIp(27),    input,    X), "&
   "0011   (BC_1,   *,          control,  0), "&
   "0010   (BC_1,   BIp(28),    output3,  X,      11,   0,      Z), "&
   "0009   (BC_1,   BIp(28),    input,    X), "&
   "0008   (BC_1,   *,          control,  0), "&
   "0007   (BC_1,   BIp(29),    output3,  X,      8,    0,      Z), "&
   "0006   (BC_1,   BIp(29),    input,    X), "&
   "0005   (BC_1,   *,          control,  0), "&
   "0004   (BC_1,   BIp(30),    output3,  X,      5,    0,      Z), "&
   "0003   (BC_1,   BIp(30),    input,    X), "&
   "0002   (BC_1,   *,          control,  0), "&
   "0001   (BC_1,   BIp(31),    output3,  X,      2,    0,      Z), "&
   "0000   (BC_1,   BIp(31),    input,    X)";

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

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

attribute ISC_BLANK_USERCODE of ispLSI2032VE_XXLT48 : entity is
    "11111111111111111111111111111111";

attribute ISC_FLOW of ispLSI2032VE_XXLT48 : entity is

  "flow_verify(idcode) "&
    "initialize "&
      "(IDCODE        WAIT TCK 1 32:10301043), "&

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

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

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

  "flow_program(array) "&
    "initialize "&
      "(ISC_ADDRESS_SHIFT 102:$addr=20000000000000000000000000"&
      "  WAIT TCK 1)"&
    "repeat 102 "&
      "(ISC_DATA_SHIFT     80:?        WAIT TCK 1) "&
      "(LSC_PROGRAM       102:$addr    WAIT TCK 3, 12.0e-3) "&
      "(ISC_ADDRESS_SHIFT 102:$addr>>1 WAIT TCK 1), "&

  "flow_verify(array) "&
    "initialize "&
      "(ISC_ADDRESS_SHIFT 102:$addr=20000000000000000000000000"&
      "  WAIT TCK 1)"&
    "repeat 102 "&
      "(ISC_READ                       WAIT TCK 3, 30.0e-6 80:?:CRC)"&
      "(ISC_ADDRESS_SHIFT 102:$addr>>1 WAIT TCK 1), "&

  "flow_read(array) "&
    "initialize "&
      "(ISC_ADDRESS_SHIFT 102:$addr=20000000000000000000000000"&
      "  WAIT TCK 1)"&
    "repeat 102 "&
      "(ISC_READ                       WAIT TCK 3, 30.0e-6 80:!:CRC)"&
      "(ISC_ADDRESS_SHIFT 102:$addr>>1 WAIT TCK 1), "&

  "flow_program(usercode) "&
    "initialize "&
      "(USERCODE   32:?      WAIT TCK 1) "&
      "(LSC_PROGRAM_USERCODE WAIT TCK 3, 12.0e-3), "&

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

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

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

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

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

attribute ISC_PROCEDURE of  ispLSI2032VE_XXLT48: 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_program_done                 = (flow_program_done), "&
  "proc_error_exit                   = (flow_disable), "&
  "proc_preload                      = (flow_preload), "&
  "proc_program_security             = (flow_program_security)";

attribute ISC_ACTION of ispLSI2032VE_XXLT48 : entity is
  "erase            = ( proc_verify(idcode), "&
                       "proc_preload recommended, "&
                       "proc_enable, "&
                       "proc_erase, "&
                       "proc_disable), "& 
  "program          = ( proc_verify(idcode), "&
                       "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), "&
                       "proc_preload recommended, "&
                       "proc_enable, "&
                       "proc_verify(array), "&
                       "proc_verify(usercode), "&
                       "proc_disable), "&
  "read             = ( proc_verify(idcode), "&
                       "proc_preload recommended, "&
                       "proc_enable, "&
                       "proc_read(array), "&
                       "proc_read(usercode), "&
                       "proc_disable), "&
  "verify_idcode    = ( proc_verify(idcode)), "&
  "secure           = ( proc_verify(idcode), "&
                       "proc_preload recommended, "&
                       "proc_enable, "&
                       "proc_program_security, "&
                       "proc_disable)";

end ispLSI2032VE_XXLT48;