|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
+ K X R" @0 r( F9 ^* R& W我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
* X) @" n) a# p6 D+ r(不过疑惑的是,为何单独DSP仿真就没有问题呢?)$ E2 T* @5 s `& }* f9 G( d
9 ~, a* l4 v* J是不是需要在DSP.CFG中进行配置
: f4 _6 U0 {) R我现在的配置为
7 h# _- E" x+ u0 e7 ~) M& Z- d7 d% T6 I3 e- H: X
/*7 | L8 q- Q, X9 J& ` q% u
* ======== Operating System Configuration ========4 ]" h0 J( D" j
*/' E! l5 y/ L9 b# b l% n( i
0 M- I+ ]; c3 D/* no rts heap */
0 T7 W `( y2 r7 bProgram.heap = 0;
) G8 q+ ~% P2 h0 u: cProgram.argSize = 100; /* minimum size */
0 N7 {8 e, a3 y6 u/ t0 XProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大
; U( A! _4 A# o3 {
3 k* R) C7 O9 d+ e/* create a default heap */, }0 [+ R7 |' K3 c& }! E
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');' _& ]/ x( x3 A, F9 E
var heapMemParams = new HeapMem.Params();) h) D4 l1 U8 [' x8 U8 ?1 `
heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大# L! A b( P) b
- y. B% v. `# ?7 E1 r/ t# qvar Memory = xdc.useModule('xdc.runtime.Memory');
& ^# W! @6 d& ]0 i& d. }Memory.defaultHeapInstance = HeapMem.create(heapMemParams);9 S5 R9 r! S% Y5 P; D: a+ U, p
% S8 I8 y1 `# }) C4 w! G" G/* configure System module */( ]" ^& T B3 M) k, W& Z0 @
var SysMin = xdc.useModule('xdc.runtime.SysMin');
* W. r5 N: F v) B& DSysMin.bufSize = 0x1000;
$ Y e# ^) ?0 ]9 N8 XSysMin.flushAtExit = false;
! s% `; u2 e2 h% g |+ r+ t' o( |1 T+ }9 e6 M P: W
var System = xdc.useModule('xdc.runtime.System');
4 C! }" w+ X. aSystem.SupportProxy = SysMin;
* W1 ]: I5 C/ q/ Z9 D# N; N/ E2 E3 D6 M) T4 o( \, x% G( Q
/* configure SysBios to use the lower half of Timer 1 */. A5 P# Q9 S3 k m; Z
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
' ]5 K" G4 W4 E! v7 k8 T& a5 ~var Clock = xdc.useModule('ti.sysbios.knl.Clock');5 _' F" e# I1 R) m7 B
Timer.timerSettings[1].master = true;% e) ^ X' l4 b- z. F" H
Timer.defaultHalf = Timer.Half_LOWER;; j ]3 Z# Z" O0 \, |( Q
Clock.timerId = 1;
o% s8 [- X6 Q7 [" a* ~! M& @* ]$ J& O/ w. D( ^' r2 q- p1 x6 t; I- o
# j* P7 Z% N m, j3 R/*
# U3 s/ E- [5 T# R * ======== Miscellaneous Configuration ========9 ^: z4 M" d2 ^6 F( z, b( S5 s: s$ c
*/
$ e# K2 D+ l! t. a
" q; |) t6 I6 }5 T/* set default diags mask */
$ r3 ?. a) |4 b: U5 K& Lvar Diags = xdc.useModule('xdc.runtime.Diags');/ j# D7 Q. O4 G( C3 C
var Defaults = xdc.useModule('xdc.runtime.Defaults');
! B m1 f, r) B: ]
# N3 F& l% d% d1 N1 _% FDefaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;4 V" L( }" y8 l+ U
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;' s. w( c# l0 C; R) K- y$ I
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;/ j) X* t ~9 c: b
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */7 N; x3 \$ i4 u. Y0 \, l
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
7 q/ S2 @( B& ODefaults.common$.diags_STATUS = Diags.RUNTIME_ON; K8 m) s+ O' _
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
* _- @' i) n7 n- Q" s4 ^% ]0 N% XDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
1 E* o% V8 l; o$ `; C7 H; }' YDefaults.common$.diags_USER3 = Diags.ALWAYS_OFF;; \2 v" c d* M7 H. I
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
' |$ i2 Z4 ~ m" k8 @9 V' YDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
7 O0 e4 z- d, O3 K! H, o& H F: i7 fDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;. i1 h* _, c5 E6 v
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;
- m2 e+ M* I- {% W: ~( [3 v; _5 WDefaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;/ v$ R$ X% E; h
' p+ K/ u, {4 X) k' S/* override diags mask for selected modules */
' }2 j% N7 G' x/ H) jxdc.useModule('xdc.runtime.Main');
$ |" W* v; C! ]. I: }Diags.setMaskMeta(% J+ o# T9 { y q! ^1 P3 S( y
"xdc.runtime.Main",: C2 I. x T. C% V" O$ C5 l
Diags.ENTRY | Diags.EXIT | Diags.INFO,- m& w6 q& s0 g! r8 q7 w/ U
Diags.RUNTIME_ON% ^! W- k$ [% I0 V) S+ F; D
);
1 b# k( v3 S6 K! W3 S8 ]
G$ D; E. @/ G& _2 _/ e; @var Registry = xdc.useModule('xdc.runtime.Registry');* ]) k" c, C* I8 M
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;+ `2 z6 n5 X+ }7 C6 v4 P/ k
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;
. }, `% @/ q9 W) n% ]Registry.common$.diags_INFO = Diags.RUNTIME_OFF;
0 o0 Q% ^( e! @: kRegistry.common$.diags_USER1 = Diags.RUNTIME_OFF;/ p& g9 e8 e4 B. l7 L
( i3 r- h. U( k8 H/* create a logger instance */
3 Q4 |: B4 Y+ D s8 Z: j5 A: z6 kvar LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');% x5 ?' `+ B+ `! k5 w$ p
var loggerBufP = new LoggerBuf.Params();, H% U4 ]+ X$ E- E* x
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */+ i3 L) f. c! T1 c+ E8 X. g
loggerBufP.bufType = LoggerBuf.BufType_FIXED;
1 W, s/ m% W, z6 _ S7 M; @1 r# K
6 }2 P, A/ B+ y. _0 \var appLogger = LoggerBuf.create(loggerBufP);
% m$ v6 j5 u j2 q. M* w* NappLogger.instance.name = "AppLog_Core1";$ Z0 ]" `4 ~- e
Defaults.common$.logger = appLogger;
$ g! B( q& o8 ~* ]% {Memory.defaultHeapSize = 0x8192;
3 p% J1 o4 a$ X8 e0 V. xIdle.idleFxns[0] = "&LEDStatus";. R# q5 I, j3 J5 B5 R; V. }
Cache.initSize.l2Size = Cache.L2Size_32K;
7 D. g+ i, U: _2 ]# g5 j8 u% O3 ~3 M# v- W" j& e4 e* b4 F# X
|
|