|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
. x2 l, U+ N! M- H, B我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下% Q; N1 U, Q: p: ^6 X
(不过疑惑的是,为何单独DSP仿真就没有问题呢?)8 o2 F* r) b2 K
% k2 `( c$ Q$ j" D( ~ `# \
是不是需要在DSP.CFG中进行配置
0 v: Z9 z @# n3 u. n) P我现在的配置为
, w. e0 \1 E" x, v! d! v8 _) o9 ^
: D3 j2 s0 H# F/ m: m9 S' T* v/*
6 E2 S3 n. @, w! K * ======== Operating System Configuration ========
7 p4 F% _" F2 l) C( j& D */, w4 h2 I3 z# T$ J) f @
~( J& f* e3 b6 b, {; S/* no rts heap */
9 @6 ?& g. G- ]; SProgram.heap = 0;! `9 n5 ^, M5 P$ r$ T
Program.argSize = 100; /* minimum size */) B/ R$ B* a5 n4 G3 C8 f5 `
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大" F. E/ U+ g/ t) v' f2 T# U
7 A2 x7 d! K. e m* \! v
/* create a default heap */) S4 ^* M# ?7 _8 ?
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');. i3 j* D& E0 ^" \7 t% K
var heapMemParams = new HeapMem.Params();# F( _+ ^& ]4 j% B8 C' f4 u
heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
: C- K; X5 E4 n M' j/ l9 ~1 y* [( f+ H. S) L, B7 t% e
var Memory = xdc.useModule('xdc.runtime.Memory');7 ~% P9 h( A4 P- [
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);
9 `4 x. A) C" v! w/ v7 }9 s# P* ?- h, ]: {8 F
/* configure System module */
* W; }: s# Y% P% G! x% Fvar SysMin = xdc.useModule('xdc.runtime.SysMin');: Z- W1 ]6 x0 o$ J/ V$ M! K9 q
SysMin.bufSize = 0x1000;
8 K4 ?5 ]: f% ?& @/ X" [SysMin.flushAtExit = false;
8 r+ f/ Q: ]+ i& H1 \- q+ H9 g1 I# u
var System = xdc.useModule('xdc.runtime.System');/ X2 @5 v* \2 w! `* Y. H1 M6 U, j
System.SupportProxy = SysMin;8 r( D9 z7 r# F1 t
% y# y2 F& ]0 i: j/ c# t; ]
/* configure SysBios to use the lower half of Timer 1 */3 i' Y! }4 ^0 k1 }# d
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');( o/ _- u0 g8 x0 `- f2 J: i
var Clock = xdc.useModule('ti.sysbios.knl.Clock');
4 _' Q& @( p: S" a% lTimer.timerSettings[1].master = true;
' d% ]2 j' v8 V/ I* n% lTimer.defaultHalf = Timer.Half_LOWER;# F: r4 e$ r P: Z j( L
Clock.timerId = 1;
4 g; I& w+ H, _% X
3 }) J ^$ x/ }- M9 c0 c0 `9 z* ~' ]" l" k9 V' C
/*) ~% x: m! n7 a) J5 v
* ======== Miscellaneous Configuration ========
& n% w, n# t! X, e7 g% b8 a */
5 @* z8 |$ l' b1 D" a, Q w c) J7 Y r& h1 K
/* set default diags mask */2 K G' M) }% J. `
var Diags = xdc.useModule('xdc.runtime.Diags');
4 q" m$ ]4 S0 y, m: \1 r5 u# m: `var Defaults = xdc.useModule('xdc.runtime.Defaults');" n5 a! \& O( ]3 i4 x h
1 _ K4 |; p1 B
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
1 I; d- s! K, g! S$ H4 NDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
2 I- ]% I, B" V* hDefaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;
; j& r1 i+ [2 i3 b, ~Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts *// c4 G6 S- _0 ^
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */8 ]; d% c" ?$ W' F
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;4 a' }; o: F* V" ^3 M2 x( H! j/ c2 S
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
* K8 M. V* [0 D0 O- v% x( |Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
& e/ R2 _" t" p" YDefaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
: p: [; e/ C1 u" e& y# ?# `: b6 Q1 EDefaults.common$.diags_USER4 = Diags.ALWAYS_OFF;+ B5 i+ M) u; \6 U4 i9 K" E. `
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;" |9 U2 X% y0 r, K/ l" S- R
Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
/ a' O8 t Y5 ] {! u: WDefaults.common$.diags_INFO = Diags.ALWAYS_OFF;1 i* k2 U+ q, q
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF; w, N$ a- S9 n6 j9 q
; v, o# M: _) P) K5 s/* override diags mask for selected modules */
0 f7 \, n& n* txdc.useModule('xdc.runtime.Main');
4 `: b0 t$ G; Q; B: {" u. m; VDiags.setMaskMeta(9 ?* B( @0 y% @0 X9 z/ v1 b2 F3 d% f
"xdc.runtime.Main",6 c5 [3 |4 V1 f2 X( i/ p0 w) q2 W
Diags.ENTRY | Diags.EXIT | Diags.INFO,
, \1 Y) M6 |' o% k& p' P$ g Diags.RUNTIME_ON
/ E) \' J) K# H- ~( b; E& r3 i5 F& T);
1 P; R6 G) n& |4 F+ f' ^% M: K0 U( h$ ?3 U. \
var Registry = xdc.useModule('xdc.runtime.Registry');
& {+ @. X3 ^& \, X( FRegistry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
# Z$ _+ t- Y% h2 S8 gRegistry.common$.diags_EXIT = Diags.RUNTIME_OFF;! }( L X- g; o" |2 ]& n
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;8 a% q) [$ T* o: _' s
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;
5 G6 ~8 [8 x( D3 ]& \, V
o3 U5 l, o* n6 ~8 r/* create a logger instance */0 H h% `9 A" R/ E
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');$ s/ p9 ? _- |
var loggerBufP = new LoggerBuf.Params();6 |' O4 h/ Y% L% I
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
. U3 [$ Z0 K0 x6 F3 Y- Q3 U3 D8 `loggerBufP.bufType = LoggerBuf.BufType_FIXED;
6 C: Y# l# r: V4 {1 a; w7 V+ x4 _; _5 W# Z2 e: Q: Y
var appLogger = LoggerBuf.create(loggerBufP);
! A! y8 W0 X; S% |9 h RappLogger.instance.name = "AppLog_Core1";
$ R2 K9 ^) Z0 A2 C# A, UDefaults.common$.logger = appLogger;4 ?7 t, v+ N+ P! v) x1 b
Memory.defaultHeapSize = 0x8192; $ _/ z v. K' z3 D
Idle.idleFxns[0] = "&LEDStatus";
9 m4 N6 G' a) YCache.initSize.l2Size = Cache.L2Size_32K;
; b* n- S" O( U0 {9 z# n5 ~3 f( N5 K; R
|
|