02.08.2013 Views

CodeWarrior Development Studio for StarCore DSP v10.5.1

CodeWarrior Development Studio for StarCore DSP v10.5.1

CodeWarrior Development Studio for StarCore DSP v10.5.1

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>StarCore</strong> <strong>DSP</strong> <strong>v10.5.1</strong><br />

Release Notes<br />

<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong><br />

<strong>StarCore</strong> <strong>DSP</strong> <strong>v10.5.1</strong><br />

Table of Contents<br />

1 About This Release ................................................................................................. 2<br />

1.1 Version In<strong>for</strong>mation ........................................................................................... 2<br />

1.2 Important Notes ................................................................................................ 2<br />

2 Getting Help ............................................................................................................. 3<br />

2.1 User Forum and FAQ ........................................................................................ 3<br />

2.2 Contacting Freescale concerning <strong>CodeWarrior</strong> <strong>Development</strong> Tools ................. 3<br />

3 New in this Release ................................................................................................. 4<br />

3.1 Smart<strong>DSP</strong> OS................................................................................................... 4<br />

4 System Requirements ............................................................................................. 5<br />

5 Who Should Use this Release? .............................................................................. 5<br />

6 Who Should NOT Use this Release? ...................................................................... 5<br />

7 Errata – Known Issues <strong>for</strong> this Release ................................................................. 6<br />

8 Errata – Fixed in this Release ............................................................................... 10<br />

1


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>StarCore</strong> <strong>DSP</strong> <strong>v10.5.1</strong><br />

1 About This Release<br />

The 10.5.1 release of <strong>CodeWarrior</strong> <strong>for</strong> <strong>StarCore</strong> <strong>Development</strong> tools introduces an updated<br />

Smart<strong>DSP</strong> OS version and address couple of bug fixes <strong>for</strong> Star Core compiler and IDE.<br />

1.1 Version In<strong>for</strong>mation<br />

This release note provides important in<strong>for</strong>mation <strong>for</strong> users of <strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong><br />

<strong>for</strong> <strong>StarCore</strong> <strong>DSP</strong> <strong>v10.5.1</strong>.<br />

Users looking <strong>for</strong> productized solutions <strong>for</strong> the <strong>StarCore</strong> 3850 core and the BSC913x processors<br />

are encouraged to use <strong>CodeWarrior</strong> <strong>for</strong> <strong>StarCore</strong> 10.5.1 product.<br />

You are encouraged to read this document to become familiar with this release’s supported<br />

targets, errata with workarounds, and other useful in<strong>for</strong>mation.<br />

1.2 Important Notes<br />

Please check Chapter 3 <strong>for</strong> the full list of features.<br />

Note! New Eclipse 3.7.1 feature, Code Analysis: Depending on your settings in the Code<br />

Analysis panel, you might get unexpected syntax errors. You can customize these settings by<br />

going to Window->Preferences->C/C++->Code Analysis.<br />

2


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>StarCore</strong> <strong>DSP</strong> <strong>v10.5.1</strong><br />

2 Getting Help<br />

2.1 User Forum and FAQ<br />

After looking through these release notes, and the documentation that comes with the installation<br />

of <strong>CodeWarrior</strong>, the next best place to look <strong>for</strong> answers to your questions is the online user<br />

<strong>for</strong>ums located at<br />

http://<strong>for</strong>ums.freescale.com<br />

Please check:<br />

- <strong>CodeWarrior</strong> <strong>for</strong> <strong>StarCore</strong> <strong>DSP</strong>s <strong>for</strong>um <strong>for</strong> issues related to <strong>CodeWarrior</strong><br />

development tools. The Frequently Asked Questions about <strong>CodeWarrior</strong> <strong>for</strong> <strong>StarCore</strong><br />

<strong>DSP</strong> are posted here.<br />

