双核运行问题 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站
点击跳转“创龙科技服务通”

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 12268|回复: 11
打印 上一主题 下一主题

双核运行问题

[复制链接]

19

主题

74

帖子

253

积分

中级会员

Rank: 3Rank: 3

积分
253
跳转到指定楼层
楼主
发表于 2015-2-11 10:43:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
DSP核部分使用UPP定时 (每2.5ms)接收FPGA数据,数据量为4096*16bits ,数据存储在DDR上,DSP开辟的DDR空间为单独的c2000000 c3FFFFFF ,这个空间是TI官方双核样例板提供的(ex04_sharedregion)样例。& U0 m- ~$ G! r6 q
ARM与DSP和通过SYSLINK通信。1 G/ m8 S2 I& b: g: `' q! K7 \. ?
现在的问题是,当ARM部分应用程序规模小时,加载DSP核程序后,双核运行正常。当ARM部分应用程序组件增大时,发现加载DSP核心应用程序运行一下就会停止运行。但是如果修改DSP程序一关闭DSP核心部分的FPGA存储DDR数据功能,DSP核心能正常运行' w0 n4 M& z1 e" O, Q
我现在怀疑,是不是DDR使用出现问题,系统中DSP核心应用程序UPP定时存储数据到DDR,DSP程序又是在DDR上运行,ARM部分也是用DDR最为内存,如果DDR过于繁忙的时候,会导致DDR忙不过来,导致DSP核停止运行。! ~1 \, v3 P$ u  {5 F! i  }
开机运行时设置的UBOOT参数如下:
5 g2 u, Z/ j' j9 L8 ysetenv bootargs console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootfstype=ext3 mem=32M@0xc0000000 mem=64M@0xc4000000
' B. a% k( x, n9 g6 t9 r, C应该DDR在使用上没有冲突,上面空出的空间32M为DSP使用. E5 X2 n2 O# ^, Y- h& U

8 f5 C4 S4 G! G7 |) r
9 e: f6 l' W0 `& N9 U, }1 Y+ O
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
沙发
发表于 2015-2-11 11:24:43 | 只看该作者
将 uPP 数据缓存放置在 DSP L2 RAM 中
: U( Y6 A7 ], R  P# ^. v
回复 支持 反对

使用道具 举报

19

主题

74

帖子

253

积分

中级会员

Rank: 3Rank: 3

积分
253
板凳
 楼主| 发表于 2015-2-11 11:32:26 | 只看该作者
谢谢答复
$ ^$ _, |: q4 d7 }- `9 D5 E. r5 d但是问题是,我现在DSP部分的程序编写完毕后,使用“ex04_sharedregion”做ARM部分应用程序修改,运行没有问题。测试能稳定运行只是后来增加QT编程,加了其他组件后,出线问题
- D( C7 m+ u( \% _5 `第2 ,就是我现在存储的数据量比较大 如果存储在L2 RAM 上,空间应该不够。 总大小为(4096*16its)*8*20=640k*16bits 大小   循环存储
# a! O  h) Z. S& S8 Y; F
回复 支持 反对

使用道具 举报

19

主题

74

帖子

253

积分

中级会员

Rank: 3Rank: 3

积分
253
地板
 楼主| 发表于 2015-2-11 11:53:01 | 只看该作者
我想在怀疑是不是DDR 使用上有问题~~ 冲突导致 DSP核运行错误不工作了~~急盼传龙工程师回复/ [3 T. M0 M: o( I
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
5#
发表于 2015-2-11 14:25:22 来自手机 | 只看该作者
错误应该不会 但是负载大的话会造成运行缓慢
- [3 @! H! J9 v3 l
回复 支持 反对

使用道具 举报

19

主题

74

帖子

253

积分

中级会员

Rank: 3Rank: 3

积分
253
6#
 楼主| 发表于 2015-2-11 15:29:00 | 只看该作者
谢谢答复,追加问题说明,我理解是,DSP的DMA存储数据到DDR必须要优先级最高,如果他经常让给ARM运行的话,会导致UPP的DMA操作DDR是不是会错误~~
& i0 c/ d  O- Q6 x. C9 @
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
7#
发表于 2015-2-11 16:09:10 | 只看该作者
tulipyyf 发表于 2015-2-11 15:29
# m- h! Y* |' N7 }; V6 x谢谢答复,追加问题说明,我理解是,DSP的DMA存储数据到DDR必须要优先级最高,如果他经常让给ARM运行的话, ...

+ ]& j1 }% c) k+ z" G* X% ^优先级是可以调整的
# X( e' O3 N& {/ Z至于你所诉情况 目前我们还没有遇到过+ ^9 c/ F+ `7 I# ~1 n  T& y( W
但是我的建议还是需要高速存取的数据放到 L2( U: T; W4 `0 p/ c. J
回复 支持 反对

使用道具 举报

19

主题

74

帖子

253

积分

中级会员

Rank: 3Rank: 3

积分
253
8#
 楼主| 发表于 2015-2-11 16:32:34 | 只看该作者
你好,我们发现问题了,现在是ARM的QT部分  当打开串口1后,系统DSP端直接不运行。说明打开串口1这个函数导致的错误。难道打开串口1导致DDR部分有问题。再次求解
7 z; z  e. W- k# r- v, n6 K4 z
回复 支持 反对

使用道具 举报

19

主题

74

帖子

253

积分

中级会员

Rank: 3Rank: 3

积分
253
9#
 楼主| 发表于 2015-2-11 16:36:09 | 只看该作者
如注销打开串口1 函数,运行就没有问题~~  请教创龙工程师
4 q* j0 V% t5 ~6 H
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
10#
发表于 2015-2-11 16:36:56 | 只看该作者
tulipyyf 发表于 2015-2-11 16:32
, o1 \# D; ]! n你好,我们发现问题了,现在是ARM的QT部分  当打开串口1后,系统DSP端直接不运行。说明打开串口1这个函数导 ...
/ E2 E0 B8 }( z8 [
如果你是参考的 AD7606 的例程 那个例程中 DSP 使用 串口1 输出状态信息~
" u1 E8 a2 V2 f7 l* H) j
回复 支持 反对

使用道具 举报

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

本版积分规则

点击跳转“创龙科技服务通”

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

GMT+8, 2026-1-30 22:08 , Processed in 0.040881 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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