|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
* j0 i) A# f2 _' ]0 z' y: ?+ B我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下" L1 X, W% D8 o, A+ s6 K
(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
+ O3 I R, Y9 t. d7 u' Q1 o8 c
6 a8 T9 l. _* ^5 q/ U是不是需要在DSP.CFG中进行配置9 d$ g2 W+ B% Y# y( q0 C' {+ n' P
我现在的配置为/ H0 s/ v9 R, E3 _
# ?5 t8 ^& C3 W, ]: A% L. d; t! O. D/*0 U& J) Z' N |+ `
* ======== Operating System Configuration ========
! n# Q$ a3 Y& l3 T6 ?4 ` */# K- g3 o" s* `. f% w! q/ f$ W
4 c/ O0 ~& x" W" s
/* no rts heap */0 o2 a, X; K: H4 r2 K
Program.heap = 0;0 A; G ~) C8 y, T# A3 n. Z
Program.argSize = 100; /* minimum size */& Z( W4 U7 Z* x, q' X
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大
! r r6 K# M7 b; s2 Q9 R$ O. d, v, [9 u l: e0 s! G. Q: k0 J
/* create a default heap */+ i$ f) R/ T {4 W7 h
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
$ M* Y7 g, ~3 t' @/ Yvar heapMemParams = new HeapMem.Params();$ U# e* Y: w" _1 ?
heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大9 Z: H8 J( P9 C0 L! |) F: h
/ `8 e2 A6 Q' _2 P. ~' o, S1 @. Mvar Memory = xdc.useModule('xdc.runtime.Memory');( [9 G3 ^' G' S
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);
0 ]# Q+ W) V. G2 l- H1 q0 W' d8 Z" M$ D4 J
/* configure System module */* a9 u1 \8 c# _) L1 `
var SysMin = xdc.useModule('xdc.runtime.SysMin');
8 T+ V& a4 \6 VSysMin.bufSize = 0x1000;
/ Y4 D4 H& {4 e# }8 e- FSysMin.flushAtExit = false;. i1 ]1 b# D( v% f( c9 E" z6 w
. |* m/ V: n) I9 e8 Z
var System = xdc.useModule('xdc.runtime.System');
1 K r8 f# ]5 K3 n. c5 x+ jSystem.SupportProxy = SysMin;
8 S4 A$ n" G) N( u+ W4 D4 I; Z$ i8 X, G" p) O# U" q: `+ e
/* configure SysBios to use the lower half of Timer 1 */
) C$ f0 Q* I2 @, _) ^& Svar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
0 ~1 P# l& E: ?# Y% ?0 dvar Clock = xdc.useModule('ti.sysbios.knl.Clock');
' s' M+ e( R7 E+ Y. P2 _' n: oTimer.timerSettings[1].master = true;$ ~: F( z" K$ J( w
Timer.defaultHalf = Timer.Half_LOWER;
) j K: Y( U" Z! U7 q/ cClock.timerId = 1;) b. V, J. B8 R$ u( j# D
6 o% B$ S1 `3 D& A+ a
; E0 o4 o1 m% f8 B
/*
- {+ L7 T8 S9 l! L7 U0 U * ======== Miscellaneous Configuration ========
) ?. X1 W/ I4 H' C. b- ]0 j) ] */
7 V" F" ~5 \/ ?* j6 S0 V7 x+ Y
% T# A0 c4 D. R4 j. F/* set default diags mask */
1 Z e- _) S' i& @var Diags = xdc.useModule('xdc.runtime.Diags');
. X- V8 J% d1 e2 c# Dvar Defaults = xdc.useModule('xdc.runtime.Defaults');1 ^1 f7 U, o. z. I! }6 V" @% c
' s5 |. m; _( z; T& O9 U2 G6 P# m
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;# `2 g# n* x" f
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;, n0 V4 ?2 I3 B0 V( A
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;
) T/ S, ^; o+ T+ l, p- M8 k+ MDefaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
8 S/ _+ v/ w* T6 jDefaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
9 c" F. D3 i) K8 B0 B) CDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;- A) g: I4 m6 T! B$ P
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
e7 Y: ^2 Q$ h. b' _# J4 dDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
5 F4 @5 n' h7 g7 mDefaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
1 W. y% f$ | I1 K) N: c9 v# sDefaults.common$.diags_USER4 = Diags.ALWAYS_OFF;* D0 W8 ^# F# Z b6 Z( h* j' u
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
3 [# g! @6 x- [% BDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
H* ~: v7 m8 v* {7 kDefaults.common$.diags_INFO = Diags.ALWAYS_OFF;$ n" r& Q: q$ E$ `+ k2 \* f, i: g
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;4 q. p+ c2 f& V/ O
7 \6 n, b# b3 ?( s' ?0 w
/* override diags mask for selected modules */2 r3 `# P/ D" \
xdc.useModule('xdc.runtime.Main');
; U3 s* M# l, r5 v9 \ U: O& }& eDiags.setMaskMeta(, Q6 c2 b J; H# e+ j4 Z
"xdc.runtime.Main",
( h5 _# b6 j, P% U4 L/ P7 ^ Diags.ENTRY | Diags.EXIT | Diags.INFO,
( @5 W" Y& T: k Diags.RUNTIME_ON
+ n; Y# g& `! b. g8 j);# P0 A: i# {" v; G4 v+ L; p
@- j3 c7 \9 D2 y/ dvar Registry = xdc.useModule('xdc.runtime.Registry');
, x$ {9 A. [# `- x% r/ BRegistry.common$.diags_ENTRY = Diags.RUNTIME_OFF;1 [: R; y! f) ~- O+ Z5 Q
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;9 d7 y0 | N& V
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;$ Y1 r; f, n) a5 K9 T
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;8 h, \6 c! L' @. a4 v4 ^5 z8 u3 C
7 D! t& Z% B" U% J! }6 q
/* create a logger instance */, Z2 A/ r4 R6 u0 A! Z
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');& R. D& S, t1 ~
var loggerBufP = new LoggerBuf.Params();. I, _8 A" d0 g5 y
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
5 L# X- W( P& c. S4 ^: F3 VloggerBufP.bufType = LoggerBuf.BufType_FIXED;
& F) z3 K8 E: @' l: [
* W$ h, k0 u0 ?" Y" mvar appLogger = LoggerBuf.create(loggerBufP);) ^- f! ~* W! N; F8 d
appLogger.instance.name = "AppLog_Core1";
3 \) Z! v3 N/ j+ _- X X. dDefaults.common$.logger = appLogger;
. h( z8 Q4 ~/ H. zMemory.defaultHeapSize = 0x8192;
8 l; w: P& [7 Y) X7 }Idle.idleFxns[0] = "&LEDStatus";
3 q0 p$ N$ A7 d( QCache.initSize.l2Size = Cache.L2Size_32K;. v4 [$ ~7 Q2 B$ a3 }; v
, q8 M9 |/ L b! }& b |
|