|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
1 I+ q; q( H4 u! Y; k# ]我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
( @2 \ w- `: |, ~) E(不过疑惑的是,为何单独DSP仿真就没有问题呢?)& S" H/ B& m* J' a2 ]$ a1 v' k
) s) R( _, d; r+ U
是不是需要在DSP.CFG中进行配置! l& @- F. _; _4 B, e; Z6 S, g9 [) c
我现在的配置为
8 _! q1 r$ i8 |* u/ c* C& Q( L; f% |' r8 s, w
/*
/ d3 Z. b) P0 T0 B1 v * ======== Operating System Configuration ========! \8 C6 u6 R E7 M4 E/ j
*/* g' a1 \1 i' F0 ~7 H9 N
7 y% L, F: L+ @4 q8 K/* no rts heap */6 f) U h6 P* h! |
Program.heap = 0;5 [/ B5 z* n! ]2 I& u
Program.argSize = 100; /* minimum size */* b& v& u- ]# f. {3 c2 t' }
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大' h% \$ ^. ~6 p+ |2 Q0 x
% L% T; Y/ U& ?
/* create a default heap *// y# Z, d* j( U
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');3 ^, m/ ? i& I; F& M: A) s4 n
var heapMemParams = new HeapMem.Params();
$ z( N/ M* S1 d, X# z; E z) hheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
5 Z. c) m, `3 y7 {# H; {$ `0 }2 w$ D6 r
var Memory = xdc.useModule('xdc.runtime.Memory');* j1 m% H7 M% K' \
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);
2 ]0 V! X6 _: Y, n0 z9 k2 s
/ q; _3 @3 {5 ?/* configure System module */
/ V' Y1 [/ b- B- Rvar SysMin = xdc.useModule('xdc.runtime.SysMin');1 j8 p) p: v2 P! n, V1 t" b3 c" ]2 V. d
SysMin.bufSize = 0x1000;: g1 R; `$ v$ V' J
SysMin.flushAtExit = false;: `4 w, {9 R. d, f, r: n& z
6 v! v2 r& {; n9 _8 X& Y x
var System = xdc.useModule('xdc.runtime.System');
7 A S, n" b9 PSystem.SupportProxy = SysMin;0 I7 h6 V Z3 F' J; t: d
0 k3 p- Y1 W! T9 L8 T6 n" `
/* configure SysBios to use the lower half of Timer 1 */
5 P) k7 D9 Y) k7 `6 pvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');0 H; d7 E+ O( W% x
var Clock = xdc.useModule('ti.sysbios.knl.Clock');) E4 D1 h$ O( E2 z
Timer.timerSettings[1].master = true;
$ g# D+ b7 s7 [! \0 DTimer.defaultHalf = Timer.Half_LOWER;
) Z& w+ S5 N: A4 B, B3 VClock.timerId = 1;
* w& U7 l8 c6 i) b! t$ I1 ^
: F. J' x% b2 O0 A r+ t) P; |% [* V# ?( o( ^" V5 |3 @5 k( l+ A
/*5 _" g9 V5 @9 V( X
* ======== Miscellaneous Configuration ========
! U: F9 f' }1 T8 e; s0 Y6 y */- f* j6 M5 l6 _
% o3 S$ x+ q l3 _1 R- F8 x
/* set default diags mask */* b) U) x' y# p3 b+ A8 W
var Diags = xdc.useModule('xdc.runtime.Diags');" W7 I ~7 f3 x5 Y
var Defaults = xdc.useModule('xdc.runtime.Defaults');4 v0 @+ b2 S" t2 y1 ?: N
5 h4 h4 @' G* u1 Q1 i
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
5 k2 j/ _2 T+ t" \6 EDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
7 e* {, S" P0 y# Q% _' I! JDefaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;$ A& p' x$ t; G" f+ O0 Y, }' x
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
6 z, g) o$ t, I' Q5 vDefaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */$ t+ a$ P5 l' c: F* Z
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;
2 h6 G2 m: v4 V% mDefaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
: J! ~. V8 H F1 `9 J/ d, G* TDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;, b. T7 Y' I0 ~" I3 Y
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;; v) x7 h0 p4 t0 ?! m, u
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;8 Q0 u Q5 H0 d& @! X& ]
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
2 a/ B& z* J( N- b5 m( FDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
3 e& |/ @8 _: d gDefaults.common$.diags_INFO = Diags.ALWAYS_OFF;2 F! F6 }4 v( S W5 J9 H
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
4 ^* t$ N$ n1 ~3 K
: g! W- f0 h8 m& O! z, n0 s/* override diags mask for selected modules */
* h; o9 H# Z" |/ V& q: G! h/ axdc.useModule('xdc.runtime.Main');3 E. F5 T( K1 f5 J$ h
Diags.setMaskMeta(3 D, f6 @; h' K {( ^
"xdc.runtime.Main",
' s& F# F9 h, [ Diags.ENTRY | Diags.EXIT | Diags.INFO,* p" f m8 B7 x5 v/ F5 h% @0 T4 ?
Diags.RUNTIME_ON/ {5 w7 g& v$ T' n. w/ m7 e( L
);
7 e8 P2 v0 `6 \' M% h, o/ t
3 O, e( n; k. _var Registry = xdc.useModule('xdc.runtime.Registry');
/ Q: J5 ]) u* J6 ?4 F# ^Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
' e) N! b& t( y$ P5 LRegistry.common$.diags_EXIT = Diags.RUNTIME_OFF;1 W- H* @) X c' D6 n" u" R
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;8 D; O' c& ~; J
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;5 D1 E& o( F7 C+ t
5 q0 Y( n5 ^+ M, ]
/* create a logger instance */
H% R0 [2 r8 f' Z% g8 j" B5 K, N2 Ivar LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');% k; H7 a' o9 {, K- b
var loggerBufP = new LoggerBuf.Params();
% N2 S8 {' m; d b- KloggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */8 S% K8 p W# `# V. \
loggerBufP.bufType = LoggerBuf.BufType_FIXED;
9 J/ B D4 K& p# y- [* A, `
* f/ U' {- y% n+ A6 zvar appLogger = LoggerBuf.create(loggerBufP);6 {4 _" X' [7 y) O' x
appLogger.instance.name = "AppLog_Core1";! T; a; r* X% C; o ]( z1 r7 F
Defaults.common$.logger = appLogger;8 K$ ]+ Q; [ e# _9 w
Memory.defaultHeapSize = 0x8192;
- K$ k4 b e2 K" g: d. ?" |Idle.idleFxns[0] = "&LEDStatus";0 M: D5 b: j7 j7 v0 _) L5 E
Cache.initSize.l2Size = Cache.L2Size_32K;
. S7 \ ]9 L$ j3 v' L3 I" ~* U' g. J+ {% r0 Y; \: C4 y3 K7 P. C
|
|