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