|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
& ?% H! Y6 c6 Z* r; @. U* F我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
1 b6 l6 @0 Q- ^9 B(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
- O b3 N5 Q3 u, c' W$ `9 D* v+ r
是不是需要在DSP.CFG中进行配置
) M; ^) K9 v8 a我现在的配置为
6 i% X. o+ o+ s' _/ s$ ^! K, `) o
9 ]5 |) t1 ^' ~8 c/ ?( E/*- ?7 [% O+ z2 L# R4 n( S8 o
* ======== Operating System Configuration ========: `4 h/ j8 S9 B: a9 e
*/
' P; ]& W2 J8 p$ @$ D$ P4 M6 A7 M
5 A1 h7 H8 I1 W& Q# q( E/* no rts heap *// r' \( S% l% l8 d' O' ^9 \6 f' i
Program.heap = 0;7 k. X! Q2 V& m, r; h' H
Program.argSize = 100; /* minimum size */
- a& y6 D/ g! K. j$ c+ P2 y) `Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大% |# x( K& l/ W5 Y( M: R& k
* X8 {, J% k$ g# K2 f/ G/* create a default heap */ Q& o' ~- k1 l O0 H
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');/ `! v8 o+ R2 S/ ?3 b$ M) g
var heapMemParams = new HeapMem.Params();/ d" `' W' ] i; J" }0 X* T# H
heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大4 I, a$ h# ]% T. d6 ~8 w
4 a8 x( [8 M* S! |% jvar Memory = xdc.useModule('xdc.runtime.Memory');8 S+ u% f- O. O2 S# y; O. w
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);
7 {' E7 o4 ?3 ~; d) N& {9 d+ X; l2 `/ P) l
/* configure System module */' ~: T7 ]* I w
var SysMin = xdc.useModule('xdc.runtime.SysMin');
4 ]7 A; Q% ?6 Z2 z' JSysMin.bufSize = 0x1000;( J. A$ x0 A) C9 |0 o
SysMin.flushAtExit = false;1 n2 F0 N% j( \& A2 P4 n
" I( V1 d1 l' G+ i. L
var System = xdc.useModule('xdc.runtime.System');
8 B7 n0 W R8 I; P4 K/ `System.SupportProxy = SysMin;7 o3 v% w7 ~- h/ U: l
: J6 h* t0 M5 O( O# H
/* configure SysBios to use the lower half of Timer 1 */6 H% i* @+ G. D: \- S9 ]4 \
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
3 Q Q$ J4 k$ W/ k2 Nvar Clock = xdc.useModule('ti.sysbios.knl.Clock');
. i/ g, }3 j; U4 a$ _Timer.timerSettings[1].master = true;6 z: @0 w4 M2 G E. k
Timer.defaultHalf = Timer.Half_LOWER;
& `/ H! F% D# D- vClock.timerId = 1;
5 F8 F. L' L2 v( `* Z4 f( M k' h& s8 i6 B8 c
1 s B: ~' ?7 @0 P! H/*; x8 q0 y% A* D, E- \
* ======== Miscellaneous Configuration ========
2 V J* ?9 d+ S! z3 f2 c1 _4 i */& }7 ~0 |% ?; I
6 U K, ]( w4 a/* set default diags mask */3 X% \+ \( ~7 \7 e. _* C' K& R
var Diags = xdc.useModule('xdc.runtime.Diags');
0 |1 x; u/ c% l5 u# a" avar Defaults = xdc.useModule('xdc.runtime.Defaults');
d3 `, K" g5 u* @* y, ]% Y9 i- D: u
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
6 Z/ ?" N- F: a G8 ~) nDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF; k9 \4 A" O, V9 s" ]/ _
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;
0 n6 j t' t$ VDefaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */8 X, R- X9 C( e+ {$ |
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */- h& ~0 x% B3 Z- Y* Y
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;1 L0 s8 f7 V( C9 x) a9 R- |
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
5 Z( ?- C) @8 X' ^# v9 g$ V2 wDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
5 k7 Q6 d- M5 s4 W& xDefaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
! ]9 Z Q3 k5 `) g4 K% H0 X6 `/ H' BDefaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
; s& Y/ d' t2 H7 dDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
4 E3 X: X1 \) I, DDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
+ Y+ E$ A ?' Y7 i4 C0 t2 BDefaults.common$.diags_INFO = Diags.ALWAYS_OFF;
9 w4 P2 @: b" F5 D. n, M$ E8 L* |Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
/ t+ ? H% m6 L$ {3 Q
% E& B9 I8 _0 H/* override diags mask for selected modules */
4 r5 E6 i+ t/ B e# X) J9 pxdc.useModule('xdc.runtime.Main');) Q+ [% d5 N3 K; {0 w) Q3 C: u: U
Diags.setMaskMeta(
6 V# ]$ c5 p: n! x% F/ L9 t7 M: A "xdc.runtime.Main",0 m( _6 m6 W4 C/ s2 @
Diags.ENTRY | Diags.EXIT | Diags.INFO,
+ r- w0 [( d- r" c Diags.RUNTIME_ON
9 y$ k* P7 a2 j);
# s8 B! ?+ D6 W) u {+ z$ Q9 Q9 L+ R' z# W0 e
var Registry = xdc.useModule('xdc.runtime.Registry');
2 Y' \1 a( N* I! G; MRegistry.common$.diags_ENTRY = Diags.RUNTIME_OFF;6 m' V" L$ b7 H
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;
" G" \" v5 V4 D, L3 |) g P8 h5 i, `) R, |Registry.common$.diags_INFO = Diags.RUNTIME_OFF;; p, J, M6 K% E1 r0 H* L4 i( t
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;
# b3 W9 M4 x6 w/ h0 ~/ X# d
* v' Z$ C- K* B( p; f' @5 }/* create a logger instance */- b c7 E5 y: }
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');! a G' {& C) Z) d3 B
var loggerBufP = new LoggerBuf.Params();
4 K6 M" N) ?5 E" @0 y" l8 P% ^loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */7 x! e( I+ T4 v$ o" O, p/ m
loggerBufP.bufType = LoggerBuf.BufType_FIXED;8 ~1 R" B7 X. n. Z/ N( x6 b
6 n* I/ T' H" rvar appLogger = LoggerBuf.create(loggerBufP);3 S' k# B9 M+ ?4 G: h
appLogger.instance.name = "AppLog_Core1";
6 S" m6 t( k3 B( ?& BDefaults.common$.logger = appLogger;' m4 v- K: \. u$ L# v, `/ ~( E
Memory.defaultHeapSize = 0x8192;
, O- \% \3 y) c5 f+ dIdle.idleFxns[0] = "&LEDStatus";
( {. t0 c3 ?- {Cache.initSize.l2Size = Cache.L2Size_32K;
% M* G6 p: X7 C. V' a A: Y" x3 M5 [. |
|
|