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

--------------------------------------------------------------------------
-- Copyright National Semiconductor Corporation 2005
-- 
-- SCAN90004 4-channel LVDS Buffer/Repeater
-- 
-- National Semiconductor Customer Service Center
-- N. America  (800) 272-9959
-- Europe Germany 49 (0) 69 9508 6208
--------------------------------------------------------------------------
--  
--  Rev 2.0  18 Nov 2005
--           Modified AIO_Pin_Behavior attribute to include IN3p
--  Rev 1.0  Initial Release May 12, 2005
--
--  For the most recent version of this BSDL, check at this website:
--  http://www.national.com/appinfo/scan/0,3031,665,00.html
--
--------------------------------------------------------------------------
entity Scan90004 is
    generic (PHYSICAL_PIN_MAP : string := "TQFP");


    port (IN0p      :in bit;
          IN0n      :in bit;
          IN1p      :in bit;
          IN1n      :in bit;
          IN2p      :in bit;
          IN2n      :in bit;
          IN3p      :in bit;
          IN3n      :in bit;
          OUT0p     :buffer bit;
          OUT0n     :buffer bit;
          OUT1p     :buffer bit;
          OUT1n     :buffer bit;
          OUT2p     :buffer bit;
          OUT2n     :buffer bit;
          OUT3p     :buffer bit;
          OUT3n     :buffer bit;
          PWDNx     :in bit;
          PEM0      :in bit;
          PEM1      :in bit;
          VSS       :linkage bit_vector(0 to 9);
          VDD       :linkage bit_vector(0 to 9);
          NC        :linkage bit_vector(0 to 3);
          TDO       :out bit;
          TDI       :in bit;
          TMS       :in bit;
          TCK       :in bit;
          TRST      :in bit);




     use STD_1149_1_2001.all;
     use STD_1149_6_2003.all;

     attribute COMPONENT_CONFORMANCE of Scan90004 : entity is "STD_1149_1_2001";

     attribute PIN_MAP of Scan90004 : entity is PHYSICAL_PIN_MAP;




    
--      constant LLP:PIN_MAP_STRING:=
--    
--    "IN0p:             9,"&
--    "IN0n:            10,"&
--    "IN1p:            11,"&
--    "IN1n:            12,"&
--    "IN2p:            13,"&
--    "IN2n:            14,"&
--    "IN3p:            15,"&
--    "IN3n:            16,"&
--    "OUT0p:           32,"&
--    "OUT0n:           31,"&
--    "OUT1p:           30,"&
--    "OUT1n:           29,"&
--    "OUT2p:           28,"&
--    "OUT2n:           27,"&
--    "OUT3p:           26,"&
--    "OUT3n:           25,"&
--    "PWDNx:            8,"&
--    "PEM0:             1,"&
--    "PEM1:             2,"&
--    "VSS:        (5,DAP),"&
--    "VDD:(3,4,6,7,20   ),"&
--    "TDO:             23,"&
--    "TDI:22,      TMS:19,"&
--    "TCK:18,      TRST:17";
    
    
    
      constant TQFP:PIN_MAP_STRING:=
    
    "IN0p:            13,"&
    "IN0n:            14,"&
    "IN1p:            15,"&
    "IN1n:            16,"&
    "IN2p:            19,"&
    "IN2n:            20,"&
    "IN3p:            21,"&
    "IN3n:            22,"&
    "OUT0p:           48,"&
    "OUT0n:           47,"&
    "OUT1p:           46,"&
    "OUT1n:           45,"&
    "OUT2p:           42,"&
    "OUT2n:           41,"&
    "OUT3p:           40,"&
    "OUT3n:           39,"&
    "PWDNx:           12,"&
    "PEM0:             1,"&
    "PEM1:             2,"&
    "VSS:(8,9,17,18,23,24,37,38,43,44),"&
    "VDD:(3,4,5,7,10,11,28,29,32,33),"&
    "NC:   (6,30,31, 36),"&
    "TDO:             35,"&
    "TDI:34,      TMS:27,"&
    "TCK:26,      TRST:25";
    
    

    attribute PORT_GROUPING of Scan90004 : entity is
