如何将DSP端代码放在L2 RAM中运行? - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 12198|回复: 15
打印 上一主题 下一主题

[已解决] 如何将DSP端代码放在L2 RAM中运行?

[复制链接]

8

主题

31

帖子

160

积分

注册会员

Rank: 2

积分
160
跳转到指定楼层
楼主
发表于 2018-6-25 08:52:48 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
我现在使用的是OMAPL138开发板,现在有些疑惑:一个FOR循环中值算法单独在ARM里面运行的时间与单独在DSP里面运行的时间没有什么有很大区别呢?通过计算,同样程序在ARM里面运行比在DSP里面运行要快1倍。。。DSP的优势完全没有显示出来啊?
7 x- W% v- r: O9 H
在TI的论坛中看到可以通过把DSP部分代码放在L2 RAM中运行以提高效率,请问如何操作呢?是在DSP部分代码前面添加关键字嘛?- N. b4 }. q1 j  Q9 M" G. d
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

8

主题

31

帖子

160

积分

注册会员

Rank: 2

积分
160
沙发
 楼主| 发表于 2018-6-25 15:43:00 | 显示全部楼层
小晓筱伟 发表于 2018-6-25 09:36
' F9 D8 W  Y/ k5 I# ]1 G' |) Z8 `CMD文件中的SECTIONS,把这些段都放在SHDSPL2RAM中。
' l% _. s9 g- c0 @, ?
谢谢,但是我用的是创龙提供的例程ex04_sharedregion,请问是修改ex04_sharedregion\dsp\configuro\linker.cmd这个嘛?但是这个文件好像是编译后产生的啊
回复 支持 反对

使用道具 举报

8

主题

31

帖子

160

积分

注册会员

Rank: 2

积分
160
板凳
 楼主| 发表于 2018-6-25 17:51:29 | 显示全部楼层
广州创龙莫工 发表于 2018-6-25 17:38+ I) N# h' Y! D
可以将DDR2改成SHDSPL2RAM,如图所示:,并且要在SHDSPL2RAM定义这里做修改。
; Z# u1 A4 i$ O- y' k
莫工 您的这个文件名称叫什么啊?我的工程是在ex04_sharedregion基础上建的,只有一个ex04_sharedregion\dsp\configuro\linker.cmd文件是CMD相关的,还是编译后生成的。
回复 支持 反对

使用道具 举报

8

主题

31

帖子

160

积分

注册会员

Rank: 2

积分
160
地板
 楼主| 发表于 2018-6-27 21:21:26 | 显示全部楼层
广州创龙莫工 发表于 2018-6-27 09:469 z2 [4 q- W9 z! `! U
您好,请您参考Q群上的回复:% @% K: r8 H( R( z* V3 k$ \" ]
您说的ex04_sharedregion,是我们使用的,TI提供的syslink双核示例程序,其中 ...
  x) w( B; L+ y: H6 y* q
非常感谢,想在追问下文件的名称就叫.cmd嘛?这个名字编译器能识别码?还需要设置别的地方嘛?
回复 支持 反对

使用道具 举报

8

主题

31

帖子

160

积分

注册会员

Rank: 2

积分
160
5#
 楼主| 发表于 2018-6-28 17:08:32 | 显示全部楼层
广州创龙莫工 发表于 2018-6-28 09:02
% i: g' g* W$ e/ y$ ]$ A8 f/ S0 |文件的后缀是.cmd,例如C6748.cmd,cmd文件是可以被编译器识别的。

( W" k, C) e+ _* k7 o/ _- J" _) [6 b好的 我试一下
回复 支持 反对

使用道具 举报

8

主题

31

帖子

160

积分

注册会员

Rank: 2

积分
160
6#
 楼主| 发表于 2018-7-1 12:03:51 | 显示全部楼层
广州创龙莫工 发表于 2018-6-25 17:38
5 ]8 _! L5 w% y! C0 |; c可以将DDR2改成SHDSPL2RAM,如图所示:,并且要在SHDSPL2RAM定义这里做修改。

  A; F# }" E8 s5 o& m您好,没找到您发的这个图片对应文件,能将您发的图片的文件和工程给我参考一下呢?
回复 支持 反对

使用道具 举报

8

主题

31

帖子

160

积分

注册会员

Rank: 2

积分
160
7#
 楼主| 发表于 2018-7-2 16:49:52 | 显示全部楼层
广州创龙莫工 发表于 2018-7-2 16:45
1 H# A! M$ R: x  z5 v您好,可以留一下你的邮箱地址吗?我给你发一份。
+ ~$ @8 o, M& }$ G
15901123858@163.com 谢谢!
回复 支持 反对

使用道具 举报

8

主题

31

帖子

160

积分

注册会员

Rank: 2

积分
160
8#
 楼主| 发表于 2018-7-3 22:43:56 | 显示全部楼层
广州创龙莫工 发表于 2018-7-3 08:434 ~, X, z8 i+ ?" e9 ^# N
您好,文件已经发到你的邮箱了。请注意查收。
3 p* u0 z  p3 \9 F4 ~' x, P6 m$ N
您好,邮件已经收到,有个问题想请教一下:9 V" _$ ?/ h0 ~4 a  ?  X" q% C
我现在已经会在程序里面定义一个ramfuncs的段% {3 Q5 X) ^3 q
#pragma CODE_SECTION(dragon_update,"ramfuncs");
3 ^" N+ ~! e) j0 FUint16 dragon_update(UPDATE_SOURCE_TYPE *update_flag)
. B, Q- W7 d# B' d, b: ]) U% K6 Q5 K{; O# B( q; j+ g: n# W9 d) g
    。。。% I: j, V1 `; C2 U# d5 L
}
% P: k$ T  g' r( O8 j) p如果我想把它放在L2 RAM里面运行,那么我在.CMD文件中就直接在SECTIONS增加一行.ramfuncs        >  SHDSPL2RAM就行了吗?(保证我的这个代码不会很大)
回复 支持 反对

使用道具 举报

8

主题

31

帖子

160

积分

注册会员

Rank: 2

积分
160
9#
 楼主| 发表于 2018-7-9 22:35:37 | 显示全部楼层
15901123858 发表于 2018-6-28 17:08) \6 E- n# m! L, e
好的 我试一下

  G+ c$ v8 _! T5 \* B- J0 Q) H莫工,问题已经解决,参照您这个修改DSP目录下的LINKER.CMD,然后在MAKEFILE文件中更改拷贝.CMD的命令(使用修改过的.CMD)就行。运行速度有很大提升!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-5-20 07:37 , Processed in 0.042921 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表