Contents

TriCore C++ libraries (exception handling)

The TriCore toolset comes with 2 sets of C++ libraries: libcp and libcps. The
libcp libraries provide exception handling, while the libcps
libraries should not have any exception handling. The libcps was
build incorrectly causing the library still to hold some exception
handling
(option --c++0x
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.

TriCore _fpu libraries (rounding mode and exception flags)

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 occurred 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 might be
not as expected. However the compiler is not changing the exception
flags or rounding mode when generating the FPU
instructions.

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.

DAS 4.4.2 required

With this release the new TC23x TriBoard is supported. This board
requires the latest DAS 4.4.2 of Infineon for debugging. When startinga
debug session with any TriBoard, the installed DAS version is checked.
In case it is lower than 4.4.2 you are notfied about this. You may
download the latest DAS version from the Infineon website.

C pragma clear/noclear in C++ source

With the fix of problem 160-38960 the
following must be taken into account:

The C pragma's are originally not designed for use in C++ sources.
They are supported as far as possible. The way the C++ compiler handles
them may therefor deviate from how the C compiler does.
With the #pragma clear /noclear there is a small deviation which must
be taken into account.
When twice the same pragma is used with a restore and no data is
defined between, as shown below:

then the C++ compiler will not generate the first #pragma noclear
restore. This means that the C compiler handles only one restore on 2
"noclear" settings. This means that var3 will also be uninitialized.
Since the default setting of the toolset is that variables are cleared
(initialized with zero) these pragma's must be used as follows, taken
the example above:

This section gives an overview of the most important new
features and improvements in v4.3r3. See the sections with fixed issues
for a complete list.

SFR support TC27x C-step

In this release one new derivative is supported, the TC27x C-step.
Only SFR build support is available and tested with the Infineon
simulator (TSIM).
No hardware of the TC27x C-step was available to test on.

Updated TC27x B-step SFR file

For the AURIX derivative TC27x B-step the SFR file has
been updated to the latest User Manual from Infineon, version v1.4.1.
The updated files
(tc<xx>.sfr,
tc<xx>def
and tc<xx>.xml)
can be found
in the include/sfr
directory (for TriCore and MCS).

Updated TC29x SFR file

For the AURIX derivative TC29x the SFR file has
been updated to the latest User Manual from Infineon, version v1.1.1.
The updated files
(tc<xx>.sfr,
tc<xx>def
and tc<xx>.xml)
can be found
in the include/sfr
directory (for TriCore and MCS).

TriBoard TC29x support

The AURIX TriBoard TC29x is supported.

TriBoard TC26x support

The AURIX TriBoard TC26x is supported. However it is not possible to
access the XC800 core through the Debug Access Port which is in this
AURIX derivative.

TriBoard TC23x support

The AURIX TriBoard TC23x is supported.

Important notice: To be able
to access this board you need DAS version 4.4.2.

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.

SFR support TC23x and TC23x_adas

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 with the Infineon
TSIM. No hardware of the TC27x was available to test on.

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.

Generate a makefile using Eclipse IDE

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.

Support for AURIX Boot Mode Header (CRC)

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.

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.

15-day Trial

This release
does not support the
regular 15-day
trial mode.

How to obtain a license key

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.

Bundles

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.