Generic (PHYSICAL PIN MAP : String := Dip24 );

Total Page:16

File Type:pdf, Size:1020Kb

Generic (PHYSICAL PIN MAP : String := Dip24 );

entity MSTDEV is generic (PHYSICAL_PIN_MAP : string := "dip24"); port(

-- TAP pins, as per 1149.1 TCK, TDI, TMS: in bit; TDO: out bit;

-- ATAP and ATAPN pins, as per 1149.4 AT1, AT2, AT1N, AT2N: inout bit;

-- digital pins, as per 1149.1 A, B: in bit; C: out bit;

-- digital differential pins, as per 1149.1 D1, D1N: in bit; D2, D2N: out bit; D3, D3N: inout bit;

-- analog single-ended pins, as per 1149.4 W, Y: inout bit;

-- analog differential pins, as per 1149.4 X, XN : inout bit;

-- linkage pins, as per 1149.1 NC: linkage bit; GND, VCC: linkage bit);

-- Get Std 1149.1-2001 attributes and definitions use STD_1149_1_2001.all;

-- Get MST attributes and definitions use STD_1149_4_2007.all; attribute COMPONENT_CONFORMANCE of MSTDEV : entity is "STD_1149_1_2001"; attribute PIN_MAP of MSTDEV : entity is PHYSICAL_PIN_MAP; constant dip24 : PIN_MAP_STRING := ------NC | 1 24 | VCC -- A | 2 23 | D2 -- B | 3 22 | D2N -- C | 4 21 | D3 -- D1 | 5 20 | D3N -- D1N | 6 19 | W -- AT1 | 7 18 | Y -- AT1N | 8 17 | X -- TDI | 9 16 | XN -- TMS | 10 15 | AT2 -- TCK | 11 14 | AT2N -- GND | 12 13 | TDO ------"TCK:11, TDI:9, TMS:10, " & "TDO:13, " &

1 "AT1:7, AT2:15, " & "AT1N:8, AT2N:14, " & "A:2, B:3, " & "C:4, " & "D1:5, D1N:6, " & "D2:23, D2N:22, " & "D3:21, D3N:20, " & "W:19, Y:18, " & "X:17, XN:16, " & "NC:1, " & "GND:12, VCC:24";

-- grouped port identification, as per 1149.1 -- = required for digital differentials attribute PORT_GROUPING of MSTDEV : entity is "Differential_Voltage ((D1, D1N)),"& "Differential_Current ((D2, D2N)),"& "Differential_Voltage ((D3, D3N))"; attribute TAP_SCAN_CLOCK of TCK : signal is (20.0e6, BOTH); attribute TAP_SCAN_MODE of TMS : signal is true; attribute TAP_SCAN_IN of TDI : signal is true; attribute TAP_SCAN_OUT of TDO : signal is true; attribute INSTRUCTION_LENGTH of MSTDEV : entity is 4; attribute INSTRUCTION_OPCODE of MSTDEV : entity is -- mandatory instructions, as per 1149.1 "EXTEST (1000), " & "PRELOAD (0010), " & "SAMPLE (0010), " & "BYPASS (0111), " & -- mandatory instruction, as per 1149.4 -- = opcode may have any value except all ones -- = opcode value all zeros is not recommended (as per 1149.1) "PROBE (1011), " & -- optional instructions, as per 1149.1 "CLAMP (0100), " & "HIGHZ (1101), " & "INTEST (1110), " & "IDCODE (0001)"; attribute INSTRUCTION_CAPTURE of MSTDEV : entity is "0001"; attribute IDCODE_REGISTER of MSTDEV : entity is "0011" & -- version "0000000000000001" & -- part number "10101010101" & -- manufacturer id "1"; attribute REGISTER_ACCESS of MSTDEV : entity is -- access to mandatory registers, as per 1149.1 "BOUNDARY (EXTEST, PRELOAD, SAMPLE), " & "BYPASS (BYPASS), " & "BOUNDARY (INTEST), " & -- access to mandatory registers, as per 1149.4 -- = register BOUNDARY must be accessed by instruction PROBE "BOUNDARY (PROBE), " & -- access to optional register, as per 1149.1

2 "DEVICE_ID (IDCODE)"; attribute BOUNDARY_LENGTH of MSTDEV : entity is 40; attribute BOUNDARY_REGISTER of MSTDEV : entity is

-- following cells (4) are TBICN base controls -- num cell port function safe [ccell disval rslt] "39 (BC_7, AT2N, bidir, 0, 37, 0, Z), " & -- D2 "38 (BC_7, AT1N, bidir, 0, 37, 0, Z), " & -- D1 "37 (BC_1, *, control, 0), " & -- Co "36 (BC_1, *, internal, 0), " & -- Ca

-- following cells (2) are TBIC partition controls -- num cell port function safe "35 (BC_1, *, internal, 0), " & -- D2 "34 (BC_1, *, internal, 0), " & -- D1

