The Advantages of Software Configurable Processors

Date: 21 Dec 2007
Synopsis: The processors used in video surveillance are faced with a variety of difficult computational tasks. They must run including increasingly complex tasks in real time such as video analytics algorithms, servicing of high-definition sensors, and network management. Dealing with all of these requires an architecture with a high degree of performance and flexibility. A software configurable processing engine is a good solution for this application.

Stretch's implementation of this type of processor combines a configurable processing engine with a programmable fabric (Instruction Set Extension Fabric, or ISEF). The ISEF is a software configurable compute fabric that enables system designers to extend the processor instruction set and to define new instructions using C/C++ code. These "extension instructions" are then automatically synthesized, placed, and routed into the ISEF. System designers can thus optimize the processor instruction set for specific applications in real time to handle tasks such as video processing, analytics and network management (Figure 3); in other words, the designer can implement portions of a desired algorithm in hardware by using the ISEF, which sits within the processor's data path. With this architecture, the instruction issue logic of the processor, as well as the intelligent compiler, can make full use of these hardware functions and schedule them into the instruction execution flow.

 

 

 

 Figure 3. A software configurable processor, combining a processing engine with an Instruction Set Extension Fabric (ISEF) and embedded RAM (IRAM), provides a flexible and powerful processor architecture for video surveillance applications.

This results in a significant improvement in processor performance. The programmable fabric can now execute entire sections of application code in a single instruction. In addition, because the hardware is tightly coupled, the compiler can optimize instruction issues to maximize performance.

At the physical layer, each software configurable processor device can interface with up to four other processors through dedicated 1.2GB/S interfaces. This capability allows system architects to create processor array topologies best suited for their application. To unburden the processor with processor array functions, each processor has a dedicated processor network interface and switch circuitry to accommodate inter-processor communication. At the software layer, programmers can dedicate tasks, establish communication channels between processors, and even share resources between processors.

What's Ahead
The future of video surveillance systems is bright. Emerging video processing and analytics algorithms are raising the capabilities of surveillance systems to ever-higher levels. New scalable codecs are making video streams more readily available for consumption by a multitude of both high definition and hand held devices. And innovative new processor architectures such as software configurable processors are up to the challenge, ensuring that surveillance systems keep pace with ever more stringent security and safety needs in the public and private domain.

About the author
Mark Oliver is the Director of Product Marketing at Stretch. A native of the
, Oliver gained a degree in Electrical and Electronic Engineering from the University of Leeds . During a ten year tenure with Hewlett Packard, Oliver managed Engineering and Manufacturing functions in HP Divisions both in Europe and the before heading up Product Marketing and Applications activities at a series of video related startups. Prior to joining Stretch, Oliver managed Marketing for Video and Imaging within the DSP Division of Xilinx.