- <strong>StarCore</strong> <strong>DSP</strong>s <strong>for</strong>um <strong>for</strong> issues related to the silicon and hardware plat<strong>for</strong>ms.<br />

The <strong>for</strong>ums provide a great way to learn by seeing the questions and answers posted by other<br />

users. Of course, you can post your own questions and responses as well.<br />

2.2 Contacting Freescale concerning <strong>CodeWarrior</strong> <strong>Development</strong> Tools<br />

Finally, if you still have questions not addressed in the release notes, or want to provide feedback,<br />

please use the Freescale online support web page. To use this page, follow these steps:<br />

1. In a web browser, go to http://www.freescale.com/TechSupport.<br />

Freescale’s Technical Support web page appears.<br />

2. On this page, click the Create service request online link.<br />

The New Service Request — Category/Topic page appears.<br />

3. From the Category dropdown menu, select Technical Request.<br />

4. From the Topic dropdown menu, select <strong>CodeWarrior</strong> (or other appropriate topic).<br />

5. Click Next.<br />

The New Service Request — SR Details page appears.<br />

6. In this page, enter the requested in<strong>for</strong>mation.<br />

At a minimum, enter in<strong>for</strong>mation in each field marked by an *.<br />

7. Click Submit.<br />

If you are already logged in, the Service Request Confirmation page appears. Go to<br />

the last step.<br />

If you are not already logged in, the Log-in page appears.<br />

8. If you are a registered member, login with your user name and password.<br />

The Service Request Confirmation page appears. Go to the last step.<br />

9. If you have not yet registered,<br />

a. If you want to become registered member, click Register Now and complete the<br />

registration process.<br />

The Service Request Confirmation page appears.<br />

b. If you do not want to register, supply your contact in<strong>for</strong>mation in the I do not want<br />

to register - Provide contact in<strong>for</strong>mation <strong>for</strong>m and click Submit.<br />

10. Click Done.<br />

The Service Request Confirmation page appears.<br />

Your service request is submitted.<br />

3


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>StarCore</strong> <strong>DSP</strong> <strong>v10.5.1</strong><br />

3 New in this Release<br />

3.1 Smart<strong>DSP</strong> OS<br />

New Smart<strong>DSP</strong> OS version R04.07.00. All libraries and demos are now built with CW10.5.1 and<br />

bring the following features:<br />

- Kernel features<br />

o Introduces support <strong>for</strong> a new memory management module:<br />

• Added the option to control the memory segment memory management structures<br />

will be placed on. This is controlled by defines in os_config.h;<br />

• Compilation warnings will be issued in case management size is not defined,<br />

notifying that default values are used.<br />

• Memory manager management size default values reduced to 1000 bytes (both local<br />

and shared).<br />

- Drivers features<br />

o BSC9132 eSPI which enables to send and receive data using 2 eSPI controllers on the<br />

device. This driver API is based on CIO abstraction layer;<br />

o MAPLE eFTPE Trace - introduces an API <strong>for</strong> usage of the MAPLE eFTPE Trace<br />

functionality. This API enables the user to register events to be logged by the eFTPE and<br />

to extract the logged events from the MAPLE buffer. This feature should be used in<br />

debug time only (due to per<strong>for</strong>mance impact on MAPLE). An example <strong>for</strong> the usage of<br />

this API can be found in the MAPLE eFTPE demo, by modifying the demo configuration.<br />

o BSC9132 debug print multicore - introduces BSC9132 debug print multicore support. A<br />

demo <strong>for</strong> this new feature was added;<br />

- Demos features<br />

o BSC9132 eSPI demo - This demo demonstrates usage of the eSPI Smart<strong>DSP</strong> OS driver<br />

<strong>for</strong> sending and receiving data in internal loopback mode. The demo is running in<br />

multicore scenario. Each core is handling a single eSPI unit;<br />

o BSC9132 CPRI multicore demo - This demo demonstrates usage of CPRI in multicore<br />

