|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
6 P, V1 g$ m0 y4 N' \ {3 |我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下
0 A; U2 a; S( P6 r/ R: O, T; J0 |(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
) V z1 G' T) Q" r& H4 q! ^( B! c7 w% T. S4 W( L7 G5 p
是不是需要在DSP.CFG中进行配置2 s0 ?1 X, l/ W9 w- {( U
我现在的配置为6 J: u' X9 ?* Y0 \
: ^' d% p$ w) i. r5 f/*
# }( ]! w: j2 B5 l * ======== Operating System Configuration ========
: |$ V( i9 \* f; ~* L: J5 E */
& {$ x* e) E6 Y% i* [6 |0 n
# r/ c. ]- M" X: U. l% t- a/* no rts heap */
6 f: Z% e8 F# J- y1 \Program.heap = 0;: {! B& ^( E: |% {" T1 @
Program.argSize = 100; /* minimum size */
& H6 J1 o, X1 _Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大
; f& p/ d; p$ v% R' W
# J" _" ~4 g4 S0 x& l. e8 O( |/* create a default heap */1 ]: U5 m8 ]1 y, b( E! j) c# F
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
4 Z' ^- o3 [7 n4 ], ^var heapMemParams = new HeapMem.Params();: I& V J$ u- X
heapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大" T9 z( N9 @! e9 O7 ]
4 H, f4 d V- g z) cvar Memory = xdc.useModule('xdc.runtime.Memory');
( h7 T; X4 t+ |: I! O7 L* eMemory.defaultHeapInstance = HeapMem.create(heapMemParams);% V5 n7 x( i# u6 t
9 E; d8 Z# }! Z A3 g% o3 u/ y) s
/* configure System module */8 U. z v) [4 M; ^6 a
var SysMin = xdc.useModule('xdc.runtime.SysMin');
]. Z( B# y/ } _0 ?5 j8 TSysMin.bufSize = 0x1000;" K# A) r4 r$ U# J# v
SysMin.flushAtExit = false;+ Z0 {1 Y- I! o o% U0 V9 x4 Z
. d# Q. x7 Y8 A# d5 k- f3 Hvar System = xdc.useModule('xdc.runtime.System');8 p" O$ b! ^4 W6 K
System.SupportProxy = SysMin;6 ?: H3 G$ p$ q" h
- J6 T+ E$ |4 D) L& H
/* configure SysBios to use the lower half of Timer 1 */" g5 l' F) D9 ~( K
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');9 d# N' p( [0 t2 W
var Clock = xdc.useModule('ti.sysbios.knl.Clock');
/ y3 ?) B( N& k! _1 uTimer.timerSettings[1].master = true;' s/ D% T7 g/ P
Timer.defaultHalf = Timer.Half_LOWER;: K/ s7 b/ O+ N! F% X) q& b3 B" L* Z
Clock.timerId = 1;! r0 J( \7 _9 ~" a2 X/ F
/ o2 x7 [' O/ J* ?1 d* T
: c* |7 Z) D4 t8 B! ?& T/*
1 w0 r1 c& l- C- y i0 w& B * ======== Miscellaneous Configuration ========
# N' W3 X v" n& ^# O; {7 E- w */- G' _6 ^0 V5 x/ @# e0 v) x. Q9 ~4 ]
2 D( P7 j% j6 z
/* set default diags mask */8 j& i+ h3 \4 t/ z& D) p5 a
var Diags = xdc.useModule('xdc.runtime.Diags');: M6 {# e! Q2 H7 Y
var Defaults = xdc.useModule('xdc.runtime.Defaults');3 d) g' x. F+ {0 l# ?- i% ^5 M
6 X" G7 @4 X M% x
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;% L' \; G" ^; X' @* Q# Z, V" U& j" V
Defaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
3 I0 i! Y; ?+ b8 k% p1 F0 F# y5 YDefaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;1 x x; W3 R& r9 b. v& F
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */
8 U% I% }) u2 I, ~4 s2 qDefaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
: n- R# c4 t; A+ V0 T+ oDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;
7 T8 ]5 Y$ \' J4 v" v% i) I6 S7 `Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;5 q5 b% v% W0 d5 F* r8 B
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;) j" z2 H. y/ [& `# q
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
# P. [; |9 y# K$ O8 qDefaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
- A4 S4 u' t0 o' aDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF;, @5 V* @- r; Q: V/ M
Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
8 M7 W7 i5 L# b" m2 m# hDefaults.common$.diags_INFO = Diags.ALWAYS_OFF;
) @7 Q2 L8 _6 [8 y RDefaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
; l" h. K" _( }0 g7 S, |. i7 s- g) z/ n" G R% m1 q6 c' y
/* override diags mask for selected modules */& X* y$ {; ^1 @2 {# k
xdc.useModule('xdc.runtime.Main');& x, y P: k! @5 s# k: ^4 o
Diags.setMaskMeta(( ?# l: ]+ i3 \
"xdc.runtime.Main",
$ W* n$ h2 T3 l8 H% K Diags.ENTRY | Diags.EXIT | Diags.INFO,
1 N- U2 ~9 A, ^0 l: {' f Diags.RUNTIME_ON* h3 D, X: d- a. T3 k1 M6 B: [+ ~
);
# N& {3 u* ~! r% J7 |+ I( l4 I6 C7 w0 Q
var Registry = xdc.useModule('xdc.runtime.Registry');" S7 N+ @; g N: F# E, S/ y9 G) U
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;' f. L3 j* B, ^1 [0 f# s7 X% T1 g& R
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;
* }* j; N# B4 k2 @3 }: `Registry.common$.diags_INFO = Diags.RUNTIME_OFF;
' m4 s/ ?& d' R, G s8 w( ]' fRegistry.common$.diags_USER1 = Diags.RUNTIME_OFF;
i0 d3 q7 U+ _$ f0 [
- Y! U0 \! L. o) A3 p/ O" b9 L- ]/* create a logger instance */
9 E/ C' P/ G% Y$ D6 {var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
% c' Q; A; O1 F- O' B7 d dvar loggerBufP = new LoggerBuf.Params();
1 C8 k I; K4 @/ o" {- \loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
; E+ w! Z+ _/ T% E$ g; |( MloggerBufP.bufType = LoggerBuf.BufType_FIXED;4 [7 g3 H4 I. [& ]
- H! y9 u7 \- @4 \
var appLogger = LoggerBuf.create(loggerBufP);
; l/ C4 l" M) E7 i- gappLogger.instance.name = "AppLog_Core1";
$ S9 W7 p+ a j* Y; G1 CDefaults.common$.logger = appLogger;0 I% E4 U( r0 Z( m/ T" t
Memory.defaultHeapSize = 0x8192; 6 o6 ^: \6 w7 i% K
Idle.idleFxns[0] = "&LEDStatus";2 k. F$ V* _$ ~3 \1 s$ I6 n
Cache.initSize.l2Size = Cache.L2Size_32K;+ h. g2 O+ M B
2 m1 y+ q8 R6 N5 }
|
|