|
沙发
楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明 y9 Z/ P1 ?7 q- ~- q
我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下* h$ I0 F* @8 R# J
(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
* c: }- }8 [ R* U' \
. n8 l, r4 w- w. j是不是需要在DSP.CFG中进行配置
5 I1 j4 O, i& s6 g. c" ~8 [我现在的配置为
4 M7 [7 H; z' {" i- A3 N& k& k( @
/*' i2 {! g; E1 J: R: |4 x
* ======== Operating System Configuration ========
1 H9 ^2 {+ a; \4 n, Y3 u */6 \0 x [8 u5 f$ @( g' \: Q
& g. L$ ]4 U5 A. f9 i4 g, w/* no rts heap */4 q' N2 k0 R( D9 `4 ]. V
Program.heap = 0;
2 A1 e5 G& m; F* H7 [% o0 rProgram.argSize = 100; /* minimum size */
2 L5 I' l8 H' O: B- K8 y1 AProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大$ r1 `: n$ [% y" k0 c c, E; @; \
$ A& |+ l: V7 g
/* create a default heap */# [& E; n* x5 R. T+ r
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
1 A7 }" g! J0 H2 E% f9 o/ B, [var heapMemParams = new HeapMem.Params();, C4 r L. ?6 R3 H& u5 m
heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
5 [6 X5 ?" K$ A6 f0 S+ W8 G# Y+ X% Y* @3 l
var Memory = xdc.useModule('xdc.runtime.Memory');
/ M! d1 ^/ t$ ^% P) \; J \. A8 ^Memory.defaultHeapInstance = HeapMem.create(heapMemParams);
/ ]4 o0 d0 J' H# D
3 l& d- t( c# J+ |9 ~/* configure System module */
+ k) `! y/ @: Rvar SysMin = xdc.useModule('xdc.runtime.SysMin');, \; D, [; K& u. Y9 h. V E) a1 {
SysMin.bufSize = 0x1000;0 l* f. g6 L+ N4 a- [
SysMin.flushAtExit = false;- Y; K( X) C5 d0 P
( f: Y) A, T" I1 j( d
var System = xdc.useModule('xdc.runtime.System'); j( d0 s7 i- M* v5 G
System.SupportProxy = SysMin;- r8 I- L7 K2 H( a
1 \" j1 h; }8 A/ W7 j) l' [4 Q/* configure SysBios to use the lower half of Timer 1 */
% K# J% Z; r6 e, J( M# V5 w6 G3 Nvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
+ R( |0 J( s+ ~' |; tvar Clock = xdc.useModule('ti.sysbios.knl.Clock');" @# ^0 r9 M$ ?: Y+ C3 |
Timer.timerSettings[1].master = true;& ^: Z1 J# J* |' u; R
Timer.defaultHalf = Timer.Half_LOWER;! _8 [9 D" n( W
Clock.timerId = 1;: b5 x4 r# s a# ]( z8 x: b
& E2 n% @' j+ r8 N
) a2 T# [4 r' y8 ]$ b7 `" g8 P/*5 N7 S$ J4 m' x) z* e; R2 u+ L
* ======== Miscellaneous Configuration ========( ] d* d. m; @$ D ]
*/
! A! N$ ^. f6 m; I% ~
$ m, e" O" X; t H- V: j0 x/* set default diags mask */3 R- Q4 M+ v: D, x) }
var Diags = xdc.useModule('xdc.runtime.Diags');
- |) z4 u/ l# }) Kvar Defaults = xdc.useModule('xdc.runtime.Defaults');
2 T8 t0 r8 h7 B1 j I/ V
2 i9 D0 ~$ r1 BDefaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;4 w$ W, D( h6 Q" }! c% ?/ y
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF; F0 h+ u9 W! E, ?+ C. X ~
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;# T# ~( z5 o/ @4 O8 {. @$ y
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
7 q, w- _1 _; h* ZDefaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */6 o7 ]* v5 X. R) u& E- j* U, @
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;
+ ]3 O) ]7 [, i3 g1 ?# CDefaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
# p& |5 c! c2 o# a5 xDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
6 a0 w* V7 f% O' F6 k0 ]. j& e) v, E fDefaults.common$.diags_USER3 = Diags.ALWAYS_OFF;+ h6 Y: r4 J# g4 E9 s
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
, b a& h& l0 PDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
( ?, Q9 y7 t$ T- i) j# W# \/ lDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;" ~) l8 n" e0 K( }
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF; R3 s3 h! R" z% X: w& `( _
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
6 c$ g# A% K0 d. \; X; d, b
8 o& O! j! B7 Y, `( ?0 i/* override diags mask for selected modules *// r3 t3 M w% w7 p( u$ s
xdc.useModule('xdc.runtime.Main');% r" }! X+ D1 u& ?
Diags.setMaskMeta(0 K6 [' c* H! F: u
"xdc.runtime.Main",. k/ g: x. Z: c5 J
Diags.ENTRY | Diags.EXIT | Diags.INFO,* X5 B8 k0 V" {3 |5 R9 ~# w6 P3 G# l
Diags.RUNTIME_ON S7 h% V+ n9 r9 } A0 `- d
);& l/ T* i+ Q# E/ j# g4 s
2 c& G# F' u% w* z* gvar Registry = xdc.useModule('xdc.runtime.Registry');% p3 M0 x4 E4 H! Z2 x+ D
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
* L1 g! H: n4 e2 d t- U8 ]5 tRegistry.common$.diags_EXIT = Diags.RUNTIME_OFF;
$ M5 `3 f2 F6 l! S) i3 xRegistry.common$.diags_INFO = Diags.RUNTIME_OFF;& X) N3 F- e# b
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;7 y% V* h Q: p
# k- `( g6 m8 s0 c& r& k) ]
/* create a logger instance */( Y6 h1 X$ y# m) d# q
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');5 P x% S( |5 Y! ]2 s1 B4 ^
var loggerBufP = new LoggerBuf.Params();
) P7 ~% u) I1 K! y/ o DloggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
7 [, x! Q1 f% B/ W2 c+ o5 {5 [loggerBufP.bufType = LoggerBuf.BufType_FIXED;! z0 Y5 l" |7 _2 C5 I0 p7 T: O
0 c- ~5 x! S9 }; q. V
var appLogger = LoggerBuf.create(loggerBufP);+ D w) u% z+ U1 f* m2 j( d
appLogger.instance.name = "AppLog_Core1";5 n) c+ j6 e) K
Defaults.common$.logger = appLogger;3 G! a% x0 g# | V
Memory.defaultHeapSize = 0x8192;
0 Q9 D% ~/ D! N- r+ XIdle.idleFxns[0] = "&LEDStatus";( \2 V8 ?9 }8 f6 m! q* s, H
Cache.initSize.l2Size = Cache.L2Size_32K;+ L9 V' _ T/ s0 A0 ?
' f, g `0 A1 q. S+ B
|
|