|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
7 v+ ?/ v2 w ~7 K9 T1 G( _我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
) J" J3 S7 u+ O, _6 y(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
9 \! o0 G, h/ _( s
* v+ H8 Z$ U6 a( Z5 I是不是需要在DSP.CFG中进行配置
1 T: e( g: L+ C我现在的配置为2 U8 m# ^2 G) e! a' H: X" m; W2 b0 H: l
6 a7 G' x- b5 r4 u, I
/*3 P9 q6 P! y8 J7 u, S
* ======== Operating System Configuration ========
$ K; B" R, I( u* H( V: U4 i */! l+ Y9 t$ G3 @2 s; ?
* d- B2 z+ h) r C8 ?$ {' p- C0 o/* no rts heap */
% O2 t$ o/ O8 @: U3 E* b/ S5 n7 SProgram.heap = 0;
3 t5 q1 Y1 ?4 [+ D# V% lProgram.argSize = 100; /* minimum size */
0 k" L; }( P: E3 \8 GProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大
8 Y, y& F9 t% C! a2 m
0 R9 o2 f& _2 G/* create a default heap */
N' w+ |7 h: w, ~" t" w4 cvar HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');1 `4 l ]* n3 ?1 `
var heapMemParams = new HeapMem.Params();
4 Q, M& `. t: J! P2 JheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大7 H) B9 A5 ?( I# J; I+ O
% ?% f* o! d9 k W5 ]var Memory = xdc.useModule('xdc.runtime.Memory');, e2 @) M: N+ t
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);
D; N" u+ u) i5 I$ ?: O5 i7 J0 A
& w$ k* V+ A$ x2 i% l/* configure System module */ X2 I: `; c$ D6 i8 A& ]
var SysMin = xdc.useModule('xdc.runtime.SysMin');! S8 s( z' ?+ E. c, H: }. {1 s5 c
SysMin.bufSize = 0x1000;
, s7 F" }: v. |) nSysMin.flushAtExit = false;
9 a9 }( r( y# h% i) K* X: e) y
) j" {) E8 o8 B# M' M& T: q$ uvar System = xdc.useModule('xdc.runtime.System');9 J6 J: _! I+ p
System.SupportProxy = SysMin;# c* F6 B" W/ D5 ~# w+ i
' l9 e* a8 C6 N' g
/* configure SysBios to use the lower half of Timer 1 */& v$ f0 w; S8 p O
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');( I# | ]$ Y% R1 q
var Clock = xdc.useModule('ti.sysbios.knl.Clock');
, R' x \* c8 e3 X BTimer.timerSettings[1].master = true;
$ n/ h6 c$ x3 |6 C" m& yTimer.defaultHalf = Timer.Half_LOWER;
Y& u# f* G4 R+ J2 m% dClock.timerId = 1;
3 B3 k$ p2 w% Q W& o. V1 w1 v0 q4 Z$ V9 X, M) i: W! H" l. k
% |; I3 H. x: s: c# V" d7 d) x/*
9 g. h0 y$ G' l5 R& K7 t5 J * ======== Miscellaneous Configuration ========
5 ^( j7 \% `, ]& [ */3 N2 \* f5 ~# ]: @/ w6 _( P4 s3 I
. x j# S0 Y6 M$ B( e8 ]4 e- H0 S. Z/* set default diags mask */. W0 l0 t, o; `
var Diags = xdc.useModule('xdc.runtime.Diags');
4 P( R3 o2 v% Y5 {var Defaults = xdc.useModule('xdc.runtime.Defaults');
& i+ |# x2 N5 m+ P) O X4 f- d- p* N. G% m, T9 ~3 R6 v
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;! u) D. [+ V/ o% B
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
! U5 T( D( t1 z6 Y0 T4 L4 LDefaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;
7 F% Z) K! h- j, R' S* yDefaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
) t) L, M' p b: q% [Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
2 u- k; T5 a9 t \7 D, b8 j$ yDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;
; T# {' ~7 F# e( R! M- JDefaults.common$.diags_USER1 = Diags.ALWAYS_OFF;5 R" ?9 d9 O: }3 V) w3 n8 V6 O* q7 T m
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
Y( X/ K0 v5 P" ]* @: v0 e/ ^/ Q& hDefaults.common$.diags_USER3 = Diags.ALWAYS_OFF;" f0 ^) }. i. {
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;4 ^) A$ w+ q: ?
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
% Y# o: p* N$ s- K6 M4 z. A9 }Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;: a5 Z$ {% ~1 f w4 o9 }; @' S
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;
7 t s6 J- E6 ^9 iDefaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
& c. `- j. @$ K" R6 L/ E; y, r' t& z
/* override diags mask for selected modules */7 s F( B d' D9 Y
xdc.useModule('xdc.runtime.Main');
2 e/ V# S5 o& S8 N, lDiags.setMaskMeta(
9 O! U7 K9 D) a- _# A "xdc.runtime.Main",
) K d7 x! n4 Z k% l% h! r! ` Diags.ENTRY | Diags.EXIT | Diags.INFO,
5 T7 O( n: P$ g. q) e9 P3 Z- j Diags.RUNTIME_ON: z# n$ S$ D: J
);
- I- y- b) p. h, C
2 ]5 S; F: N. P4 v: B2 C6 x# @ ivar Registry = xdc.useModule('xdc.runtime.Registry');
( x( q2 R; @7 U: @" x( } _Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
/ a5 w' J: R1 L# y& A: ]Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;
" Q. I0 @/ y1 R% jRegistry.common$.diags_INFO = Diags.RUNTIME_OFF;2 | a' Q/ B' | b# h" B- M, v
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;
( _9 M& y; ^% x' ]% u+ O
9 R6 L8 ^/ t% z4 B9 A( l/* create a logger instance */* l Q$ C; Y& c5 X A" T' X& u, I3 z1 ~
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');$ u, k8 N2 L8 Y" ^4 I
var loggerBufP = new LoggerBuf.Params();8 m, @& o9 O( ~2 G0 Z, E
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
3 _& N# N; T* ~( Q# RloggerBufP.bufType = LoggerBuf.BufType_FIXED;
1 h; E: m* F: P; p! D4 {# u6 V/ u
var appLogger = LoggerBuf.create(loggerBufP);
7 r" B7 K0 ?. u5 VappLogger.instance.name = "AppLog_Core1";, j* f* r( e4 v5 k3 V5 q' D- [
Defaults.common$.logger = appLogger;$ a% D) Y7 @8 S4 P
Memory.defaultHeapSize = 0x8192;
) x. n6 b7 p! T, U! X' QIdle.idleFxns[0] = "&LEDStatus";
+ `1 [$ o4 C: i+ O; d0 g, @Cache.initSize.l2Size = Cache.L2Size_32K;
1 G8 u; g" r- b) p o9 q: a: O9 x; D. C! g2 E# p
|
|