scenario (internal loopback). Each core is handling a single CPRI unit.<br />

o MAPLE eFTPE Added MAPLE eFTPE Trace demonstration to the demo. This option is<br />

turned off by default. Instructions on how to set it on are found in readme.txt.<br />

o BSC9132 debug print multicore Added multicore scenario demonstration to debug print<br />

demo. Note: current BSP package to use “913x_WUSDK_REL_1.3” – does not have the<br />

updated Engine & host application. Use the copies from the “debug_print_apps.zip” file<br />

(Please follow the guide).<br />

Note! For more details about the Smart<strong>DSP</strong> OS R04.07.00 please refers to Smart<strong>DSP</strong><br />

OS_release_note.<br />

4


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>StarCore</strong> <strong>DSP</strong> <strong>v10.5.1</strong><br />

4 System Requirements<br />

Recommended Configuration<br />

- 3GHz Intel® Pentium® P4 processor or better. Dual-core processor preferable.<br />

- Microsoft® Windows XP, Windows Vista, Windows 7<br />

- 2GB RAM (Experience on machines with 1GB RAM is significantly reduced)<br />

- 2.3 GB free disk space<br />

Note: 500MB of free space is required on the OS drive, regardless of the free space available on<br />

the destination drive.<br />

Note: The users need Windows Administrator rights when installing the <strong>CodeWarrior</strong> within<br />

Program Files location. Otherwise <strong>CodeWarrior</strong> internal processes might fail to start during<br />

run time execution.<br />

5 Who Should Use this Release?<br />

Users developing <strong>for</strong> the BSC9131, BSC9132 devices<br />

Developers seeking better per<strong>for</strong>mance from code not previously hand-optimized or developers<br />

willing to tune their code <strong>for</strong> per<strong>for</strong>mance<br />

6 Who Should NOT Use this Release?<br />

Users developing <strong>for</strong> <strong>StarCore</strong> MSC8157/8, MSC8154/6/2/1, MSC8256/4/2/1, MSC8144,<br />

MSC8122/26, MSC8113/12, MSC8101/3, or MSC711x <strong>DSP</strong>s.<br />

5


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>StarCore</strong> <strong>DSP</strong> <strong>v10.5.1</strong><br />

7 Errata – Known Issues <strong>for</strong> this Release<br />

This list includes only P1 and P2 issues that are not fixed in this release.<br />

ENGR00235607<br />

ENGR00225771<br />

ENGR00236407<br />

ENGR00234330<br />

ENGR00220108<br />

ENGR00186856<br />

ENGR00236922<br />

ENGR00202735<br />

ENGR00236912<br />

ENGR00199263<br />

ENGR00192655<br />

ENGR00190261<br />

ENGR00187044<br />

ENGR00186546<br />

ENGR00210174<br />

ENGR00208009<br />

IDE<br />

Issue: CORBA Connection Error<br />

Workaround: Split test suit to run less then 300 tests in a batch run and restart<br />

<strong>CodeWarrior</strong> between batch runs (this can be configured from the scripts)<br />

Issue: Breakpoints hit not correct after executed "Mulitcore Resume"<br />

Workaround: the user can enable/disable the breakpoint instances individually <strong>for</strong> each<br />

core, from the breakpoint view.<br />

debug_print project fails to build with CW10.5.0 <strong>for</strong> multicore<br />

Workaround: Set correct path towards linked libraries.<br />

GUI locks when Product Licenses dialog appears over another modal dialog<br />

Workaround: hit Enter to dismiss the error dialog first be<strong>for</strong>e closing the warning dialog <strong>for</strong><br />

expiring licenses.<br />

Additionally pressing the ESC key might close the dialog in the background.<br />

Issue: RSE sytem persistence uses too long directory names<br />

Workaround: Use a workspace at the top level hierarchy of a windows drives (e.g.<br />

c:\workspace).<br />

Software Analysis<br />

