-- File Name :MAX16046.BSD -- Created by :Maxim Integrated Products -- Documentation :MAX16046/MAX16048, MAX16047/MAX16049 data sheet -- -- -- -- BSDL Revision :1.0 -- -- Date created :2/21/08 -- Date modified -- Device :MAX16046 -- Package :64-pin TQFP -- -- -- IMPORTANT NOTICE -- Maxim customers are advised to obtain the latest version of device -- specifications before relying on any published information contained -- herein. Maxim Integrated Products assumes no responsibility or liability -- arising out of the application of any information described herein. -- -- -- -- IMPORTANT NOTICE ABOUT THE REVISION -- -- Maxim customers are advised to check the revision of the -- device they will be using. All the codes for the device revisions are -- herein this BSDL file. -- -- The characters "/", "(", ")" and "*" have been removed from signal names for -- compatibility with BSDL file format. -- -- entity MAX16046 is generic (PHYSICAL_PIN_MAP : string := "TQFP_64"); port ( MONx :linkage bit_vector(1 to 12); RESET :linkage bit; A0 :linkage bit; SCL :linkage bit; SDA :linkage bit; TMS, TCK, TDI :in bit; TDO :out bit; GND :linkage bit_vector(1 to 2); GPIOx :linkage bit_vector(1 to 6); EN :linkage bit; DACOUTx :linkage bit_vector(1 to 12); ABP, DBP :linkage bit; VCC :linkage bit; EN_OUTx :linkage bit_vector(1 to 12) ); use STD_1149_1_2001.all; attribute COMPONENT_CONFORMANCE of MAX16046 : entity is "STD_1149_1_2001"; attribute PIN_MAP of MAX16046 : entity is PHYSICAL_PIN_MAP; constant TQFP_64 : PIN_MAP_STRING := "MONx:(1, 2, 3, 4, 5, 6, 7, 10, 11, 12, 13, 14),"& "RESET:16, A0:17, SCL:18, SDA:19,"& "TMS:20, TDI:21, TCK:22, TDO:23, EN:28,"& "DACOUTx:(29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41),"& "ABP:42, VCC:43, DBP:44, GND:(24, 45),"& "GPIOx:(46, 47, 50, 51, 27, 26),"& "EN_OUTx:(52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63)"; attribute TAP_SCAN_CLOCK of TCK :signal is (1.00e6,BOTH); 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 INSTRUCTION_LENGTH of MAX16046 :entity is 5; attribute INSTRUCTION_OPCODE of MAX16046 :entity is "BYPASS (11111),"& "IDCODE (00000),"& "SAMPLE (00001),"& -- WARNING: UNIMPLEMENTED, DO NOT USE "PRELOAD (00001),"& -- WARNING: UNIMPLEMENTED, DO NOT USE "EXTEST (00010),"& -- WARNING: UNIMPLEMENTED, DO NOT USE "USERCODE (00011),"& "LOADADDR (00100),"& "READ (00101),"& "WRITE (00110),"& "REBOOT (00111),"& "SAVE (01000),"& "SETEXTRAM (01001),"& "RSTEXTRAM (01010),"& "SETEEPADD (01011),"& "RSTEEPADD (01100),"& "RESERVED1 (10000),"& "RESERVED2 (10001)"; attribute INSTRUCTION_CAPTURE of MAX16046 :entity is "X0001"; -- ^ Bit 4=BUSY (1 if device is busy) attribute INSTRUCTION_PRIVATE of MAX16046 :entity is "REBOOT, SAVE, SETEXTRAM, RSTEXTRAM,"& "SETEEPADD, RSTEEPADD, RESERVED1, RESERVED2"; -- REBOOT, SAVE, SETEXTRAM, RSTEXTRAM, SETEEPADD, and RSTEEPADD are available for customer use, but -- they are classified as private because they do not access a particular test data register. attribute IDCODE_REGISTER of MAX16046 :entity is "0000"& -- Version "0000000000000001"& -- Device ID "00011001011"& -- Manufacturer ID "1"; -- Mandatory bit attribute USERCODE_REGISTER of MAX16046 :entity is "00000000000000000"& -- Unused "XXXXXXX"& -- I2C Slave address "XXXXXXXX"; -- Register r61h[7:0] contents attribute REGISTER_ACCESS of MAX16046 :entity is "MEMADDR[8] (LOADADDR), "& "MEMREAD[8] (READ), "& "MEMWRITE[8] (WRITE)"; -- Data shifted out is status byte: Bit 0= 1 if EEPROM is busy), Bit 1= 1 if address invalid. -- The MAX16046 does not implement boundary scan registers. attribute BOUNDARY_LENGTH of MAX16046 :entity is 1; attribute BOUNDARY_REGISTER of MAX16046 :entity is "0 (BC_1, *, internal,X)"; end MAX16046;