|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
: D$ {6 x: b4 U' a- k/ j: l4 W我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
5 U3 q6 h# U2 L2 S. |5 |(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
. n- S7 k U N1 w* g8 q$ Y- |& i. g& ?- m3 X9 ~5 f
是不是需要在DSP.CFG中进行配置
4 Y" n! `1 Z" l7 O9 k我现在的配置为2 U | ~! t" ]6 F& d
1 I# v& Q+ `4 F: ]; W9 o
/*" D# d+ ~( k9 z3 @' @6 l% L( m* L
* ======== Operating System Configuration ========3 q) W/ e, k0 v+ y2 y$ R# X
*/
& y; F1 ^6 c# ^' E) {
7 A% g2 S$ _/ U5 J9 E7 p/* no rts heap */- [. V6 n1 p- v, O% {: Y
Program.heap = 0;
3 b2 {) Q3 f& U4 I+ T7 CProgram.argSize = 100; /* minimum size */
! p4 Y6 M8 N7 I' CProgram.stack = 0xF000; //此处修改后的值。不太懂,所以改大! { `( L' S% S
1 Y5 w' s: M: B! d% D4 B/* create a default heap */( W* F1 x: @) T z
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');) |" L8 V1 A& s0 e
var heapMemParams = new HeapMem.Params();
, x _) ~7 E4 _. sheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大* p2 ]" m4 a9 g9 r
^! e/ \1 R% c2 |9 m
var Memory = xdc.useModule('xdc.runtime.Memory');
9 Z- @ T3 r+ H% |( ^7 SMemory.defaultHeapInstance = HeapMem.create(heapMemParams);
# Y U/ @+ o \& ^7 G1 W2 b9 Y: C% z1 Z3 E2 j
/* configure System module */' b8 ?! P* c2 w1 Z5 h
var SysMin = xdc.useModule('xdc.runtime.SysMin');
3 D; R. k3 r7 A" Q H, ~SysMin.bufSize = 0x1000;# b2 s9 U4 q( T
SysMin.flushAtExit = false;3 `; X- h# W# Y+ p. l0 U
9 W4 z8 {0 P# y( t8 d* d+ t9 Kvar System = xdc.useModule('xdc.runtime.System');
( K( l c Y9 v& D, {6 i* oSystem.SupportProxy = SysMin;! W+ ^0 u% G/ _4 k6 `6 Z9 N
0 d/ p7 u6 I E8 Q6 `
/* configure SysBios to use the lower half of Timer 1 */; |% t1 m# N+ h1 Z
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');# d2 J, ]1 v; X" { U/ |
var Clock = xdc.useModule('ti.sysbios.knl.Clock');- [8 o' l. e" c3 d. N! J
Timer.timerSettings[1].master = true;
* C2 L7 f: o6 |- {' B+ a+ vTimer.defaultHalf = Timer.Half_LOWER;. F+ _$ E" O+ C0 S x% R
Clock.timerId = 1;
L3 ^2 ~3 K/ g+ |/ a7 C g
x n* h- C) I- x4 C( `3 o
" S% d1 n% L' V! L* V* l; {$ s/ E/ J+ A) {/*
- x( g- j/ P" \1 o, @9 o: U * ======== Miscellaneous Configuration ========( n3 _6 k: ^/ ?' H/ R
*/
; z1 j& t) j4 c6 h1 O: I3 `
, `% }$ s# O# h, R8 f' J0 R+ C/* set default diags mask */) B% i' V( J8 B
var Diags = xdc.useModule('xdc.runtime.Diags');
& T0 h" ^& x7 h, {1 w* o$ ovar Defaults = xdc.useModule('xdc.runtime.Defaults');
, W+ Z$ M: y; m& q! I7 X, ?6 `, S6 M% f# ~0 T- Y1 }, [1 N
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;, t/ D* F8 f6 }, ]4 _
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;* B) i" a) e9 X$ E* [; f
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;
7 u- Q8 Z& G: m: L, _Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
4 @" u5 u2 [$ pDefaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
7 o. s$ A& B( u$ N [7 N2 LDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;7 k( d% @7 ~& o4 t: ?8 v
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;& T5 K8 t* Y& m
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
# e$ u4 s4 y& f5 I, ~# ~7 [Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
: @0 z, u+ m8 E! r2 B/ v4 U) iDefaults.common$.diags_USER4 = Diags.ALWAYS_OFF;; `3 k4 |/ D- C
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
0 z: P. o Y/ [; kDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;, ^% ?4 q4 u. B& ~! Z, Z; ?
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;
3 d4 P2 i* \ _) f; r( hDefaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
3 C+ S, ?* d3 A9 M3 ]6 s
j3 G& o; \9 O/ m/* override diags mask for selected modules */
3 [( ]: x9 S/ \1 N# Q: Dxdc.useModule('xdc.runtime.Main');
" _1 w( P) U( l+ b/ NDiags.setMaskMeta(
0 I7 A. m' v9 { "xdc.runtime.Main",
1 k0 X) O% b" l0 @ Diags.ENTRY | Diags.EXIT | Diags.INFO,
+ U" E* L, G! s Diags.RUNTIME_ON
) p- S0 z* q7 S); ^2 K: P K8 G" c% z. c
/ y! v. ]# s" ^& E5 avar Registry = xdc.useModule('xdc.runtime.Registry');1 ?4 R* G) @* E
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
$ B) Z# W- a8 `7 d8 wRegistry.common$.diags_EXIT = Diags.RUNTIME_OFF;0 V* \9 U0 |) [" w7 R4 I3 o5 l' |
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;
6 |0 {! K# ]# F7 o N/ hRegistry.common$.diags_USER1 = Diags.RUNTIME_OFF;
4 }3 w5 x" o1 ]( x0 W: q' y F! L+ R# ~9 D7 x
/* create a logger instance */
8 U! ?7 Q1 P$ i# x5 nvar LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');9 X; B U* t7 b( M. y
var loggerBufP = new LoggerBuf.Params();9 k- p. k$ u% w7 f* i
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */1 D: k5 r$ d6 W
loggerBufP.bufType = LoggerBuf.BufType_FIXED;* }' r. j+ d, W8 h+ V, p/ T
" @3 M" ?) r* n2 svar appLogger = LoggerBuf.create(loggerBufP);1 ?, [! ]& i: Q/ [9 s( q! s
appLogger.instance.name = "AppLog_Core1";* R: P3 A, d' t4 f
Defaults.common$.logger = appLogger;
3 U m `( c; | G1 \Memory.defaultHeapSize = 0x8192; % \4 v" U) b5 F) o. g
Idle.idleFxns[0] = "&LEDStatus";+ q3 b' R* Z3 r8 a
Cache.initSize.l2Size = Cache.L2Size_32K;
: b# V/ K8 L, U& |1 r% q. z. c/ J$ I0 U% u4 M; r! H
|
|