SA reports function calls "not covered" in some cases<br />

Workaround: none<br />

Cannot enable trace <strong>for</strong> G1110/G1110SC in the Debug Configuration<br />

Workaround: none<br />

Issue: "Trace and Profile" Support <strong>for</strong> G1110 was enable in Creation wizard but not in<br />

Debug launch Configurations window<br />

Workaround: none<br />

Issue: Cannot build SDOS project with Trace enable support HSST as Trace offload<br />

method<br />

Workaround: none<br />

Issue: Cannot build the imported project successful<br />

Workaround: none<br />

Issue: Export trace window is not able to closed/disappeared if you don't want to replace<br />

an existed csv file<br />

Workaround: open location of existed csv file by window exploer and rename this file. now<br />

back to 'Export Trace Data to CSV' window of <strong>CodeWarrior</strong> and you can export with your<br />

desired name<br />

Issue: No Trace is collected after removing all Trace points when debug session started.<br />

Workaround: If you want to remove all tracepoints, do this offline (not when you are<br />

debugging the project). If you don't want to remove all tracepoints, you can do this in both<br />

online and offline mode.<br />

Issue: CW behaves abnormal when ETH get disconnected<br />

Workaround: none<br />

Issue: TP is disable when set an external source code.<br />

Workaround: none<br />

Issue: Error connecting to simulator when Debug and Resume profilerdemo_SC3x50<br />

project<br />

Workaround: none<br />

Simulator<br />

Issue: Profiler module ver 1.1.12 <strong>for</strong> simulator outputs empty results<br />

Workaround: None<br />

6


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>StarCore</strong> <strong>DSP</strong> <strong>v10.5.1</strong><br />

ENGR00231532<br />

ENGR00236725<br />

ENGR00262393<br />

Smart<strong>DSP</strong> OS<br />

Issue: CPRI auto-negotiation fail <strong>for</strong> 4.9G. when using os_msc8x57_drivers.elb<br />

Workaround: none<br />

Issue: Trace was not collected <strong>for</strong> 9131 SDOS stationary project due to wrong VTB<br />

addresses<br />

Workaround:none<br />

SDOS R4.7.0 - cpri_hdlc demo is not functional<br />

Workaround:none<br />

CCS<br />

Issue: CWTAP: Starcore 8156 board tested with temporary flying leads<br />

probe. Found that register write failed after step core operation during<br />

ENGR00193932<br />

step test.<br />

Workaround: none<br />

Issue: ccs::reset_to_debug generates "core not responding" error with<br />

ENGR00207767 QDS + <strong>DSP</strong> core access by <strong>DSP</strong> JTAG port<br />

Workaround: none<br />

Issue: CCS drivers do not pass WinLogo verification (on Win XP)<br />

ENGR00231737<br />

Workaround: none<br />

Build tools<br />

Issue: It takes more than 8 minutes to build the attached project.<br />

ENGR00183307 Workaround: Use lower optimization level –O0, -O1, -O2<br />

Issue: Fatal Error while using Map(STL) of int and class object.<br />

ENGR00184584 Workaround: use additional argument to shell: -Xicode --exception_support=false<br />

Issue: C_L_conj gives wrong result when input parameter is -1<br />

ENGR00185514 Workaround: none<br />

Issue: Error: Can't find mapping (2-1), <strong>for</strong> IL2986 in extract_mapping_solutions<br />

ENGR00185626 Workaround: -Xicode --disable_standard_op to disable standard optimizations in icode.<br />

Issue: EVRC Codec is not bit-exact anymore<br />

ENGR00186055 Workaround: - use -Xicode --achieve_cross_compo=FALSE <strong>for</strong> file evrc_bqiir.c<br />

Issue: Incorrect code generated in function pexInitialize<br />

Workaround: Add following lines in file msc8156_drivers_smartdsp_os.appli<br />

module "pex_init"<br />

