- Top package marking
- IDCODE + EXTENDED_IDCODE register values
- Device DNA register value
Security features such as PUF can also be used to create a unique identifier. For more information on using PUF, see Security Management.
Package Marking
The Versal devices have a top package marking that includes a 2D code.For more information about package marking, see the Versal Adaptive SoC Packaging and Pinouts Architecture Manual (AM013).
Device Identification Code
The Versal device has a 32-bit device identification code (IDCODE), which conforms to the IEEE Std 1149.1 (JTAG). The IDCODE used with the EXTENDED_IDCODE can identify the type of AMD device. See the Versal device data sheet for device identification values.
The IDCODE can be read via the JTAG interface or from PMC IDCODE register.
Extended Identification Code
The Versal device has an extended identification code that is stored in the 32-bit EXTENDED_IDCODE register. The IDCODE used with the EXTENDED_IDCODE can identify the type of AMD device. See the Versal device data sheet for device identification values.
The EXTENDED_IDCODE can be read via the JTAG interface or from the PMC EXTENDED_IDCODE register.
DNA Introduction
The device DNA is a unique 128-bit factory-programmed identifier for each device. The JTAG TAP instruction, READ_DNA, reads the DNA value through the JTAG interface. The device DNA value can also be read from the PMC DNA_0, DNA_1, DNA_2, and DNA_3 registers.
| Register Type | Register Name | Address (Hex) | Description |
|---|---|---|---|
| 32-bit memory mapped, read only | DNA_0 |
0xF125_0020
|
DNA 0 register contains DNA bits[31:0] |
| DNA_1 |
0xF125_0024
|
DNA 1 register contains DNA bits[63:32] | |
| DNA_2 |
0xF125_0028
|
DNA 2 register contains DNA bits[95:64] | |
| DNA_3 |
0xF125_002C
|
DNA 3 register contains DNA bits[127:96] |