|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明& E2 ~5 o6 u$ }* y4 h
我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下. S$ c% O- `! E+ ^( e) R1 h9 C
(不过疑惑的是,为何单独DSP仿真就没有问题呢?)9 E& i/ | ]+ B' m& m7 f
0 ^. B$ T7 D9 A# ?; F是不是需要在DSP.CFG中进行配置
% v! s0 A! L: b* ]- Y我现在的配置为
4 V0 t( Q9 \2 ? }8 e' ?
D9 e0 d* J- Y/*
# E& P' _% K2 h! y * ======== Operating System Configuration ========6 {- h/ |: R1 K9 w6 m1 c
*/
2 j& J4 |/ U+ {# f3 R% U, k1 M2 {/ Z# ^! ~2 A; W
/* no rts heap */+ w0 Z1 y! p( v
Program.heap = 0;. m8 [/ h9 Z/ l' u# w; F
Program.argSize = 100; /* minimum size */
+ K Y3 C( Y/ N" BProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大
# \" r3 `# r$ B3 H$ W
h5 T# C% d) P: D/* create a default heap */
9 m% P4 G2 u( }* Uvar HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');* k9 q! W+ E6 [
var heapMemParams = new HeapMem.Params();
' Z4 h: h0 o7 l& `# L( I6 m+ @heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大( D1 B& t8 K8 G4 l! h$ o' E1 ?5 ^1 r
) o4 x- Q3 v" G# G* a) W6 L( S
var Memory = xdc.useModule('xdc.runtime.Memory');+ y2 r; ?5 ?+ v/ G5 ?; A
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);" V. r, B" C1 p$ l. r7 v8 y
8 _2 k6 L r2 O
/* configure System module */
S7 v3 R6 V& E0 ]var SysMin = xdc.useModule('xdc.runtime.SysMin');- b' Z9 _( Y3 o/ w& p' z( \
SysMin.bufSize = 0x1000;
0 U7 f% c7 \+ l, O6 I7 G3 d, BSysMin.flushAtExit = false;0 u( b( {1 G( _4 e7 Q, z( Y/ b
9 V- k$ {" ~$ k- ~7 ~: v4 ~
var System = xdc.useModule('xdc.runtime.System');; Y5 {( K1 N) k$ W
System.SupportProxy = SysMin;
b+ M' {' i" s$ D% Q. W. s8 x! T3 \
/* configure SysBios to use the lower half of Timer 1 */
* e" X7 ?8 f- }; n' n& Rvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');1 D9 e" z" ^1 Q
var Clock = xdc.useModule('ti.sysbios.knl.Clock');5 s1 W3 C! U- p
Timer.timerSettings[1].master = true;) |2 X+ t1 D K2 r. K
Timer.defaultHalf = Timer.Half_LOWER;
W% U @: T# A/ \8 YClock.timerId = 1;, E, G$ Z6 J j
4 g0 f* ~& V" [. T, }: y# _1 L% p. d! f2 x
/*
# u/ B+ @6 ]4 j: Q2 x/ [7 A& I2 } * ======== Miscellaneous Configuration ========
, p9 a9 e6 S- ?! u& w+ j! \ */: G8 o; F, v, p& S% o0 t1 M
9 M" V$ p- ?; U. l/* set default diags mask */
& _& ]2 p- W3 l* A2 C: q; hvar Diags = xdc.useModule('xdc.runtime.Diags');. U- L7 m% Y9 {' a* s! V
var Defaults = xdc.useModule('xdc.runtime.Defaults');
) u) R7 N0 Z0 o( d! T3 U' l4 \; |& k& v: ~
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
; S( f/ W! l. A; g* y$ PDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;7 U$ ]3 t9 L# m( o& Q+ f
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;
3 E3 l/ w9 T! b: oDefaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */3 t$ P" _* B, d6 m
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */" N# W7 `1 m7 T* z2 W. R8 {4 R7 o
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;* ~3 N3 z5 }" T/ E- _: Y
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;$ v% \( ^/ z2 E/ D
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
* M2 o$ r9 F/ J" y4 l R9 o5 f! gDefaults.common$.diags_USER3 = Diags.ALWAYS_OFF;1 h) H8 s$ b3 a, c X6 ^$ ~
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;' y Q7 j- j9 \; A& X) b
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;4 i# o& n) T9 o3 G6 Z
Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;+ j% }- C* \$ q: k! Q6 G6 J9 R
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;
2 ^! F; e5 i% E b4 M. u% dDefaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;' H2 u; S7 p4 ?
) N7 O+ z" j8 P* z3 R
/* override diags mask for selected modules */
W N% q5 I# M0 ?- h) Z& I# }2 Jxdc.useModule('xdc.runtime.Main');, T. F; p' q2 _
Diags.setMaskMeta(: m6 h3 j. i& ~; h( c
"xdc.runtime.Main",
6 J7 J) ^7 G1 U Diags.ENTRY | Diags.EXIT | Diags.INFO,
- }. w/ d; P9 G6 \ Diags.RUNTIME_ON
( m9 ~+ b' V# G6 Y# n5 f3 d" ]);
6 U2 n. _6 y5 N- q4 F' D
3 s$ ?6 U" z2 E) Y% uvar Registry = xdc.useModule('xdc.runtime.Registry');
& W1 c1 v. |) v, b( d- RRegistry.common$.diags_ENTRY = Diags.RUNTIME_OFF;# U* r5 z9 ?- K) `. E
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;/ c$ g: K& ?5 b( ~# R' s
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;$ D1 N! ]' _% M/ \' `9 @( `. v
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;* b6 e7 d" a; {8 x" m
0 s# y' n7 e d6 d# l1 R/* create a logger instance */
$ h1 {/ ? N3 L% Z8 r9 ^var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');9 }) G7 e% u5 |6 E% Q- `
var loggerBufP = new LoggerBuf.Params();7 g$ s u$ v# o( }% d1 R1 h
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */1 h) ?: y9 V0 D9 {
loggerBufP.bufType = LoggerBuf.BufType_FIXED;
; x' {+ s8 f6 C i( D& t/ }
6 D G$ R+ L% ~; w3 Ivar appLogger = LoggerBuf.create(loggerBufP);* s$ y+ `$ a9 h s. t/ S: @' ?
appLogger.instance.name = "AppLog_Core1";
& B! l8 | {' Q1 c8 M8 m: W: A, RDefaults.common$.logger = appLogger;7 m# O; O: P |# j6 @& Q
Memory.defaultHeapSize = 0x8192;
1 X. O8 ?, x$ p: YIdle.idleFxns[0] = "&LEDStatus";
3 p, _& h* v. d6 e, ]8 o' FCache.initSize.l2Size = Cache.L2Size_32K;% `0 P# P# `) U3 U. c: X
5 U3 u$ p! F1 }" e. |6 Q
|
|