跳到主要内容
版本:Next

3.4.2.1:安全扩展功能

由于新唐芯片有一些特殊的功能,例如M481xG具有KPROM、XOM、安全秘钥等功能,PowerWriter软件将其放在插件功能下,见如下:

img

img

对应官方工具

img

1:KPROM设置

1.1:KPROM状态读取

连接芯片,读取选项字节,可以获取KPROM的状态。

img

1.2:KPROM解锁密码设置

当安全密钥保护使能后,LDROM和APROM处于写保护状态,如果想对其进行写操作,必须输入正确的 KPROM解锁密码,否则报错。

当选项字节CONFIG写保护开启并且要写入选项字节时,KPROM解锁密码输入错误则会触发全片擦除。

imgimg

1.3:更新KPROM密码

当要更新KPROM时,必须同时勾选更新KPROM和安全密钥使能,KPROM是与选项字节一起写入,点击写入选项字节时会操作KPROM;

img

img

2:XOM设置

2.1:XOM 状态读取

选择对应的芯片型号,连接芯片,读取选项字节,可以获取XOM的激活状态:

img

2.2:XOM 配置写入

填写要读保护的地址,必须同时勾选使能区域和XOM区域启用,最后点击写入选项字节

img

img

3:安全秘钥

3.1:安全密钥的导入

在Secure Key中导入安全秘钥,操作方法可以参考:Nuvoton NuMicro ICP Programmer 用户指南.pdf。

img

3.2:安全密钥的配置和写入

勾选BootLoader启动和安全启动加密,然后点击写入选项字节,可以添加固件后点击全自动编程;

img

img

img

4:安全区域设置

4.1:安全区域配置方法

这里以M2351为例,打开扩展设置,选择启动非安全区域,写入非安全区域地址,并在选项字节中开启安全区域设置:

img

4.2:安全区域解锁方法

锁定设置设定后,芯片将连接不了,需要点击恢复默认,写入选项字节

img

5:MTP设置

5.1:MTP 注意事项

MTP设置属于NUC505的特定功能,烧录器连接芯片时,芯片的PB.3需要拉低使芯片从ICP模式启动;烧录完成后PB.4,PB.3,PA.10,PA.9不能拉低,程序才能正常启动。

img

5.2:MTP 状态读取

连接芯片,读取选项字节,可以获取MTP的激活状态:

img

5.3:MTP 配置方法

在Nuvoton扩展设置中的MTP Setting填入正确的数值,需要更新MTP时,需要同时勾选写入MTP 和MTP编程;

MTP 秘钥: 0x53215751 -0x32432356 //这个随机填写,非全0和非全ff
const uint32_t signature __attribute__((at(0x00000d00))) = 0x34333231;//程序固件需在偏移地址设定签名,自定义:

img

img

当MTP被编程时,代码验证将自动激活。Flash上的代码(或要写入SPIFlash的文件)必须通过代码验证流。NUC505将搜索偏移地址的0~16KBSPIFlash(或文件要写入SPIFlash),以检查偏移地址上是否有正确的签名(与NUC505MTP中的数据进行比较,参见图2-1)。如果没有签名,则启动或编程操作将失败。这种保护机制称为芯片外内存保护,所以要编程加密时,需要添加不小于16K的固件,不编程加密时则不用:

img

使用编程加密时,添加明文固件:

img

不是用编程加密时,可以先读取加密后的固件另存为,再添加:

img

img

点击写入选项字节,或者全自动烧录,或离线加载烧录。

6:SPI Flash 加密设置

6.1:SPI Flash 加密设置方法

选择对应芯片,例如M485xI,打开扩展设置选择SPI Setting,秘钥0和和秘钥1填写非0数值,确定后烧录时芯片会自动加密烧录。

img