|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
+ @/ s. ~) e. _+ S4 N我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
: D# I& g; M, T4 k(不过疑惑的是,为何单独DSP仿真就没有问题呢?), q6 f7 _; \9 S2 X$ w- `/ U
' q; D2 q$ J: ~: h是不是需要在DSP.CFG中进行配置
% ] Y$ j* u* r/ ]* |我现在的配置为: c! l& c' Q8 s* W
7 d1 B* U& R2 i6 p$ A# J4 W- S/*
3 l9 z- [- m# n, a3 M * ======== Operating System Configuration ========+ `; h+ X; {$ w7 d# G P6 t
*/
3 L2 S" P! \% i7 T0 i g7 v
( R4 ?1 _, b) E/* no rts heap */
6 [5 H; n* H0 ]! |2 C$ r" ~- eProgram.heap = 0;
C1 H& e) W, H! y0 C1 v* [Program.argSize = 100; /* minimum size */
. ~$ T" @6 q5 X* v5 B. l% @$ fProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大/ [0 v2 X8 a7 X5 Y- V! |
% `% P9 x! V: A2 K2 `. P" f
/* create a default heap */
t7 ~5 }# u+ Y) F f! L+ Lvar HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
+ ]. {/ y, r h/ lvar heapMemParams = new HeapMem.Params();
) j8 L. x+ p6 s; d4 g7 xheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大$ F$ P* S. i* v6 p4 o
" ]2 g+ u& Y/ }% c9 Dvar Memory = xdc.useModule('xdc.runtime.Memory');0 E) O8 y3 C* I, y3 S9 P7 h
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);
: U& I( }3 u2 P
6 O; O" \5 h# x, X- m: @* A0 ?/* configure System module */( A: d' k* P9 {4 Z$ e- F7 }( E
var SysMin = xdc.useModule('xdc.runtime.SysMin');: O4 Z$ f0 Q, o+ }
SysMin.bufSize = 0x1000;$ G c5 Z3 ^$ r& f
SysMin.flushAtExit = false;
- x! F- l/ R: U7 l/ m; x6 X& N. J: q/ |9 Z# n
var System = xdc.useModule('xdc.runtime.System');: f! J* Z, d( ] \1 j! ~! I
System.SupportProxy = SysMin;; W1 k! [) s/ h) \, C0 J& s( M
( x! h k* B" @" |6 p; D) H# ]0 |
/* configure SysBios to use the lower half of Timer 1 */
% G4 i. g$ I- j) s+ n& Ovar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');1 j ~) P0 V9 V- H9 K$ X7 W8 o7 M$ `
var Clock = xdc.useModule('ti.sysbios.knl.Clock');: o% ?# [* d9 p0 f
Timer.timerSettings[1].master = true;( m2 R7 `3 \: [. A/ d" o3 j8 `2 j6 P
Timer.defaultHalf = Timer.Half_LOWER;& k. b# r3 D- v9 D! {* t
Clock.timerId = 1;
9 F: J- z2 I: B+ X& l2 i, N& _1 Z( [8 D( o
- [8 |0 k8 ~3 \: M% s) x/*
O+ g- R K5 c( B9 _1 m% f$ ^' H * ======== Miscellaneous Configuration ========
7 m! _2 c4 d- Q- Y" F1 h3 {7 } */0 o+ H/ K6 n z# q# g
0 D; s3 B7 r; B
/* set default diags mask */( b6 Q( X9 I" C4 h7 V
var Diags = xdc.useModule('xdc.runtime.Diags');* h. ~1 z- C' d8 }
var Defaults = xdc.useModule('xdc.runtime.Defaults');
7 d1 m, T* U8 i- d3 @5 Y: w4 F$ P4 h7 ~3 r2 {) L) R, [$ b4 x
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
' u6 u/ {- T9 n- E0 X2 zDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
5 a* A" ], ]0 {0 z. aDefaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;
5 D# g& x. v. G! ~. ?$ |9 a" |Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */( }- a% L3 i! a
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only *// S! Y1 q" q' V& K& S3 `
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;
. |+ Y# z- b$ {1 JDefaults.common$.diags_USER1 = Diags.ALWAYS_OFF;* S6 b$ x& L5 e4 t) S5 ~. M4 o
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;4 T- \3 S: }( f6 L* K
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
- _/ X9 i$ v. V+ o& K# x+ `Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
( o ?% y% ?9 c' |" i* zDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF;5 o# z1 R; `, N4 ?- j. A y
Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;4 Y# _. f, T: D
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;9 L& z9 g5 u! f
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
L: |3 ^* }$ X, A: z+ h7 ~9 @) H( k2 Y$ q9 b7 p! M; j, D, z9 S
/* override diags mask for selected modules */
$ {8 i& \: x- xxdc.useModule('xdc.runtime.Main');
: }5 L0 s! A/ T! [% O0 Q. ^Diags.setMaskMeta(
3 C$ a; H( l8 ~- s9 ?: w( z "xdc.runtime.Main",
# |0 m& P/ x' a3 v6 O" B; L; | Diags.ENTRY | Diags.EXIT | Diags.INFO,
5 b+ K0 u" m8 @3 L& }8 c Diags.RUNTIME_ON
" K- Y$ \7 V+ P);
& W% u% i- [9 X8 l) g
8 g$ Z! R) i6 }var Registry = xdc.useModule('xdc.runtime.Registry');
0 ?/ M1 |) _. P/ G, T5 q" A* u$ q4 H4 ]Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;) C" U1 g6 U! |0 h
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;
0 Z: ~$ O8 e. ^Registry.common$.diags_INFO = Diags.RUNTIME_OFF;
0 i1 V% ?, ^5 hRegistry.common$.diags_USER1 = Diags.RUNTIME_OFF;. K- ?: h$ P1 T/ W# q/ d
$ W, |) |# @1 ?9 o/* create a logger instance */) D+ g" L! ], s! W: {) v+ h" x6 B$ l
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');- C2 n4 N% P0 ]8 P$ A' @
var loggerBufP = new LoggerBuf.Params();
6 T5 j! I# u% d t8 lloggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
/ D4 L- V( W2 ?; ~( K, jloggerBufP.bufType = LoggerBuf.BufType_FIXED;" o5 y B8 a: T
, z5 w2 |% w5 A5 g" q) ]
var appLogger = LoggerBuf.create(loggerBufP);
+ w! R7 [1 G' D3 Y# v& fappLogger.instance.name = "AppLog_Core1";; g0 w0 P3 P8 Y; a' l- Z6 g3 i
Defaults.common$.logger = appLogger;
9 F; V- ?. H1 l, {3 MMemory.defaultHeapSize = 0x8192;
# h. _- A/ ], U& JIdle.idleFxns[0] = "&LEDStatus";
5 V8 S. I' {( W1 I+ ]' sCache.initSize.l2Size = Cache.L2Size_32K;
: B" e: }5 W& B8 x- J/ Y' }
1 G- n) I0 s, ~: ]% @ |
|