|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
4 H& R6 A: X2 j2 W" Q9 L& Z8 u我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下8 N& @) Q z. \! x. F( {, R
(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
8 P0 n9 t2 f F8 i: E8 G8 @' V- ~
d% K/ [" k" R( [+ E) o9 M是不是需要在DSP.CFG中进行配置9 O3 \! ?6 w- T: J2 O( G& k
我现在的配置为8 a" f4 |: J, ]3 d% @/ S# l a
* m4 ?. @/ \! y3 P5 C2 k/*$ R! U4 I/ a4 v3 _
* ======== Operating System Configuration ========9 d5 ~- K$ `% l. ~0 ?
*/
/ }" p/ v5 C( V4 l) j# J. p6 R8 Q( N( j" T/ M( c, [! [$ a
/* no rts heap */
! U0 {$ ?2 G" D& ~% k% T( N$ P2 c8 o3 gProgram.heap = 0;& H/ _( g& \+ u; z" x, a9 O
Program.argSize = 100; /* minimum size */2 `- M% `" o9 _* E! `
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大# X* ~) x* X# r9 C1 Z
9 H6 S& P+ `) }! _: i
/* create a default heap */# X2 q* T7 |8 l, A
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');5 g W! a- u# h; x# V% C3 d4 X: h
var heapMemParams = new HeapMem.Params();
! h L; h/ J1 ]& c! n& }heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
& ? f+ U, f( ~9 S4 w( @0 ^9 p" E/ k! [* F
var Memory = xdc.useModule('xdc.runtime.Memory');
% s4 E% x1 }! \* KMemory.defaultHeapInstance = HeapMem.create(heapMemParams);' ] \" K4 `" P w+ ?" E6 E) S( f
$ w( `9 ?" E; O9 P5 Z/* configure System module */- C5 _9 a7 |( h& h. ^- |9 }
var SysMin = xdc.useModule('xdc.runtime.SysMin');; }" Z" D' \7 U5 P" q- g
SysMin.bufSize = 0x1000;
* U5 o8 s w0 eSysMin.flushAtExit = false;
* H% u0 s% G- k7 T2 C! a, w4 | H6 k) {5 }. s5 l% q# l; T! D
var System = xdc.useModule('xdc.runtime.System');
$ x* ]! j6 K9 M1 W, y- mSystem.SupportProxy = SysMin;' f$ q4 M8 Z; T! c8 x
* q: T n4 F* s: E, _5 M3 U
/* configure SysBios to use the lower half of Timer 1 */" h N g/ F3 v% @7 A: f5 t
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
2 h5 U3 E2 w% z% g$ gvar Clock = xdc.useModule('ti.sysbios.knl.Clock');
* O0 e! @ p, A3 I. kTimer.timerSettings[1].master = true;
9 l8 D6 [; J( |" e3 P3 x5 Y# @Timer.defaultHalf = Timer.Half_LOWER;) g+ O6 Y j: d
Clock.timerId = 1;
( T' N$ d( z6 |- ^: a- F0 F& a# ]( ], X4 f, t9 ?
1 N$ l* n* }$ a4 r3 l) _
/*
2 X1 Z4 O% }2 U' y * ======== Miscellaneous Configuration ========
0 V& h- O, ^; S& @; v- } */
* |0 e; t2 P9 L: r2 [" w A# g4 W O2 E# ]6 T4 ]
/* set default diags mask */1 G9 G$ p: q% ?$ |/ |. ]! q8 X
var Diags = xdc.useModule('xdc.runtime.Diags');+ }* T% B2 R \% ^) @5 B4 ^
var Defaults = xdc.useModule('xdc.runtime.Defaults');$ \/ V# i8 P! T5 n+ V w! r/ F& w
* F" o# i+ a Y, l1 M. pDefaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;' S0 a- C3 X# s# I! x8 k
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;4 T) w# j/ j' e' q* j; \
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;3 U6 ^# _! b1 M* I+ E! l
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */3 l% v4 R: r/ b
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
% T0 z4 y4 ]) q- d H+ fDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;: o! Y# i2 s' S& E& `8 v4 I& u
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;) I. i$ c( I0 h# b B& W
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;5 ~6 S9 T w$ D" m/ x
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;0 R! j/ C5 u* X# ]
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;$ r/ g; E6 j& j
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
6 q" I* ~* p- ?8 j' d- iDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;9 b# n6 C/ c3 M( U0 L. A
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;/ N2 [& M. R2 G1 h4 m
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;3 A- Z/ u8 z9 Z* C
" O1 f/ K' W9 m j* E, s$ O, ^
/* override diags mask for selected modules */
_# f$ R' h: e; _4 ^9 mxdc.useModule('xdc.runtime.Main');. i) B L6 w( ~% ~# j0 V2 j
Diags.setMaskMeta(4 W) V$ \ S) d3 U! ~9 ^
"xdc.runtime.Main",
0 T3 w# [) M5 ` Diags.ENTRY | Diags.EXIT | Diags.INFO,
. u& Z$ X0 s" C$ Q, k0 O; B Diags.RUNTIME_ON* Q* u1 ?: o2 a+ @1 |7 v" e
);
: C3 ~- i) V; r5 C
2 w. l, U6 x- e7 {/ zvar Registry = xdc.useModule('xdc.runtime.Registry');
% e/ a$ G% {1 O/ v: KRegistry.common$.diags_ENTRY = Diags.RUNTIME_OFF;* [& U/ c1 M5 n V- P7 _; d
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;% Y G. e* }' U$ i% ^2 A% r& ^
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;
/ w' s3 e! @0 E' T- {Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;
. }- }6 T8 w6 p$ r
9 u" r1 k$ p; u% ?/* create a logger instance */ v( y( L5 a2 y+ q
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
' _7 d; r% w* H# tvar loggerBufP = new LoggerBuf.Params();, O* j. j, _8 @$ h) s
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
2 l, D, `9 h7 w i9 uloggerBufP.bufType = LoggerBuf.BufType_FIXED;
0 D% K. U( Q+ |. A `" B
, M, O+ D! K- x2 V, G+ Cvar appLogger = LoggerBuf.create(loggerBufP);
+ L, E& S& U0 j XappLogger.instance.name = "AppLog_Core1";6 \$ r) l& v6 \( w: a
Defaults.common$.logger = appLogger;
6 t' r6 Z# i) t: HMemory.defaultHeapSize = 0x8192;
$ k3 I2 ?4 h- a0 C4 oIdle.idleFxns[0] = "&LEDStatus";" N& G( r Y! T6 U0 Y5 c
Cache.initSize.l2Size = Cache.L2Size_32K;$ Y: ]; o! W7 b3 x' W7 q) p
0 Q4 a7 i0 e0 d$ |5 N8 \
|
|