Latest question:
How do you think the new GigE standards will influence the machine vision industry?
Respond or ask your question now!









By David B. Pointer
SRC Computers
Code intended to be compiled for the MAP processor is written as separate subprograms and collected into a single logic block by the Carte Programming Environment through the code in-lining process. The subprograms are called from routines executing on the microprocessor, as well as from other MAP routines. This technique permits hierarchical code development and code reuse. It also permits expressing greater parallelism within code blocks and permits optimizations across subprogram boundaries. The Carte Programming Environment then provides support for integrating the microprocessor routines, MAP routines and libraries into a single Unified Executable that contains the microprocessor instructions, MAP logic and all required library routines to manage the control of the program.
Debugging Tools
The Carte Programming Environment fully supports co-development of software and hardware functional units through the use of debugger and hardware simulation tools. With the Carte Programming Environment managing both the microprocessor code as well as the simulation code, applications execute seamlessly in hardware or simulation environments. The Carte Programming Environment creates program executables that support source-level debugging through GNU’s gdb debugger, the Intel debugger, or any microprocessor-oriented code development tools. In debug mode, a program is executed entirely in the microprocessor. The routines coded for MAP processors are source line unchanged but retargeted for the microprocessor. This mode of development permits highly productive algorithm development and debugging. A MAP routine that is developed using debug mode will execute correctly when retargeted to the MAP processor. Debug mode can be used on any standard PC containing the Carte Environment.
APPLICATIONS:
SAR Backprojection
The Spotlight Synthetic Aperture Radar (SAR) Backprojection algorithm is considered to be the “gold standard” of the SAR imaging techniques. This section describes a study that compared the performance of a MATLAB implementation of a 2D SAR Backprojection application to a MATLAB – MAP routine implementation and to an all C Language implementation. The compute intensive MATLAB routines were converted into C Language and compiled using the Carte Programming Environment, which targets the SRC IMPLICIT+EXPLICIT Architecture with its MAP reconfigurable hardware.
A spotlight SAR image is a two (or three) dimensional mapping of received radar energy. A SAR sensor illuminates a target area with a series of linear frequency modulation pulses. The location of an individual scatterer is determined by measuring the range and doppler (range rate) and comparing this to a central reference point, called the motion compensation point. As more pulses are used, the azimuth, or cross-range, resolution increases.
There are several algorithms that have been developed to form spotlight SAR images. In deciding which algorithm to use, there is a tradeoff between computational efficiency and imaging accuracy. For instance, the simplest algorithm is to order the pulses into a rectangular array and to perform a two-dimensional Fourier transform. However, the resultant image will not be very accurate, as the algorithm does not compensate for scatterer motion through the synthetic aperture. The most accurate image formation algorithm is the tomographic backprojection. This backprojection algorithm calculates an exact solution for every pixel in the image, but has very high computational cost. There have been numerous algorithms developed that have acceptable accuracy with much less computational time than the backprojection algorithm. The most popular of these is the polar format algorithm.