|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
- f2 q7 f5 p* b) W我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
: @: f' Z- f$ M(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
9 W8 C7 q" J4 u. Z
) o% ~7 x b5 g) G是不是需要在DSP.CFG中进行配置
) }: j5 Q6 J/ q我现在的配置为
* j' X+ x4 z+ I. `& D3 S R. b: K. K% J- W7 j0 ^
/*; G, R, e7 V1 i7 E2 z. ~8 k5 d3 Q1 H
* ======== Operating System Configuration ========. Q/ W. ?5 c0 s( ~+ f1 o
*/) ]) l8 y6 x3 Q3 {; @
4 B0 p; E p+ H
/* no rts heap */
0 w( Z6 D* C" O0 m+ tProgram.heap = 0;
$ R, K2 G2 s A! Y& nProgram.argSize = 100; /* minimum size */( X0 A( K1 W; z( a* x
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大
7 O, Z$ D- m6 k* _+ G) Y- y. \3 u, P3 S; \7 }2 A( X
/* create a default heap */
) R" M) Q5 w3 }: N7 C* ^8 z1 A3 r! z- uvar HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
" S9 V+ p5 x, z- T5 M& a# pvar heapMemParams = new HeapMem.Params();
2 v4 m) r& X5 f% [9 c$ m0 cheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
# m# i* N# t; _! l9 R4 G1 g
/ h; [3 M6 `& H. J3 `" Pvar Memory = xdc.useModule('xdc.runtime.Memory');0 s. l. r. s' m- P1 g+ [4 ]% K7 y
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);" y8 j- b+ G7 Z& f) B: v& U
0 H# f9 Y; n" C9 b" h4 g
/* configure System module */) G i/ @1 z, \$ y# A/ E& D* }( I
var SysMin = xdc.useModule('xdc.runtime.SysMin');
5 b6 ?8 S/ ^/ B% i4 z- L+ p6 r) z& OSysMin.bufSize = 0x1000;
C0 q# g$ E' H: ]6 uSysMin.flushAtExit = false;2 Z5 `2 c3 `" E+ Q2 ]6 S
+ X& U$ I! _( s. F$ I9 @2 U0 X! {
var System = xdc.useModule('xdc.runtime.System');
. G* \7 G1 Z% p2 J! y2 i" wSystem.SupportProxy = SysMin;/ z$ D0 o1 a# [& j: i4 w l
0 V) @. y* E6 t7 |; u% ]+ C3 @/* configure SysBios to use the lower half of Timer 1 */
" K, {$ D& T! ~: m: evar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
( i) Z: U: h7 }/ Uvar Clock = xdc.useModule('ti.sysbios.knl.Clock');# K5 _! L4 N1 g2 h- n( n& o/ B
Timer.timerSettings[1].master = true;
- z' W9 R0 o1 w& L8 m3 nTimer.defaultHalf = Timer.Half_LOWER;6 C- r4 h2 `5 f j* P( X
Clock.timerId = 1;
+ D' K# k5 w! i; S$ J0 m8 ?; r; c9 G
+ O" F+ H# ]8 n/*
3 I) ^0 ^1 i( K# ~2 ]7 X6 m: E * ======== Miscellaneous Configuration ========
' X6 `+ F, l$ U7 |/ l; u */
# C" q) ]: i* z
4 b, i Y: q# n+ o$ ]) ^! o2 ], l/* set default diags mask */
( j7 @9 V% z. x( i. x7 \& U, mvar Diags = xdc.useModule('xdc.runtime.Diags');/ }# F: L$ K! _$ |- y3 Q7 a
var Defaults = xdc.useModule('xdc.runtime.Defaults');
+ n+ y: G! Q# p7 l( p+ f# c" u" i: j8 v* o( `& c4 g+ y
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
]7 S5 Q# ~& R' ~2 \Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
. ?5 Z v$ N R! _) bDefaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;$ E2 `+ K! Z& o9 q7 z4 T
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
* J. x% d) b5 V$ t3 QDefaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
5 E$ [% {" M" `4 EDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;
4 F* }( F6 S2 f& uDefaults.common$.diags_USER1 = Diags.ALWAYS_OFF;3 _! |# b/ D& {7 u# N: g3 x7 h
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
4 G! x# ]/ S: w! o. vDefaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
, V1 V6 i/ G- rDefaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
! Z: C( I( p: [; I6 J( DDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
@5 O' U9 N( H7 B6 V5 bDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;2 z& {6 H$ l& z$ P
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;
, r4 ]4 [. \; O) _, M& ODefaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
! d5 V( B+ c* {, n, U1 x) J# r6 Q) p3 p- G
/* override diags mask for selected modules */2 R( e( r, v" C: H
xdc.useModule('xdc.runtime.Main');2 P1 D" ^$ V" N& i' y
Diags.setMaskMeta(+ ^/ J5 e& a! ~$ G
"xdc.runtime.Main",
3 r/ x( t; ^" u* r. k( { Diags.ENTRY | Diags.EXIT | Diags.INFO,
+ J# k& w" V6 t Q+ M7 q Diags.RUNTIME_ON0 J) d6 T) C, o) B$ s' Z
);; [! Y: A& X% v8 R0 y7 q
9 E( ] [. q. G3 L7 D7 S
var Registry = xdc.useModule('xdc.runtime.Registry');
- E% M9 i7 h2 c( q* J6 \4 DRegistry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
0 x) n" V% k/ x4 g3 [Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;
- \ w3 L0 W& y( z9 i: ZRegistry.common$.diags_INFO = Diags.RUNTIME_OFF;" C7 {5 u' g+ D0 F% R8 l* C
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;
1 f9 p7 r' @! m: k0 k, \! T, X5 k: B7 s. T4 R/ X) f
/* create a logger instance */
. u. m0 [3 [0 f% ~! o5 [ y/ n" `var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
# G9 _" D7 L1 `: Uvar loggerBufP = new LoggerBuf.Params();
, q D, ]& b0 a0 ]1 LloggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
/ q: G, \# u) hloggerBufP.bufType = LoggerBuf.BufType_FIXED;% P9 j) \' _8 S* M0 G
6 a- S- K) V8 o" u+ r
var appLogger = LoggerBuf.create(loggerBufP);0 p6 n: v) O6 }! n* J3 o
appLogger.instance.name = "AppLog_Core1";
( f+ ~- A; c; D1 CDefaults.common$.logger = appLogger;2 `, M* ^1 _$ ^6 U# u( K X
Memory.defaultHeapSize = 0x8192;
L* Y7 Y2 @. W! G- hIdle.idleFxns[0] = "&LEDStatus";- ]0 Z, N0 @- ]( g2 W/ h
Cache.initSize.l2Size = Cache.L2Size_32K; G) p, J1 t7 d' E; e9 G0 C
8 E" ^ s9 c+ ^" P+ Q |
|