|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明3 m2 k9 M) u* d
我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
9 s5 v$ p q" y0 a(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
K6 X6 f' X: F! V7 Z. y2 T! X3 P _
是不是需要在DSP.CFG中进行配置
6 Q/ w4 w: D) S, E" o$ E我现在的配置为7 o! E+ O7 |# T) T7 I
9 n% ~# @! n7 k% m2 {/*8 l6 p( k# L+ Y! c8 w, V0 b& i
* ======== Operating System Configuration ========0 e2 ^, d1 A( k5 C" i1 \& R
*/. k5 l, i& M" N" o
% X. S6 C) [" ~% Y3 K0 o5 U# w
/* no rts heap */. x* H" P- ~& Q9 |" ]9 F! ?1 i9 O
Program.heap = 0;
; {# R* d& F8 b2 _/ {. jProgram.argSize = 100; /* minimum size */2 i4 e! c# `' C" L' p6 _
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大3 Z3 U5 N' I+ k8 _* k' r$ g$ T9 q
* g; s' U0 |6 `: |/ p) Y
/* create a default heap */! n! U+ t w6 y
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');: i* Q. l& C) H! I, Q& X; ^, O* o
var heapMemParams = new HeapMem.Params();
+ y# D8 \; P& w. a8 ~$ r) dheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大! W: P9 W+ r. D. a- E- f' y$ O
( ]! L' d( q( R0 ~# e1 b* e$ evar Memory = xdc.useModule('xdc.runtime.Memory');
& Q/ C# F: p6 E k1 [' E( `; ZMemory.defaultHeapInstance = HeapMem.create(heapMemParams);
2 l# s/ C. ?& A' j* [3 a* @7 N9 |- s; i h) M/ n9 g
/* configure System module */2 {6 K8 @, W9 ?* J) M c7 }
var SysMin = xdc.useModule('xdc.runtime.SysMin');
% l* a0 |2 e# V* r/ V2 eSysMin.bufSize = 0x1000;+ H* i1 z) A9 A5 w9 c/ l& i$ `
SysMin.flushAtExit = false;
3 c* \* ?% m5 k4 i, D/ G! P- i3 z* H# z! H/ ^4 R* x/ Y1 G
var System = xdc.useModule('xdc.runtime.System');
0 E& O( Q+ C. Y; T& P: v4 ZSystem.SupportProxy = SysMin;, V5 W8 t; c+ O! p. i
0 Q0 J1 ^8 F: y1 ]# Q( F
/* configure SysBios to use the lower half of Timer 1 */
$ e+ g) H! F& Jvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
/ g" s; f+ d+ ^3 _* ovar Clock = xdc.useModule('ti.sysbios.knl.Clock');
' ]: k' V# R. } p0 t' OTimer.timerSettings[1].master = true;
% T2 q- x# [1 T/ _Timer.defaultHalf = Timer.Half_LOWER;
: `6 }$ N0 Z' w3 |& j6 y: jClock.timerId = 1;
" W5 `1 p$ P# `* l, q l( S7 D
. l3 s% `7 L- ]3 o9 F0 X! S9 f- ]& a7 {% o/ P$ }, z
/*
$ x q+ h. C& V6 u) ^# f7 P2 \ * ======== Miscellaneous Configuration ========
1 q0 ]6 K+ m8 \2 g */
/ U" B: j* G" c2 F1 e: {% `
, J$ M9 ^+ I0 x/ ^, X/* set default diags mask */7 ~# x3 a/ P% n* b
var Diags = xdc.useModule('xdc.runtime.Diags');2 k% p7 q: @ G2 T: h/ p
var Defaults = xdc.useModule('xdc.runtime.Defaults');- ~! c9 O' D6 i1 I" c$ r. I
8 [2 a$ O5 ]' X% _* M) k2 VDefaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
8 A8 i9 Y! y) {( ^Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;- R2 ~5 } o2 g% X4 z! d
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;
: a( d3 h6 h! g2 w' I kDefaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
, Q3 s2 Y1 l4 Z& J7 |Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
/ H2 a% \8 T5 Z# `3 `9 y6 F, _$ jDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;
' t& |9 h8 ^7 |# k" uDefaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
4 o# ?2 e7 P& y& K+ G2 s% sDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;& ]; b& {) w+ t6 [
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;. k- h" u: I/ L) E% I5 A$ M
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;- i) ^% t. T0 b( ~9 m4 x
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
4 J& N) X: a9 {$ ?1 K0 } QDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
& |0 h& w K! A# n v% z% P) PDefaults.common$.diags_INFO = Diags.ALWAYS_OFF;2 W5 v# M9 B2 L2 `) T2 z- E+ b! {
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
" f' P Y* v+ n6 L5 f* N& x# Q" c: Z+ }; b @
/* override diags mask for selected modules */
. h7 F& T% ?4 Q4 Zxdc.useModule('xdc.runtime.Main');( {* D Z& W7 p( |5 [! X
Diags.setMaskMeta(
+ \. A1 S8 H/ B/ R S9 u) P! w% K "xdc.runtime.Main",
1 z) l* P4 C! [* T* m Diags.ENTRY | Diags.EXIT | Diags.INFO,
0 g: A$ [6 p, i! b& o1 F Diags.RUNTIME_ON
- W# N1 X5 r2 y$ }1 ?& C6 e, c);" X: r. U3 h1 J) Z3 Q
& f, R& R* m6 gvar Registry = xdc.useModule('xdc.runtime.Registry');6 B$ ]/ `, H- T, O# @( p {3 P
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;5 P9 ~) A, x2 m2 L) A( c
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;
7 I5 ^9 p) ]: x! T6 H. }0 zRegistry.common$.diags_INFO = Diags.RUNTIME_OFF;
9 Y: s5 S Y" ]$ a. d& r dRegistry.common$.diags_USER1 = Diags.RUNTIME_OFF;
5 Y! S/ r' Z2 G
1 D% v+ I/ P; Z! \/* create a logger instance */
% F( ~* q) u8 n) C5 M' @var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
0 u; f5 A2 F+ P2 ]; Yvar loggerBufP = new LoggerBuf.Params();
, F; A' s# P0 F3 Y0 s* @loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */. l8 R0 k4 |- B" [( Z2 W
loggerBufP.bufType = LoggerBuf.BufType_FIXED;
3 y% N# f7 Z) }0 z9 _' p1 Z0 w; _' Z- v1 _" \7 L0 {) w9 d# l
var appLogger = LoggerBuf.create(loggerBufP);& r& b4 T: w. j- p& B0 i, Y7 }
appLogger.instance.name = "AppLog_Core1";
5 F1 h2 w, w/ k% u, Z. j3 ^, [& QDefaults.common$.logger = appLogger;
^" i ?# K+ Z& U% O0 {! yMemory.defaultHeapSize = 0x8192;
- q( g- G' o, A; J. J9 q+ RIdle.idleFxns[0] = "&LEDStatus";
( _8 ?6 x; J. q, T3 P, [- @Cache.initSize.l2Size = Cache.L2Size_32K;, s4 `& D1 g) [) Q( r
: ?: W: n9 g$ @8 c
|
|