|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明6 x# n7 x' O) h
我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下4 Q2 ]+ f8 L; C. _0 w( Y
(不过疑惑的是,为何单独DSP仿真就没有问题呢?)( u# ^. }( q8 d7 D* p+ `
Y$ v/ y8 @. X6 C8 e是不是需要在DSP.CFG中进行配置
0 e3 [1 U8 K# a. y) M! b我现在的配置为
4 C1 `& t. F$ L. R) F
( }* |! a1 Y) b4 Q" L/*
4 [/ K3 C) F1 I% S) y- V/ ?# a * ======== Operating System Configuration ========1 p; X% J9 B, d3 p9 \
*/
" O# J! R% f; Q7 R6 q; P& F* c) ], o6 R+ I4 S6 L# M
/* no rts heap */
9 {$ f. c- x3 A, mProgram.heap = 0;
: V/ S8 k `( X- J7 K$ cProgram.argSize = 100; /* minimum size */
! N2 I) F* e$ tProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大
1 B7 B9 Y+ T9 C/ Y5 J
( v7 h; z9 n7 [/* create a default heap */
& L* k: L; k2 H6 K! r+ [- [& z* kvar HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
6 D3 e& }0 W; K/ hvar heapMemParams = new HeapMem.Params();) r: X/ N, E# A* u- w) D; ~( s
heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大 c4 Y) l& `. F# N( `& _6 X T
. K$ Q. _4 W# d% ]5 pvar Memory = xdc.useModule('xdc.runtime.Memory');! R7 f- v$ ^$ _( M K5 t
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);! |/ P1 P9 N3 K1 l5 O0 s- f
. u6 w' t4 K) O5 Q* H" T& K; M
/* configure System module */0 c- [7 @$ F5 \, K8 f
var SysMin = xdc.useModule('xdc.runtime.SysMin');( I; G" ]( R+ A; n+ I) \' C. I
SysMin.bufSize = 0x1000;
( J% a x2 D4 T1 q3 p: ~. `2 _SysMin.flushAtExit = false;
2 \; l& ?3 F d" ]) P- m
$ V, ]! b! r" N& a; rvar System = xdc.useModule('xdc.runtime.System');% q8 V6 `4 ~: y- o& u% i* b
System.SupportProxy = SysMin;
^, `' J# D# n$ `7 m3 r* [* @8 Z( a5 |4 o8 H
/* configure SysBios to use the lower half of Timer 1 */1 F; x d/ b9 e. k
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');9 A P. @+ ~) {
var Clock = xdc.useModule('ti.sysbios.knl.Clock');: c: w% Z; c+ M
Timer.timerSettings[1].master = true;
7 m1 S5 t7 U& o. \- v8 B nTimer.defaultHalf = Timer.Half_LOWER;7 \) I% o; r3 v+ A) c' U" ?
Clock.timerId = 1;
3 l7 [' T9 ^( S4 ?
9 t3 K" V7 V- I7 G
% K$ j# k9 N$ Q) U9 b* V1 j/*% Q, J" @- [' i# ~+ u$ W" h
* ======== Miscellaneous Configuration ========( s, `( d, m: t3 ^
*/
% M5 p( b1 F/ G/ W! j: c
/ |0 z2 H$ w8 t" x# |" \/* set default diags mask */5 o+ ?& c5 e2 c* R" `, k% e
var Diags = xdc.useModule('xdc.runtime.Diags');
0 P* B6 h4 G7 ?3 q! X5 rvar Defaults = xdc.useModule('xdc.runtime.Defaults');
& i( D, V a' E. ^) P1 d( z) S
- D! m+ P3 ?' v! `Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;* G* q5 b$ S( f3 g4 g4 ~5 K7 @9 s8 F
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
" b7 z& X' P; M$ Q5 [" i8 iDefaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;5 T+ L( w- p! j9 l3 z
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */) \# j" K. m/ h% v
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */- i& S3 |( P" D, Z& B; K
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;; h( `+ u; h, n+ Q
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
% m5 t* k! S9 O6 ~$ RDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
; @2 s5 n6 ?" S& LDefaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
( Q% U9 e$ K8 b- [Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
. R8 t# _7 G0 ]# f- M: y6 HDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
$ I, ]+ X* V+ l+ G0 [6 H7 xDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
1 t3 D+ m0 Y) ~8 L; b! ~: G: F$ \1 ADefaults.common$.diags_INFO = Diags.ALWAYS_OFF;
`' p2 l G; L" n$ ZDefaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;! g2 G" \2 g( g$ O' T4 c
7 H8 j; u7 ~9 y8 v0 q
/* override diags mask for selected modules */
7 u: s+ {0 b8 Oxdc.useModule('xdc.runtime.Main');
/ a0 ], d. x8 QDiags.setMaskMeta(, O* ?; k7 U' s9 R8 y0 s1 A% @
"xdc.runtime.Main",8 f0 r* ]3 i6 {
Diags.ENTRY | Diags.EXIT | Diags.INFO,/ t. S8 M) L' A' l, W/ A' Q
Diags.RUNTIME_ON
! V3 J2 a- k& {; H' k8 I) l8 b);) y7 ?7 Y( {& r5 }! t
, T/ i0 E; Q* C! f8 `8 w5 Nvar Registry = xdc.useModule('xdc.runtime.Registry');& h s9 X" W2 Q4 B5 H" g# t9 e# Q1 f0 Y
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;% v/ Q. I# l" A! f9 h2 |( s
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;
3 ]" A1 h; G% g2 R7 D# k, TRegistry.common$.diags_INFO = Diags.RUNTIME_OFF;7 F4 Z/ B+ m, C5 {5 J
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;. V5 m; t3 q! ?9 P6 A
- _. ~9 B2 t/ ]4 W0 T) H/ D
/* create a logger instance */
( O* x( d9 [- z3 M' u7 q" D9 evar LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');8 g* T1 n4 S# S% }. R& N
var loggerBufP = new LoggerBuf.Params();
0 a1 Y# x+ j2 a% I! UloggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */5 n: {& ?9 @0 Q- \2 ?2 ]: }
loggerBufP.bufType = LoggerBuf.BufType_FIXED;0 _8 S4 @5 A1 A
/ l" d% s" I* U# l0 b
var appLogger = LoggerBuf.create(loggerBufP);
3 R1 I$ u& m. V- W/ NappLogger.instance.name = "AppLog_Core1";
0 |/ t! P% [5 R% X" k0 ?% c: }Defaults.common$.logger = appLogger;4 J0 E. A7 O. p/ }, R5 x `
Memory.defaultHeapSize = 0x8192; . i5 D: D- f3 ]5 p2 x
Idle.idleFxns[0] = "&LEDStatus";0 `( ]* F* T2 f3 {
Cache.initSize.l2Size = Cache.L2Size_32K;
6 d% Q: \3 [( u' A0 t, m, R" z9 x4 D6 u; Q' u
|
|