The SDK is a set of programmers’ libraries and applications for assisting in the development of algorithms for products based on the ESA FFTC space qualified processor. Currently the FTAB board developed by Astrium and the OPDP board from NLR are supported but the base classes can be extended for other products built around the FFTC.
The libraries make algorithm development and testing faster and easier. The learning curve for new users is reduced. In addition to the libraries there are graphical based applications (GUIs), also built on top of the libraries. The GUIs permit easy demonstration of the FFTC and simple testing of algorithms in a visual manner.
Some of the benefits of the SDK are described below:
• Easy to use – The FFTC libraries are written for the Microsoft .NET framework. This is an easy to use run-time that is standard with Windows Vista and 7 and a free download for Windows XP. .NET allows developers to use a wide range of languages including C++, Visual Basic and C#.
• Flexible – By use of Mono the same binaries can be used also under Linux.
• Powerful – By using the libraries from an established framework and language, highly complex applications can be developed that integrate compile and run-time sections into one application.
• Low cost – Compilers and software development environments are available free of charge (e.g. Visual Studio Express and Sharp Develop).
• Encourages development – The SDK includes a simulator and performance profiler that allows algorithms to be run and benchmarked without FFTC based hardware.
A software development kit or SDK is an often used phrase; however its meaning is broad, ranging from simply installing a set of documents to providing a complete graphical based user environment. The ESA FFTC SDK comprises the following:
• Algorithm Library – A programmers library (DLL) consisting of a set of classes for describing an algorithm and ultimately producing it in a form that can be used with the hardware.
• FFTC Simulator Library – A programmers library (DLL) consisting of a simulator and performance profiler for the FFTC chip and control firmware. Generally the developer will not need to access this library directly, rather access is via the target board simulator.
• FFTC Utils Library – A DLL featuring a number of utilities that may be useful to developers. These include the specific data formats used by the board and various data generators for testing purposes.
Astrium FTAB SDK
The FTAB from Astrium is a development board based on the FFTC chip. An SDK built on top of the FFTC SDK provides an easy to use interface to either an FTAB simulator or an actual FTAB board via SpaceWire PCI or USB interfaces. The SDK includes the FFTC libraries and an GUI SDE for creating simple control vectors, performance profiling and executing algorithms on simulator or an actual FTAB via a SpaceWire PCI interface.
NLR OPDP SDK
The OPDP board from NLR is a development board based on the FFTC chip. In addition to the standard FFTC architecture, the OPDP board adds a further independent data flow module in the form of a configurable switch fabric and a simple macro language that removes the need for a controlling host processor. This switch fabric and macros can be programmed and simulated via the FFTC SDK extensions found in the NLR OPDP SDK and the NLR OPDP SDE.