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)
FPGA loader tool
Hardware Interface Layer for FPGA modules
IP for all FPGA based HERON modules
Examples and Tutorials
plus for 'C6000 users:
HUNT Code Composer Plug ins
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.