|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
. S5 L5 U) j0 L/ T2 a) w我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
- C6 l$ @& t! ~(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
% S; D. G, ~6 C' K( Q9 k5 ?
2 w! y, N% a0 {是不是需要在DSP.CFG中进行配置
# G( B0 t/ c- }" M$ ?我现在的配置为, N$ q( Z9 C& q
. C4 n! i. s6 t* d v2 G3 Y
/*. m" e/ _1 v- k
* ======== Operating System Configuration ========8 X5 ?9 w( d2 L
*/
! u5 X8 J: K/ y( t9 A8 x
( R, F+ f1 A; `* n7 |4 p( P& `# |/* no rts heap */4 w9 q) ?9 W/ b$ k( D
Program.heap = 0;5 k$ l2 P k' ]( I* H
Program.argSize = 100; /* minimum size */
3 {: C/ S# g% E8 ~* iProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大' \$ L" L# `7 n
; o3 j7 R T1 Q" R
/* create a default heap */
8 r. j* V) t* V }) `var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
; H' X F# i! A3 W, a$ {+ l4 Bvar heapMemParams = new HeapMem.Params(); X' x" n4 a3 D8 m# Y7 y/ X
heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
6 i8 C& e/ _8 N8 y0 t6 c3 _" T
$ q% j1 x7 i+ P) `) O6 Y$ tvar Memory = xdc.useModule('xdc.runtime.Memory');8 j" p, w: R; A% \' {7 ^+ {, z9 J4 x
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);
; _" ]: E% z* z4 q- k
U0 S1 R% X0 Z" H# m& L- z/* configure System module */4 v3 f3 b; \- u5 ?
var SysMin = xdc.useModule('xdc.runtime.SysMin');
# P" v0 O2 |7 RSysMin.bufSize = 0x1000;* |" B+ J8 m5 {4 |& D1 e( Z
SysMin.flushAtExit = false;
, P' _( E* e5 w- P( _) k1 ?. X% b/ A( s$ A7 a
var System = xdc.useModule('xdc.runtime.System');: }! R4 G& l/ D! P4 g5 p
System.SupportProxy = SysMin;9 r( M S. ^. s" N0 d* n
2 Y. Y; W' Z& P- W
/* configure SysBios to use the lower half of Timer 1 */
1 m, f- ]$ N! e7 ^. l2 B5 Ivar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');+ t7 C, q( G3 F4 q/ P, w
var Clock = xdc.useModule('ti.sysbios.knl.Clock'); w# ]1 Z2 h7 H( j
Timer.timerSettings[1].master = true;9 `4 l' H) E+ k" i& C1 C
Timer.defaultHalf = Timer.Half_LOWER;
1 i, @* M% h; y* _. G: RClock.timerId = 1;
% W( s6 U& ?) G, i3 w1 [ O8 [6 J* g9 w; o" L( w+ t N: ~( J
) J X. D( \8 E% n" s5 d% d' F
/*: z+ U' r1 c9 J8 f0 D. X# o% U& X
* ======== Miscellaneous Configuration ========
8 y" V4 y. s) N* `# E */3 r/ H% _/ @+ ?6 U
" X: r9 C( O- K/* set default diags mask */
. y! o! n- E' {) L: [5 ]- B/ U! ?var Diags = xdc.useModule('xdc.runtime.Diags');( U/ L% q; d: T, P
var Defaults = xdc.useModule('xdc.runtime.Defaults');% W, v& k v- v9 ^' Z0 f
4 w) m2 z+ z3 Z; r# P
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;9 r, M M2 u( e1 j; M
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;) x) P7 B/ N! C5 n
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;( P8 x/ v5 G6 j
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
; Z) b* x0 o: F3 \, o! aDefaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
- U+ x( J" ~! r" h- IDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;! K7 t# ^" L8 Z8 V
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;. h7 y o5 ?4 U1 g/ M
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
+ V2 d v0 g9 _' h& \Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
1 D8 k. h# t8 D( |4 ]Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;# `, S2 }8 g) \3 R9 t) Q1 G
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;. ~% i/ y4 l3 \( A) j
Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;* ~* k, O- w$ l9 f5 Y
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;$ F" X& `- B [& {; H! H2 R
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;! B7 Q9 r1 y4 K; A! E2 W% K% D
, P" A2 P! B9 `2 m# r- F
/* override diags mask for selected modules *// a, V; f+ p' }) A
xdc.useModule('xdc.runtime.Main');) J- @% x0 i7 d
Diags.setMaskMeta(
8 d( V- h C8 ?0 X( R- X "xdc.runtime.Main",
1 }6 p$ q9 M, `# w9 M Diags.ENTRY | Diags.EXIT | Diags.INFO,
% z* A& \' e9 M! Y: |0 T7 f& k Diags.RUNTIME_ON
' f# E" p& k: \8 \);6 `9 ]( n! V" U+ F
6 i# t8 H! B# |" s5 b. f
var Registry = xdc.useModule('xdc.runtime.Registry');
4 i! {' W6 { O2 _Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;5 M$ @8 @/ U, W+ A
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;9 z' z2 y: H& ~& R
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;
/ F7 ~+ A! p' [3 `Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;* d: o( O( o6 j/ i9 l' F
4 k+ A f2 |5 s) l/* create a logger instance */
/ C1 k. q3 a1 \) p% b3 Kvar LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');( _: b$ y0 G% C; F; U
var loggerBufP = new LoggerBuf.Params();+ Y) A: [, v: q$ E6 G# U" ^
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory *// E0 z( L5 s, Z! D) v0 D
loggerBufP.bufType = LoggerBuf.BufType_FIXED;- {8 p) ^" U: W3 |3 k2 ~
8 F; T: q F7 K8 I. X+ V/ I1 h( n
var appLogger = LoggerBuf.create(loggerBufP);
, B, v; Z1 x4 IappLogger.instance.name = "AppLog_Core1";/ A" x! l- K! k9 ]4 W
Defaults.common$.logger = appLogger;% z$ E6 v& J/ w6 m
Memory.defaultHeapSize = 0x8192; 9 f" C7 P0 `% ?& d+ `1 h2 I% E" }
Idle.idleFxns[0] = "&LEDStatus";0 E$ d. |" M: I1 V. C* H
Cache.initSize.l2Size = Cache.L2Size_32K;
1 q/ w: t! D5 V6 m. D0 ^( G; b$ n, x9 S
|
|