|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
. k$ f: G8 v7 C( ]! n我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
3 l M. v0 u& B: ?) h; j2 l(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
2 u8 F. T) y5 t) u# ~1 {" E7 }; p0 w& t7 M
是不是需要在DSP.CFG中进行配置
2 y' h0 }& P7 { z/ F/ }- U0 g我现在的配置为
4 |1 W4 Z' m3 K. V0 n9 V: h$ y1 {6 A/ }8 o: d9 l% C* I
/*: G7 }, F3 z" D. h, X' U3 K: d8 r
* ======== Operating System Configuration ========
0 Y% u. G+ O+ l; s; Y4 B3 Z */
9 P" V" R8 @$ L; Y n& u; x5 D" X$ p+ l- C" t A
/* no rts heap */8 ?8 J+ G: Q5 P3 i# t+ t
Program.heap = 0;9 {: J' _3 R" ?/ e
Program.argSize = 100; /* minimum size */
$ t4 P+ I6 S, r0 z* R, tProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大. r7 k% f& @) T" Q
, @9 Z e5 H( q& t: t/* create a default heap */
- R$ y4 C. d4 y/ U% Avar HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');1 X$ N) `6 \. K8 h# u
var heapMemParams = new HeapMem.Params();
9 B8 E# ~' {( I* s, L) {heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
, k% H! I2 O# w# _
" Q7 C& f6 l% o! c; E! v* ]; Yvar Memory = xdc.useModule('xdc.runtime.Memory');
/ H& E4 b& H0 c% O: bMemory.defaultHeapInstance = HeapMem.create(heapMemParams);. p0 E+ U- r( j) h; J& R. c
' a* ~* k0 _) {( b! |8 v/* configure System module */, \ f6 \0 E2 r p$ G% ?
var SysMin = xdc.useModule('xdc.runtime.SysMin');! x- u/ ^" u* D- A& _3 D+ K
SysMin.bufSize = 0x1000;
* F( z4 y( w0 p3 }) m/ TSysMin.flushAtExit = false;/ r0 q8 J" U! C# v) j) ~5 M
3 A. q( C. y/ x! R9 w+ M6 Q
var System = xdc.useModule('xdc.runtime.System');
! P8 |" R1 I9 ^8 ?System.SupportProxy = SysMin;
" \% _# @! h/ o! {, L4 D* C6 a w. V' Z: N. g0 o, t
/* configure SysBios to use the lower half of Timer 1 */ j) T( a: _# P3 N. o
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');8 k$ e7 X- r" [* f- D
var Clock = xdc.useModule('ti.sysbios.knl.Clock');, G0 G; [. X% V* F. I0 ]0 U
Timer.timerSettings[1].master = true;* s9 R! l6 L, f9 q, O
Timer.defaultHalf = Timer.Half_LOWER;
4 T! `% p' m! A( x# ^/ V+ m3 |/ rClock.timerId = 1;
# O7 Z+ z1 u% a6 u+ M5 h! c8 p) K G! a- q
U. ?9 a! m* j/ `0 R8 N; \/*
! s3 V6 } b; F) [7 x. z * ======== Miscellaneous Configuration ========* {+ M( S$ d4 R( D9 q; Q I
*/$ l0 g$ V6 R- B) H+ R
, W2 n% J/ \, W3 g
/* set default diags mask */
4 u6 M$ Q' w0 v' B2 ~* wvar Diags = xdc.useModule('xdc.runtime.Diags');* \/ K7 W- {' p3 Z* D
var Defaults = xdc.useModule('xdc.runtime.Defaults');1 Z0 z+ U, S1 X0 ^" u0 r
6 b6 Q& w/ a6 T) X3 Y% ^6 ~
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
/ b! p! c( ^4 k8 S+ X6 ADefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;% ]) p3 E+ l' \- a- _7 f& z
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;/ h Y2 C5 y2 w" H
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */; X0 L% N$ e# ^ U, O; M
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
8 f* M% E# ~! D9 _Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;3 ~* R% [9 i M, A! R9 F: T
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;2 I$ @3 k; U1 T8 l$ A0 U( [2 ^
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;; u3 h0 ]+ k' z
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;4 g G- J9 a* ~9 u- H" ]) w
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;9 j5 f9 J5 e2 |
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;8 @- ~, f# z& f0 t' E) h
Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;$ \: t _& A: K% Z
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;
: e. F+ p' t, ]Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
" N0 A& y. u" r7 G. h' n8 S9 b3 n, Z6 |9 n6 @$ Q# n5 W; d) R
/* override diags mask for selected modules */; T! B) ]% u6 H4 o, M) M, C; W9 Z
xdc.useModule('xdc.runtime.Main');
' C, |8 A/ A% o5 j. P/ vDiags.setMaskMeta(
' F7 @ [7 P O$ H- s7 D "xdc.runtime.Main",
: n ?- T9 E) Y3 v& B4 N Diags.ENTRY | Diags.EXIT | Diags.INFO,
( E- h. x4 M( u4 X Diags.RUNTIME_ON
# V$ \4 M- Q" D4 z, ]2 o3 y/ i1 N);" N' [$ J% M0 h% d+ k j% `
6 L1 R! w" k3 } Pvar Registry = xdc.useModule('xdc.runtime.Registry');# ]7 D% B0 ~$ O' {8 ~- S. V% l A
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
3 U! e! {. d9 i% w- J! A3 I, o& bRegistry.common$.diags_EXIT = Diags.RUNTIME_OFF; L# j) ]; ?! Q+ c2 ~6 P ^
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;4 d8 U3 E$ s; i
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;
/ P6 h; Z* }" [2 `: H3 Q1 w0 K9 R' \$ D
/* create a logger instance */
" ?4 @0 G o% C9 n5 H3 P& C gvar LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
8 A6 q# D5 \0 d/ [var loggerBufP = new LoggerBuf.Params();
1 c* ~4 n& ?. u/ ZloggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */4 C0 R% ^2 L. _5 O! T% v5 _
loggerBufP.bufType = LoggerBuf.BufType_FIXED;
' g0 [7 P9 D4 c I6 b( _" K: l% F v1 f, x R
var appLogger = LoggerBuf.create(loggerBufP);
" i" i0 t( L% f, OappLogger.instance.name = "AppLog_Core1";; i/ q! ?" c) a; m2 Z$ n. p; E7 I
Defaults.common$.logger = appLogger;5 X/ o3 r8 B$ H0 S3 X
Memory.defaultHeapSize = 0x8192; . q( I6 [6 ^8 `* g9 {) K7 n
Idle.idleFxns[0] = "&LEDStatus";' J. r4 i. [5 r- @
Cache.initSize.l2Size = Cache.L2Size_32K;
2 ^8 T! Z T/ e3 ~+ S- C8 ~- w+ k
|
|