|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明- o% s1 \3 o0 x$ U* G' }. m
我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
( j( a" s3 ]) t6 s5 K+ s+ ~4 ^(不过疑惑的是,为何单独DSP仿真就没有问题呢?)" t/ e+ w+ |( i9 T H
" A% @: x8 v6 k是不是需要在DSP.CFG中进行配置
' h) e0 j# r' E# I" d我现在的配置为6 {6 `1 c, @; m( X7 { S
, E. d% |/ K3 h U i8 o! |
/*
5 W; B! m* X4 z! P( T ^- ] * ======== Operating System Configuration ========. |/ ^( `5 u" U7 Y$ Q
*/
. F8 d) Q5 v/ r1 B% w' P; x/ B, v. ]# Z0 t4 W% {; L
/* no rts heap */
, i6 h/ V) s7 @0 QProgram.heap = 0;( Y; y$ t6 R9 ~& f
Program.argSize = 100; /* minimum size */. g+ L7 O- p9 _6 h% R$ Y5 B
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大
v& B" Q" Y6 p. ^4 v
7 j) W- o7 ^3 Q* c8 Y8 V3 O/* create a default heap */
: ~, H4 _* E0 f+ k1 d9 L5 S6 s" rvar HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');; |. W8 w7 z9 a% \
var heapMemParams = new HeapMem.Params();
1 _% R0 V1 [& D8 J2 UheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
% G& |+ E: y! \$ a7 D
4 V& S% a+ l1 _+ \var Memory = xdc.useModule('xdc.runtime.Memory');
) I t5 P% B* Z* o3 t) N& R9 e MMemory.defaultHeapInstance = HeapMem.create(heapMemParams);
. _4 U. n9 W% ~5 Z4 K- h+ y2 b1 N! \. e
/* configure System module */
, z9 a* ^+ x/ G9 _# R! ?var SysMin = xdc.useModule('xdc.runtime.SysMin');
" G e0 x* a8 V8 WSysMin.bufSize = 0x1000;1 Y- j7 D) l. d1 S4 u2 _
SysMin.flushAtExit = false;
3 f% A/ B8 f( { T/ U. G L% v) R3 J- Z
var System = xdc.useModule('xdc.runtime.System');
$ d, f0 w4 V# X% S# x0 U5 d2 tSystem.SupportProxy = SysMin;
" n. ^3 }* [" Y+ H( e" w j
X( L4 Y/ L* Y6 `& q8 v/* configure SysBios to use the lower half of Timer 1 */
: A& r, ~9 p# ~6 j8 ~; R# y3 ?# tvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
+ m* V3 B1 f" Y2 k6 cvar Clock = xdc.useModule('ti.sysbios.knl.Clock');
( Q2 |5 \! A' i" o% l- vTimer.timerSettings[1].master = true;
/ d5 N/ E' H2 Y! k# uTimer.defaultHalf = Timer.Half_LOWER;
) B" p% C" y/ _3 ~$ _" \* GClock.timerId = 1;3 m8 v" y$ F" |6 [" \0 C: B
: g) z0 G) Q; f- ]2 ?( z
8 E6 ], @6 O* E2 v" }
/*
% U {. W" F% |+ r9 A * ======== Miscellaneous Configuration ========* T; u: L& `' K# D+ r
*/
9 d B$ B6 n# l l6 W* S* J9 b A& h; ~
/* set default diags mask */& O1 l, ~" Q/ U( L' t3 F
var Diags = xdc.useModule('xdc.runtime.Diags');( s6 q R+ _3 I, y, k7 ?
var Defaults = xdc.useModule('xdc.runtime.Defaults');
5 u3 ?2 e. K/ L3 E/ e% O+ s. t$ g8 ~" H' m
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
3 V, t8 O" L! K2 q5 ?& l7 LDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;/ j) x, C) D" T! [. b+ m
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;4 C6 R. m9 `. @& k
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
) D1 b1 }5 m LDefaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
0 _& p0 K6 v8 I" eDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;
! ?* }' M+ j, M" G6 oDefaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
# ?$ c+ G* a- U& [- I) k% rDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;" X w" h8 T8 J
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;/ w5 T6 k" I8 |" d, O
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;! p9 ?% O, P2 \
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;* y+ u; z/ Y- L' U1 K" { U
Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
2 _3 `9 Z" l7 T$ P& DDefaults.common$.diags_INFO = Diags.ALWAYS_OFF;
( ~& [6 ^9 U) X4 m# N( t& S. h! `Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
, Z2 V v, k% X! B/ m4 a
" |( X- z- L r# N8 F/* override diags mask for selected modules */
0 }( r! b% I4 [0 x, G; |" A0 p" |xdc.useModule('xdc.runtime.Main');6 L M% \7 e. M0 Q/ p) A
Diags.setMaskMeta( r* p/ N) n# w2 v) \+ c, z2 K
"xdc.runtime.Main",
5 C: S) r2 G6 c) j9 H Diags.ENTRY | Diags.EXIT | Diags.INFO,+ `0 h. l. Y! ^& `, Y" Z1 m
Diags.RUNTIME_ON
( _; J& H, h9 k7 N; C& ?);
3 Q y1 Y9 ]" O: d; B. h5 u. s: w k7 ]$ {4 U
var Registry = xdc.useModule('xdc.runtime.Registry');5 T3 h7 u" T: X& H4 t; J
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;& y& O% u" K- M9 f/ {7 X
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;
* l9 s9 f- b$ \% T; KRegistry.common$.diags_INFO = Diags.RUNTIME_OFF;
0 d0 ?# E* m3 M+ v2 ~Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;
$ W& u$ v; K1 c: V0 |2 f+ A8 P7 }- r/ J+ Z0 s1 [
/* create a logger instance */0 E! Z' |9 y4 `5 \8 J8 h( |
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');2 J5 g1 j5 t3 X* t q
var loggerBufP = new LoggerBuf.Params();
8 y& d0 j( d/ K' `/ Y/ hloggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
/ y+ B& u( b( H' N8 |loggerBufP.bufType = LoggerBuf.BufType_FIXED;
$ z7 s' ]& ]# |" W/ F
4 W: _& h6 u( ~+ N4 z$ ivar appLogger = LoggerBuf.create(loggerBufP);
' s& c/ K' r2 R% _0 g% O- vappLogger.instance.name = "AppLog_Core1";- V( Q' X9 b* h: X: |
Defaults.common$.logger = appLogger;
, j5 S4 p9 x; k2 C! C( uMemory.defaultHeapSize = 0x8192;
. v2 C- W! Y) l, L) m( PIdle.idleFxns[0] = "&LEDStatus";
- X) l5 p( _/ I R$ S ACache.initSize.l2Size = Cache.L2Size_32K;' y# T; K2 T h3 S; H
0 L g: A0 W( b* n
|
|