|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明: H' R+ B% X0 T- Z& {- e1 j6 ~& a
我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下6 d2 X. W0 Q. B2 V( |2 m
(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
5 o9 d: Y4 W$ k9 _% P( [3 i0 x9 N$ O1 t& j
; i3 l. u* t# a1 E是不是需要在DSP.CFG中进行配置
+ P4 B; W" L" I& D我现在的配置为 e1 F5 r* c/ g/ _2 r
: t9 c1 o) v4 t/*7 J; |" i6 e* E8 Z
* ======== Operating System Configuration ========( [; Q- k+ k) p+ r& o
*/# O. R; {2 I# f6 E9 X9 Q- K
2 V, W; i1 Z' b
/* no rts heap */# S* C4 j. z v3 U+ J
Program.heap = 0;" x# B; n/ e3 z
Program.argSize = 100; /* minimum size */
6 ?9 d! N9 y; s( u: i- WProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大& V! }- ], s" t/ k! I
4 |" Z) K w; t9 Y" i0 L
/* create a default heap */& G( k" N' h( R
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');1 C/ u& m! C6 t! H6 _1 m
var heapMemParams = new HeapMem.Params();
' ^7 G# t; Q- D2 W* h0 a) O% @7 zheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
% e3 T: R. e! g# ~5 ^; D6 Y) J7 ]/ g& P% r& m2 k* H3 }4 Q$ B T8 E
var Memory = xdc.useModule('xdc.runtime.Memory');5 Z3 K' W e8 G: Y0 Y) j
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);
$ R( i1 l0 n; {0 B, o% c& Q: U, q l4 W. T6 ?+ z! Q9 ^
/* configure System module */( r" y8 @. Q# e! p; p
var SysMin = xdc.useModule('xdc.runtime.SysMin');
* q& j& U/ Y4 k* q' c/ wSysMin.bufSize = 0x1000;
/ W$ Y+ [% L( A7 W: dSysMin.flushAtExit = false;
/ y& v3 ~( ]4 a) n3 ?/ r
& O5 B O6 S! K% {; }) B; t6 L% { f3 Evar System = xdc.useModule('xdc.runtime.System');
/ @) E) b9 ?+ l" {System.SupportProxy = SysMin;; s1 n S3 ?% a# \8 @ E p4 O% [6 y
# [* W7 K" r: g2 J( u& [
/* configure SysBios to use the lower half of Timer 1 */
; d. C; C5 S( Svar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');6 b/ j. X8 X3 t2 @. ]$ B
var Clock = xdc.useModule('ti.sysbios.knl.Clock');
+ g9 C, r0 e8 c3 a/ `Timer.timerSettings[1].master = true;
! @' P! s* h- }: P5 fTimer.defaultHalf = Timer.Half_LOWER;
, \1 M* l. d; n) Q5 lClock.timerId = 1;0 T$ R9 _6 V8 l: u/ F0 e9 m
) x, k- V/ y* L- h/ k4 k% _
: o5 M1 G; A! ~1 a: V$ Z
/*3 `5 f7 u2 U9 ^& s
* ======== Miscellaneous Configuration ========
% `/ B! j. o$ Q0 k! C$ s3 y! N/ b */0 c% l. q6 N- A
1 ]7 e1 p$ V% S, f$ z9 L/* set default diags mask */
N, P2 r6 }# B# X- c6 cvar Diags = xdc.useModule('xdc.runtime.Diags');6 j+ |& x6 ~: M5 [% w- `
var Defaults = xdc.useModule('xdc.runtime.Defaults');
. c; j W- s0 R$ ^$ w/ \( M9 x6 a2 d2 p! R. T
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
( Q& }$ {) M! @5 lDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;) K' j8 z2 A R4 f* L2 B3 ~+ G, {* f
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;% h8 j' ~# K' B+ Y) B
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
3 u0 y8 d, f- v5 y9 a6 PDefaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
( d; W5 I. D# g. b$ PDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;
Y( \$ n7 i, A& cDefaults.common$.diags_USER1 = Diags.ALWAYS_OFF;# Q( e: w( ?- k: Z% m5 l Y
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;$ B! w0 g4 |8 r* p
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
% k. D. Z, k# a. T3 X/ r/ yDefaults.common$.diags_USER4 = Diags.ALWAYS_OFF;* k8 O5 |4 V! a _, C( a1 f' |- b$ d
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
+ i- h' K3 v- w+ _/ ~1 ^$ KDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
0 x! Z' i/ K( y7 k$ iDefaults.common$.diags_INFO = Diags.ALWAYS_OFF;4 x0 Q- W* Y5 Q0 e9 y
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;! I3 Q0 s: T+ k; H5 c/ j+ L# M5 i
, T; b2 ~1 w9 r4 {1 M/* override diags mask for selected modules */+ ~0 R' C; q/ X' ?/ c0 C0 J4 j/ t
xdc.useModule('xdc.runtime.Main');# |% X* y8 p3 q/ I" Q. _& j8 a
Diags.setMaskMeta(
% W$ p- k- k ?' v: {/ ]! U "xdc.runtime.Main",0 w; `, `$ x7 y% ]; |/ ], e
Diags.ENTRY | Diags.EXIT | Diags.INFO,0 q7 T( { ?' V
Diags.RUNTIME_ON
3 Y x6 ?/ T9 p);
! F2 u# W: e9 U+ r `$ G2 x' Y" X; Q$ t
var Registry = xdc.useModule('xdc.runtime.Registry');
2 y. r& B' K) R" HRegistry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
0 {9 C7 |. S( x: F9 f GRegistry.common$.diags_EXIT = Diags.RUNTIME_OFF;% F6 w4 c3 E& U' w: r4 C- G+ }) E+ ~
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;9 ^/ e* T1 T9 y- _/ p
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;
' @6 k" p5 a, d. T
! k2 F1 C, X0 q3 [/* create a logger instance *// N, ?# {# v' p$ M
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
; J: f' j( _2 L/ x& \; t' ~var loggerBufP = new LoggerBuf.Params();; N$ ^- x# s0 F7 x2 ]
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
7 x* N1 X# M* A0 x& nloggerBufP.bufType = LoggerBuf.BufType_FIXED;- A9 t# O+ ^ n/ ^4 W! e( k
/ V3 n, y5 x5 z, \2 `var appLogger = LoggerBuf.create(loggerBufP);2 y8 p2 H2 M, F9 m9 w3 M$ U
appLogger.instance.name = "AppLog_Core1"; @- V% J+ u" v- i( Q( A0 O
Defaults.common$.logger = appLogger;
& p; m. |9 t; XMemory.defaultHeapSize = 0x8192; : X' t0 k, N k( ` e
Idle.idleFxns[0] = "&LEDStatus";6 V8 X! e6 k; O C
Cache.initSize.l2Size = Cache.L2Size_32K;( c: e: H1 G$ N- t, S4 {3 [
' t3 h0 w$ |" u$ l1 P
|
|