|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
' Y! o h. Q2 I1 y我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
* ?2 \* T" T+ D# D(不过疑惑的是,为何单独DSP仿真就没有问题呢?); s# Q; a( P" i1 b8 p
" A2 V9 x) F6 C+ E8 f5 T! h& w( L是不是需要在DSP.CFG中进行配置
+ J A7 x, w* N* u! j# p# H我现在的配置为4 m( E8 u- e; s( a; B/ @
" E0 Z, I% Z0 ^4 D! u& u3 t3 T! u
/*& g" H% J# m9 _- V S' r* K
* ======== Operating System Configuration ========2 e/ X3 e/ q" L3 F6 X6 X
*/7 o3 Q7 { @) ~4 G% |
5 J3 d# w2 s) q% y4 c0 d& a/* no rts heap */, Y4 j; g! v% n$ U: r
Program.heap = 0;5 M/ ~: H' X; P6 O: S6 Q
Program.argSize = 100; /* minimum size */( u- E$ ]$ g% d. J$ A) Y
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大1 x; c1 M3 G. D
l2 T1 Y% Z4 d" b5 ~* C
/* create a default heap */, B1 I) E) v( h6 b" U/ f6 G
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
3 ?$ s9 @0 O, j5 n+ `! F. W# kvar heapMemParams = new HeapMem.Params();
% c& {6 r4 ^) Z+ I/ ^heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
# A8 X: ?- Y) \+ i o* E; x+ ~: w7 b( g' E0 k% P, z5 {0 F
var Memory = xdc.useModule('xdc.runtime.Memory');$ g p' c" [3 _8 |1 k
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);" u: a' [% w6 E0 T2 _9 t) K2 G
' u8 d1 o4 a y$ e8 C# z/ y/* configure System module */& P7 ^; W% a( F, v8 c/ p1 {2 R
var SysMin = xdc.useModule('xdc.runtime.SysMin'); Z! H, l H& d5 Q
SysMin.bufSize = 0x1000;! w9 d j$ ]+ f& k$ }
SysMin.flushAtExit = false;9 h& m" m( q7 i$ X& \
# ^2 i2 V# c5 y
var System = xdc.useModule('xdc.runtime.System');
. E" O( w! R; C* n8 L: ESystem.SupportProxy = SysMin;
3 m. O& w; S7 ~
. R. h. h5 i& _3 V7 i3 V/* configure SysBios to use the lower half of Timer 1 */
8 N5 s2 ?0 N. h2 Y: c( y6 t' l( mvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
* U* m5 K8 K, J9 L2 n U9 b" J$ Svar Clock = xdc.useModule('ti.sysbios.knl.Clock');: ]5 v; D& I9 R0 I t
Timer.timerSettings[1].master = true;& X' y1 t, a, R
Timer.defaultHalf = Timer.Half_LOWER;+ W6 A/ E8 W p G C- ?+ W$ x
Clock.timerId = 1;
* o7 a6 k) j0 e/ d/ U( t: h- L/ M/ J
8 d0 l5 H6 z$ U; C0 I: [/*9 w. `* z8 H5 m6 F4 S3 Q3 m
* ======== Miscellaneous Configuration ========
8 g) F0 N; q$ W */
- I+ R+ U9 ?6 s9 u u, k( a; L' @) |& i0 X! G
/* set default diags mask */
1 m% D$ g$ q; N: Ivar Diags = xdc.useModule('xdc.runtime.Diags');, b$ z4 j4 f/ [4 |6 R' y: Y% a! t
var Defaults = xdc.useModule('xdc.runtime.Defaults');- X) h5 ]: c7 S3 k: L5 z
# Z# X! g, C0 A: @3 M, M
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
: H& t7 J% s( ^; E+ aDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;2 m- A5 r' ]4 L. x
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;- g4 v- z8 H9 C
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */: A# ]& i* I. D9 o! F
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
9 m4 j, r% k$ Z3 h5 cDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;
. I; q" U6 Q: R5 E( \1 LDefaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
8 z0 |7 t: j+ R7 UDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;5 d' a8 [" C7 z5 {2 j% I8 S2 e( w
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;- `/ ^$ e/ w* C/ ]9 {& a- x# t
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;! h; j& F1 M* x s4 I
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
* M) d' G0 z+ W7 ~2 w0 eDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;& o: j# I! |1 ~* L" P
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;2 t+ \8 H. W' X2 {5 h; r
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;$ s c& o7 Y( w5 j
* L u' H9 N$ _- D/* override diags mask for selected modules */
& W# `! H9 E& d# k. D- K$ ^9 Jxdc.useModule('xdc.runtime.Main');
/ H# _2 s1 Y2 M, A: l% dDiags.setMaskMeta(
: U7 L1 ~7 v" \3 m "xdc.runtime.Main",
! D9 f- ]5 f# w' J Diags.ENTRY | Diags.EXIT | Diags.INFO," ^* M' S0 v5 T" k# l/ m D
Diags.RUNTIME_ON
0 G) P2 w, I# g2 Q, Q2 |0 p);+ n( z( e4 @& r/ g' k! Z: X
! h3 ^0 Z' H: L. i% m: }" G
var Registry = xdc.useModule('xdc.runtime.Registry');# J: M3 K, |" Q K5 h# F# R
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
* P4 Q0 D. R2 W, cRegistry.common$.diags_EXIT = Diags.RUNTIME_OFF;
: g0 H, m; p& n3 gRegistry.common$.diags_INFO = Diags.RUNTIME_OFF;) c( j3 j2 `: ]+ ]3 |6 R. D
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;
0 x2 b, t# R3 n) t* z( k+ e
/ P, w9 Z8 M9 U6 s) T$ c& A3 m/* create a logger instance */4 x" y8 S& ^* V' y$ b* G$ U% |. O
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
$ @, Q6 G5 h( }) Lvar loggerBufP = new LoggerBuf.Params();
. y0 v0 m! `3 W; g/ _loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */) ]) W- [- a( J* h4 M2 I
loggerBufP.bufType = LoggerBuf.BufType_FIXED;
* C9 P/ k" M: x' p
$ R0 C; w3 ]+ c9 Evar appLogger = LoggerBuf.create(loggerBufP);
4 I- W2 z1 e/ i* y6 u0 fappLogger.instance.name = "AppLog_Core1";
' `6 H0 U- {0 S7 @2 Z) P4 k$ m' QDefaults.common$.logger = appLogger;. t4 d7 Z, n" `. _/ j6 V* S# ~
Memory.defaultHeapSize = 0x8192;
% |& I" h9 A! a6 k5 xIdle.idleFxns[0] = "&LEDStatus";7 X8 Q. e+ ]% v& d& M. U4 x
Cache.initSize.l2Size = Cache.L2Size_32K;
& C1 C- c# R/ p( F5 G8 F" @% U: T/ z" O
|
|