Each device has a unique 96-bit DNA identifier number to improve security. No two devices have the same DNA. A DNA identifier number exists in the PL and the PS.
AMD recommends using the PL-based DNA identifier for secure applications that depend on an unchangeable and unique device identifier. There is a PS-based DNA identifier, but it is possible that one or more of its bits could be changed.
Note: The PL and PS DNA identifiers might not be exactly the same as shipped by AMD.
The PL DNA identifier cannot be changed (all PL DNA bits are read-only). Table: Device DNAIdentifiers lists the device DNA identifiers.
Identifier |
Length |
Read-only? |
Read Access Methods |
---|---|---|---|
PL DNA |
96 bits |
Yes, always. |
Method 1: instantiate the PL DNA_PORTE2 primitive Method 2: connect to the JTAG PL TAP controller and use the FUSE_DNA instruction Note: For more details, see the UltraScale Architecture Configuration User Guide (UG570) [Ref 33]. Note: The Vivado Hardware Manager displays the PL DNA value. |
PS DNA |
96 bits |
No, not all bits. |
Access the read-only EFUSE.DNA_x registers at addresses: • DNA_0: 0xFFCC_100C • DNA_1: 0xFFCC_1010 • DNA_2: 0xFFCC_1014 Note: The SDK API, XilSKey_ZynqMp_EfusePs_ReadDna, returns the PS DNA value. |
The AMD 2D bar code that is printed on the top of each device also includes the PL DNA identifier.