|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
1 f$ g: _+ a8 j/ g5 g6 J我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下) A, v9 ?" c* k* u' I2 ~" K
(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
6 J+ D4 q$ a- V( `5 |$ I1 N' ]# {/ y i. u$ J1 M7 T! B
是不是需要在DSP.CFG中进行配置1 q1 {& k T& G8 g* R
我现在的配置为% p. G* S# j8 {' \9 ?
7 @! G4 [" i5 @/*
3 h: O2 n6 f/ q( m) |! H * ======== Operating System Configuration ========
t0 \2 u, E" r5 W' o! ^7 \9 l */7 `4 y2 K# `. Y1 l- ]4 b
- E4 T- a+ N! G& ?$ A, G. y/* no rts heap */
) _! _' N1 }0 l2 P9 z3 n1 ]Program.heap = 0;
6 G$ W2 [: b/ X# r& ~Program.argSize = 100; /* minimum size */( z6 K1 l* \1 z+ c( ~( o
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大
5 j6 l' j3 T# k2 j, D: e6 z3 f
$ K: d8 r: E1 i0 y/* create a default heap */
3 [3 p6 v, w) xvar HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
y a; }8 n% w, x2 ivar heapMemParams = new HeapMem.Params();" h8 e9 D) {6 m4 g5 \. P' c
heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
) }( u/ I" y+ r" L2 s
7 k# o9 R ^% J4 [! qvar Memory = xdc.useModule('xdc.runtime.Memory');
( `; n! I: N1 zMemory.defaultHeapInstance = HeapMem.create(heapMemParams);4 t2 Q. k3 ~% ?8 L9 Z
; v. Z3 w6 G' e3 q8 r/* configure System module */9 C- B+ m a+ j# g
var SysMin = xdc.useModule('xdc.runtime.SysMin');5 V5 r. u( G9 v
SysMin.bufSize = 0x1000;% b$ ]; G5 x$ R6 r [2 M; y
SysMin.flushAtExit = false;
4 y5 ?* W/ j1 I5 U) E. ~+ `- H1 r% f( q# N# O* H
var System = xdc.useModule('xdc.runtime.System');
% o/ U- {& E1 u( cSystem.SupportProxy = SysMin;9 t$ U1 ~$ y5 [
: K! k+ {8 R# Q
/* configure SysBios to use the lower half of Timer 1 */
9 u x1 x9 H1 C, bvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
+ V, x1 T0 O9 {5 }, mvar Clock = xdc.useModule('ti.sysbios.knl.Clock');0 [7 k0 }! a* t" a
Timer.timerSettings[1].master = true;
( q3 i+ C4 T; f# ?Timer.defaultHalf = Timer.Half_LOWER;
( ^: [, u3 V" h GClock.timerId = 1;, ]9 A- }# i2 A7 d5 b( h
/ P0 Z; z) T. m# M8 [ M7 J
: B& G& c# p: @/*
7 w, _% R+ ?( G# c * ======== Miscellaneous Configuration ========* J! s! t& P, ~
*/9 i0 t, `9 b2 ~4 K
. I% v! h3 j# P/ b4 p/* set default diags mask */* x* H% i! S' }1 e' t$ X
var Diags = xdc.useModule('xdc.runtime.Diags');
I. {7 O3 D& Q$ h+ E: e3 [: z; lvar Defaults = xdc.useModule('xdc.runtime.Defaults');
/ Z# {' \5 k# r. M' N! H, P9 y9 }" _9 f9 m
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
, J% ^; a5 l) C/ P- y5 Y5 KDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;( s3 |- H J/ Q# H8 S& K( K) ^0 Z
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;5 B, r% x' y* p/ w+ h/ W- V
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */* n$ J3 s2 k/ @! I7 Y' L) r
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */+ i' d; s/ I2 `0 h/ B1 B" V/ P+ e
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;0 o, m7 @7 j8 o" k
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
9 J& t3 f7 s H2 `: T' FDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;5 ?( p& t! b, L
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF; `; L5 T, N6 F0 H0 T5 L8 U
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;* Z- z0 x8 Z2 W" W& w% ~
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;4 J0 o6 Y1 }$ ?& {
Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;* I( H9 N# P% }1 o" R8 e
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;5 b7 f0 a8 n+ Z; A
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;: ] x& Y# u. a! b; @3 Q& {
2 U9 r, h3 j# y* o4 M/* override diags mask for selected modules */5 A& c& r' w, R8 {0 c% I7 S9 f( @
xdc.useModule('xdc.runtime.Main');, h3 V$ ^( {4 s1 }9 \6 k
Diags.setMaskMeta(
$ Y7 T" k# ]* k' n* g8 G1 d "xdc.runtime.Main",
: r8 u/ k# a5 W# T3 R7 O Diags.ENTRY | Diags.EXIT | Diags.INFO,5 S @2 H1 C9 Y8 l- [# }( ^! A
Diags.RUNTIME_ON
( [2 c4 ?- ]+ ?& F0 A5 T" P# g2 k3 Q);
) X" d5 D( ?' v/ E: D6 E. `
- k) ~: Y2 G9 B6 L* V1 Ovar Registry = xdc.useModule('xdc.runtime.Registry');
$ y1 {; Y7 b( o8 [6 {Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
3 V& j* ]% U$ F5 b7 ^Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;
: Y2 M* H8 o: I# pRegistry.common$.diags_INFO = Diags.RUNTIME_OFF;# z7 P" x S0 [
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;
. G4 A8 C; u0 k2 \8 z
4 j; v- c' I% U1 L) D! K! q/* create a logger instance */5 r: L& f5 \! @7 h7 C0 c7 U
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
( }; K5 S7 Y& x9 r4 W* ?var loggerBufP = new LoggerBuf.Params();
( K) ?8 R) S# h) M2 y6 a) x' i } gloggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
, I8 z0 _* d# E- o8 r' d5 y1 R% ploggerBufP.bufType = LoggerBuf.BufType_FIXED;
! H) ~5 {; F' _+ Y1 G8 p1 p' Y5 j2 g1 D
var appLogger = LoggerBuf.create(loggerBufP);
1 K; F& [) i/ J9 RappLogger.instance.name = "AppLog_Core1";$ ~$ A; L# R2 L$ X
Defaults.common$.logger = appLogger;
' ^8 w, f9 K7 u5 g. a* r, F0 eMemory.defaultHeapSize = 0x8192; . d4 e6 D! Z( O) {
Idle.idleFxns[0] = "&LEDStatus";% d. B, g A2 [
Cache.initSize.l2Size = Cache.L2Size_32K;% N9 N& j8 M. b1 s
: g" m' F) X& r5 C) U
|
|