-- following cells (4) are TBIC base controls -- num cell port function safe [ccell disval rslt] "33 (BC_7, AT2, bidir, 0, 31, 0, Z), " & -- D2 "32 (BC_7, AT1, bidir, 0, 31, 0, Z), " & -- D1 "31 (BC_1, *, control, 0), " & -- Co "30 (BC_1, *, internal, 0), " & -- Ca

-- following cells (3) are for the digital input differential pins -- num cell port function safe [ccell disval rslt] "29 (BC_1, D1, input, x), " & -- D1:D1N single-ended "28 (BC_4, D1N, observe_only, x), " & "27 (BC_4, D1, observe_only, x), " &

-- following cells (3) are for the digital pins -- num cell port function safe [ccell disval rslt] "26 (BC_1, C, output2, x), " & "25 (BC_1, B, input, x), " & "24 (BC_1, A, input, x), " &

-- following cells (3) are for the digital output differential pins -- num cell port function safe [ccell disval rslt] "23 (BC_4, D2, observe_only, x), " & "22 (BC_4, D2N, observe_only, x), " & "21 (BC_1, D2, output2, x), " & -- D2:D2N driver cell

-- following cells (5) are for the digital bidirectional differential pins -- num cell port function safe [ccell disval rslt] "20 (BC_4, D3, observe_only, x), " & "19 (BC_4, D3N, observe_only, x), " & "18 (BC_1, D3, input, x), " & -- D3:D3N single-ended "17 (BC_1, *, control, 0), " & -- controls output enable "16 (BC_1, D3, output3, x, 17, 0, Z), " & -- D3:D3N driver cell

-- following cells (4) control the analog signal W -- num cell port function safe [ccell disval rslt] "15 (BC_1, *, control, 0), " & -- C "14 (BC_7, W, bidir, x, 15, 0, Z), " & -- D "13 (BC_1, *, internal, 0), " & -- B1 "12 (BC_1, *, internal, 0), " & -- B2

-- following cells (4) control the analog signal Y

3 -- num cell port function safe [ccell disval rslt] "11 (BC_1, *, control, 0), " & -- C "10 (BC_7, Y, bidir, x, 11, 0, Z), " & -- D "9 (BC_1, *, internal, 0), " & -- B1 "8 (BC_1, *, internal, 0), " & -- B2

-- following cells (4) control the analog differential signal X -- num cell port function safe [ccell disval rslt] "7 (BC_1, *, control, 0), " & -- C "6 (BC_7, X, bidir, x, 7, 0, Z), " & -- D "5 (BC_1, *, internal, 0), " & -- B1 "4 (BC_1, *, internal, 0), " & -- B2

-- following cells (4) control the analog differential signal XN -- num cell port function safe [ccell disval rslt] "3 (BC_1, *, control, 0), " & -- C "2 (BC_7, XN, bidir, x, 3, 0, Z), " & -- D "1 (BC_1, *, internal, 0), " & -- B1 "0 (BC_1, *, internal, 0)" ; -- B2

-- BSDL extensions follow, as per 1149.1 -- MST attributes declared in package "Std_1149_4_2007", as per 1149.4

-- component conformance, as per 1149.4 attribute MST_COMPONENT_CONFORMANCE of MSTDEV : entity is "STD_1149_4_1999";

-- ATAP port identification, as per 1149.4 -- MST ATAP Identification attribute MST_AT1 of MSTDEV : entity is "AT1"; attribute MST_AT2 of MSTDEV : entity is "AT2";

-- ATAPN port identification, as per 1149.4 -- MST ATAP Identification -- = only required for optional differential ATAP attribute MST_AT1N of MSTDEV : entity is "AT1N"; attribute MST_AT2N of MSTDEV : entity is "AT2N";

-- MST test bus TBIC statement, as per 1149.4 attribute MST_TestBus_TBIC of MSTDEV : entity is " AT1, AT2 : " & -- pin1, pin2 " 30, 31 " & -- Ca_num, Co_num -- partition_name D1_num D2_num "( BASE (32, 33), " & " PART (34, 35), " & " AT1N, AT2N : " & -- pin1, pin2 " 36, 37 " & -- Ca_num, Co_num -- Npartition_name D1_num D2_num "( BASEN (38, 39)";

-- MST ABM statement, as per 1149.4 attribute MST_ABM of MSTDEV : entity is -- ABMs, as per 1149.4 = ref tables 6, 7, and 8 -- port partition_name C_num D_num B1_num B2_num "W ( BASE : 15, 14, 13, 12 ), " & "Y ( BASE : 11, 10, 9, 8 ), " & "X ( PART : 7, 6, 5, 4 ), " & "XN ( BASEN : 3, 2, 1, 0 )" ;

4 -- MST differential statement, as per 1149.4 attribute MST_PORT_GROUPING of MSTDEV : entity is "Differential_Digital ( " & "((D1, D1N) : 29), " & -- cell 29 captures D1 value "((D3, D3N) : 18))," & -- cell 18 captures D3 value

"Differential_Analog ( " & "((X, XN) : 5)) " ; -- cell 5 captures digitized voltage difference between X and XN -- cell 5 is B1 of the representative port, refer to 7.4.1.1h and i. end MSTDEV;

5

Recommended publications