[<br />

function _pexInitialize [<br />

active_sequential_access = FALSE<br />

]<br />

ENGR00186389 ]<br />

Issue: Complier does not recognize Front End option "-optimize_single_and_or" states<br />

"unknown option"<br />

ENGR00188436 Workaround: none<br />

Issue: Profiler module ver 1.1.09 <strong>for</strong> simulator outputs wrong statistics<br />

ENGR00190500 Workaround: none<br />

Issue: Dissembler returns: ERROR: an invalid codification was found at pc=0x1007F80<br />

ENGR00192314 Workaround: none<br />

Issue: HwdrvGetGainOffset works abnormal when O3 is used<br />

ENGR00192550 Workaround: Add "-e0 -ee0" to the LLT options<br />

Issue: Some strange code generated <strong>for</strong> function<br />

cif_ue_context_config_processing_action()<br />

ENGR00192872 Workaround: use -O3 optimization level <strong>for</strong> the whole file<br />

Issue: Icode internal error on EDM_GMSK_ACS kernel<br />

Workaround: use fewer modulo registers in loops, as it is not efficient <strong>for</strong> the compiler to<br />

ENGR00192893 spill them<br />

ENGR00194567 Issue: ICODE crash when tries to per<strong>for</strong>m modulo addressing<br />

7


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>StarCore</strong> <strong>DSP</strong> <strong>v10.5.1</strong><br />

ENGR00195487<br />

ENGR00196023<br />

ENGR00197523<br />

ENGR00197639<br />

ENGR00198461<br />

ENGR00199029<br />

ENGR00199341<br />

ENGR00201338<br />

ENGR00203863<br />

ENGR00204177<br />

ENGR00204856<br />

ENGR00205346<br />

ENGR00206943<br />

ENGR00207002<br />

ENGR00207176<br />

ENGR00207335<br />

ENGR00218415<br />

ENGR00230286<br />

Workaround: don't use #pragma safe_mod <strong>for</strong> the 2 loops<br />

Issue: Per<strong>for</strong>mance degradation afetr "unroll & jam"<br />

Workaround: none<br />

Issue: Loop issue in NSN kernel<br />

Workaround: none<br />

Issue: Compilation time is too long: ALU excepts less than 60 seconds compilation time<br />

per file<br />

Workaround: none<br />

Issue: Unsigned 64 bit value misinterpreted as signed 32 bit<br />

Workaround: –Xicode --achieve_induction=false<br />

Issue: FATAL ERROR: Internal compiler error 11.. Aborting...<br />

Workaround: Remove #pragma align dio_chunk 0x10000000 and replace with<br />

struct dio_mem_area dio_chunk __attribute__((section("dio_chunk_seg"))) ;<br />

This way the variable is in a separate section which can be aligned from the linker<br />

command file to any desired value.<br />

Issue: Compiler generates incorrect code with optimization<br />

Workaround: Following work around seems to cure the problem:<br />

1- Define the function extract_command as non static and disable inlining of taht<br />

function.<br />

2- Remove initialization of *pActualLength to 0 at line 148<br />

3- Build with ICODE option --scalarization=FALSE<br />

Issue: Wrong input parameter to memset function<br />

Workaround: none<br />

Issue: Linker reports error when moving global definition from one file to another<br />

Workaround: none<br />

Issue: Can’t generate code based on MACRO from command line with newer linux<br />

compilers<br />

Workaround: A workaround is to use -Xcfe "-D..." to bypass SCC's -D handler, e.g.;<br />

something like this:<br />

scc -v -arch sc3850 -be -Xcfe "-DMACRO=\"Hello World\"" test.c<br />

Issue: ICODE runs out of memory<br />

Workaround: -FsO0<br />

2nd workaround: -Xicode --codegen_no_lookahead<br />

Issue: Execution result is incorrect in case of opt level 1 or higher<br />

Workaround: Build function ImageConvert within module test.c with ICODE option<br />

