TASKING VX-toolset for Altera® Nios® II

v1.1r1 RELEASE NOTES

SUMMARY

This release note describes installation issues, known problems and reminders for users of the first public release of the TASKING VX-toolset to be used with Altera's Nios II IDE.

The following parts are described:

The TASKING VX-toolset for Nios II consists of a complete set of TASKING compilation tools and libraries, and a set of Eclipse plug-ins. With the Eclipse plug-ins the TASKING VX-compiler and assembler become seamlessly available in Altera's Nios II IDE. Using Altera's Nios II IDE as your development environment, you can use the TASKING VX-compiler and assembler to develop embedded applications for the Nios II processor.

The Eclipse plug-ins cannot be used to integrate the TASKING VX-toolset into any other Eclipse installation than the one provided by Altera.

This release of the TASKING VX-toolset for Nios II can also be used independently of Altera's Nios II IDE, by invoking the tools from the command line or from makefiles. See below for details about the differences between using the tools inside Altera's Nios II IDE and using them from the command line or from makefiles.

 

INSTALLATION

Make sure that versions 6.0 of the Quartus II Design Software and the Nios II Embedded Design Suite from Altera are installed on your system.

The TASKING installation program copies the following additional files into the Altera Nios II EDS directory:

bin\eclipse\plugins\com.tasking.errorparsers_1.0.0.jar
bin\eclipse\plugins\com.tasking.ide.nios_1.0.0.jar

The TASKING installation program copies the following patched files into the Altera Nios II EDS directory:

components\altera_hal\build\gnu_rules.mk
components\altera_nios2\HAL\src\component.mk

bin\nios2-gnutools\src\newlib\newlib\libc\include\string.h
bin\nios2-gnutools\src\newlib\newlib\libc\include\wchar.h
bin\nios2-gnutools\src\newlib\newlib\libc\include\wctype.h
bin\nios2-gnutools\src\newlib\newlib\libc\include\sys\_types.h
bin\nios2-gnutools\src\newlib\newlib\libc\include\sys\reent.h
bin\nios2-gnutools\src\newlib\newlib\libc\include\sys\unistd.h

components\altera_hal\HAL\inc\priv\alt_irq_table.h
components\altera_hal\HAL\src\alt_irq_register.c
components\altera_hal\HAL\src\alt_sbrk.c
components\altera_hostfs\HAL\src\altera_hostfs.c
components\altera_nios2\HAL\inc\nios2.h
components\altera_nios2\HAL\inc\sys\alt_irq_entry.h
components\altera_nios2\HAL\inc\sys\alt_sim.h
components\altera_nios2\HAL\inc\sys\alt_warning.h
components\altera_nios2\HAL\src\alt_busy_sleep.c
components\altera_nios2\HAL\src\alt_gmon.c

examples\software\hello_alt_main\hello_alt_main.c
examples\software\hello_world\hello_world.c
examples\software\hello_world_small\hello_world_small.c

These patched files can be used with the TASKING compiler as well as with the GCC compiler. The patches do not affect the behaviour of the Altera Nios II IDE in any way. Original files are renamed and saved before the copy process.

C COMPILER

For a TASKING C project in the Nios II IDE the TASKING VX-compiler is invoked with the following options: --language=gcc, --gcc-runtime and --gcc-dwarf. These options instruct the compiler to support GCC language extensions, to use the GCC run-time library and to generate debug information for the GNU debugger (gdb).

If the TASKING VX-compiler is used from the command line, then the aforementioned options are switched off by default and the compiler will be strictly ISO C99 compliant, will use the TASKING run-time library and will generate DWARF 3.0 compliant debug information.

The TASKING VX-compiler has a --cpu option to specify the Nios II core for which to compile your application. The valid values for this option are: nios2e, nios2f, nios2s (default). You can set this value at the Tool Settings tab of your project's C/C++ Build properties (Global Options / Processor entry). This value will NOT be automatically set if you select a pre-defined configuration such as low-cost or full-featured which use nios2e and nios2f respectively.


ASSEMBLER

For a TASKING C project in the Nios II IDE the compiler-generated assembly sources are assembled by the TASKING assembler. Hand-written assembly sources pulled in from the Altera HAL are assembled by the GNU assembler (gas). The appropriate assembler is selected based on the source file name extension: .asm and .src for TASKING assembly, .s and .S for GNU assembly.

You can use TASKING assembly for your hand-written assembly sources simply by using the .asm extension on your source file names. Please note that the syntax and the directives set of the TASKING assembler and the GNU assembler are not fully compatible.


LINKER

For a TASKING C project in the Nios II IDE the application is linked by the GNU linker. The GNU linker uses the Nios II IDE auto-generated linker script file (unless you specified a custom script file) and selects the appropriate startup code for your Nios II configuration.

If the TASKING tools are used from the command line, then by default the TASKING linker is invoked, which requires its own script file and startup code.


LIBRARIES

For a TASKING C project in the Nios II IDE the application is linked with the libraries that are included with the Nios II IDE, such as newlib and libgcc.

If the TASKING tools are used from the command line, then by default the application is linked with the TASKING libraries, which include a standard C library, a run-time library for Nios II and an ANSI/IEEE-754 compliant floating-point library.

 


Copyright 2006 Altium BV