"DIFFERENTIAL_VOLTAGE ((OUT3p, OUT3n),(OUT2p, OUT2n),(OUT1p, OUT1n),"&
"(OUT0p, OUT0n), (IN3p, IN3n), (IN2p, IN2n), (IN1p, IN1n), (IN0p, IN0n))";

    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 (25.0e6, BOTH);
    attribute TAP_SCAN_RESET of TRST : signal is true;

    attribute INSTRUCTION_LENGTH of Scan90004 : entity is 12;

    attribute INSTRUCTION_OPCODE of Scan90004 : entity is

            "EXTEST            (000000010010),"&        --012
            "EXTEST_PULSE      (000000010110),"&        --016
            "EXTEST_TRAIN      (000000011110),"&        --01E
            "BYPASS            (111111111111),"&        --FFF
            "IDCODE            (000000000001),"&        --001
            "PRELOAD           (000000010000),"&        --010
            "SAMPLE            (000000010000),"&        --010
            "HIGHZ             (000000100000),"&        --020
            "CLAMP             (000001100000)";         --060
            --"CTRL              (000010000000),"&      --080
            --"SA_PRELOAD        (000100000000),"&      --100
            --"SA                (001100000000),"&      --300
            --"STATUS            (010000000000)";       --400





    attribute INSTRUCTION_CAPTURE of Scan90004 : entity is "XXXXXXXXXX01";

    attribute IDCODE_REGISTER of Scan90004 : entity is
        "0001" &                -- version
        "1101011000000001" &    -- part number D601
        "00000001111" &         -- manufacturer's identity
        "1";                    -- required by 1149.1

    --attribute SA_REGISTER of Scan90004 : entity is
    --    "XXXXXXXXXXXXXX";



    attribute REGISTER_ACCESS of Scan90004 : entity is
      "BOUNDARY (EXTEST, EXTEST_TRAIN, EXTEST_PULSE, SAMPLE, PRELOAD)," &
      "DEVICE_ID    (IDCODE)," &
      "BYPASS       (CLAMP, HIGHZ, BYPASS)" ;


    --    "SA_REGISTER     (SA_PRELAOD, SA)"&
    --    "PRE_REGISTER    (PRE)";



    attribute BOUNDARY_LENGTH   of Scan90004 : entity is 21;
    attribute BOUNDARY_REGISTER of Scan90004 : entity is



  -- num cell   port     function   safe [ccell disval rslt]
     -- TDI
   "20 (BC_4,            IN0p       ,OBSERVE_ONLY   , X),"  &               
   "19 (BC_4,            IN0n       ,OBSERVE_ONLY   , X),"  &
   "18 (BC_4,            IN1p       ,OBSERVE_ONLY   , X),"  &
   "17 (BC_4,            IN1n       ,OBSERVE_ONLY   , X),"  &
   "16 (BC_4,            IN2p       ,OBSERVE_ONLY   , X),"  &
   "15 (BC_4,            IN2n       ,OBSERVE_ONLY   , X),"  &
   "14 (BC_4,            IN3p       ,OBSERVE_ONLY   , X),"  &
   "13 (BC_4,            IN3n       ,OBSERVE_ONLY   , X),"  &
   "12 (AC_SELU,         *          ,INTERNAL       , 0),"  &
   "11 (AC_SELU,         *          ,INTERNAL       , 0),"  &
   "10 (AC_SELU,         *          ,INTERNAL       , 0),"  &
   "9  (AC_SELU,         *          ,INTERNAL       , 0),"  &
   "8  (AC_1,            OUT0p      ,OUTPUT2        , X),"  &
   "7  (AC_1,            OUT1p      ,OUTPUT2        , X),"  &
   "6  (AC_1,            OUT2P      ,OUTPUT2        , X),"  &
   "5  (AC_1,            OUT3P      ,OUTPUT2        , X),"  &
   "4  (BC_1,            *          ,INTERNAL       , X),"  &
   "3  (BC_1,            *          ,INTERNAL       , X),"  &
   "2  (BC_4,            PWDNx      ,OBSERVE_ONLY   , X),"  &
   "1  (BC_4,            PEM0       ,OBSERVE_ONLY   , X),"  &
   "0  (BC_4,            PEM1       ,OBSERVE_ONLY   , X) "  ;
     -- TDO
     attribute DESIGN_WARNING of Scan90004 : entity is
      "The Scan90004 has the following features ," &
      " StuckAt"&
      " .See comment at the end of the BSDL for register description."&
      " "&
      " Switching the LVDS outputs in and out of tri-state takes 2uS "&
      " from the time the HIHGZ command is asserted or deasserted."&
      " "&
      " The Scan90004 is intended for point-to-point applications only"&
      " Outputs will become active as soon as the State Machine leaves"&
      " the TestLogicReset state"&
      " ";
      
      


     attribute AIO_COMPONENT_CONFORMANCE of Scan90004 : entity is
      "STD_1149_6_2003";

     attribute AIO_Pin_Behavior of Scan90004 : entity is
      "IN3p, IN2p, IN1p, IN0p : LP_time=10.0e-9 HP_time=1.0e-6;"&
      "OUT0p : AC_Select=12;"&
      "OUT1p : AC_Select=11;"&
      "OUT2p : AC_Select=10;"&
      "OUT3p : AC_Select=9";

      
      

end Scan90004;

-- SA
--TDI
-- 15 Data Out0
-- 14 Ctrl Out0
-- 13 Data Out1
-- 12 Ctrl Out1

-- 11 Data Out2
-- 10 Ctrl Out2
-- 09 Data Out3
-- 08 Ctrl Out3

-- 07 Data LOSx
-- 06 Ctrl LOSx
-- 05 Data PWDNx
-- 04 Ctrl PWDNx

-- 03 Data PEM1
-- 02 Ctrl PEM1
-- 01 Data PEM0
-- 00 Ctrl PEM0
--TDO