2561|6

3001

帖子

260

资源

五彩晶圆(高级)

【 C2000的使用经验】部分程序加载至RAM中运行

本帖最后由 ltbytyn 于 2015-4-26 00:46 编辑

DSP访问flash中的数据需要多个时钟周期。而DSP在RAM中执行就比较快。受限于DSP 的flash空间远大于RAM空间,因此我们不可能将所有的函数都搬到RAM中去执行。只是将一些频繁执行的函数调到RAM中来运行,提高DSP的处理效率。
步骤:
第一步:修改CMD文件
SECTIONS{


  secureRamFuncs       :   LOAD=FLASHAB,PAGE=0

                           RUN=RAML0L1,PAGE=1

                           RUN_START(_secureRamFuncs_runstart),

                           LOAD_START(_secureRamFuncs_loadstart),

                           LOAD_END(_secureRamFuncs_loadend)


}


第二步:修改主程序


#include

extern unsigned int secureRamFuncs_loadstart;

extern unsigned int secureRamFuncs_loadend;

extern unsigned int secureRamFuncs_runstart;



void main(void)

{

     memcpy(&secureRamFuncs_runstart,&secureRamFuncs_loadstart,&secureRamFuncs_loadend-&secureRamFuncs_loadstart);

      InitFlash();

       /*初始化系统*/

       while(1)  

       {

           //用户程序

       }

}



回复

6805

帖子

19

资源

纯净的硅(中级)

谢谢分享  关注中  

回复

9

帖子

0

资源

一粒金砂(初级)

那全部在RAM中运行怎么弄呢?

点评

你程序有多大?RAM能全部放进去吗?自己想一下,不是全部放进去就好。适合自己的才是最好的  详情 回复 发表于 2015-6-15 23:22

回复

3001

帖子

260

资源

五彩晶圆(高级)

China.Red 发表于 2015-6-15 23:15
那全部在RAM中运行怎么弄呢?

你程序有多大?RAM能全部放进去吗?自己想一下,不是全部放进去就好。适合自己的才是最好的

回复

9

帖子

0

资源

一粒金砂(初级)

哦,谢谢!

回复

9

帖子

0

资源

一粒金砂(初级)

ltbytyn 发表于 2015-6-15 23:22
你程序有多大?RAM能全部放进去吗?自己想一下,不是全部放进去就好。适合自己的才是最好的

我才在学习中,谢谢

回复

8

帖子

0

资源

一粒金砂(中级)

楼主能看看下面的问题吗?
http://www.deyisupport.com/quest ... 0/f/56/t/88444.aspx

回复
您需要登录后才可以回帖 登录 | 注册

关闭
站长推荐上一条 1/5 下一条

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表