ZHCUAN6E October 2022 – May 2025 MSPM0L1105 , MSPM0L1106 , MSPM0L1116 , MSPM0L1117 , MSPM0L1227 , MSPM0L1227-Q1 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346 , MSPM0L2227 , MSPM0L2227-Q1 , MSPM0L2228 , MSPM0L2228-Q1
应用软件可以通过向 CTL 寄存器中的 CMD 字段写入新的命令值来设置 TRNG 的工作状态。虽然 TRNG 状态机有 7 个状态,但这 7 个状态中只有 4 个是由用户使用 CMD(OFF、TEST_DIG、TEST_ANA 和 NORM_FUNC)控制进入的。其他 3 种状态(PWRUP_ES、PWRDOWN_ES 和 ERR)仅在模拟块上下电或出现错误情况时由硬件进入。表 13-3 中给出了 TRNG 的运行状态更改命令。
| CMD | 模式 | 说明 |
|---|---|---|
| 0x0 | PWROFF | TRNG 模拟块断电,TRNG 数字块被时钟门控。 |
| 0x1 | TEST_DIG | 执行 TRNG 数字开机自检,结果在 TEST_RESULTS 寄存器中报告。 |
| 0x2 | TEST_ANA | 执行 TRNG 模拟上电自检,结果在 TEST_RESULTS 寄存器中报告。 |
| 0x3 | NORM_FUNC | TRNG 被置于正常工作模式,在该模式中,将收集、调节、抽取来自熵源的样本并放置在 DATA_CAPTURE 寄存器中。连续统计运行状况测试在此模式下运行。 |
从给定状态开始,只能进行某些状态更改。例如,从 OFF 仅支持切换到 NORM_FUNC 的 CMD。支持从 NORM_FUNC 切换到 TEST_DIG、TEST_ANA 和 OFF 的 CMD。仅支持从 ERR 状态切换至 OFF。图 13-2 中给出了 TRNG 的状态流程。
只有在之前发出的命令运行完成后,才能将新命令写入 CMD 字段。如果在无效时间写入命令,则该命令会被拒绝,并且命令失败中断将置为有效。