|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明8 b% s" |' J, O* o4 |7 f7 D) j/ T
我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
8 L9 w( E. i" [! E- n1 B/ ^6 I; x& l(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
6 i9 o, d1 r+ G6 H- a
6 w1 Y) h1 G. t6 _# H+ P7 k( L# `0 b是不是需要在DSP.CFG中进行配置
& T0 l: t3 e9 r. i8 }6 `我现在的配置为$ x5 C2 g* J( u( D0 `0 w+ r
! j" F& n ^- c) X
/*
* e6 K# r/ _8 m& ]" h; k( F# P * ======== Operating System Configuration ========$ h1 _+ D; ?9 t2 N' w# N
*// S c F6 b. |5 p3 \* q4 _
; s% ]' L0 r) s, `/ o( w% w8 I8 [# z
/* no rts heap */' \7 ?5 }* Q2 a2 B
Program.heap = 0;- Q% L1 Z/ R3 }+ |
Program.argSize = 100; /* minimum size */5 d) J+ m9 M- o+ a
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大! ?( S( {" P$ Q( k0 A' N
" l. i, A8 \& W5 M" t8 K7 P5 M/* create a default heap */9 p# b. R6 G7 z+ k# h# Z8 }
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
R; h' f' N, K' Ovar heapMemParams = new HeapMem.Params();
- b4 U' c" o, oheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
) V- K' E3 @% X& ?7 X. e
7 X0 P7 x$ l1 qvar Memory = xdc.useModule('xdc.runtime.Memory');
1 { |" H- o: s5 C5 h6 c: z, J* b* b: BMemory.defaultHeapInstance = HeapMem.create(heapMemParams);+ v0 n: k& `5 m8 }8 m9 X; U; ~
, y4 @9 B; j, X) L. g$ F. X/* configure System module */
' @3 [4 o4 g8 D# _0 nvar SysMin = xdc.useModule('xdc.runtime.SysMin');
* ], a; Y, P; x, V. nSysMin.bufSize = 0x1000;
: g8 [# k& C( M( E9 A2 q3 [1 `" ASysMin.flushAtExit = false;7 [; C7 C F& ^1 u4 O' o
; p/ z4 Q8 {% j+ a& q2 k
var System = xdc.useModule('xdc.runtime.System');
' J/ o. Z1 F; E$ k+ r2 eSystem.SupportProxy = SysMin;/ W. O& A$ [5 k/ w. M
* ~" N1 \, P# l! X* h- T
/* configure SysBios to use the lower half of Timer 1 */9 M8 E# y& J6 i4 x6 [9 Z
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');" y5 L; A% x' M$ a7 u$ j
var Clock = xdc.useModule('ti.sysbios.knl.Clock');) u" Q" I6 @- o/ P
Timer.timerSettings[1].master = true;4 X0 ?0 I# ?: L5 s4 ]
Timer.defaultHalf = Timer.Half_LOWER;
, X1 s; E) T: I* g* s6 zClock.timerId = 1;8 X$ U8 R2 \2 \2 c
1 r2 X h0 p- ~% @7 r+ X
4 V7 F; ]% p6 g2 O( K/*% D: G: V" c% d
* ======== Miscellaneous Configuration ========
1 N* D- Q# c& m0 g o. e# {: X */
8 ?" I, R" j! Z$ \0 B- d
# z! W" a2 P3 _0 L5 }/* set default diags mask */
' A' W F& J; t. j$ P: _) M. avar Diags = xdc.useModule('xdc.runtime.Diags');: g: J1 B; ?! ?, x+ j
var Defaults = xdc.useModule('xdc.runtime.Defaults');' e( t S8 t) ^9 `+ d/ Z
! r) _/ f7 v( _ j3 H9 w; D
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
" x: E- V; `, J! w, WDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
, X3 O' D# q/ M3 ~( u+ cDefaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;
2 G( ^9 r# f; [6 ~6 _; f6 CDefaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */2 C/ Z* C% ~' [) a" a
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */% Z% A1 Z; L |; ?& l! v0 O
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;
* ~. Q* g1 o6 n2 V% \Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
5 L* s8 z# K+ i, YDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;2 F6 @+ N* Q" A$ ?& `/ h6 x
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;, G' w7 `; l' k' j+ R
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
* E0 J+ l4 B4 A$ z2 x, }# KDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF; {0 k2 Y/ v. |* w
Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
. {8 t9 T5 f$ k6 tDefaults.common$.diags_INFO = Diags.ALWAYS_OFF;) o* v6 \* {2 I1 P7 b. F( v/ V1 l
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;( i. M5 S& z, v- F4 A& p
- `; z0 e5 {" }' ~3 o( y/* override diags mask for selected modules */2 W3 j5 ~) k5 c9 s
xdc.useModule('xdc.runtime.Main');
7 ^( y+ X1 S, j7 QDiags.setMaskMeta(
# l6 S5 J0 |: k# p$ H& p "xdc.runtime.Main",
9 S/ f3 E% M; N3 L' Q Diags.ENTRY | Diags.EXIT | Diags.INFO,
6 @ ?% v. d* N6 H! ? Diags.RUNTIME_ON! F9 {- P6 v, O5 ?
);1 G, Z1 ]" U9 T' p. ?+ x1 A- v
7 O7 x- o. c- G
var Registry = xdc.useModule('xdc.runtime.Registry');7 z" ?- G9 A w
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
( l; [0 L5 z3 e7 R) VRegistry.common$.diags_EXIT = Diags.RUNTIME_OFF;
) Y' O( d9 A4 Z0 v+ }4 GRegistry.common$.diags_INFO = Diags.RUNTIME_OFF;
! ?6 }5 p+ h3 \Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;4 y6 F8 ^3 Z/ x. q% E
, q9 R2 Y5 n/ K9 ~/* create a logger instance */+ [) c/ ?- Z o# R; Z' j
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');6 X# j. v; H# F5 V" m' K7 |
var loggerBufP = new LoggerBuf.Params();/ ?3 \+ n6 ^6 V$ J6 P
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */% z, \: E" G% }# n4 }; S
loggerBufP.bufType = LoggerBuf.BufType_FIXED;( U+ ?6 t5 J3 d; b* E2 G+ Q
) [ N4 |6 _' F( C- ~4 zvar appLogger = LoggerBuf.create(loggerBufP);
- e" N1 a1 P) mappLogger.instance.name = "AppLog_Core1";: R2 n& M- \! d" M# i0 _
Defaults.common$.logger = appLogger;6 I0 S7 O8 a- t
Memory.defaultHeapSize = 0x8192;
! v) X0 Y A. O, CIdle.idleFxns[0] = "&LEDStatus";) L4 x! m3 {5 k2 h" H6 I9 J" \
Cache.initSize.l2Size = Cache.L2Size_32K;: X! K# z$ a* b
3 N6 N/ K4 i, n0 w0 {
|
|