This release note covers the changes between v4.2r2 and v4.3r2 of the TASKING VX-toolset for TriCore.
For release notes prior to v4.3r1, please visit the TASKING TriCore support website.
The TriCore comes with 2 sets of C++ libraries: libcp and libcps. The libcp libraries have exception handling, while the libcps libraries should not have any exception handling. The libcps was incorrectly build causing them still to hold some exception handling (option --c++0x exclipictly enables exception handling). This is resolved by using option --no-exception.
When you relied on the libcps
libraries to catch any exception then you should now switch over to the
libcp
library instead.
When generating code and using the FPU the compiler will generate FPU instructions and in some cases a library call. These library calls exist in _fpu libraries. These calls will be generated when optimizing for code size. These functions on their turn would call the FPU and perform some extra instructions to fulfill the desired operation. As extra these functions would clear the exception flags and set the rounding mode to 'rounding to nearest' (which is also default of the FPU).
The problem lies in the situation that in case in the user startup code the rounding mode was set different than 'rounding to nearest'. The mode would be changed in the library function and would not be restored afterwards. The result of floating point operations could be not as expected. The compiler on its turn when generating the FPU instructions is not changing the exception flags or rounding mode.
The functions of the _fpu
libraries that are called by compiler generated code are no longer
resetting the exception flags and do not change the rounding mode of
the FPU. According to the IEEE standard resetting the exception flags
and setting the desired rounding mode is the responsibility of the user.
When you use FPU and you set another rounding mode than 'rounding to nearest' you must be aware of the fact that results may differ when using the new _fpu libraries.
This section gives an overview of the most important new features and improvements in v4.3r2. See the sections with fixed issues for a complete list.
In this release 2 new derivatives are supported, the TC23x and TC23x_adas. Although these are AURIX multi-core devices they have 1 TriCore core (lockstep). They also only have 1 MCS which is supported too.
Only SFR build support is available and tested. Simulator (no
multi-core support) and hardware (not available) have not be tested.
This section gives an overview of the most important new features and improvements in v4.3r1. See the sections with fixed issues for a complete list.
For batch-processing it is now possible to call the Eclipsec.exe to generate a makefile for a project without user interference and without starting Eclipse GUI. The makefile can then be used to build the project in batch-mode without Eclipse being started, but by invoking the make utility (amk.exe) from command-line. Refer to 160-38819.
In this release the TriCore linker is capable of generating up to
four valid Boot Mode Headers (BMHs) for AURIX derivatives. An extension
in LSL is available. The start address, begin address and end address
need to be specified. The linker will calculate the CRC and writes this
into the BMH section.
An interface within Eclipse is available for specifying the required
information for the linker. At least one BMH needs to be reserved, to
make sure that the Triboard won't be bricked. The interface-page can be
found under menu "Project Properties->C/C++ Build->Memory, tab
Boot Mode Headers". This is only valid for AURIX derivatives.
The AURIX TriBoard TC27x B-step (production device) is supported.
The list of open issues for v4.3r2 can be found on the internet.
The list of open issues for v4.3r1 can be found on the internet.
For a quick start, just start the TriCore Eclipse IDE from the Start menu. This will start the Eclipse based development environment. You will be asked to select a workspace. In case you used Eclipse before it is recommended to select a new workspace. After clicking OK, you will see the 'Welcome' view. On this view you will see icons that link to specific information. You can, for example, select the 'Samples' icon and import the TriCore project examples, PCP project examples, MCS project examples, 8051 project examples and/or ARM example projects.
Another icon on the Welcome page, the 'First Steps' icon, links to the 'TriCore Getting Started' document. This is a good starting point for exploring the capabilities of the environment and the tools.
This release does not support the regular 15-day trial mode.
All TASKING products include the industry standard FLEXlm license management software. In order to be able to run this toolset, you will need a license key. You can only obtain a license key if you have purchased this product.
To obtain a license key, you can start the License Administrator from the program group of your installed TASKING toolset. In case you still need to install the toolset, you can start the License Administrator by setting a check mark at the end of the setup/installation process. The wizard of the License Administrator will guide you through the steps to obtain your license key.
Once you have received your license key from Altium, you can install it on your system by running the License Administrator again. Alternatively you can simply save the license key as the file 'license.dat' in the C:\flexlm folder on your PC's hard disk.
More information is available on http://www.tasking.com/support/flexlm. On this page you also find assistance to setup a floating network license, or for installation on Linux or Sun systems.
Altium's TASKING VX-toolset for TriCore is available as Standard, Professional and Premium Edition. At installation time all tools are installed, no matter what bundle you purchased or want to evaluate. However, each tool is protected with its own unique key. After your purchase you will receive a license key - specific for the bundle - to unlock the appropriate tools.