|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
|8 t/ Q" J5 }7 r+ j6 w" a我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
8 Y6 C7 N6 L- G5 V- {0 G(不过疑惑的是,为何单独DSP仿真就没有问题呢?)1 Q( Q( U# F, q* Z c' z! S
5 Z& M" V0 ~$ b是不是需要在DSP.CFG中进行配置6 i1 D, ]7 o" q4 K, n9 J) ^( T
我现在的配置为8 K! g. p6 V6 }0 @) l# L( A# v
2 S: l* _5 |/ f) H/*. T" v, o+ V5 b, H5 k( ?' G
* ======== Operating System Configuration ========
! y& W' ]5 H! s */8 N3 J& C6 d* T1 I
/ K8 Y7 K' l3 u$ z2 _( W; {. E0 X/* no rts heap */
2 g4 w, ~4 \+ z# J4 SProgram.heap = 0;5 e; R: k$ [; X( l( v
Program.argSize = 100; /* minimum size */0 }" v x6 f; C% P( B2 ]
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大
" j" Q0 K8 y6 l# G) L% D! O, a* E6 t4 L3 g8 P; D: G K, U8 O
/* create a default heap */
4 Z: j! [5 W9 v* |* n. [var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
$ M' [9 w$ l N% t+ L2 Zvar heapMemParams = new HeapMem.Params();
9 ^ n ]* b ^; n! UheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
+ U& d# B N. d* J4 N6 X0 E: V+ C: V
var Memory = xdc.useModule('xdc.runtime.Memory');% o! ?3 _; B5 L; p# k9 I% M, R
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);
% V. _8 K# g) t& y
" ]& z) G3 x% U. r/* configure System module */3 N1 D* ]) A" b! m$ y/ c
var SysMin = xdc.useModule('xdc.runtime.SysMin');
8 v6 \3 f0 _7 ^/ D! e' e% R) PSysMin.bufSize = 0x1000;$ d- U; G% }# ~8 F
SysMin.flushAtExit = false;. I3 @7 _, D6 Y
+ Y( f; O* M& ovar System = xdc.useModule('xdc.runtime.System');
3 T" k/ E6 y: N% `System.SupportProxy = SysMin;
2 M3 U1 ?6 ~) D- T6 a5 L( W: N" e. f( S
/* configure SysBios to use the lower half of Timer 1 */3 B! i) P% Z T0 x4 f' h. e
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');6 ?- }" l) T' s8 m" `8 K
var Clock = xdc.useModule('ti.sysbios.knl.Clock');; l! q$ r1 B o: d" g, T
Timer.timerSettings[1].master = true;
0 X) e) P, h) t, ?. RTimer.defaultHalf = Timer.Half_LOWER;
- N: O/ W7 t1 B* DClock.timerId = 1;8 v4 Z$ S' B: j; G' _7 t6 N+ Y/ e
1 ~3 b2 d1 d3 g1 S$ v3 B6 E% e
/ |) r9 A& N5 K7 f a/*+ {+ u8 q; h( \# |* i! \
* ======== Miscellaneous Configuration ========1 f- ^- J$ ]& f9 U6 o6 I' Q* e% t
*/
; [0 O! s' i3 H
2 w+ a* ^8 C) {" F2 z/* set default diags mask */
( d- V) {8 Y4 B p0 }- S, bvar Diags = xdc.useModule('xdc.runtime.Diags');+ K) X& A, P2 v
var Defaults = xdc.useModule('xdc.runtime.Defaults');! _; `) p; i/ Q
* e* ^0 B, \5 V3 ~" A3 ~. i J( |Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;+ D U. j5 ]2 @. J& L8 W# D4 A. f
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
6 I# Z9 m% i3 c9 n/ W5 U3 cDefaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;
" [ n4 I5 q F' `' ~1 j' L4 JDefaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */- ^ x9 W9 A S$ z( d
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */6 N; h* j$ x4 Z$ N0 q, P9 K
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;+ k/ K9 y9 B# J3 v0 \ o7 t5 G
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
! `- y" E$ ^; UDefaults.common$.diags_USER2 = Diags.ALWAYS_OFF;5 R2 F( U- p; w* Q; c7 u- P
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
8 u F1 F( w. u9 C. ~. C# w) yDefaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
8 f8 @- v( x- P nDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
V: f, F* x5 o! uDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;9 t* G$ O$ H( S$ B9 N
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;
2 {, e9 X6 c9 s. A, G+ wDefaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF; A4 h/ a) d# ^- v: g' b& z
) E$ T6 o* G3 {. O4 G/* override diags mask for selected modules */
- J1 y, l: \) k/ f% L, \ e% _xdc.useModule('xdc.runtime.Main');$ O: h& G2 X1 ]
Diags.setMaskMeta(( y) l5 K+ m' Y% Y0 ~
"xdc.runtime.Main",' w; n" ^0 ~" h$ j
Diags.ENTRY | Diags.EXIT | Diags.INFO,
0 e0 w+ k# q6 }! W2 _ Diags.RUNTIME_ON" j, B n7 J! V
);
6 n; d( v! p' p1 a0 C; F4 G' ?9 G& z& F9 q; f5 {( b4 h
var Registry = xdc.useModule('xdc.runtime.Registry');' m" ~( h$ [$ B" M: x
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;0 t7 F& M! g+ H4 w# r2 Y1 T% j
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;3 p* f$ P' M+ c$ H# P! ?% ~: P' S
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;
6 S5 R& P. ^' l; YRegistry.common$.diags_USER1 = Diags.RUNTIME_OFF;, r1 g. h, y5 g5 T
0 l$ r2 x9 C3 T8 P/ k) J& e% P! ^! P! ]
/* create a logger instance */8 Y$ F8 @2 F. K% Y: z
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
) V$ A6 r7 r) g/ {/ X# Q& ?var loggerBufP = new LoggerBuf.Params();) V3 C7 V/ m! X. b8 D2 f! K! m
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
0 s5 x8 y7 M8 N3 J4 g. c% nloggerBufP.bufType = LoggerBuf.BufType_FIXED;6 z0 I8 H- Z- N+ U% r. b
2 l) h3 f: T1 a
var appLogger = LoggerBuf.create(loggerBufP);
- M" a \# Y6 A" cappLogger.instance.name = "AppLog_Core1";
3 S g( ^$ P7 r/ J+ s: }Defaults.common$.logger = appLogger;+ x" s( I# n- {5 ]# E# t9 ]3 w
Memory.defaultHeapSize = 0x8192;
+ i* i" I% P/ NIdle.idleFxns[0] = "&LEDStatus";
4 G Q3 h% u" d3 @8 g" \Cache.initSize.l2Size = Cache.L2Size_32K;
0 A+ ]2 U6 T& Y
# w5 L) s5 }/ ~* r+ U, }7 y. q |
|