从flash启动的时候,如果需要将部分或者全部代码copy到RAM中来运行。
一般都是初始化时钟等之后,再进行copy,然后InitFlash。这里有几个疑问:
1、初始化(时钟等)代码指令,是不是在flash里面执行的?
2、在InitFlash之前,有执行初始化指令,也有copy功能,不是已经可以对flash操作了吗?那么这里的InitFlash的作用是什么?
谢谢!
zdc:
回复 10#:
谢谢大家的解答!
我可以这样理解不:
1、DSP上电之后,在跳转到main之前,其实已经可以对Flash操作了;
2、初始化时钟之后,再来初始化Flash,只是匹配时钟,提高速度;
3、InitFlash在完成时钟初始化之后就可以执行了,可以放在copy函数之前。
从flash启动的时候,如果需要将部分或者全部代码copy到RAM中来运行。
一般都是初始化时钟等之后,再进行copy,然后InitFlash。这里有几个疑问:
1、初始化(时钟等)代码指令,是不是在flash里面执行的?
2、在InitFlash之前,有执行初始化指令,也有copy功能,不是已经可以对flash操作了吗?那么这里的InitFlash的作用是什么?
谢谢!
Xiaohuang Li:
回复 10#:
InitFlash 执行后,对Flash 进行了一系列等待时间的配置;
这样运行速度更快了,那这个快是不是体现在将Flash 里面的代码Copy 到RAM 的过程?
那么:如果代码都已经Copy 在Ram 中了,是不是就跟这个配置没有什么关系了?
反正代码都是在RAM 中运行,除非要访问一些放置在Flash 的变量;
从flash启动的时候,如果需要将部分或者全部代码copy到RAM中来运行。
一般都是初始化时钟等之后,再进行copy,然后InitFlash。这里有几个疑问:
1、初始化(时钟等)代码指令,是不是在flash里面执行的?
2、在InitFlash之前,有执行初始化指令,也有copy功能,不是已经可以对flash操作了吗?那么这里的InitFlash的作用是什么?
谢谢!
user5116590:
回复 Xiaohuang Li:
你只是复制的InitFlash()这一个函数,不是所有代码到RAM中。
从flash启动的时候,如果需要将部分或者全部代码copy到RAM中来运行。
一般都是初始化时钟等之后,再进行copy,然后InitFlash。这里有几个疑问:
1、初始化(时钟等)代码指令,是不是在flash里面执行的?
2、在InitFlash之前,有执行初始化指令,也有copy功能,不是已经可以对flash操作了吗?那么这里的InitFlash的作用是什么?
谢谢!
user5860441:
回复 10#:
个人理解:
1、 不进行copy或不初始化flash程序的时候,程序在flash中运行,但是速度最慢
2、 进行copy或初始化flash程序之后,在flash中的程序,速度较之前提高,复制到ram中的程序速度最快。
疑问:
1、 是不是每个工程都要进行copy或初始化flash程序,至少保证在flash中的程序,速度最优?
2、 MemCopy函数和memcpy函数,有什么区别?