|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明
7 h' h5 ^" i; N& R: E; ?我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下5 ~1 c1 R) @# f4 x8 `
(不过疑惑的是,为何单独DSP仿真就没有问题呢?)
- H1 w1 {# z' o$ v l) U; c* O3 T3 F; k
是不是需要在DSP.CFG中进行配置
0 l6 Q6 m# ~ k" \我现在的配置为
/ K8 B2 s7 @# L' K
$ ]. }: ?" ^' j, X0 W/*
! P: m z a( N" l( g * ======== Operating System Configuration ========
1 {. m. T2 w6 E9 b */
E5 v9 d6 |. R6 @* \3 J. p) u) y2 u# H( U3 k1 T
/* no rts heap */& {; b/ [9 E* h- L: y7 L; D
Program.heap = 0;
: W, @! u1 M0 N3 W0 qProgram.argSize = 100; /* minimum size */2 p4 X7 M, _$ x
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大
% N! S1 I, V O7 P7 O. h7 x4 Y t; G3 R) F, Z* Q
/* create a default heap */$ B* l5 c4 v6 L
var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');; V7 _9 K; h( V% V6 ~) z6 b
var heapMemParams = new HeapMem.Params();
; G' O+ z# O L Q: UheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大
4 Z2 M, d- g% U$ ]0 C
1 H3 w9 \/ `* y* [' d6 P! J# lvar Memory = xdc.useModule('xdc.runtime.Memory');( d. U5 R" n1 u& P$ M
Memory.defaultHeapInstance = HeapMem.create(heapMemParams);
$ b" g1 X) j, ]) D: h% n8 }5 R
2 u% G$ ]( w9 {! u: t8 P+ ]/* configure System module */ H5 b% T8 d: {6 V
var SysMin = xdc.useModule('xdc.runtime.SysMin');
! r& I1 F' j( `& cSysMin.bufSize = 0x1000;' C' P% |* {( z; t5 K( B& O
SysMin.flushAtExit = false;
" d8 U* I( V' G9 N& m/ Y w3 C+ H% W! Z6 M" u; Y( ~9 M2 M& R
var System = xdc.useModule('xdc.runtime.System');
: T G1 R$ H2 F2 rSystem.SupportProxy = SysMin;/ b* e9 }: Z! [
% J0 b |5 v0 v9 d
/* configure SysBios to use the lower half of Timer 1 */
' k% N7 C' n: L. Y) Rvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');( n) W h6 g" L, N
var Clock = xdc.useModule('ti.sysbios.knl.Clock');2 A) r9 n& O. K$ S D
Timer.timerSettings[1].master = true;+ W7 a+ h# c. }
Timer.defaultHalf = Timer.Half_LOWER;/ N1 d% R v U, E$ `" {2 ^& Y
Clock.timerId = 1;
: e$ u+ M+ X3 b) K' S; s) x+ H4 o$ }3 S! M7 {
. [5 Z$ K. R6 h* b/ V9 ~
/*% J+ D. G& A! ~+ j, L0 k
* ======== Miscellaneous Configuration ========
( T, m, b' ?7 m. w% X' D6 e */
' ?0 E6 _* p3 n1 d6 E8 Y) U) U
0 g2 B5 r7 t0 F/ {2 @5 J6 @ l* J/* set default diags mask */
X2 @" `, @- Q) yvar Diags = xdc.useModule('xdc.runtime.Diags');
" L* G. W1 m' g yvar Defaults = xdc.useModule('xdc.runtime.Defaults');
+ }( N8 s: E% X( s2 @
4 e6 K/ c+ h. r- S! F5 f: CDefaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
. @- {0 B' M1 Q$ n; {8 E" k% RDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;% i: O1 [2 J, o0 ?
Defaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;0 I. }, j9 b& b6 ?
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */9 H7 W1 s2 `1 u: _. y1 a4 k) l
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */
) P7 G: Y5 Y2 c5 lDefaults.common$.diags_STATUS = Diags.RUNTIME_ON;
5 w. D2 F+ a( @' bDefaults.common$.diags_USER1 = Diags.ALWAYS_OFF;, g# S% C3 z$ a# _3 G5 \& P& G
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;
! k. \9 T& Z0 Y [Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;( s! {. L' R* V: k- J2 ^+ }0 C
Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;# E/ t# r4 M. @. L) q" J
Defaults.common$.diags_USER5 = Diags.ALWAYS_OFF;. c. F- \* |5 j0 T
Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;
' P8 R3 R( d; v' W" l$ SDefaults.common$.diags_INFO = Diags.ALWAYS_OFF;
, a! e9 K( x) \, rDefaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;
6 u# m5 k$ l! k6 n$ ~' x7 ~) }$ t. U4 h$ b
/* override diags mask for selected modules */
2 G6 P, W. }% O1 _8 J& s$ Exdc.useModule('xdc.runtime.Main');
' P4 U. k$ l+ WDiags.setMaskMeta(1 o+ b; \* X; K' x
"xdc.runtime.Main",( a" K( |+ s; a! h, W
Diags.ENTRY | Diags.EXIT | Diags.INFO,
# R* U" Q' Q& J, n Diags.RUNTIME_ON
. y, d T" f# m+ l' l6 H);
) {, V5 {- n3 }3 z i/ H/ H8 s) i% C- }$ @2 R: V- ^& I
var Registry = xdc.useModule('xdc.runtime.Registry');
3 W" b+ ] B' B* l1 ]' pRegistry.common$.diags_ENTRY = Diags.RUNTIME_OFF;' w- H* H4 P" P9 |
Registry.common$.diags_EXIT = Diags.RUNTIME_OFF;
- g/ w: E4 k& X# D; M7 RRegistry.common$.diags_INFO = Diags.RUNTIME_OFF;# m/ ]# Y9 }' f
Registry.common$.diags_USER1 = Diags.RUNTIME_OFF;; h2 S/ M* M/ m( E
/ n' L& g# S5 p {$ |, s1 T
/* create a logger instance */
# [0 t9 M' e! f; _ E/ svar LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');0 L! x( W" L, s' g
var loggerBufP = new LoggerBuf.Params();3 n y! K6 m2 g8 t$ w
loggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */
5 {8 P% f; ^# U* I/ q3 ZloggerBufP.bufType = LoggerBuf.BufType_FIXED;1 V3 T4 j' z9 S' M# }' g2 v- O4 s
# ]' N4 M$ k: U3 H/ bvar appLogger = LoggerBuf.create(loggerBufP);- B1 _$ j" V) U+ F( M" l- m- T
appLogger.instance.name = "AppLog_Core1";. m# C c0 N4 U& j0 ^6 Z9 G! D
Defaults.common$.logger = appLogger;
+ {; G1 ?! N( Q n. {; l4 v) E7 y9 ]) p0 ]Memory.defaultHeapSize = 0x8192; / `1 K: C3 z4 ]( z- D* o: U+ T
Idle.idleFxns[0] = "&LEDStatus";
7 g7 q0 _9 A6 m+ RCache.initSize.l2Size = Cache.L2Size_32K;
- n/ A" U! E8 X$ H( d% _! h9 P1 \" Y# i1 V1 C
|
|