The Promise of rRAM
Thanks for taking the time to consider rRAM. We think rRAM
is a powerful new concept in silicon devices combining the strength and flexibility of
standard RISC processors with a high level of integration and interconnection.
rRAM is a new kind of scalable computing component
supporting a wide range of applications and ultimately offering performance orders of
magnitude higher than conventional single processor systems.
Killer Applications
Today's PC's have a small number of microprocessors. The focus of development has been
to make the main processor as fast as possible. However many applications are now
appearing which need the power of distributed processing. VLIW, and DSP approaches have
improved available computing power but still have significant bottle necks in their
architecture. The rRAM will excel in a number of partitionable applications both for the
main stream and specialized processing. Applications which will leave conventional
processors standing are:
- High resolution virtual reality rendering in real time
in a low cost PC. No silicon (and certainly no programmable silicon) can do that today.
- Soft, real time, MPEG or other video encoding and
decoding.
- Fast real time, soft DSP applications.
The Software Question?
What about the software? This is always the first question when array processors of any
kind arise. We think rRAM side steps the issue. This is our thinking:
- Porting of applications? Our work with a number of
graphic (and other structured) applications shows that C code can be ported to rRAM in
about 2% of the original code development time. It is mostly a process of separating inner
loops and associated data and assigning a processor. The control flow and the detailed
code remains largely unchanged.
- A library of commonly needed high level rRAM functions
will be available to the developer. These will be host based modules which implicitly
handle most of the setup and communication issues to (and within) the rRAM. The developers
will link their programs to these high level functions like any other library. High level
functions examples are DCT, motion estimation, template matching, wavelet etc.
- The rRAM high level library will have a host based
alternative with the same interfaces so that the program can be largely debugged in a non
rRAM environment.
- Porting of OS? rRAM is a very general purpose engine and
we suppose it would be possible to port Linux or NT. However, that is not the forte of
rRAM. Think more (for example) of replacing the graphics engine of your PC with something
much more generic that can be programmed to perform a wide variety of applications.
In other words we think the programmability of the rRAM
improves rather than diminishes the flexibility and programmability of the systems it is
added to.
The rRAM device family can cover a wide variety of applications in the multimedia and
general data processing markets, taking market share from a wide variety of toady's
hardwired devices.
This can improve your market share and reduce number of
different products your company builds.
Key user features of the rRAM are:
- Performance: The rRAM64 has 64 times the performance of
a single processor in target applications. Making it possible to use the device where
hardwired logic or FPGAs are required today.
- Flexibility: As a configurable device a wide variety of
applications can be addressed with a single part.
- Easy to use: Conventional, existing, language compiler
tools are used for programming. The programming model is very simple making it possible
for any C programmer to write code. The complex VHDL, synthesis, layout, and timing issues
of conventional FPGA or customer device development are avoided.
- Fast time to market: Because of the ease of use features
rRAM code can be developed and prototyped quickly.
- Dynamic configuration: rRAM can change its personality
within a few clock cycles into a completely different function.
- Field upgradable: Unlike hardwired approaches rRAM can
be field upgradable allowing new multimedia standards to be accommodated or whole new
applications marketed.
Although rRAM is indeed challenging to today's silicon
technologies we are are focused no the long term opportunities for this architecture. By
2005 the progress of silicon technologies will be such that large numbers of processors,
each with several megabytes of local DRAM can be integrated on a single chip. At this
point it will be possible to place a real OS on each processor and use conventional
constructs for inter process communication.
Updated:
11/11/06