|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
0 @. Q9 f* l$ d5 e) J. z i我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
+ v2 H8 Q& E- B- V3 i) }- g2 w(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
& [( e' I! O6 i% |3 S9 h+ @: Q8 s
是不是需要在DSP.CFG中进行配置
8 g. X" T2 L8 l. |8 ?9 \我现在的配置为0 G4 M7 H* i5 ` q' P4 j
( P- f3 r; Y/ r) {( t# T( P
/*$ C5 ~/ B6 W9 B. h p* V2 v3 t
* ======== Operating System Configuration ========
5 U7 G/ ]+ D; x) L */' z: c' j5 P3 b" E2 V5 x# s% k
3 n5 h$ O1 n! K% o1 P% b" J/* no rts heap */4 T/ u5 @0 S* O; h" t6 D
Program.heap = 0;
( o/ |/ b3 {$ ~Program.argSize = 100; /* minimum size */
8 c# o: P7 o( g; t. d# Y k, ^2 sProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大
2 @5 i, L9 n C" g& l# Z8 Q! U0 A- H- L
/* create a default heap */7 x! L- }1 T/ c: f/ v4 `
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');$ p4 d9 j. m$ i6 g/ }" d
var heapMemParams = new HeapMem.Params();2 u2 V+ z5 y+ R, |% l! _
heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大; {' z" x, [* N2 T" P2 a# K* r+ S
P, `; ]8 {+ j
var Memory = xdc.useModule('xdc.runtime.Memory');
+ @4 t" Y( U' M' B2 OMemory.defaultHeapInstance = HeapMem.create(heapMemParams);/ ?) N; n$ K v: Z7 a6 l3 Z
& L x3 H l& V6 R$ _/* configure System module */
k% b! V" M! v# o8 ]; x* hvar SysMin = xdc.useModule('xdc.runtime.SysMin');2 I# ?! `. i& o n+ Z) u
SysMin.bufSize = 0x1000;8 }, N" X/ N0 M1 z
SysMin.flushAtExit = false;1 N: y! w1 f$ v, _, K# @4 r
) T6 ^2 g% c1 v
var System = xdc.useModule('xdc.runtime.System');
: f0 m4 ] d0 C; ^$ f0 gSystem.SupportProxy = SysMin;# z5 w7 \- G3 B2 d
J; N( I8 C& p$ w/* configure SysBios to use the lower half of Timer 1 */
0 d! S; o5 D( N$ F6 dvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');6 f! q1 \6 r. b* l
var Clock = xdc.useModule('ti.sysbios.knl.Clock');% M, m! Q, S9 h B7 {
Timer.timerSettings[1].master = true;4 ?6 @+ a. Y& r% F" A
Timer.defaultHalf = Timer.Half_LOWER;6 I+ x2 @3 c6 m
Clock.timerId = 1;
) `7 g2 l/ h3 v3 }; q' R! M0 K1 `: o/ s2 N/ j" T* ?/ ~9 z) d( ~0 T
; N w6 h8 u) Q( F; Z3 a I/*& {! D/ G+ L' x4 x! F
* ======== Miscellaneous Configuration ========% S" r9 f! J4 V' o
*/- h; J& A0 t3 ?
! P$ I2 K: [) g: X4 ?
/* set default diags mask */
, r9 T4 |! }8 f9 o0 `+ _/ ]2 Ivar Diags = xdc.useModule('xdc.runtime.Diags');: Y3 ^ q5 @. N! A! Z3 g: T
var Defaults = xdc.useModule('xdc.runtime.Defaults');
3 g$ `% p# S: g$ z8 @
* U: c" c# b$ Z% S! h: YDefaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
0 s! I1 c' U- y C; aDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
: g9 b& S6 `5 B; aDefaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;4 q* L5 \0 U; A* h
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */+ N, ~& Y. `. t2 X: }
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */8 i0 _1 ^ T' Y; r3 m7 h1 D
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;
; `" x7 v8 k: F, A/ xDefaults.common$.diags_USER1 = Diags.ALWAYS_OFF;$ d' k! v3 x" ~, y, d1 p
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;) z/ A# J* F1 _) P% G+ `
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
$ G, C# Y8 k/ R, o4 YDefaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
( @8 z, T- d8 G3 _0 mDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
@7 q/ @5 P% J9 |! u! q# gDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;9 K, |) F( H8 d. {$ X1 R
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;" V/ K( {( c S6 P3 d9 A, d
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;6 T) D& |9 S7 x* d. i' ~( u+ r$ E
2 w9 G1 u* K. K4 a
/* override diags mask for selected modules */
: C& l% v5 P* i5 f$ xxdc.useModule('xdc.runtime.Main');
' l' ]* X' E" X8 k4 lDiags.setMaskMeta(8 C0 B2 a3 Y9 q. x6 [
"xdc.runtime.Main",/ c- z) H+ ~( h A8 N
Diags.ENTRY | Diags.EXIT | Diags.INFO,+ i6 ?1 w" x/ O, z$ L/ H2 `* l
Diags.RUNTIME_ON
; s" G; V5 S3 s1 n b& |3 i);$ E- x$ e; z2 t, d+ y4 B9 l
0 C) M5 M8 b" r. O
var Registry = xdc.useModule('xdc.runtime.Registry');* h' @3 t- E5 a6 [. ]% I
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;& k1 W* F& c4 e5 Q/ z! ~) m( F
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;
: q8 p% k/ e8 r) ?# X+ v1 G! aRegistry.common$.diags_INFO = Diags.RUNTIME_OFF;
9 y2 I; u, f1 n: t* {Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;
) y$ \) ^2 O2 r! t9 v! q2 _2 M* H6 @, d0 c. F' v
/* create a logger instance */
0 o1 H$ I3 ~. B: i) Gvar LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
% n0 _2 u' v A5 ovar loggerBufP = new LoggerBuf.Params();# b# O7 O$ ]6 u( d7 W. U; Y- D
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */5 n. B5 R6 c8 }, P( S. |
loggerBufP.bufType = LoggerBuf.BufType_FIXED;
5 e$ E T, o; v8 k2 e$ y& z3 m( n$ R" a7 M u+ Z' V* p" L
var appLogger = LoggerBuf.create(loggerBufP);
9 q" }. c5 M8 N3 iappLogger.instance.name = "AppLog_Core1";3 w7 A; P9 C" H( T% V U- V7 D
Defaults.common$.logger = appLogger;; A7 W/ G8 h9 g7 _7 e% c7 D4 V
Memory.defaultHeapSize = 0x8192;
# h4 }' x3 F5 H* X7 ~1 P2 t" OIdle.idleFxns[0] = "&LEDStatus";
u3 U' C. |' h6 p x. wCache.initSize.l2Size = Cache.L2Size_32K;2 \9 G8 r; O# K+ R, z7 k
; D6 I+ E S& b
|
|