======================================================================== Release Notes CodeWarrior Development Studio for Freescale 56800/E Digital Signal Controllers Version 8.3 ======================================================================== November 17, 2009 Freescale Semiconductor, Inc. For a complete, detailed list of new features, bug fixes, and other important information, refer to the "Release_Notes" folder within your CodeWarrior installation directory. For more information about Processor Expert, use the CodeWarrior IDE menu Help->Processor Expert->View Read Me & Revision History. To see a list of changes since last release, please refer to the section below titled "What's New" and "Issues Addressed". ======================================================================== What's New ======================================================================== Features: * Latest IDE version (5.9) * Special Edition license now allows up to 64Kb of C code and unlimited assembly code * Linker Memory Initialization (LMI) feature, which allows every word in a non-empty section to be initialized with a value. * Open-source BDM (JTAG) connection support for MC56F800x and MC56F824x/5x. OSBDM provides basic run control and flash programming support. * Data Visualization allows more than one variable to be displayed on one chart or multiple charts. * Support for the following derivatives: - MC56F8257 - MC56F8256 - MC56F8255 - MC56F8247 - MC56F8246 - MC56F8245 * This product contains a significant number of new* and updated** documents as listed below as well as in the START.HERE.html in the root directory: - CodeWarrior Development Suite Quick Start* explains how to register your Suite; activate and install your products; and discusses available purchase option - Freescale 56800/E Digital Signal Controllers Quick Start** explains how to use CodeWarrior Development Studio software for Freescale 56800/E Digital Signal Controllers, including how to create and debug a simple project for Windows Operating Systems - IDE 5.9 User’s Guide* explains general features and the user interface of the CodeWarrior Integrated Development Environment (IDE); examples: projects, preference panels, and tool architecture - IDE Automation Guide* explains how to use external applications and scripting environments to automate the CodeWarrior IDE to perform certain tasks - USB TAP Probe Users Guide** explains how to set up the USB TAP debug probe so it can communicate with the debugger and the target hardware - Ethernet TAP Probe Users Guide** explains how to set up the Ethernet TAP debug probe so it can communicate with the debugger and the target hardware - Open Source BDM-JM60* explains how to set up the Open Source BDM-JM60 so it can communicate with the debugger and the target hardware - 56800/E Digital Signal Controllers: DSP56F80x/DSP56F82x Targeting Manual** explains how to use the CodeWarrior IDE to develop software that targets the Freescale 56800/E Digital Signal Controllers:DSP56F80x/DSP56F82x architecture - 56800/E Digital Signal Controllers:MC56F8xxx/DSP5685x Targeting Manual** explains how to use the CodeWarrior IDE to develop software that targets the Freescale 56800/E Digital Signal Controllers: MC56F8xxx/DSP5685x architecture - 56800/E Digital Signal Controllers Build Tools Reference Manual** explains how to use the Freescale 56800/E Digital Signal Controllers Compiler to develop software that targets the Freescale 56800/E Digital Signal Controllers architecture - 56800/E Digital Signal Controllers Assembler Reference Manual** explains how to use the Freescale 56800/E Digital Signal Controllers Assembler to develop software that targets the Freescale 56800/E Digital Signal Controllers architecture - 56800/E Digital Signal Controllers Build Tools Reference Manual** explains how to use the Freescale 56800/E Digital Signal Controllers Compiler to develop software that targets the Freescale 56800/E Digital Signal Controllers architecture - 56800/E Digital Signal Controllers Assembler Reference Manual** explains how to use the Freescale 56800/E Digital Signal Controllers Assembler to develop software that targets the Freescale 56800/E Digital Signal Controllers architecture ================================================================ Fixed Issues ================================================================ MTWX38154: The correct error message is displayed when the DSP56800 simulator exceeds the code size limit allowed by the product license. MTWX37560: The correct debug information is displayed for enum types. MTWX33479: Correct 'switch' code generation for 'case' with negative values. MTWX31897: ‘Pragma interrupts’ are handled correctly. MTWX31675: Results of operations involving 'long long values' are stored at the correct location. MTWX32233: Correct code is generated for atan() and atan2() functions. MTWX30737: Byte pointer access is handled correctly in 56800e compiler. It is no longer treated as equivalent to word pointer access. MTWX30441: Memory allocation issues which caused a crash when compiling large functions are fixed. MTWX33011: Linker Memory Initialization (LMI) feature. MTWX25622: Immediate operands in inline assembly are handled correctly. MTWX33811: Type cast/sign extensions at optimization level 3 no longer corrupt the upper word of a long int. MTWX34369: Fixed compiler crash in peephole optimization for N register based addressing mode. MTWX33806: Correct prototypes are provided for Intrinsic Functions __LL_div() and __LL_div_int(). MTWX34559: Debug information is now generated for all functions in an ASM file. MTWX35306: Debug information is now generated for a C file which is included by another C source file with #inlcude <*.c>. MTWX36541: FRTID delay-slot restrictions are checked in the Fast Interrupt pragma. MTWX37139: Compiler generates correct DWARF entries for variables located in registers. MTWX28268: Correct debug information is generated for variables stored in registers. MTWX20221: Documentation updated to clarify use of the Regiter Details window. MTWX20647: Assembler manual updated to clarify that .while and .endw directives are not supported by DSC56800E compiler. MTWX21373: DSC56800/E Targeting Manual updated to clarify NOP. MTWX21374: DSC56800/E Targeting Manual updated to clarify pipeline restrictions. MTWX22103: DSC56800/E Targeting Manual updated to correct Flash break point information. MTWX26608: Build Tools Reference Manual updated to clarify CRC Linker feature. MTWX27818: DSC56800/E Targeting Manual updated to clarify that __pmem qualifier is for global variables only. MTWX26758: Stand-Alone Flash Programmer programs 56F8355 complete Flash with the default config file. MTWX23222: Debugger displays long long values correctly. MTWX27470: DSC56800 simulator memory map updated to ensure PC and SR's values are pushed on to the stack correctly when SP is larger than 0x800. MTWX27724: Stand alone Flash Programmer runs with Windows Vista host operating system. MTWX37605: PMEM array variable are correctly displayed. ================================================================ Issues with work-arounds ================================================================ MTWX29844: 56800 debugger window doesn't show the real running address. Workaround for this issue: 1. In the case of overlapped addresses of code and data segments - the program memory segment must be defined in the linker command file before data segments. 2. In the case of relocatable program code - an additional empty memory segment for code must be defined with same location and size. For example: MEMORY { #program memory segment which contain relocatable code. .p_external_RAM_2 (RWX) : ORIGIN = 0xE000, LENGTH = 0x2000 # im Modus 0B #additional empty program memory segment with same location #and size as .p_external_RAM_2. .p_external_RAM_3 (RWX) : ORIGIN = 0xE000, LENGTH = 0x2000 # im Modus 0B #data memory segment. addresses of .x_rsrvd_external_RAM #and .p_external_RAM_2 are overlapped. .x_rsrvd_external_RAM (RW) : ORIGIN = 0x2000, LENGTH = 0xD000 } .executing_code : AT (0x0200) { # .text sections F__targetInternalPAddress = 0x0200; # original F__targetExternalPAddress = 0xE000; F__targetExternalPAddress = 0xE000; F__startOfExecutingCode = .; serialNumber.c (.text) * (.text) * (rtlib.text) * (fp_engine.text) * (user.text) F__endOfExecutingCode = .; } > .p_external_RAM_2 MTWX37395: 56F824x/5x connection issue. If peripheral clock to MSCAN is disabled (PCE1[MSCAN]), then read access to memory locations above 0xF460 will result in a DSC core crash. As a consequence of the core crash the debugger will lose connection with the target. Workaround for this issue: 1. General: Peripheral Clock Enable bit for MSCAN in PCE1 register has to be set to prevent read access crash for memory locations above 0xF460. 2. For Processor Expert based projects the workaround will be handled by CPU bean. PCE1[MSCAN] is set during Processor Expert initialization in PE_low_level_init() function. 3. For non-Processor Expert projects the workaround will be done in the start-up routine called after the hardware reset. ================================================================ Questions or Comments? ================================================================ You can contact us via email, newsgroups, voice, fax or the CodeWarrior website. For details on contacting Freescale, visit http://www.freescale.com/codewarrior, or refer to the front of any CodeWarrior manual. For the latest news, offers, and updates for CodeWarrior, browse Freescale Worldwide. ================================================================ Freescale, the Freescale logo, and CodeWarrior are registered trademarks of Freescale Semiconductor, Inc. All other trademarks are hereby recognized as the property of their respective owners.