|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
' e4 d6 f$ D8 T5 {我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
: ~, m4 B( z& {$ J7 d(不过疑惑的是,为何单独DSP仿真就没有问题呢?)& L6 \, k. f' q$ A6 _" f, M
/ T+ }! N! A2 e4 W是不是需要在DSP.CFG中进行配置2 z8 e8 P- ^1 j& [9 \
我现在的配置为' ]+ ~) ?( A+ t9 a" B% s
* j2 E3 k1 r4 Z3 o
/*
- g3 h% w4 ~; v! G' e5 Q+ i& c * ======== Operating System Configuration ========) o6 N' G4 {2 L! ^, ^7 z7 _2 N
*// v( p( R- N4 h( |' Y
0 Z* Z5 H8 D7 G; J8 L/* no rts heap */
2 r0 S2 ~6 F* [' a' QProgram.heap = 0;
$ R4 p* X2 K4 c' R9 R& G$ E) b+ _Program.argSize = 100; /* minimum size */
! W& \+ ?/ T. e3 W+ i: JProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大
0 u$ W# i+ Q1 |- `: B$ l, O/ r% o5 L/ X2 h: \7 U
/* create a default heap */. a& W+ i) C) [; w
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');. l" l2 j+ s/ k5 J
var heapMemParams = new HeapMem.Params();
: H5 w9 G' V- m* ?4 nheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大: E( l" X8 j, O* O9 X* P
% G: X1 P) b6 p1 d6 }, U
var Memory = xdc.useModule('xdc.runtime.Memory');
* f" C" a, B; v9 I; k3 WMemory.defaultHeapInstance = HeapMem.create(heapMemParams);
$ h+ x; z9 P i7 X6 R+ K+ i' X
. T2 `7 _2 A) x% k! z# k8 h/* configure System module */
8 F- R+ V! U$ Z I# Wvar SysMin = xdc.useModule('xdc.runtime.SysMin');: Y4 ^, x, v. X: ]8 V) w }8 L
SysMin.bufSize = 0x1000;8 i" m! H3 l# ]" j' `) y$ i
SysMin.flushAtExit = false;
+ N3 q1 M5 Q. O; L; a3 f/ u4 V2 `4 m2 s! l4 H; P Q
var System = xdc.useModule('xdc.runtime.System');9 n( n% [( l& X7 w) W
System.SupportProxy = SysMin;* Z; t4 D( `1 B- t" n
; i7 b7 o! _% A \% X
/* configure SysBios to use the lower half of Timer 1 */
9 T" h# N+ ~) Z P9 Jvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
2 Z+ N. d0 u* y( O: B/ svar Clock = xdc.useModule('ti.sysbios.knl.Clock');! A- b6 {6 ^& A5 N& `
Timer.timerSettings[1].master = true;) u- _# y4 s# p2 w) c2 e+ E
Timer.defaultHalf = Timer.Half_LOWER;# ?; b4 L: r) S8 e5 F
Clock.timerId = 1;5 v" H& o: H/ M/ N0 g
5 v- e+ z h4 |# t# { b" |# X& x3 b
# J' U4 a2 Q- Y, g( Q+ X; y6 l
/*
, v' _. z7 ]5 f2 t1 ? * ======== Miscellaneous Configuration ========
/ U; Q* q& \4 d( L U */, w7 V8 [5 U! U* U% I
( _" H, q. W1 t, w5 `/* set default diags mask */
/ x# F0 g( W! xvar Diags = xdc.useModule('xdc.runtime.Diags');
2 z0 i! L, o( S1 k) Y6 x" R! dvar Defaults = xdc.useModule('xdc.runtime.Defaults');3 @ ]& f& O% T! v" s" N* |
6 W* R4 [" u* @- u2 h) J; U& j7 `Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;/ l4 E: w1 k' a
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;( N8 M0 S5 M# t3 _
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;0 e5 ?0 ^5 j# o1 v0 ^0 k
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
% V5 o. [' _* ?! u# h ?Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
5 h6 i1 w5 A1 s0 ^- \% YDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;4 a: N4 x* U6 e$ P" }
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
1 w" X9 G4 {/ B2 E2 V6 g- jDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
6 Y6 P9 a3 `, k# ]Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;" K/ {9 ?& {7 a* {# F! f$ J
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;& A& Y7 f# q9 Y) O, Z
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
* ]) s6 q7 D+ O) dDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;/ A9 ]( V# a7 G% E6 N! ]
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;6 l( }# N0 j1 ^; R: p1 B |
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
: g" a$ \5 o+ l% G# I) o
5 S4 M) @3 _" k3 P/* override diags mask for selected modules */
l' }: g2 a! g$ _7 Pxdc.useModule('xdc.runtime.Main');
; \; k- U+ H( S5 a7 w: h0 [Diags.setMaskMeta(
0 K- R" N/ T) W3 [ "xdc.runtime.Main",
, q Y& F% Y6 q" d Diags.ENTRY | Diags.EXIT | Diags.INFO,# E. P8 o: i/ T! a
Diags.RUNTIME_ON- l4 D d2 I2 h4 g# k, ~
);3 n3 l2 w6 Q" C, j, i5 n/ i2 _
- D: Q9 P+ f3 b5 u+ [var Registry = xdc.useModule('xdc.runtime.Registry');
# q, x( A* ^2 p% K$ zRegistry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
B1 e) h' o7 Y. BRegistry.common$.diags_EXIT = Diags.RUNTIME_OFF;
5 j, y5 Y: ]5 m7 Z+ |Registry.common$.diags_INFO = Diags.RUNTIME_OFF;4 S2 m& ^3 ^0 v9 z# ]( B8 W5 b4 c
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;- u2 L7 J" N2 _
) i4 A A& T1 y4 w V) i
/* create a logger instance */
& N* ]' \: u' i$ y; ~var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
, m$ E) x0 Q; a% ^: `var loggerBufP = new LoggerBuf.Params();: B4 _: K ^2 q8 R# {& _
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
, u. e( q$ [% h' y% S4 x" }loggerBufP.bufType = LoggerBuf.BufType_FIXED;4 l8 R* n8 B; X& o) T$ x8 _) a
1 p, F& ]: v" D
var appLogger = LoggerBuf.create(loggerBufP);" D/ {, x" w7 r9 R# l
appLogger.instance.name = "AppLog_Core1";
* j7 y; r7 d/ e" nDefaults.common$.logger = appLogger;
& n; l# s: N) l+ x) H4 G" E$ p5 A7 I, AMemory.defaultHeapSize = 0x8192; " |$ H2 G( N$ q* `
Idle.idleFxns[0] = "&LEDStatus";0 v: m+ | J1 U1 u5 O6 i
Cache.initSize.l2Size = Cache.L2Size_32K;8 L+ a6 h2 [/ W( j0 b# c
w- R; M. h: y' r5 D/ K) n l/ f. O
|
|