achieve_composition = FALSE<br />

Issue: Per<strong>for</strong>mance degradation in WCDMA function ArkFilterAlfaBeta (Test case 29) <strong>for</strong><br />

about 14.5% between 23.11.1.27D and 23.11.3.26<br />

Workaround: none<br />

Issue: Switch_To_Rom=TRUE generated jump-to table is not suitable <strong>for</strong> multi-core<br />

Workaround: Do NOT use Switch_To_Rom=TRUE.<br />

Issue: Internal error in choose_spill_register<br />

Workaround: compile in O3 or O0<br />

Issue: Compiler is stuck when compiling c file "LramVarialbe_DDR.c"<br />

Workaround: none<br />

Issue: sc100-elf2xx.exe in post-build failed<br />

Workaround: none<br />

Issue: move.l d3,(sp-45) is generated <strong>for</strong> a byte access<br />

Workaround: none<br />

Issue: wrong instruction flow after inline<br />

Workaround:<br />

-Xicode --codegen_simplify_in_valid_reg<br />

OR -Xicode --codegen_simplify_move<br />

8


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>StarCore</strong> <strong>DSP</strong> <strong>v10.5.1</strong><br />

ENGR00231347<br />

ENGR00235146<br />

ENGR00235314<br />

ENGR00235392<br />

ENGR00235609<br />

OR -Xicode --codegen_simplify_loop_reshape (I am no sure <strong>for</strong> the last one).<br />

Issue: Long compilation time, llt - CW <strong>for</strong> <strong>StarCore</strong><br />

Workaround: With -Xllt -c_mem0 the compilation is very short in llt.<br />

Issue: segments overlap after building<br />

Workaround: none<br />

Issue: segment is not aligned<br />

Workaround: none<br />

Issue: Internal compiler error with statement like if ((modulatorSettings[i].symbol_rate > 0)<br />

== (0) )<br />

Workaround: 1- Change the line 12631 from<br />

if ((modulatorSettings[i].symbol_rate > 0) == (0) )<br />

to<br />

if (!(modulatorSettings[i].symbol_rate > 0))<br />

2- add following pragma prior to the implementation of function init_modulator<br />

#pragma fspeephole off<br />

You can then add following pragma at the end of the function implementation<br />

#pragma fspeephole on<br />

Issue: wrong ifa tfrf combination<br />

Workaround: -Xicode --codegen_simplify_loop_reshape<br />

9


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>StarCore</strong> <strong>DSP</strong> <strong>v10.5.1</strong><br />

8 Errata – Fixed in this Release<br />

This list includes the issues reported by external customers and additional issues that were<br />

marked as exceptions in CW10.5.0 and that are now fixed<br />

IDE<br />

ENGR00240802 Build error on new CW10.5.0 (RT21)<br />

ENGR00221778 CW <strong>for</strong> SC3850 does not put warning in problems window<br />

Compiler<br />

ENGR00236874 wrong stack write/read <strong>for</strong> local parameter with -o3<br />

ENGR00239981 Optimization propagation level issue<br />

ENGR00229215 Incorrect code generated <strong>for</strong> bitfield assignment<br />

ENGR00236897 Compiler bug - 64-bits alignment not correctly computed<br />

ENGR00234427 Improve message generated when a range overflow is generated<br />

ENGR00239225 Compiler generates incorrect stack manipulation<br />

Smart<strong>DSP</strong> OS<br />

ENGR00257207 Smart<strong>DSP</strong> OS Recovery solution disabled Non Maskable Interrupts up until background<br />

task.<br />

ENGR00257864 Maple_crcpe demo should have launch group configuration <strong>for</strong> 9132<br />

ENGR00257956 Maple_pusch cannot run successfully with 9131 target<br />

ENGR00257968 "Maple_Pusch PSC9132 External Ctrl - Release" got fail result<br />

10

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!