一、片上SRAM
1.1 ITCM/DTCM SRAM访问频率
- SYSCFG_SRAMCFG1寄存器的TCM_WAITSTATE位为0, 可以以最高主频范围对应的TCM
SRAM。并且系统复位后TCM_WAITSTATE位就为0.
1.2 TCM推荐配置
- 既然这块RAM可以实现最高频率访问,所以实际应用中就没必要对这块SRAM做D-cache配置了。禁用该块内存的数据缓存,并且DMA采用的底层内存可以用这块内存的一定分配到这块内存中,这样用于DMA的那部分内存操作过程中就不需要手动刷新D-cache。
- 将TCM ECC功能(ITCMECCEN / DTCM0ECCEN / DTCM1ECCEN)打开,可以增加健壮性
1.3 共享的512KB RAM推荐配置
- ITCM/DTCM/AXI SRAM共享的512KB RAM可以全部分配给DTCM即可。有指令Cache,ITCM作用不大。AXI SRAM速度又低,没必要浪费给它。ITCM_SZ_SHRRAM[3:0] = 0000,DTCM_SZ_SHRRAM[3:0] = 1010
1.4 512KB AXI SRAM推荐配置
- 这块RAM由于无法达到最高主频的访问速度,直接开启Dcache来用这块内存。
二、注意事项
- IO补偿单元绝大部分产品尽量不要用。除非系统工作在2.5V以下。
- FPU根据实际项目决定是否打开溢出和除0等中断,控制系统中其实可以通过判断最终值是否有效来做进一步处理,中断意义不是很大。
- 当系统上下电不太好的时候,例如使用了超级电容给系统供电导致上下电缓慢,从而导致MCU可能起不来的时候,可以选择欠压复位BOR阈值状态位。该设置在 用户配置寄存器(SYSCFG_USERCFG )中设置
三、MPU
- GD32H7系列目前(2024/3/19)对MPU的描述基本没有,实测MPU->TYPE == 0x00001000,然后根据TYPE描述可知配置了16个REGION。如下所示