-------------------------------------------------------------------------------
-- Copyright National Semiconductor Corporation 2001
--
-- Boundary Scan Description Language, BSDL Model for NSC_SCAN921023
-- 10-bit LVDS Serializer
--
-- National Semiconductor Customer Service Center
-- N. America (800) 272-9959
-- Europe Germany p49 (0) 69 9508 6208
-------------------------------------------------------------------------------
-- 01 Initial
-- 02 14 Mar 01 Verified through additional ATPG tools
-- Changed BGA_49 to BGA_49_INTEGER. Added BGA_49_BALL
-- Reversed order of DIN from (9 downto 0) -> (0 to 9)
-- Corrected ID code
-- Corrected RUNBIST
-- 03 21 Mar 01 Corrected ID
-- Corrected cell ordering i.e. cell closest TDO = 0
-- 04 29 Mar 01 Corrected control cells
-- 05 29 Mar 01 Corrected disable value
-- 06 29 Apr 02 Corrected attribute ordering (RUNBIST_EXECUTION) & fixed bist register name
entity NSC_SCAN921023 is
generic (PHYSICAL_PIN_MAP : string := "UNDEFINED");
port (
DIN: in bit_vector(0 to 9);
SYNC2: in bit;
SYNC1: in bit;
PWRDN: in bit;
DOp: out bit;
-- DOn :out bit;
DEN: in bit;
TCLK: in bit;
TCLK_R_F: in bit;
TDI: in bit;
TMS: in bit;
TCK: in bit;
TRST: in bit;
TDO: out bit;
DVCC: linkage bit_vector(2 downto 0);
DGND: linkage bit_vector(4 downto 0);
AVCC: linkage bit_vector(4 downto 0);
AGND: linkage bit_vector(4 downto 0)
);
use STD_1149_1_1994.all;
attribute COMPONENT_CONFORMANCE of NSC_SCAN921023 : entity is "STD_1149_1_1993";
attribute PIN_MAP of NSC_SCAN921023 : entity is PHYSICAL_PIN_MAP;
-- BGA_49_INTEGER identifies each pin as an integer
constant BGA_49_INTEGER : PIN_MAP_STRING :=
"DIN:(3, 8, 23, 15, 24, 22, 30, 29, 37, 39)," &
"SYNC2:10," &
"SYNC1:4," &
"PWRDN:21," &
"DOp:28," &
--"DOn:26," &
"DEN:27,"&
"TCLK:32,"&
"TCLK_R_F:45,"&
"TDI:36,"&
"TMS:31," &
"TCK:38," &
"TRST:44," &
"TDO:43," &
"DVCC:(17, 18, 33)," &
"DGND:(1, 16, 34, 40, 46)," &
"AVCC:(5, 6, 11, 14 ,47)," &
"AGND:(12, 13, 20, 35, 42)";
-- BGA_49_BALL identifies each pin by a "ball" identifier
constant BGA_49_BALL : PIN_MAP_STRING :=
"DIN:(A3,B1, D2, C1, D3, D1, E2, E1, F2, F4)," &
"SYNC2:B3," &
"SYNC1:A4," &
"PWRDN:C7," &
"DOp:D7," &
--"DOn:D5," &
"DEN:D6,"&
"TCLK:E4,"&
"TCLK_R_F:G3,"&
"TDI:F1,"&
"TMS:E3," &
"TCK:F3," &
"TRST:G2," &
"TDO:G1," &
"DVCC:(C3, C4, E5)," &
"DGND:(A1, C2, E6, F5, G4)," &
"AVCC:(A5, A6, B4, B7 ,G5)," &
"AGND:(B5, B6, C6, E7, F7)";
-- attribute PORT_GROUPING of NSC_SCAN921023 : entity is
-- "DIFFERENTIAL_VOLTAGE ( (DOp, DOn))";
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 NSC_SCAN921023 : entity is 8;
attribute INSTRUCTION_OPCODE of NSC_SCAN921023 : entity is
"BYPASS (11111111)," &
"EXTEST (00000000)," &
"SAMPLE (10000010)," &
"IDCODE (10000001)," &
"CLAMP (10000111)," &
"HIGHZ (00000110)," &
"RUNBIST (10000011)";
attribute INSTRUCTION_CAPTURE of NSC_SCAN921023 : entity is "XXXXXX01";
attribute IDCODE_REGISTER of NSC_SCAN921023 : entity is
"1000" & -- version
"1111110000100110" & -- part number FC26 TX
"00000001111" & -- manufacturer's identity
"1"; -- required by 1149.1
attribute REGISTER_ACCESS of NSC_SCAN921023 : entity is
"BYPASS (BYPASS, CLAMP, HIGHZ)," &
"BOUNDARY (SAMPLE, EXTEST)," &
"BISTREG[2] (RUNBIST)," &
"DEVICE_ID (IDCODE)";
-- attribute BOUNDARY_CELLS of NSC_SCAN921023 :entity is "BC_1,BC_4";
attribute BOUNDARY_LENGTH of NSC_SCAN921023 : entity is 18;
attribute BOUNDARY_REGISTER of NSC_SCAN921023 : entity is
--
-- num cell port function safe [ccell disval rslt]
--
"17 (BC_4, DIN(8), input, X)," &
"16 (BC_4, DIN(7), input, X)," &
"15 (BC_4, DIN(6), input, X)," &
"14 (BC_4, DIN(5), input, X)," &
"13 (BC_4, DIN(4), input, X)," &
"12 (BC_4, DIN(3), input, X)," &
"11 (BC_4, DIN(2), input, X)," &
"10 (BC_4, DIN(1), input, X)," &
"9 (BC_4, DIN(0), input, X)," &
"8 (BC_4, SYNC2, input, X)," &
"7 (BC_4, SYNC1, input, X)," &
"6 (BC_4, PWRDN, input, X)," &
"5 (BC_1, DOp, output3, X, 4, 0, Z)," &
"4 (BC_1, *, controlr, 0)," &
"3 (BC_4, DEN, input, X)," &
"2 (BC_4, TCLK, input, X)," &
"1 (BC_4, TCLK_R_F, input, X)," &
"0 (BC_4, DIN(9), input, X)";
attribute RUNBIST_EXECUTION of NSC_SCAN921023 : entity is
"Wait_Duration (10.0e-3), "&
"Observing HIGHZ At_Pins, "&
"Expect_Data 01";
end NSC_SCAN921023;