--****************************************************************************** --** Copyright (c) 2001 Cypress Semiconductor --** All rights reserved. --** --** File Name: cyp15g0402-DXA.bsdl --** Release: 1.0 --** --** Last Updated: May 14, 2002 --** --** Function: Quad HOTLink-II Tranceiver, BSDL file for JTAG --** Part #: CYP15G0402DXA-BGC --** --** Notes: IMPORTANT NOTE: Please be aware that the CYP15G0402DXA-BGC Quad --** HOTLink-II Tranceiver device is not 1149.1 compliant. Therefore, --** the BSDL simulation file given below is intended as an example. --** Ref CYP15G0402DXA-BGC Datasheet at www.cypress.com --** --** The incompatibility of the BSDL file is due to the fact that the --** the chip reset and the JTAG reset (TRSTZn) are the same signals. --** --** The CYP15G0402DXA-BGC has a few tri-state control signals. These --** signals are SDASEL, SPDSEL, PARCTL, RFMODE etc. --** The tri state is implemented in the BSDL file as follows: --** Input vector : 11 => HIGH --** Input vector : 10 => MID, where 1 is the MSB and 0 is the LSB. --** Input vector : 00 => LOW. --** (e.g for SDASEL, register #170 is LSB and 169 is MSB. ) --** --** The CYP15G0402DXB-BGC revision of this device will be 1149.1 --** compliant. In this case, the TRSTZn will function as the chip --** reset only. The JTAG will have a power-on-reset. The changes --** needed to be made to the BSDL file is to comment out the --** following line. --** -- attribute TAP_SCAN_RESET of TRSTZn: signal is true; --** --** Queries ?: Contact DCD Applications at 408-943-2891 --****************************************************************************** entity cyp15g0402 is generic (PHYSICAL_PIN_MAP : string := "BGC_256"); port ( TXPERA: out bit; TXPERB: out bit; TXPERC: out bit; TXPERD: out bit; TXDA: in bit_vector(0 to 9); TXDB: in bit_vector(0 to 9); TXDC: in bit_vector(0 to 9); TXDD: in bit_vector(0 to 9); TXOPA: in bit; TXOPB: in bit; TXOPC: in bit; TXOPD: in bit; TXRST_B: in bit; TXCKSEL: in bit; TXRATE: in bit; TXCLKA: in bit; TXCLKB: in bit; TXCLKC: in bit; TXCLKD: in bit; RXDA: out bit_vector(0 to 9); RXDB: out bit_vector(0 to 9); RXDC: out bit_vector(0 to 9); RXDD: out bit_vector(0 to 9); COMDETA: out bit; COMDETB: out bit; COMDETC: out bit; COMDETD: out bit; RXOPA: out bit; RXOPB: out bit; RXOPC: out bit; RXOPD: out bit; RXRATE: in bit; FRAMCHAR: in bit; RFMODE: in bit; RXCLKAN: out bit; RXCLKAP: inout bit; RXCLKBN: out bit; RXCLKBP: inout bit; RXCLKCN: out bit; RXCLKCP: inout bit; RXCLKDN: out bit; RXCLKDP: inout bit; RFENA: in bit; RFENB: inout bit; RFENC: inout bit; RFEND: inout bit; PARCTL: in bit; REFCLKP: in bit; REFCLKN: in bit; SPDSEL: in bit; SDASEL: in bit; OUTAP: linkage bit; OUTAN: linkage bit; OUTBP: linkage bit; OUTBN: linkage bit; OUTCP: linkage bit; OUTCN: linkage bit; OUTDP: linkage bit; OUTDN: linkage bit; INAP: linkage bit; INAN: linkage bit; INBP: linkage bit; INBN: linkage bit; INCP: linkage bit; INCN: linkage bit; INDP: linkage bit; INDN: linkage bit; LPENA: in bit; LPENB: in bit; LPENC: in bit; LPEND: in bit; OELE: in bit; BISTLE: in bit; RXLE: in bit; BOE: in bit_vector(0 to 7); LFIA_B: out bit; LFIB_B: out bit; LFIC_B: out bit; LFID_B: out bit; TMS: in bit; TDI: in bit; TCLK: in bit; TXCLKOP: out bit; TXCLKON: out bit; TDO: out bit; TRSTZ_B: in bit; VCC: linkage bit_vector(0 to 31); NC: linkage bit_vector(0 to 21); GND: linkage bit_vector(0 to 36) ); use STD_1149_1_1994.all; attribute COMPONENT_CONFORMANCE of cyp15g0402 : entity is "STD_1149_1_1993"; attribute PIN_MAP of cyp15g0402 : entity is PHYSICAL_PIN_MAP; constant BGC_256: PIN_MAP_STRING := "TXPERA: Y12, " & "TXPERB: R20, " & "TXPERC: F1, " & "TXPERD: R3, " & "TXDA: (Y14,U12,W14,V14,U14,Y15,W15,V15,U15,Y17), " & "TXDB: (R18,R17,P20,P19,P18,P17,L20,M19,M18,M17), " & "TXDC: (F3,G4,J3,J4,G3,J2,L4,G1,K3,J1), " & "TXDD: (U1,U2,U3,V1,V2,W1,Y1,W2,V3,U4), " & "TXOPA: W11, " & "TXOPB: R19, " & "TXOPC: F2, " & "TXOPD: R4, " & "TXRST_B: W10, " & "TXCKSEL: G2, " & "TXRATE: C17, " & "TXCLKA: Y11, " & "TXCLKB: M20, " & "TXCLKC: L3, " & "TXCLKD: Y2, " & "RXDA: (U20,V20,V19,W20,U17,V18,W19,Y20,Y19,V17), " & "RXDB: (F18,F20,J18,G20,J20,K17,K18,J19,L17,K19), " & "RXDC: (P4,P3,P2,P1,K1,L1,M1,M2,M4,M3), " & "RXDD: (W7,V7,Y7,U7,U6,V6,W6,Y6,V4,Y3), " & "COMDETA: U19, " & "COMDETB: J17, " & "COMDETC: R1, " & "COMDETD: V9, " & "RXOPA: U18, " & "RXOPB: F19, " & "RXOPC: R2, " & "RXOPD: U9, " & "RXRATE: C18, " & "FRAMCHAR: G19, " & "RFMODE: D6, " & "RXCLKAP: Y18, " & "RXCLKAN: W18, " & "RXCLKBP: K20, " & "RXCLKBN: L19, " & "RXCLKCP: L2, " & "RXCLKCN: K2, " & "RXCLKDP: Y4, " & "RXCLKDN: W4, " & "RFENA: W12, " & "RFENB: V12, " & "RFENC: U10, " & "RFEND: V10, " & "PARCTL: C6, " & "REFCLKP: V11, " & "REFCLKN: U11, " & "OUTAP: B12, " & "OUTAN: A12, " & "OUTBP: B18, " & "OUTBN: A18, " & "OUTCP: B2, " & "OUTCN: A2, " & "OUTDP: B7, " & "OUTDN: A7, " & "INAP: B11, " & "INAN: A11, " & "INBP: B17, " & "INBN: A17, " & "INCP: B1, " & "INCN: A1, " & "INDP: B6, " & "INDN: A6, " & "LPENA: D4, " & "LPENB: C4, " & "LPENC: C3, " & "LPEND: D3, " & "OELE: G18, " & "BISTLE: F17, " & "RXLE: D18, " & "BOE: (D12,C12,D11,C11,D10,C10,D9,C9), " & "LFIA_B: W17, " & "LFIB_B: L18, " & "LFIC_B: K4, " & "LFID_B: W3, " & "TDI: C1, " & "SPDSEL: D7, " & "SDASEL: C7, " & "TCLK: D1, " & "TMS: C2, " & "TDO: C20, " & "TRSTZ_B: D2, " & "TXCLKOP: Y9, " & "TXCLKON: W9, " & "VCC: (A5,B5,C5,D5,A16,B16,C16,D16,E17,E18,E19,E20, " & " T17,T18,T19,T20,U16,V16,W16,Y16,E1,E2,E3,E4, " & " T1,T2,T3,T4,U5,V5,W5,Y5), " & "GND: (A8,B8,C8,D8,A13,B13,C13,D13,C14,D14,C15,D15, " & " G17,H1,H2,H3,H4,H17,H18,H19,H20,N1,N2,N3,N4, " & " N17,N18,N19,N20,U8,V8,W8,Y8,U13,V13,W13,Y13), " & "NC: (A3,B3,A4,B4,A9,B9,A10,B10,A14,B14,A15,B15, " & " D17,A19,B19,C19,D19,A20,B20,D20,F4,Y10) "; 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; attribute TAP_SCAN_RESET of TRSTZ_B : signal is true; attribute TAP_SCAN_CLOCK of TCLK : signal is (10.0e6, BOTH); attribute INSTRUCTION_LENGTH of cyp15g0402 : entity is 3; attribute INSTRUCTION_OPCODE of cyp15g0402 : entity is "EXTEST (000)," & "IDCODE (010)," & "SAMPLE (001)," & "USER1 (011)," & "BYPASS (111)"; attribute INSTRUCTION_CAPTURE of cyp15g0402 : entity is "001"; attribute INSTRUCTION_PRIVATE of cyp15g0402 : entity is "USER1"; attribute IDCODE_REGISTER of cyp15g0402 : entity is "0000" & -- 4 bit version number "1100100000000001" & -- 16 bit part number "00001101001" & -- 11-bit identity of the manufacturer "1"; -- required by IEEE standard 1149.1 attribute REGISTER_ACCESS of cyp15g0402 : entity is "BOUNDARY (EXTEST,SAMPLE)," & "DEVICE_ID (IDCODE)," & "UTDR1[24] (USER1)," & "BYPASS (BYPASS)"; attribute BOUNDARY_LENGTH of cyp15g0402 : entity is 175; attribute BOUNDARY_REGISTER of cyp15g0402 : entity is "174 (BC_4, BOE(5), input, X), " & "173 (BC_4, BOE(4), input, X), " & "172 (BC_4, BOE(7), input, X), " & "171 (BC_4, BOE(6), input, X), " & "170 (BC_4, SDASEL, input, X), " & "169 (BC_4, SDASEL, input, X), " & "168 (BC_4, SPDSEL, input, X), " & "167 (BC_4, SPDSEL, input, X), " & "166 (BC_4, PARCTL, input, X), " & "165 (BC_4, PARCTL, input, X), " & "164 (BC_4, RFMODE, input, X), " & "163 (BC_4, RFMODE, input, X), " & "162 (BC_4, LPENB, input, X), " & "161 (BC_4, LPENA, input, X), " & "160 (BC_4, LPENC, input, X), " & "159 (BC_4, LPEND, input, X), " & "158 (BC_1, TXPERC, output2, X), " & "157 (BC_4, TXOPC, input, X), " & "156 (BC_4, TXDC(0), input, X), " & "155 (BC_4, *, internal, X), " & "154 (BC_4, *, internal, X), " & "153 (BC_4, TXDC(1), input, X), " & "152 (BC_4, TXDC(2), input, X), " & "151 (BC_4, TXDC(3), input, X), " & "150 (BC_4, TXCKSEL, input, X), " & "149 (BC_4, TXCKSEL, input, X), " & "148 (BC_4, TXDC(4), input, X), " & "147 (BC_4, TXDC(5), input, X), " & "146 (BC_4, TXDC(6), input, X), " & "145 (BC_4, TXDC(7), input, X), " & "144 (BC_1, LFIC_B, output2, X), " & "143 (BC_4, TXDC(9), input, X), " & "142 (BC_4, TXDC(8), input, X), " & "141 (BC_4, TXCLKC, input, X), " & "140 (BC_4, *, internal, X), " & "139 (BC_1, RXCLKCp, output3, X, 137, 0, Z), " & "138 (BC_4, RXCLKCp, input, X), " & "137 (BC_1, *, controlr, 0), " & "136 (BC_1, RXDC(9), output2, X), " & "135 (BC_1, RXDC(8), output2, X), " & "134 (BC_1, RXDC(7), output2, X), " & "133 (BC_1, RXDC(6), output2, X), " & "132 (BC_1, RXDC(5), output2, X), " & "131 (BC_1, RXDC(4), output2, X), " & "130 (BC_1, RXDC(3), output2, X), " & "129 (BC_1, RXDC(2), output2, X), " & "128 (BC_1, RXDC(1), output2, X), " & "127 (BC_1, RXDC(0), output2, X), " & "126 (BC_1, COMDETC, output2, X), " & "125 (BC_1, RXOPC, output3, X, 124, 0, Z), " & "124 (BC_1, *, controlr, 0), " & "123 (BC_1, TXPERD, output2, X), " & "122 (BC_4, TXOPD, input, X), " & "121 (BC_4, TXDD(0), input, X), " & "120 (BC_4, TXDD(1), input, X), " & "119 (BC_4, TXDD(2), input, X), " & "118 (BC_4, TXDD(3), input, X), " & "117 (BC_4, TXDD(4), input, X), " & "116 (BC_4, TXDD(5), input, X), " & "115 (BC_4, TXDD(6), input, X), " & "114 (BC_4, TXDD(7), input, X), " & "113 (BC_4, TXDD(9), input, X), " & "112 (BC_4, TXDD(8), input, X), " & "111 (BC_4, TXCLKD, input, X), " & "110 (BC_1, LFID_B, output2, X), " & "109 (BC_1, RXDD(9), output2, X), " & "108 (BC_1, RXDD(8), output2, X), " & "107 (BC_1, RXCLKDp, output3, X, 105, 0, Z), " & "106 (BC_4, RXCLKDp, input, X), " & "105 (BC_1, *, controlr, 0), " & "104 (BC_1, RXDD(7), output2, X), " & "103 (BC_1, RXDD(6), output2, X), " & "102 (BC_1, RXDD(5), output2, X), " & "101 (BC_1, RXDD(4), output2, X), " & "100 (BC_1, RXDD(3), output2, X), " & "99 (BC_1, RXDD(2), output2, X), " & "98 (BC_1, RXDD(1), output2, X), " & "97 (BC_1, RXDD(0), output2, X), " & "96 (BC_1, COMDETD, output2, X), " & "95 (BC_1, RXOPD, output3, X, 124, 0, Z), " & "94 (BC_1, TXCLKOP, output2, X), " & "93 (BC_1, RFEND, output3, X, 91, 0, Z), " & "92 (BC_4, RFEND, input, X), " & "91 (BC_1, *, controlr, 0), " & "90 (BC_4, TXRST_B, input, X), " & "89 (BC_4, REFCLKP, input, X), " & "88 (BC_4, RFENA, input, X), " & "87 (BC_4, RFENC, input, X), " & "86 (BC_1, *, internal, X), " & "85 (BC_4, *, internal, X), " & "84 (BC_1, RFENB, output3, X, 91, 0, Z), " & "83 (BC_4, RFENB, input, X), " & "82 (BC_1, TXPERA, output2, X), " & "81 (BC_4, TXOPA, input, X), " & "80 (BC_4, TXCLKA, input, X), " & "79 (BC_4, TXDA(0), input, X), " & "78 (BC_4, TXDA(1), input, X), " & "77 (BC_4, TXDA(2), input, X), " & "76 (BC_4, TXDA(3), input, X), " & "75 (BC_4, TXDA(4), input, X), " & "74 (BC_4, TXDA(5), input, X), " & "73 (BC_4, TXDA(6), input, X), " & "72 (BC_4, TXDA(7), input, X), " & "71 (BC_4, TXDA(8), input, X), " & "70 (BC_4, TXDA(9), input, X), " & "69 (BC_1, RXCLKAP, output3, X, 67, 0, Z), " & "68 (BC_4, RXCLKAP, input, X), " & "67 (BC_1, *, controlr, 0), " & "66 (BC_1, LFIA_B, output2, X), " & "65 (BC_1, RXDA(9), output2, X), " & "64 (BC_1, RXDA(8), output2, X), " & "63 (BC_1, RXDA(7), output2, X), " & "62 (BC_1, RXDA(6), output2, X), " & "61 (BC_1, RXDA(5), output2, X), " & "60 (BC_1, RXDA(4), output2, X), " & "59 (BC_1, RXDA(3), output2, X), " & "58 (BC_1, RXDA(2), output2, X), " & "57 (BC_1, RXOPA, output3, X, 124, 0, Z), " & "56 (BC_1, RXDA(0), output2, X), " & "55 (BC_1, RXDA(1), output2, X), " & "54 (BC_1, COMDETA, output2, X), " & "53 (BC_1, TXPERB, output2, X), " & "52 (BC_4, TXOPB, input, X), " & "51 (BC_4, TXCLKB, input, X), " & "50 (BC_4, TXDB(0), input, X), " & "49 (BC_4, TXDB(1), input, X), " & "48 (BC_4, TXDB(2), input, X), " & "47 (BC_4, TXDB(3), input, X), " & "46 (BC_4, TXDB(4), input, X), " & "45 (BC_4, TXDB(5), input, X), " & "44 (BC_4, TXDB(6), input, X), " & "43 (BC_4, TXDB(7), input, X), " & "42 (BC_4, TXDB(8), input, X), " & "41 (BC_4, TXDB(9), input, X), " & "40 (BC_1, RXCLKBP, output3, X, 38, 0, Z), " & "39 (BC_4, RXCLKBP, input, X), " & "38 (BC_1, *, controlr, 0), " & "37 (BC_1, LFIB_B, output2, X), " & "36 (BC_1, RXDB(9), output2, X), " & "35 (BC_1, RXDB(8), output2, X), " & "34 (BC_1, RXDB(7), output2, X), " & "33 (BC_1, RXDB(6), output2, X), " & "32 (BC_1, RXDB(5), output2, X), " & "31 (BC_1, RXDB(4), output2, X), " & "30 (BC_1, RXDB(3), output2, X), " & "29 (BC_1, RXDB(2), output2, X), " & "28 (BC_1, RXDB(1), output2, X), " & "27 (BC_1, RXDB(0), output2, X), " & "26 (BC_1, COMDETB, output2, X), " & "25 (BC_1, RXOPB, output3, X, 124, 0, Z), " & "24 (BC_4, OELE, input, X), " & "23 (BC_4, *, internal, X), " & "22 (BC_4, *, internal, X), " & "21 (BC_4, BISTLE, input, X), " & "20 (BC_4, FRAMCHAR, input, X), " & "19 (BC_4, FRAMCHAR, input, X), " & "18 (BC_4, BOE(3), input, X), " & "17 (BC_4, BOE(2), input, X), " & "16 (BC_4, BOE(1), input, X), " & "15 (BC_4, BOE(0), input, X), " & "14 (BC_4, *, internal, X), " & "13 (BC_4, *, internal, X), " & "12 (BC_4, *, internal, X), " & "11 (BC_4, *, internal, X), " & "10 (BC_4, *, internal, X), " & "9 (BC_4, *, internal, X), " & "8 (BC_4, *, internal, X), " & "7 (BC_4, *, internal, X), " & "6 (BC_4, TXRATE, input, X), " & "5 (BC_4, *, internal, X), " & "4 (BC_4, RXRATE, input, X), " & "3 (BC_4, RXLE, input, X), " & "2 (BC_4, *, internal, X), " & "1 (BC_4, *, internal, X), " & "0 (BC_4, *, internal, X) "; end cyp15g0402;