Kinetis unique Identification number (UID) shorter.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Kinetis unique Identification number (UID) shorter.

Jump to solution
3,753 Views
night
Contributor II

Hello,

I need to use an unique identification number for serial production. Kinetis family have an unique 128 bits number, but I need a shorter number(64 bits). What is the structure of the UID? Can I obtain from the UID a unique number of 64 bits?

Very thanks.

    Miguel Ángel.

Tags (2)
1 Solution
1,764 Views
Paul_Tian
NXP Employee
NXP Employee

Hi, Miguel

The Unique ID number must be used with the complete 128-bit number; we cannot assume that the LSB/MSB part is going to be unique. The Unique ID is programmed during manufactory and the algorithm to generate. The algorithm cannot be shared. If you get some chips and read out these UID registers, you can find there is no abvious regularity between them. I am sorry for the inconvenience. Thanks a lot for your understanding.

Best Regards

Paul

View solution in original post

0 Kudos
Reply
5 Replies
1,764 Views
jeremyruhland
Contributor I

I ran into this thread via google search, if anyone else does as well I'd like to share my current solution. You can reduce the ID by XORing registers together, for example:

uint64_t idCodeShort = (((uint64_t) (SIM_UIDMH ^ SIM_UIDML)) << 32) | ((uint64_t) (SIM_UIDL ^ SIM_SDID));

Or:

uint32_t idCodeEvenShorter = (SIM_UIDMH ^ SIM_UIDML ^ SIM_UIDL ^ SIM_SDID);

This WILL NOT guarantee a unique code but may be suitable for your particular situation (seed value/etc).

1,764 Views
kai_liu
Senior Contributor I

FSL released AN2295 application not about serial bootloader with source code, you might get the answer by checking its source code for UID structure used in Kinetis.

0 Kudos
Reply
1,764 Views
Paul_Tian
NXP Employee
NXP Employee

Hi, Angel

As I know, you need use the 128bit to separate from any Kinetis chip to others. 64bits might cannot identify every uniqie chip.

Hope my reply can help you.

Best Regards

Paul

1,764 Views
night
Contributor II

Dear Paul,

we need use 64 bits code only, because this number is so long (UID 128 bits) for our identification system. Is very important for us reduce it to 64 bits. If you know the structure of this number and if some bytes are repeated maybe we reduce it to 64 bits without repeat any number.

Can you help me? What is the structure used for this number? We only use Kinetis family.

     Very thanks Paul. Best Regards,

     Miguel Ángel.

0 Kudos
Reply
1,765 Views
Paul_Tian
NXP Employee
NXP Employee

Hi, Miguel

The Unique ID number must be used with the complete 128-bit number; we cannot assume that the LSB/MSB part is going to be unique. The Unique ID is programmed during manufactory and the algorithm to generate. The algorithm cannot be shared. If you get some chips and read out these UID registers, you can find there is no abvious regularity between them. I am sorry for the inconvenience. Thanks a lot for your understanding.

Best Regards

Paul

0 Kudos
Reply