|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明, A- I$ q( f5 Z+ {. ~; O
我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
$ \" J, m) W$ E: z(不过疑惑的是,为何单独DSP仿真就没有问题呢?), K# t1 D! I: ~
+ ?* z; w* n6 l" {+ a- W' }
是不是需要在DSP.CFG中进行配置' I. E' u! Z* M$ N4 h
我现在的配置为% [6 N; [; F& E& a
4 ^: H5 m* M+ @- j/*
3 k; G f9 T2 ]' g * ======== Operating System Configuration ========; ~2 T7 O$ Y9 K9 p4 U# T
*/
0 h( R& w) G/ g* w2 p6 {4 D0 Q0 j) B' N' [
/* no rts heap */
+ V& y4 f- N. x5 s, \3 e0 m0 _Program.heap = 0;( k+ ?) M- _: w+ Y
Program.argSize = 100; /* minimum size */
; H5 z0 D/ F: E$ l3 _Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大
! k; N8 _$ r) I! m* v0 X- h( V! B8 G0 H% N
/* create a default heap */: A: \0 ^+ U' s8 q- t* r% S# k
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
1 s, J6 h Z8 Y* U$ kvar heapMemParams = new HeapMem.Params();+ S: r+ r' O) w0 r
heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大# z5 H2 U& [) `3 X) U4 C; _- n
& x; L! F0 T3 A' B- g
var Memory = xdc.useModule('xdc.runtime.Memory');3 R4 I N1 _7 z% B4 O+ u8 T" ] L c; v
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);* H% @- N5 T0 _; r% B5 R9 {
2 g" _4 ?; S! @; N7 p/* configure System module */
. S' r7 H# K, q. O1 Jvar SysMin = xdc.useModule('xdc.runtime.SysMin');; C( s/ p& F- i) @7 o
SysMin.bufSize = 0x1000;
0 I2 a8 p+ a( a5 d: jSysMin.flushAtExit = false;. w3 j O+ D- A" n( r: @5 [- \8 B
! r k- i- u4 K0 Kvar System = xdc.useModule('xdc.runtime.System');. ]2 \2 u5 _. y. W+ D1 @* v
System.SupportProxy = SysMin;
, D- x* @% ?8 G# G0 t' j6 Z1 {; W8 K
/* configure SysBios to use the lower half of Timer 1 */
% y" P* T9 T& w4 @ E! j; ^var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
' O& ?6 D4 j" D( ~1 Avar Clock = xdc.useModule('ti.sysbios.knl.Clock'); s( ~0 c1 k) b1 p* h# g0 m
Timer.timerSettings[1].master = true;
5 Q' |/ Z4 C- {# c1 H: @Timer.defaultHalf = Timer.Half_LOWER;3 I: \ Z: A9 ]! h$ @
Clock.timerId = 1;
) j0 x4 L2 q5 n2 {2 [: N$ x" A
, g0 M% z" x" k) t5 f; [
5 y9 ~! c. C2 i" s. e8 a/*. o; c4 T2 ~0 i) g) l1 B R, B8 O
* ======== Miscellaneous Configuration ========
0 l5 z7 S3 y! ^) a7 c */
8 X+ W; X$ T3 g: y1 ~" ~& _' B; o( u1 }+ S& y3 K9 J
/* set default diags mask */, t6 ~2 E$ x) g. z Y9 A. F
var Diags = xdc.useModule('xdc.runtime.Diags');
/ q' U5 L7 ^) f' M: Hvar Defaults = xdc.useModule('xdc.runtime.Defaults');
3 A9 ^5 a2 K7 L8 H+ j" v" {; Y8 e8 ?- x3 V, f# n. M: T
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;" S8 j( l- H* s( m7 u% a* O
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;; V3 w7 P* C) d3 n/ r( A, ]
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;
8 k1 ?/ @, w. {. T( FDefaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */) z9 P- Q/ ?! G3 _& a, { h+ u4 L
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
$ K1 a0 c8 i, [8 H3 b% R! nDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;* D0 q7 f7 e4 N/ y
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;) t' v) ]' H6 Q
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;3 r4 b& l6 s% ~( j' y, w
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
8 m3 l9 k x# P, a' p0 E$ t$ uDefaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
8 H& c8 E6 r1 v; V' I' zDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF;# z" j) @5 ?3 T/ g
Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;6 F0 Y( Q) I) _2 P. u2 J/ ]9 u
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;
) C! ?2 ^& X/ FDefaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
( d, z7 ]; |+ E( Q- J
" k, g# H8 g% R: @. }' D4 b+ C/* override diags mask for selected modules */
( p L; P' y% zxdc.useModule('xdc.runtime.Main');
6 I4 s. `$ p# @$ D" gDiags.setMaskMeta(0 P4 o+ b3 P: u% [, D) W
"xdc.runtime.Main",
; B& t ?( K) J, O1 l% X/ {+ q, Y Diags.ENTRY | Diags.EXIT | Diags.INFO,& _! E A# E$ Q, U3 [7 [" G
Diags.RUNTIME_ON" ?. x1 z& W3 S( N3 F
); T8 C' v& J. o* Q1 T
2 P7 ?! {9 C0 ?+ u, D8 D
var Registry = xdc.useModule('xdc.runtime.Registry');
5 U7 n- F# [, i2 F, _: ^Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
% n z3 j0 ?; uRegistry.common$.diags_EXIT = Diags.RUNTIME_OFF;
7 K; L5 N+ o7 W0 \Registry.common$.diags_INFO = Diags.RUNTIME_OFF;9 j/ e' [- N0 ^) M$ o
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;
" x* y& B# S+ o7 @% H# K
9 {/ ~6 f: S, o3 L/* create a logger instance */' `) E8 E1 X9 u; ^4 b5 _- s
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
" h" ]4 T6 v, l; b) y: xvar loggerBufP = new LoggerBuf.Params();# ^0 E8 S% o6 m+ e# w2 O3 W
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */- a- r' O5 u- D( b! k( q* S H
loggerBufP.bufType = LoggerBuf.BufType_FIXED;
& w3 O+ q8 k% m, ]7 ^
3 _( c/ e6 J, {' B" L% c `" u4 Jvar appLogger = LoggerBuf.create(loggerBufP);
@% V' L7 u. O P& T! K5 N9 FappLogger.instance.name = "AppLog_Core1";
: i: @ c$ i. LDefaults.common$.logger = appLogger;
1 r& G1 m+ H0 x+ Q3 h$ m& iMemory.defaultHeapSize = 0x8192; # |: H: T# e# s+ j
Idle.idleFxns[0] = "&LEDStatus";2 x! _6 Y6 _ I
Cache.initSize.l2Size = Cache.L2Size_32K;
+ j2 D: V) B% e3 s0 e) a" ^' O& e1 \, J1 a1 c8 z5 |
|
|