Curtiss-Wright Controls Defense Solutions (CWCDS) plans to support Gedae, Inc.’s !dea software development platform for multiprocessor DSP systems on its high bandwidth, highly rugged, OpenVPX CHAMP-AV8 DSP engine board. The !dea Development Environment is a suite of powerful software tools for multicore and multiprocessor systems to address the complexity of programming these systems with complex memory architectures.
The !dea language, automated compiler technology and analysis tools enable efficient, effective development. This support will enable existing Gedae applications to run on the high-performance CHAMP-AV8, taking full advantage of the board’s advanced third generation Core i7 multi-core processor and high-bandwidth Serial RapidIO-based fabric.
The development of the new Gedae Board Support Package (BSP) for the CHAMP-AV8 was aided by use of Curtiss-Wright Controls’ IPC and Continuum Vector software tools. Because the previous Gedae BSP for CHAMP-AV6 was developed using an earlier version of IPC, the development of the new SRIO-compatible BSP was simplified. The new CHAMP-AV8 Gedae BSP makes use of optimized DSP functions in the Continuum Vector library.
The CHAMP-AV8 6U OpenVPX digital signal processor (DSP) combines the floating-point performance of the latest 3rd generation Intel Core processors with the substantial bandwidth and system-enabling features of the 6U OpenVPX form factor. Utilizing a pair of 2.1 GHz quad-core processors featuring the Advanced Vector Extensions (AVX) instruction set, the CHAMP-AV8 DSP card delivers up to 269 GFLOPS. The high-performance cores are kept working efficiently with three levels of internal cache and a 21 GB/s (peak) DDR3 memory sub-system connected directly to the processor.
The CHAMP-AV8 digital signal processor board incorporates the enhancements of the OpenVPX (VITA 65) standard with a complete suite of Data Plane, Expansion Plane and Control Plane interfaces. With up to 32 GB/s of backplane performance, the CHAMP-AV8 OpenVPX Intel Core i7 signal processor has the bandwidth required to effectively harness the power of the processors.
Gedae is an application development environment consisting of a language, compiler and thread scheduler. It also includes an automated build system and a tool suite supporting development activities. The compiler is the central component of Gedae and automatically implements software for a single processor, multiprocessor, multicore or heterogeneous system.
Because the Gedae compiler is aware of the multi-processor and the multi-core and memory architecture of the target, it automatically customizes the software to that architecture. As a result, it is easy to port applications among processors. The Gedae language provides information in a form that allows the compiler to automatically perform the most complex tasks, including threading the application, planning memory and implementing the distribution of the software.