Home>>HERON modular systems>>Programming your system
Programming your system
HERON systems are reconfigurable, which means that you must program them to perform the task you need. There are standard software development tools available for the C6000, FPGA and PC. It is our job to adapt those tools via plug ins, libraries and examples to speed the development and debug of your application.
The table below details all of the software that you need for your HERON system. Below that is a full explanation of how you use those various tools to quickly develop the program for your HERON system.
Included on HUNT CD free of extra charge: Installation software
Host API (including device drivers)
HeartConf tool
FPGA loader tool
Hardware Interface Layer for FPGA modules
IP for all FPGA based HERON modules
FPGA demo/frameworks
Examples and Tutorials
plus for 'C6000 users:
HUNT Code Composer Plug ins
HERON-API
C6000 unpacking and imaging libraries
HUNT Server/Loader tool
The following should be purchased from a Third Party e.g. Xilinx or a TI distributor: For FPGA users: FPGA VHDL synthesiser and Place and Route tool, e.g. Foundation ISE® from www.xilinx.com. Users of the Virtex®-II Pro and Virtex®-4 modules with embedded PowerPC® will also require the Xilinx Embedded Developers Kit (EDK®) from www.xilinx.com which includes the GNU compile and debug tools for the PowerPC core. For 'C6000 users: 'C6000 JTAG emulator card with Code Composer Studio
All of our module carriers are supported by our Host API software. Available for several PC operating systems, it includes device drivers for the operating system, and a library layer that provides a consistent programming interface regardless of the operating system or carrier type. All of our system tools work through the Host API, and you can write your own Host based program that communicates with the DSP system using this interface, including HeartConf - the utility that programs the HEART connections for your system.
Our CD provides simple installation utilities to get your system installed and verified with the minimum of effort. The installation process will run confidence checks on your system to ensure the installation is working. Log files are written during that process to help us to support you if the process fails. A successful installation will install all of the libraries and utilities discussed below.
Developing for FPGA modules
You will need some FPGA development tools that
support the Xilinx® FPGAs. We prefer the Xilinx ISE® tools and provide our
tutorials and examples as projects for that, but everything is VHDL allowing
the use of other synthesis tools if you have a reason to do that.
You will start from one of the example projects supplied on the HUNT
ENGINEERING CD. This will ensure that the FPGA type, pin out and I/O standards
are correctly defined for the module you have. The project will include the Hardware
Interface Layer which guarantees the correct use of the hardware connected
to the FPGA (logically and timing). We provide you with utilities to load your
"design" onto the FPGA.
Several of the examples we provide can be
used as they are (IP) and there are also some tutorials that can form the
beginning of your development (RS232, Digital Down Converter (DDC), Front
Panel Data Port (FPDP) etc).
You can download a movie (7.87Mb, soundcard required) to learn more about
FPGA Development
Developing for Virtex®-II Pro &
Virtex®-4 modules with embedded PowerPC®
For the FPGA part of the Virtex®-II Pro/Virtex®-4 FX you will need the same tools as for the pure FPGA modules discussed above.
The modules come with the Hardware
Interface Layer which guarantees the correct use of the hardware connected
to the FPGA (logically and timing).
To use the PowerPC®, the Xilinx Embedded Developers Kit
(EDK®) allows you to configure the peripherals connected to the PowerPC® core,
giving you an FPGA design that can be fed into the ISE® design flow. It also gives you software interfaces to those peripherals, that you
can use in your C program, that is compiled using the GNU C compiler (included in the
EDK®).
Your PowerPC® program can be embedded into your FPGA bitstream, or can be loaded onto the PowerPC® after the
FPGA is configured,
via the HERON FIFOs. A final option is to program your PowerPC® application code into the on-module FLASH memory and have the PowerPC® boot from there.
You can connect a Xilinx® JTAG cable, and use the GNU debug tools (also included in the
EDK®) to debug and change your PowerPC® code.
The FPGA is loaded using the utility we provide.
Several of the examples we provide can be
used as they are (IP) and there are also some tutorials that can form the
beginning of your development (RS232, Digital Down Converter (DDC), Front
Panel Data Port (FPDP) etc). We also provide a tutorial about Getting
Started with the Embedded PowerPC and another about Connecting the PowerPC Processor
to Hardware
Developing for C6000 modules
You will be using Code Composer Studio, which is a generic development tool for
the C6000 provided by TI. It includes a C/C++ compiler, assembler, debugger and Real
Time Kernel wrapped in an Integrated Development Environment (IDE).
We have
extended the environment using Code
Composer Studio Plug-ins, so that you have a development and debug
environment that is properly integrated with the hardware you have. You will
use the HERON-API library in
your C6000 program to allow you to access external hardware such as the HERON
FIFOs in the most efficient way but from a simple C program.
The Server/Loader
tool allows you to load your system (FPGAs, C6000s and the HEART
configuration) from a single tool.
You can download a movie (5.58 Mb, soundcard required) to learn more about
C6000 Development
Making an Application using your Host PC
If your DSP system is installed in a PC you might want to use the PC's processor
as an extra node in your system. Host
API provides you a simple way to access the system from your PC program,
and if you want to incorporate the features of Server/Loader
into your program you can link to a library version of that too.
You can download a movie (4.19 Mb, soundcard required) to learn more about
Host Program
C6000 and FPGA development will need a Windows system (Win2K/XP) and FPGA
development using ISE also supports Linux. When you have
finished developing and debugging your DSP application code it is possible to move
your system to Linux. This is made easy by
providing the same software interface and loader tools for each operating system.
Making an Embedded system
If your DSP system needs to run stand alone, you can develop your application
using a PC and then migrate to an embedded system.