嵌入式开发者社区

标题: TL138 ad7606_dsp共享内存的问题 [打印本页]

作者: creset_yan    时间: 2015-11-25 18:08
标题: TL138 ad7606_dsp共享内存的问题
我用使用TL138的ad7606_dsp demo程序 发现运行在128k采样速率时 随着运行时间的变化ipc_ring_buffer出现问题了 剩余的内存最后为0了 也就是没有release掉 不知道各位之前注意到这个问题没有 是否有好的解决方法?求赐教~9 V2 k  x6 Q7 ?

3 k  b6 o- |' G1 A9 W' k[INFO |main@main_dsp.c,82] --> main:
- Z3 t% _+ l; x" L. ^[INFO |message_loop_fun@main_dsp.c,24] --> message_loop_fun:
8 Q& G) p) y, t) K[INFO |message_loop_start@app/message_loop.c,115] message loop start
. M7 `' v7 h6 c" b* ?[INFO |message_loop_start@app/message_loop.c,119] wait for cmd4 E# T9 T1 t$ I" I2 j
[INFO |message_loop_on_disable_fft@app/message_loop.c,97] recv disable fft4 k& a2 @; u( z1 F3 k% ^% X0 P
[WRAN |message_loop_on_disable_fft@app/message_loop.c,99] no start cmd previous! V+ t% A$ P( c. N; m( [
[INFO |message_loop_start@app/message_loop.c,119] wait for cmd# [4 k) n9 y6 u
[INFO |message_loop_on_start@app/message_loop.c,68] start, sample rate is 131072 points
) o0 c: _# P7 b  @[DEBUG|ad7606_trigger@driver/ad7606.c,494] set trigger as 131072
" h" @  @6 y' x/ }[DEBUG|message_loop_on_start@app/message_loop.c,79] channel is 0# {' a2 p5 Y- |' _- H6 U* r/ Y! M
[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,63] Empty size is 8912896:* M% I9 z! e1 G
[INFO |message_loop_start@app/message_loop.c,119] wait for cmd' @$ l  s! W/ |6 o+ e3 [  b
[INFO |fft_task_func@app/ad_workshop.c,61] fft task is running
9 b# x- ^+ j% s+ X6 o[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,63] Empty size is 8388608:
1 W* i: ~4 v4 p5 M[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,63] Empty size is 8388608:
) B- a# v# ?! O( c3 O[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,63] Empty size is 7864320:
' @8 a( O8 U" @; U+ k) {( E* v5 s[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,63] Empty size is 8388608:
9 w/ S& B$ m: H4 A( [/ m) m[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,63] Empty size is 7864320:( ^9 ~+ {! u  A- r2 e( |
[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,63] Empty size is 7340032:
4 K1 ]  h# P+ Q9 z$ a+ C…………此处省略…………
& |& @0 i7 h/ v) i! q, E* B7 n[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,63] Empty size is 0:
% H! D5 X3 L( h3 O3 W$ ?[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,63] Empty size is 524288:
8 S4 n, u% B# F  w9 D) @[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,63] Empty size is 0:' [% ^4 Z& x" s1 I% y% `1 S
[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,58] unstatified acquired, request is 524288, actual is 0
0 j3 o+ Y; N, a[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,59] empty size is 524288
* N$ T  G; e0 G1 ]0 k5 n$ w+ `5 N[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,60] valid size is 8388608. R! u( c& G$ {4 h
[WRAN |ad7606_busy_hwi@driver/ad7606.c,349] failed to acquired buffer
% o) I% V- L$ e, ?- X2 p4 c[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,63] Empty size is 0:
2 Q- A9 [: G8 K6 Q[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,63] Empty size is 0:: _9 W1 v& |# g% [
[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,58] unstatified acquired, request is 524288, actual is 0
. `! h$ y' x  T6 m) v4 j[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,59] empty size is 0
/ S) ?, b9 g/ u6 B+ G3 Q[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,60] valid size is 8912896
) O# o/ Q" k1 A: m0 E2 Q, C. k[WRAN |ad7606_busy_hwi@driver/ad7606.c,349] failed to acquired buffer4 d+ @8 G. M- z
[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,58] unstatified acquired, request is 524288, actual is 0
# w! w6 f2 b$ v" p2 e0 i6 D[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,59] empty size is 0
+ Y) D$ d7 a. ]( U& ]+ O2 z5 q[DEBUG|ipc_ring_buffer_acquired@ipc/ipc_ring_buffer.c,60] valid size is 8912896
( E1 {# Y3 S0 e" g. R% p' M3 s! Q[WRAN |ad7606_busy_hwi@driver/ad7606.c,349] failed to acquired buffer2 A4 E# y5 g) K$ e' \

1 v2 k2 ^+ Q' Y& L
/ }. S1 A( ]$ V9 Q4 ]9 A3 F( S  e+ g* @: G3 @6 }2 b! t" g

8 U# a# B) m( @( U# L
作者: tenny    时间: 2015-11-26 09:04
运行了多久
作者: creset_yan    时间: 2015-11-26 09:08
tenny 发表于 2015-11-26 09:04
; k# {2 t& W9 v" r( ^+ y3 _  N! V& G运行了多久
1 Y; Y. h4 U7 z& |! Z
一两分钟的样子,您也可以试一下~
作者: tenny    时间: 2015-11-26 10:06
有修改过代码吗?
作者: creset_yan    时间: 2015-11-26 10:08
tenny 发表于 2015-11-26 10:067 v1 P5 q. i( i6 `6 ?! a+ |$ \
有修改过代码吗?

: w. R! ?% n) e我就加了那句打印DEBUG信息
作者: tenny    时间: 2015-11-26 10:09
128k 的时候 arm 端画图时处理负荷过大,会造成用于缓存数据的内存不断增多,不能及时进行release,是会出现那样的情况的
作者: creset_yan    时间: 2015-11-26 10:12
tenny 发表于 2015-11-26 10:098 D0 q+ {$ U+ U: {3 F. P
128k 的时候 arm 端画图时处理负荷过大,会造成用于缓存数据的内存不断增多,不能及时进行release,是会出 ...

2 d' J1 ~. p) G9 U6 N) Q' e您的意思是这个问题是ARM引起来的?我一直以为是DSP那端的问题~~ 有什么好的解决方法吗?或者您帮我指个方向  哈哈~~~
作者: tenny    时间: 2015-11-26 12:57
ARM 端波形绘制部分还有较大优化空间
作者: creset_yan    时间: 2015-11-26 16:39
tenny 发表于 2015-11-26 12:57+ d* y: G( p' J3 g
ARM 端波形绘制部分还有较大优化空间

5 m% \* h$ t& J$ M. e' q, n已经搞定 谢谢~~~




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4