要禁用控制寄存器编程,请运行以下 Tcl 命令:
program_hw_devices -control_efuse {20} [lindex [get_hw_devices] $deviceIdx]
其中 $deviceIdx
设为 UltraScale 或 UltraScale+ 器件的索引,您可在此类器件中禁用 eFUSE 控制寄存器位编程。
这样即可设置 W_DIS_CNTL 位,从而禁用后续 eFUSE 控制寄存器位编程。
重要: 如果
W_DIS_CNTL
位已编程,那么将禁用其他 eFUSE 控制寄存器位的编程操作,从而阻止对器件的控制寄存器进行进一步编辑。在“Security Register Setup”Wizard(安全寄存器设置向导)窗格中,指定以下设置:
图 1. eFUSE 安全寄存器设置
在“Security Register Setup”Wizard 窗格中,基于允许在 FPGA 上加载的比特流类型来指定安全控制选项。FUSE_SEC 设置如下:
- CFG_AES_Only:设置此项表示仅接受加密比特流。
- EFUSE_KEY_Only:设置此项表示仅限 eFUSE 密钥可用于解密。
- RSA_AUTH:设置此项表示强制对比特流执行 RSA 身份验证。
- SCAN_DISABLE:设置此项表示禁用 AMD 访问内部测试寄存器的权限。
- CRYPT_DISBALE:设置此项表示永久禁用解密器。
如需了解有关 FUSE_SEC 寄存器的更多详细信息,请参阅 UltraScale 架构配置用户指南(UG570)。
请复查“Program eFUSE Registers Summary”(eFUSE 寄存器编程汇总)窗格中的 eFUSE 设置。
图 2. Program eFUSE Registers Summary
在此窗格中可显示“Program eFUSE Registers”Wizard(eFUSE 寄存器编程向导)面板中设置的所有位。在此窗格中,您可查看各个位的设置,以便复查特定编程设置。请仔细复查此汇总页面,以确保要编程的每个位都已正确设置。
单击Finish(完成)即可显示“Program eFUSE”(eFUSE 编程)确认对话框:
图 3. “Program eFUSE”确认对话框
单击OK(确定)以对指定的 FUSE 位进行编程。