5.3.2. 功能描述

5.3.2.1. eFuse和SRAM空间映射

软件读写eFuse空间,在4K bit范围内以32bit为单位操作。为保证可靠性,建议采用双备份方式,即写eFuse word[n]也写word[64+n]。

开机硬件自动读取eFuse空间到SRAM空间,针对两个word空间进行按位或操作, 任意一位为1则SRAM结果为1,起到双备份的目的, 如 图 5.10 所示。

../../../_images/sid_function_map.png

图 5.10 eFuse和SRAM空间映射

5.3.2.2. 2Kbit空间映射定义

用途

位数

地址

禁止位

禁写

禁读

归属

备注

DIS RD

64

0~7

0~1

V

CSTM

eFuse 读禁止配置区域

DIS WR

64

8~F

2~3

eFuse 写禁止配置区域

CHIP ID

128

10~1F

4~7

V

AIC

芯片编号

CALI

128

20~2F

8~11

V

AIC

模拟校准使用

BROM

64

30~37

12~13

V

CSTM

BROM 参数配置区域

SECURE

64

38~3F

14~15

V

CSTM

安全和调试功能开关

ROTPK

128

40~4F

16~19

V

CSTM

安全,RSA公钥的MD5 Hash值

SSK

128

50~5F

20~23

V

V

CSTM

安全,连接到CE,对称密钥

HUK

128

60~6F

24~27

V

V

AIC

安全,连接到CE,硬件唯一密钥

PSK0

64

70~77

28~29

V

V

CSTM

安全,连接到CE,合作伙伴密钥

PSK1

64

78~7F

30~31

V

V

CSTM

安全,连接到CE,合作伙伴密钥

PSK2

64

80~87

32~33

V

V

CSTM

安全,连接到CE,合作伙伴密钥

PSK3

64

88~8F

34~35

V

V

CSTM

安全,连接到CE,合作伙伴密钥

NV CNTR

128

90~9F

36~39

CSTM

安全,固件版本,仅 BROM 可写

SPI ENC KEY

128

A0~AF

40~43

V

V

CSTM

安全,连接到 SPI ENC,对称密钥

SPI ENC NONCE

64

B0~B7

44~45

V

V

CSTM

安全,连接到 SPI ENC,随机数

PNK

64

B8~BF

46~47

V

V

AIC

安全,连接到CE,型号唯一密钥

Reserved

512

C0~FF

48~63

CSTM

OEM 可自定义使用

注:
ROTPK: Root Of Trust Public Key
SSK: Symmetric Secure Key
HUK: Hardware Unique Key
PNK: Part Number Key
PSK: Partner Secret Key

5.3.2.3. CALI区域定义

偏移地址: 0x20

比特位

名称

描述

备注

31:24

THS_ENV_TEMP

THS 环境温度

FT测试烧录

23:12

THS1_ADC_VAL

THS ADC1采样值

FT测试烧录

11:0

THS0_ADC_VAL

THS ADC0采样值

FT测试烧录

偏移地址: 0x24

比特位

名称

描述

备注

31:20

MEM_RESERVE

DDR FLASH etc.

FT测试烧录

19:16

CP_THS_ENV_TEMP

THS 环境温度

CP测试烧录

15:8

USB0_RES_VAL

USB0电阻校准值

CP测试烧录

7:0

USB1_RES_VAL

USB1电阻校准值

CP测试烧录

偏移地址: 0x28

比特位

名称

描述

备注

31:25

DDR_RES_VAL

DDR 电阻校准值

CP测试烧录

24:16

EPHY_RES_VAL

EPHY 电阻校准值

CP测试烧录

15:8

LDO25_BG_CTRL

LDO25 BG校准值

CP测试烧录

7:0

LDO30_BG_CTRL

LDO30 BG校准值

CP测试烧录

偏移地址: 0x2C

比特位

名称

描述

备注

31:25

-

-

CP测试烧录

24

CP_VALID

CP eFuse已烧写

CP测试烧录

23:12

THS1_ADC_VAL

THS ADC1采样值

CP测试烧录

11:0

THS0_ADC_VAL

THS ADC0采样值

CP测试烧录

5.3.2.4. BROM 区域定义

比特位

名称

描述

31

USB_CALI_EN

1: BROM 读取 eFuse CALI 区域 USB0 的校准值,并且设置

30

PLL_CINT_EN

1: BROM 读取 PLL_CINT_CFG 的值,并且设置到 CMU 相关寄存器

29:26

-

-

25:22

PLL_CINT_CFG

CMU PLL_INT1_CFG 寄存器 PLL_CINT[5:2] 的值

21

MD5_VERI_DIS

1: BROM 不使用 MD5 进行固件的校验

20

SDMC_EXT_MUX_DIV

设置 SDMC 外部时钟选择

19:18

SDMC_SMP_PHASE

设置 SDMC 采样时钟的相位

17:16

SDMC_DRV_PHASE

设置 SDMC 驱动时钟的相位

15

SPI_BOOT_INTF

0:使用 SPI0 启动,1:使用 SPI1 启动

14

CHECKSUM_DIS

1:启动过程中 BROM 不检查固件的 Checksum

13

PLL_FRA0_DIS

1:BROM 不启用 PLL_FRA0

12

PLL_INT1_DIS

1:BROM 不启动 PLL_INT1,USB 不能使用

11

SPI_DMA_DIS

1:BROM 访问 SPI 存储时,不使用 DMA

10

SD/eMMC_4_LINE_EN

1:BROM 访问 SD/eMMC 时,使用4线

9

SD/eMMC_DMA_DIS

1:BROM 访问 SD/eMMC 时,不使用 DMA

8

SKIP_SD_PHASE

1:BROM 在访问 PRIMARY、SECONDARY 存储前不访问 SD 卡。设置为1影响卡量产

7:4

SECONDARY

指定 BROM 的次选启动设备

3:0

PRIMARY

指定 BROM 的首选启动设备

5.3.2.5. SECURE区域定义

比特位

名称

描述

31:24

-

-

24

PBP_ENC_EN

BROM读取使用,使能 PBP(PreBootProgram)的加密功能

23:20

-

-

19

SPI_ENC_EN

BROM读取使用,使能SPI总线数据加密功能

18

ANTI_ROLLBACK_EN

BROM读取使用,使能固件防回滚功能,需要同时使能安全启动

17

ENCRYPT_BOOT_EN

BROM读取使用,使能固件加密启动功能

16

SECURE_BOOT_EN

BROM读取使用,使能安全启动功能

15

DDR_APB_LOCK

逻辑组合后连接到总线译码,屏蔽对DDR APB的读写操作,芯片出厂烧录为1

14

TEST_DIS

预留位,用于关闭模块的一些调试功能

13:10

-

-

9

PWMCS_DIS

连接到CMU PWMCS APB时钟使能,强制关闭PWMCS模块

8

DE_DIS

连接到CMU DE APB时钟使能,强制关闭DE模块

7:1

-

-

0

JTAG_LOCK

逻辑组合后连接到CPU屏蔽TDO,关闭JTAG调试功能,在安全方案中烧录为1

5.3.2.6. JTAG安全保护

JTAG使能受SID控制,用于对芯片做安全保护。 硬件逻辑及使用场景如 图 5.11 所示。

在关闭JTAG的安全芯片方案中,客户可以使用安全密钥进行认证, BROM在认证成功后开启UNLOCK位来打开JTAG, 注意JTAG_UNLOCK位只在BROM中进行读写(通过BROM_PRIVILEGE_LOCK实现)。

../../../_images/sid_function_jtag.png

图 5.11 JTAG安全保护硬件逻辑及使用场景