|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明' ^; x2 p" \ ?9 s
我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
( X& ?* @! B! }9 `- x(不过疑惑的是,为何单独DSP仿真就没有问题呢?)+ h0 B9 v8 [/ _3 c6 d6 z
; U! a e: z" P是不是需要在DSP.CFG中进行配置4 M4 n% {2 z n4 W8 u4 v
我现在的配置为' ^: ^* d) o- d9 Z$ m8 t& {
0 b i( A! D" j+ R+ ~! r6 J& E/*
- a/ S* Z3 ?3 i' Q4 A * ======== Operating System Configuration ========
+ v& r$ i0 R9 n& M2 J */' [9 M2 E$ y8 d
7 Q% j7 [# d7 w3 O" @5 q( i9 I
/* no rts heap */ G# A$ S5 l" l) b/ T& X' n/ W
Program.heap = 0;/ H+ I- y- F4 m M
Program.argSize = 100; /* minimum size */( [$ Y; [( F! s# n, w& t
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大
) x( b5 n" |5 I+ |* I0 o* ?7 O
! t3 ~7 K/ Y8 \2 ~( o4 t/* create a default heap */
1 c0 B$ L2 r7 ^) H' a; Zvar HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');0 `' O$ Z+ F& D& [ X0 ?1 y
var heapMemParams = new HeapMem.Params();
( ~& H' R; X5 C8 @& S# W4 m9 v" KheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
$ t* s+ G# E3 s/ E9 l) J* E0 M. M" I! v
var Memory = xdc.useModule('xdc.runtime.Memory');
[, X& X4 i+ W4 p S/ VMemory.defaultHeapInstance = HeapMem.create(heapMemParams);
7 x6 [/ e, O/ G% \7 J8 ?* L6 N: |8 A5 {" J1 o
/* configure System module */( b# ~6 Z% j7 Z& y' L! g
var SysMin = xdc.useModule('xdc.runtime.SysMin');3 a1 _ J! p( t" }5 M: | \
SysMin.bufSize = 0x1000;
0 o9 E( m8 Q4 v3 [7 kSysMin.flushAtExit = false;
5 K7 U4 g9 s. ~8 h! |' ~+ @) q3 u! f0 K2 j F# p
var System = xdc.useModule('xdc.runtime.System'); u& w) X; ?) T/ c- n3 v
System.SupportProxy = SysMin;
$ R* G) @4 t( ^% h( T* M4 n3 \! ^+ m: _
/* configure SysBios to use the lower half of Timer 1 */
* g* p: P: V/ ~. F4 ?: nvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
6 l) c1 h$ R5 O e: {( t! Nvar Clock = xdc.useModule('ti.sysbios.knl.Clock');* ]1 e* x( f- L3 r" q! e
Timer.timerSettings[1].master = true;
8 W. ? @, H# J0 v5 dTimer.defaultHalf = Timer.Half_LOWER;
2 Q& w) w& L" `& YClock.timerId = 1;5 d% f- Z. D+ f- q1 T' q/ T
7 S3 Z- P7 k. e0 Q' p
. f) C Q) n4 E+ c* F
/*
2 P f5 L9 X' t3 E; o) R * ======== Miscellaneous Configuration ========
. n: T( G6 H8 A! T1 g" z2 ^ */2 W% _- Q- T4 A0 D0 q
# t; |" Q6 x8 i/* set default diags mask */
, p) g6 y# D6 J9 M- l6 p: |var Diags = xdc.useModule('xdc.runtime.Diags');* f f! }' V- T8 m2 U8 r4 v) Z
var Defaults = xdc.useModule('xdc.runtime.Defaults');
' O2 l0 n- x% H& ] u; k/ [9 W* E+ m d7 |
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;! @9 x7 u! }$ F. G$ B( w
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
. `" T& u7 y3 f! m+ B4 O% tDefaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;# Q7 t g7 U; I% M8 y! i
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
1 K7 @, P) |" C2 O/ _1 rDefaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
2 s2 J7 h& M7 j3 Z4 rDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;+ l! n% X' N! A: F# P$ F
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;/ y, X) t# {4 E# K z0 J$ j9 E
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
4 U6 L% ]+ L- Q! D! `Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
4 P; v8 w9 E. u8 v( C, Y z# oDefaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
+ e i Y; `0 { `8 pDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF;
1 ?5 d5 i) a; g) n. ?1 G5 B! dDefaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
5 [$ W# k4 ^" D0 l; m% `Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;+ F. Z, c1 k7 Y& v
Defaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;% q% ] g, V! N
4 O8 H1 H: }' H b* b
/* override diags mask for selected modules */. _5 N( T6 `! C9 A1 k
xdc.useModule('xdc.runtime.Main');1 { U3 H1 \2 p( Z
Diags.setMaskMeta(
3 d2 g- O8 Z9 [5 w2 p& y1 P "xdc.runtime.Main",
& Z' L$ y3 q- D! r6 \! B Diags.ENTRY | Diags.EXIT | Diags.INFO,
& s- \/ D0 l/ f% V9 n7 i Diags.RUNTIME_ON2 p* D/ s( @: P
);7 g* F, g+ U% @/ |/ ~
1 y# Y2 a* O3 {" f: z8 @) c
var Registry = xdc.useModule('xdc.runtime.Registry');9 O, J( I" z: Y; V- {
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
8 v; M- }+ B$ bRegistry.common$.diags_EXIT = Diags.RUNTIME_OFF;9 J/ T- y9 }0 t9 y9 J5 k) d/ M
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;
; d, i4 A/ `% v. E$ x( WRegistry.common$.diags_USER1 = Diags.RUNTIME_OFF;
6 O. h7 D( K* e. `8 b$ Q" j, R. |1 e! F8 E6 s# m
/* create a logger instance */
$ G# X5 m8 d7 Yvar LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');$ J- o1 L! O" P8 l
var loggerBufP = new LoggerBuf.Params();
& {7 {5 p. {9 v/ w B1 L3 SloggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
' I G: C% z! d/ jloggerBufP.bufType = LoggerBuf.BufType_FIXED;
$ Y( _# Q* D* P6 H0 U* T
" Y! L3 i2 C2 j$ V4 Evar appLogger = LoggerBuf.create(loggerBufP);
' |& d( `% F: P3 }4 A4 fappLogger.instance.name = "AppLog_Core1";* `/ {* Y }( m7 C
Defaults.common$.logger = appLogger;' m5 @) ~6 ~) b" |& ^5 _
Memory.defaultHeapSize = 0x8192; 6 U" Y, `5 Y$ ~% p: k) g
Idle.idleFxns[0] = "&LEDStatus";
7 h' t0 o) d* U, j7 H9 L, FCache.initSize.l2Size = Cache.L2Size_32K;$ H7 D# H5 N4 Y
3 D3 a( e5 l5 S6 B9 `! e! D% X3 s
|
|