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 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, and what you need to purchase to get it. 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 |
| Bought from a Third Party e.g. Xilinx: | 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. |
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 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 FX modules
For the FPGA part of the Virtex-II Pro and 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.
Making an Application using your Host PC
If your 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
FPGA development using ISE is restricted to just Win2K or XP or Linux.
Making an Embedded system
If your system needs to run stand alone, you can develop your application
using a PC and then migrate to an embedded system.
