一、Device DNA 具体含义
Device DNA 是 AMD Xilinx 现场可编程门阵列 和自适应计算加速平台 芯片中一项至关重要的硅片级安全与识别特性。
您可以将其理解为芯片的 "硅片指纹" 或 "不可克隆的硬件序列号"。
-
本质 :一个在芯片生产测试阶段被永久性熔断(eFUSE技术)到硅片内部的、全局唯一的二进制序列号。
-
核心特性:
-
唯一性:每个芯片的DNA都不同,就像人的指纹。
-
不可变性 :一旦写入,无法被终端用户修改、擦除或伪造。
-
非易失性:掉电后信息永久保存。
-
只读性:只能通过特定硬件接口和流程读取。
-
-
主要目的:
-
知识产权保护 :作为加密密钥的一部分,将比特流或软件与特定物理芯片绑定,防止设计被非法复制到其他芯片上运行。
-
硬件信任根:为安全启动、安全认证提供基础的硬件唯一标识。
-
系统识别与配置:在多FPGA系统中,用作硬件ID,实现自动化的板卡识别和差异化配置。
-
防伪与溯源:验证硬件真伪,并在需要时追踪到芯片的生产信息(如晶圆位置)。
-
二、分段规则详解
Device DNA 主要有两种长度:57位 和 96位。
1. 57位 DNA(用于早期至主流系列)
这是最常见的格式,用于 **7系列、UltraScale、UltraScale+** 等系列的大部分芯片。
| 位域(逻辑顺序) | 长度 | 含义描述 |
|---|---|---|
| **位 [56]** | 1位 | 版本标识位 。固定为 0,表示这是57位格式的DNA。 |
| **位 [55:48]** | 8位 | 测试厂/生产线代码。标识芯片最终测试所在的工厂或产线。 |
| **位 [47:24]** | 24位 | Y坐标。该芯片在晶圆上的Y方向坐标。 |
| **位 [23:0]** | 24位 | X坐标。该芯片在晶圆上的X方向坐标。 |
唯一性构成 :版本位+ 测试厂代码+ 晶圆坐标(X, Y)的组合,保证了极高的全球唯一性。
2. 96位 DNA(用于较新及高端系列)
用于 Zynq UltraScale+ MPSoC, Versal ACAP 等系列,编码信息更丰富。
| 位域(逻辑顺序) | 长度 | 含义描述 |
|---|---|---|
| **位 [95:39]** | 57位 | 固定同步头/版本标识 。前57位是一个固定的二进制模式 1 0101...。最高位的 1标识此为96位格式DNA。固定模式用于数据同步和验证。 |
| **位 [38:22]** | 17位 | Y坐标(含校验)。包含Die在晶圆上的Y坐标及奇偶校验位。 |
| **位 [21:5]** | 17位 | X坐标(含校验)。包含Die在晶圆上的X坐标及奇偶校验位。 |
| **位 [4:2]** | 3位 | 晶圆槽位。标识生产晶圆在晶圆盒(Cassette)中的位置。 |
| **位 [1:0]** | 2位 | 保留位 。通常为 00。 |
重要说明:
-
位顺序警告 :通过软件API(如XilSKey)读取到的原始数据字节顺序和位顺序可能与上表的逻辑顺序不同 (通常涉及字节交换和位反转)。解析时必须严格按照对应芯片的用户指南(UG)中的示例代码进行操作。
-
分离的测试信息 :对于96位DNA,测试流程标识符 通常存储在与DNA分离的eFUSE寄存器中,需要使用专门的eFUSE读取函数获取。