|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
6 g; W& G2 t5 ^$ H我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下( f: E, i# L D( @0 \
(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
: d1 \2 U: P; Z$ Q! y& Z6 O8 G( H
0 H( Y4 ^6 w( H) a$ A# l是不是需要在DSP.CFG中进行配置
* O+ w0 \6 K- M0 ]我现在的配置为
; E- w: s3 [# D* A, I7 b4 s4 k9 ~ P+ I2 b2 e* d8 u! M
/*
* k4 \6 K% T7 F" M * ======== Operating System Configuration ========
3 J) K7 P* w% ]# V/ n& e7 l */
/ e% G0 y5 `' ?4 w+ R3 y4 F; m2 W! w! ` \& T: u; L1 ?+ l
/* no rts heap */
P, b5 [ w$ CProgram.heap = 0;
" ]& n5 u7 L0 t8 d# W9 AProgram.argSize = 100; /* minimum size */
* i8 f0 |* x9 O: I0 l! i; C xProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大
- m6 F" _& z" k
3 G/ t6 _; R$ Z/* create a default heap */
7 [1 r {8 W6 dvar HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');. j( ]# s% T: v0 ~+ v
var heapMemParams = new HeapMem.Params();
/ Z- D. [! g9 Q- X. _& @heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大% E" D; N# [' C, H; F/ N
6 u' A% ~, d3 t8 k' R/ ]1 J' ?
var Memory = xdc.useModule('xdc.runtime.Memory');3 d4 p/ U+ u2 X/ I
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);/ t, H+ j1 E6 F: P4 n' W! T
( B d3 T) [. t# x
/* configure System module */8 K y) w" e2 W
var SysMin = xdc.useModule('xdc.runtime.SysMin');- y/ J' h A1 s( r) z. x+ y
SysMin.bufSize = 0x1000;
b0 x8 Y; y7 k3 ^. @4 f1 tSysMin.flushAtExit = false;, c [* E& M- `+ W7 n, y4 ]9 |; T6 h
8 ?+ u+ E- ~' ?; P9 ?3 i
var System = xdc.useModule('xdc.runtime.System');
+ u h( M1 |9 Y7 h2 R, W6 LSystem.SupportProxy = SysMin;
' Z( s) C. H" M- l9 R4 m4 W m2 D; f1 z3 A
/* configure SysBios to use the lower half of Timer 1 */
0 D; c* ?7 ^. ^$ u9 i/ pvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');6 C3 s: `; N; c
var Clock = xdc.useModule('ti.sysbios.knl.Clock');( g. `' t" Q6 ]+ ~" ~
Timer.timerSettings[1].master = true;
) x# C2 i" L" lTimer.defaultHalf = Timer.Half_LOWER;
& B" k+ N) v: C! S" h+ T9 kClock.timerId = 1;) S$ Z5 F F! E/ U& }
" r# f5 c4 P" b9 M
; n/ @2 a$ a6 F) s$ y4 R0 m" i
/*
4 F* N) H$ s! q% d* v% s4 |2 k4 s * ======== Miscellaneous Configuration ========
) q1 T! D5 a& r G */
& J! ?! u# |! N4 v3 B) F$ d7 w7 M# `* a0 \6 c) p) J2 u4 x
/* set default diags mask */" _$ x3 _* L9 S
var Diags = xdc.useModule('xdc.runtime.Diags');
, m( K' k) }3 S+ x ]var Defaults = xdc.useModule('xdc.runtime.Defaults');4 l l2 J6 ?$ C9 g
+ B" q$ T% v0 ]9 P( T* P- I
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;7 V3 \4 B: o7 w0 S7 i
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
h+ u$ T$ E# W5 _) G- x' \Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;
4 ~, P: f) M0 z0 CDefaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */8 ~5 L! y/ ^7 `
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */+ i y, P1 s9 }* q
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;
- M$ ^7 f% O7 pDefaults.common$.diags_USER1 = Diags.ALWAYS_OFF;1 M4 G8 _& }' Q% |7 Z
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
1 _ }6 E! `! @7 W4 H5 FDefaults.common$.diags_USER3 = Diags.ALWAYS_OFF; O# o$ i7 G3 p' X; N" e
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
. m: m4 L. A6 @, C* z' q# y& A9 q BDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
4 |" v8 t0 y/ C; K' T; W, lDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
$ K+ b7 |" [( y$ ?0 Q9 r2 cDefaults.common$.diags_INFO = Diags.ALWAYS_OFF;
/ ^# R B. n! [1 U9 J1 m3 D# a$ @Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;! I. h% j; k U- F+ |
9 U: h9 r* {3 ^! T, V; H! E/* override diags mask for selected modules */) H7 G1 {; u% N% l
xdc.useModule('xdc.runtime.Main');
2 |- X* ~# d; @. CDiags.setMaskMeta(, `9 O- ^8 E" {4 Q+ b9 v$ Q* q- o/ n
"xdc.runtime.Main",
8 O) E$ f- x0 C( S Diags.ENTRY | Diags.EXIT | Diags.INFO,
; r! x4 \" A* p, }# E, I& i! ~1 \ Diags.RUNTIME_ON
7 B0 s" z5 o1 x5 |3 a3 b);6 s+ }; x$ S8 \. b
0 E9 W) N; D7 }* j0 s6 H! fvar Registry = xdc.useModule('xdc.runtime.Registry');
5 [9 `" p' k1 f4 ~2 [, RRegistry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
8 `; \' R) O. f+ IRegistry.common$.diags_EXIT = Diags.RUNTIME_OFF;$ g2 R' t( \' H
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;
! t2 `- a- F& ]' C# I7 wRegistry.common$.diags_USER1 = Diags.RUNTIME_OFF;* u7 S m+ J- `* v D! Q8 ^
9 D; m, o9 V; I- R) i. h
/* create a logger instance */
$ ]) h. g: y7 p2 u3 G, C/ Mvar LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
: q+ {! @: B3 B8 t1 G* R c4 Fvar loggerBufP = new LoggerBuf.Params();
+ |: B& q1 m% z5 gloggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
( t$ Q( `, F1 B8 L$ LloggerBufP.bufType = LoggerBuf.BufType_FIXED;
4 R- Y" ?& X w; w( A$ N* V
{7 r" E o) b. K( Y! Ovar appLogger = LoggerBuf.create(loggerBufP);: r$ I* n' M& v6 @; G
appLogger.instance.name = "AppLog_Core1";
& [. A! A A( [Defaults.common$.logger = appLogger;
+ V% c6 T: a2 P' V/ y xMemory.defaultHeapSize = 0x8192; ( {2 ~5 u+ `% O* b; r! b6 y& z
Idle.idleFxns[0] = "&LEDStatus";
+ q" {4 y: j" ICache.initSize.l2Size = Cache.L2Size_32K;+ N2 Z2 }4 h" W. S2 Y
5 u9 A" [& j1 P1 X! l7 ^
|
|