1. SP 的使用
调用函数后SP必然恢复到原来的位置,stack使用多少可以看调用时的反汇编得知,估算当前的DDR空间是否满足。
2. LinkScript & StartEntry
启动镜像的启动位置可以在script中设置,但需要注意连接对象(*.o) 的排列顺序,会受到影响,结果可能不是你想要的,StartEntry可以指定入口函数位置。通常是 except vector table
3. 硬件的局限
很多时候软件的实现方式受限制于硬件的设计,毕竟软件的目的是使硬件最大能力工作起来,那么当需要提高性能,并且和硬件相关的时候,就应该搞清楚硬件的工作逻辑,优化细节,对应进行优化性分析,才能针对修改。
4.datasheet
毕竟没有硬件基础,慢慢来吧,tRC 和 tWC 其实是包括和状态转换和状态保持,所以周期是 tRC = t**+tREH ... 忘记前面一个缩写了,其实可以想象硬件设计的方式。另外NAND中其实有2个方面的频率设置,一个是clock的设置,是加快数据传输的,一个就是tRC保持的hold time,优化可以提高频率,减少tHT,但是需要硬件能支持的上限。