You are here

Chip rewires itself on the fly

Submitted by Karthik on 26 April, 2004 - 17:02

A chip start-up called Stretch has announced the availability of a processor named the S5000, which it claims is fully reconfigurable and reprogrammable during run-time.

The chip combines an existing RISC (reduced instruction set computing) architecture with a large reconfigurable area of programmable logic called the Instruction Set Extension Fabric, ISEF. The company's own C/C++ compiler automatically spots areas in a program that require intensive computation and creates new instructions for the processor to handle those tasks.

News.com is carrying this article. Analogzone has more detailed information, along with benchmark results:

Conventional wisdom is that clock rate determines processor performance -- and that higher performance at the same clock rate requires complex fixed-instruction-set architectures (e.g., VLIW, SIMD) that are difficult to program and are effective only in certain applications. Stretch's S5000 family breaks new ground with configurable instructions that reduce program "hot spots" (sequences of operations that must be repeated many times) into single instructions.

For conventional processors such as DSPs, optimization of hot spots is usually done by a programmer using low-level assembly code, which directly represents the sequence of processor operations one by one. Compilers automate this task, but only with a significant loss in performance. Further, because each operation is very simple, tens to hundreds of assembly instructions are needed to implement each hot spot.

On a Stretch S5000 processor, an entire hot spot -- expressed only in C/C++ -- is reduced to a single instruction. First, the software developer identifies hot spots using Stretch's profiling tool. Then the C/C++ source code from the hot spot is automatically compiled into an ISEF configuration, creating a single custom instruction that implements the entire hot spot. Not only is this process easy, but the performance gain can be huge: tasks that require tens to hundreds of instructions on conventional processors becomes just one instruction on the Stretch S5000.