Is there any unique chip serial number, burned at the factory? I mean some number, like in the attachment. For my application is not possible to use BD address.
Thanks for your question online. You can get a unique identifier from the Configuration Script (CS) which is stored into the OTP Header. Please use the SmartSnippets Toolbox and read the contents of the OTP Header. If you hover into the “Value” column of the configuration script, you will be able to read the contents of CS. In the 0x00000004 address of the CS, the Product Chip Info is located, so you will need to read the Value 1, Value 2, Value 3. The Product Chip Info is 3 words. This will give you a unique identifier burned at the factory.
下面是一个参考代码片段阅读价值e 1, Value 2, Value 3 which give you an unique chip identifier. In the attached code you will find a short example of extracting the chip package information and the chip family information. The unique chip identifier is stored into my_unique_id[].
include "sys_tcs.h" /* Reading Chip unique ID CS information code snippet */ void read_ID(void) { uint32_t *tcs_ptr; uint8_t read_len; volatile uint8_t chip_package __unused; volatile uint8_t chip_family __unused; uint32_t my_unique_id[3]; sys_tcs_get_custom_values(SYS_TCS_GROUP_PROD_INFO, &tcs_ptr, &read_len); if (read_len != 3) { //FAILED to read the Product info CS section } else { //Example of extracting the chip package information only chip_package = ((uint8_t *) tcs_ptr)[10]; for (int i = 0; i < read_len; i++) { //Example of extracting the Chip unique ID my_unique_id[i] = tcs_ptr[i]; //printf("Unique ID[%d]: %lu\n\r", i, my_unique_id[i]); } } sys_tcs_get_custom_values(SYS_TCS_GROUP_CHIP_ID, &tcs_ptr, &read_len); if (read_len != 1) { //FAILED to read the CHIP info CS section } else { //Example of extracting the chip family information only chip_family = ((uint8_t *) tcs_ptr)[0]; } }
Hi aectaan,
Thanks for your question online. You can get a unique identifier from the Configuration Script (CS) which is stored into the OTP Header. Please use the SmartSnippets Toolbox and read the contents of the OTP Header. If you hover into the “Value” column of the configuration script, you will be able to read the contents of CS. In the 0x00000004 address of the CS, the Product Chip Info is located, so you will need to read the Value 1, Value 2, Value 3. The Product Chip Info is 3 words. This will give you a unique identifier burned at the factory.
Position/Package:
Byte10: 0x00 - (Reserved) 0x01 – VFBGA86 0x02 – VFBGA100
Byte9: Wafer number
Byte 8: Y coord
Byte 7: X coord
Tester/Timestamp:
Byte 6: Tester ID (MSByte)
Byte 5: Tester ID (LSByte)
Byte 4: Tester Site
Byte 3: TimeStamp Byte 3
Byte 2: TimeStamp Byte 2
Byte 1: TimeStamp Byte 1
Byte 0: TimeStamp Byte 0
下面是一个参考代码片段阅读价值e 1, Value 2, Value 3 which give you an unique chip identifier. In the attached code you will find a short example of extracting the chip package information and the chip family information. The unique chip identifier is stored into my_unique_id[].
Thanks, PM_Dialog