|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
j' x4 Z% |+ }) e3 F$ V" i, Y4 u" v我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
" Z |2 t' C+ u O(不过疑惑的是,为何单独DSP仿真就没有问题呢?)# t- I/ f# d% I9 i
* a4 ?- c6 m. [/ A是不是需要在DSP.CFG中进行配置; m2 e1 l. H" x9 S) m
我现在的配置为( ]; y6 F2 D& j+ d
% a# }( s9 E% \0 S
/*
. R# ~7 V `0 H: u- j * ======== Operating System Configuration ========
$ } ]$ m' t& I, X/ i! E- b */( D0 }' D" W7 k
: D5 u8 E5 k) }4 \7 {7 ^5 b: P/* no rts heap */
& y' e( r* S$ r1 vProgram.heap = 0;
: F/ r4 c0 [( r, b9 @- l$ \; o' [" @Program.argSize = 100; /* minimum size */! D6 y5 V! } O% t, x- F
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大
" V- [4 b. H9 `5 H; m
$ n9 z: Q2 j7 ~/* create a default heap */ ]( X7 G. c W/ o* Q: v/ J
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');4 P6 y" U6 h$ D+ n5 v2 }) B" R: e
var heapMemParams = new HeapMem.Params();
3 P8 _ ~1 j/ t+ ^& l0 OheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大1 s. ]3 d7 m" z
3 S; a" ~ i: [. {' ]/ C" C w9 hvar Memory = xdc.useModule('xdc.runtime.Memory');
! e5 {8 P( u9 B gMemory.defaultHeapInstance = HeapMem.create(heapMemParams);
: {% x$ T) x( |' P
' M5 _' E$ ]& u' l/* configure System module */8 y3 l. `; z: M$ }6 J
var SysMin = xdc.useModule('xdc.runtime.SysMin');
/ r) C5 D' \2 a5 |0 zSysMin.bufSize = 0x1000;
9 X" L( Z( _! f. \$ e3 dSysMin.flushAtExit = false;+ v! C$ y4 \7 i8 v
7 A& d$ f# y c4 V1 O& a. Avar System = xdc.useModule('xdc.runtime.System');4 H: r h! Z; B
System.SupportProxy = SysMin; L$ z9 g5 u2 @ G
7 B% c4 k* v: D' ~+ L# S" r
/* configure SysBios to use the lower half of Timer 1 */+ K' K) `4 Y/ g; c
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
) s* n2 K+ j! r0 @# B7 A# m2 ovar Clock = xdc.useModule('ti.sysbios.knl.Clock');
: D3 }. O/ L, |- S9 ?Timer.timerSettings[1].master = true;' I# b- x7 ` [; a% }# @
Timer.defaultHalf = Timer.Half_LOWER;
3 D5 X5 m3 G; H# P$ ]# xClock.timerId = 1;
6 o8 m3 a; [0 Q- w" P$ P0 w1 _4 W+ F8 F
" B: _( a: @, ?7 u. `/*
: o5 w7 I" g0 a6 [- f7 G * ======== Miscellaneous Configuration ========
& q$ c3 I+ _4 u */
% |6 {( K5 y7 X( Y. ~9 G m
+ S* W: u2 Q' `4 O6 X( S/* set default diags mask */' H5 j3 F+ Y8 q" W. n3 p1 B
var Diags = xdc.useModule('xdc.runtime.Diags');
0 o% A2 O- z3 ?- k8 ^3 T- E. ^var Defaults = xdc.useModule('xdc.runtime.Defaults');
) c1 |, o4 [0 M3 W, j2 H$ ^* }& f; w! T9 _& g
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
J R5 A8 @# q' j' @$ Q% EDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;2 n$ y6 W5 e4 b* ?5 F
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;: i3 n* c# K- [: O! o9 e& ^- O
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */6 P. K4 n8 h7 a' g9 j
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */" O# r- B, [: J7 R. R
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;& s; J4 @) ~+ K @0 I
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;
4 O9 N: Q$ D3 k! c% |Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
" Y2 K" j- I1 ~5 ODefaults.common$.diags_USER3 = Diags.ALWAYS_OFF;2 ?, x" Z5 ?6 D1 j b# U' h
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF; ^* V6 @' v! |: H: K& `
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
" o3 N& B3 V% z9 X' Z$ BDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;3 P$ f1 T) l* s, D: @
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;
+ e0 U9 e @4 S$ P+ fDefaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
. u5 u+ C: q$ p$ |& e9 y6 H; ~
1 N6 p; j; W; @( A1 U( Y& z/* override diags mask for selected modules */( u" g% O# o) [: J' O
xdc.useModule('xdc.runtime.Main');) A9 l( z' E) k5 o+ i8 @
Diags.setMaskMeta(
% ]6 G4 f6 Q5 o; Z! B3 B7 ? "xdc.runtime.Main",$ p% i- w0 u. I- y7 _3 y5 h6 n
Diags.ENTRY | Diags.EXIT | Diags.INFO,
% A% {: G7 \ z Diags.RUNTIME_ON) H% c' e' y! q0 k# U* D _3 Z0 X( r8 b
);9 A" V& P# |$ U, p" l
& }" {1 R/ q, ?) Y0 \4 cvar Registry = xdc.useModule('xdc.runtime.Registry');
7 j3 M3 f' I' r5 t; _' tRegistry.common$.diags_ENTRY = Diags.RUNTIME_OFF;+ I7 V! R1 b8 q7 w) E. K3 @
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;! Z. I3 z9 e9 Q: g5 K
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;
% b' D' I% W" V' g0 BRegistry.common$.diags_USER1 = Diags.RUNTIME_OFF;
' m7 I" N+ u& a' L/ C4 L* o; _! j; F1 A) s
/* create a logger instance */! M# G5 |. f8 `; l+ \) ^5 ?: D
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');: B+ @0 G- }- L. j) j( o
var loggerBufP = new LoggerBuf.Params();
3 l% d. l2 [0 U2 H& B4 BloggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */- S- {7 u& }1 d$ N4 W! f
loggerBufP.bufType = LoggerBuf.BufType_FIXED;
+ \' h3 b) N8 V# {3 n, S u- z7 N" Y1 l3 J3 ]
var appLogger = LoggerBuf.create(loggerBufP);
6 {6 }: `1 b& `9 K1 kappLogger.instance.name = "AppLog_Core1";
+ }6 u, I1 Q6 UDefaults.common$.logger = appLogger;# S; c# e# [/ A2 ]9 i/ p
Memory.defaultHeapSize = 0x8192;
4 v. q& Y1 x( I/ \8 u" AIdle.idleFxns[0] = "&LEDStatus";4 y* j& P5 R; Y0 m7 e; l* u u
Cache.initSize.l2Size = Cache.L2Size_32K;8 T$ A' F% u' i1 z/ W- G% a @
* b$ n6 m6 I& Y) D |
|