|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明1 U2 k1 W4 K. a! Z9 }
我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
% ^" ~: l# q, z* F' L: g6 A/ B% c1 y(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
+ i& Q) g8 b) r2 g9 e
6 t: M4 z: {7 {+ ^$ o! D9 T是不是需要在DSP.CFG中进行配置- u% n! n. k5 J% {, E
我现在的配置为* @2 i% ?! {5 ^/ {# ]8 Z
) E. M5 D8 j# I- F0 u# N
/*
$ X' d$ h9 U& ? * ======== Operating System Configuration ========/ m& ]* D3 I. v1 N
*/( `& n: e1 ~4 r+ I" v6 b
% i3 V3 e! V# v( g
/* no rts heap */5 }7 g5 k o. B* B4 Z
Program.heap = 0;9 N6 B6 i! Q" Y- v$ B
Program.argSize = 100; /* minimum size */
# j1 d8 \- c rProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大, X9 V5 [& A: z M" @( W
" Z7 O! _" G6 e- R" Y" {4 l- M/* create a default heap */
, t4 A5 f( B/ Q: |3 L+ ^var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
. N, l0 B' }8 \& dvar heapMemParams = new HeapMem.Params(); x3 i( a& L/ ~, a% `
heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
: H. r/ m) ]3 W" z
+ V; A) |* Y# d/ v nvar Memory = xdc.useModule('xdc.runtime.Memory');
' x9 R# s% z! i; R1 L7 M2 H RMemory.defaultHeapInstance = HeapMem.create(heapMemParams);
" i, x' G' \; n% h# w3 }
' V- _- }! L" W! K8 j( E, [; i) o6 L7 X/* configure System module */7 ]: x# k. v! ~' ~9 R6 m5 W
var SysMin = xdc.useModule('xdc.runtime.SysMin');. p2 T5 X! |5 U4 r$ ^* l8 k
SysMin.bufSize = 0x1000;
: i( }4 i9 X$ ?% ~# wSysMin.flushAtExit = false;& P% ?6 E3 K; L8 d) z- |5 ^
9 _) I+ _5 F5 L! Y' y3 B7 E
var System = xdc.useModule('xdc.runtime.System');& u. f9 A2 \+ r8 I5 ~
System.SupportProxy = SysMin;
; E5 |6 G4 G8 r/ T, q% G, G/ E+ n4 R; ]) s
/* configure SysBios to use the lower half of Timer 1 */2 Y9 d% c% g/ Y+ a. r9 o- Z
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
8 `" N& T5 h3 ?- J$ ~' N; A( rvar Clock = xdc.useModule('ti.sysbios.knl.Clock');
( N; r3 p2 l! ^Timer.timerSettings[1].master = true;
. ]- t2 K) `5 l `Timer.defaultHalf = Timer.Half_LOWER;0 a( K8 d3 |" `* s: y/ W
Clock.timerId = 1;# v# i+ I! v* G, c/ }# y% W& l
. E4 T: G2 J o* t( D/ ]
( L1 Q J9 _2 C1 U0 E/*. J* \5 d; c: w, Z3 I3 l1 _
* ======== Miscellaneous Configuration ========
1 G! A5 s* ?7 Y% K0 x */; o; o1 ?4 I$ m0 ?- h3 G p2 C+ Y
+ k, R l3 l8 f3 B+ L0 T; P, p
/* set default diags mask */% ^( i. m2 N* A# x( B
var Diags = xdc.useModule('xdc.runtime.Diags');
" v( }5 r; M8 M) Z$ S6 H3 ]4 qvar Defaults = xdc.useModule('xdc.runtime.Defaults');
( o$ x! o6 p9 _# q4 ]$ ~: O# }) [6 P6 n- s( t
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;( \) `. H' P8 g! A
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
9 W/ d c; j9 [Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;6 v6 y6 F9 T( w* V
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
; A. Y6 h7 V) T' z5 tDefaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */7 F( K0 |( g) U$ \ y
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;( \9 P, m. _! j1 ^8 t! M
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
0 Y8 z% a8 D0 g" u. F$ |5 WDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
+ ^! J+ Q/ p: O2 s$ I' ADefaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
- I, n# `& N7 nDefaults.common$.diags_USER4 = Diags.ALWAYS_OFF;. {8 ]4 y: L: n5 H N
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;; H! e5 @/ w. F# J
Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
+ R, Y+ {9 _6 F# o8 {Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;
: h/ u0 X, r; c0 xDefaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;7 R e2 `3 ^! S/ i% Q# ^8 ^
' x( G( A4 _3 p& |4 |/* override diags mask for selected modules */ k& v4 W! C+ [! v
xdc.useModule('xdc.runtime.Main');
+ E; c/ ]9 ^0 ? QDiags.setMaskMeta(
! r7 a/ |9 E* B: g( D "xdc.runtime.Main",8 V* U8 J/ f7 P+ ]6 E. l' E
Diags.ENTRY | Diags.EXIT | Diags.INFO,
2 A) h0 ]( k4 ^+ G9 m& J Diags.RUNTIME_ON, B: P* i( i3 ?, _2 }/ ^+ R
);
: E- {+ N: c* K% S. C- @! T) H% V5 u, Y
var Registry = xdc.useModule('xdc.runtime.Registry');/ ]( L% R+ A) C. n0 x6 e
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;7 t1 u3 K! a% u- G2 M7 t+ I/ B
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;7 u T0 I6 l; V& p6 ?
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;
+ q# D+ ~& B7 xRegistry.common$.diags_USER1 = Diags.RUNTIME_OFF;
9 k- n" v) _( R' d4 l7 c. S% z6 x+ K0 e0 j+ m) ~ b
/* create a logger instance */7 q% F9 M- z \9 a3 D
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
9 W! I8 `! t/ [7 Cvar loggerBufP = new LoggerBuf.Params();
- _. N; D5 J) p9 c; `2 MloggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */) c) Q* P( L8 L& {" A
loggerBufP.bufType = LoggerBuf.BufType_FIXED;5 q+ {+ O5 `' u" m# `
2 O8 t' g. }# }/ @: _var appLogger = LoggerBuf.create(loggerBufP);8 q5 L) y* F( `2 G" L9 q, F7 ^
appLogger.instance.name = "AppLog_Core1";
4 w# d, i. t+ q! LDefaults.common$.logger = appLogger;
6 X2 X& N- \& t/ \9 b. x" ]Memory.defaultHeapSize = 0x8192;
) l5 N# ?" U/ S0 y4 G0 i# d- ?Idle.idleFxns[0] = "&LEDStatus";
. o: _* F9 {: @* kCache.initSize.l2Size = Cache.L2Size_32K;
1 G- H# c) [+ L ^0 C4 |$ e2 Q, a+ {7 r. h, e# x1 }' ~! }( h
|
|