.
Xputer
The Kress-Kung Machine Page
(Anti Machine Page)


 
Reconfigurable Computing pages @ TU Kaiserslautern

last updateJune 2001
.
configware | morphware | flowware | data.streams | anti-machine | KressArray | Xputers


The Success of the Software Industry is RAM-based.

RAM-based, also the Configware Industry will succeed .

to learn more about Configware and Kress-Kung machine (anti machine):
don't miss the RC education workshop !


Why a Duality of Machine Paradigms ?


Reconfigurable Computing goes into every application [X]

Search Google (for the number of hits see the line "Web ... Results" )
Search Yahoo (for the number of hits see the line "Search Results" )
"Reconfigurable Computing" | FPGA & "oil and gas" | FPGA & "automotive" | FPGA & "medical" | FPGA & "chemical" | FPGA & "bio" | FPGA & "defense" | FPGA & "physics" | FPGA & "molecular" | FPGA & "supercomputing" | FPGA & "HPC" | FPGA & "high performance computing" | "Reconfigurable Computing" | FPGA & "oil and gas" | <FPGA & "automotive" | FPGA & "medical" | FPGA & "chemical" | FPGA & "bio" | FPGA & "defense" | FPGA & "physics" | FPGA & "molecular" | FPGA & "supercomputing" | FPGA & "HPC" | FPGA & "high performance computing" |

The von Neumann machine paradigm

The von Neumann machine paradigm does not support configware. Configware is supported by the data-stream-basedKress-Kung machine paradigm (anti machine paradigm). Such data stream machines are programmed from 2 different sources: by flowware, which programs the data streams flowing from and to the machine's DPU (data path unit) or DPA (DPU array), and, by configware.The von Neumann paradigm describes the CPU such, that it encapsulates the DPU (DataPath Unit, or ALU) together with the program counter (figure 1).  The behaviour of the program counter is programmed by Software (figure 2).


Figure 1. 

 


Figure 2

The compact instruction code of a CPU is tightly coupled with the structure of the DPU. This is the reason why the instruction-stream-based von Neumann paradigm does not support morphware. Whenever you tra to reconfigure the DPU, the architecture of the CPU gets destroyed. We need a second machine paradigm: the Kress-Kung Machine (Anti Machine).


The Kress-Kung Machine

About the terminology: the Kress-Kung machine is a generalization (Kress) of the systolic array (first popularized by H. T. Kung). The von Neumann paradigm is instruction-stream-based, whereas the Kress-Kung paradigm is data-stream-based. The systolic array (Kung machine) could be used only for applications with strictly regular data-dependencies yielding pipe networks with only uniform linear pipes. The Kress-Kung array is the generalization [Rainer Kress] of the Kung array by a new synthesis methodology, replacing algebraic mapping methods by general optimization, such as for instance, by simulated annealing [Rainer Kress], so also any wild forms of non-regular pipe networks are supported, so that reconfigurability makes sense.
The Kress-Kung machine (anti machine) is data-stream-based, but not instruction-stream-based. The Kress-Kung machine (anti machine) has no CPU. If it is hardwired, it has a DPU instead, or even a DPA (DPU array). If it is reconfigurable, it has a rDPU or rDPA instead (fig. 4). Instead of a program counter the Kress-Kung machine (anti machine) has one or several data counters, which are located with the memory bank (fig. 4), but not with the (r)DPU nor (r)DPA. The run time bevavour of the  data counter(s) is programmed by Flowware (fig. 3).

Kungelei*

Apropos Kung: in the early days of the Kung array, three different scientist carrying the name "Kung" have been involved: (1.) H. T. Kung (at that time at Carnegie-Mellon, now at Harvard, USA) who has been visible first in this scene by popularizing systolic arrays, (2.) S.Y. Kung (Princeton) who has written an early book on systolic arrays, and, (3.) also a student with the name Kung (sorry, I forgot his first names and affiliation), having been co-author of some early papers on systolic arrays.

*) this word-play joke works only in Germany language


Fig. 3.  Data counter behavior programmed by flowware.  

     
Fig. 4.  The Kress-Kung machine: data counter(s) located within asM(s)





Figure 5. Hardwired Kress-Kung machines are programmed by flowware only.


Programming in Time versus Programming in Time and Space

Structural programming by Configware means Programming in Space. That's why Configware versus Software means Computing in Space and Time versus Computing in Time only.
Instruction-stream-based programming in time only (Software Engineering): one source needed: Softwar only (fig. 6 a).  However, programming morphware (Configware Engineering) means programming in time and space, where two program sources are needed (fig. 6 b): configware for the space domain configures the resources before run time.#, and, flowware for the time domain: for scheduling the data streams flowing during run time.


a)                                                                             b)

Figure 6. a) (von Neumann) CPUs are programmed by Software; b) reconfigurable Kress-Kung machines are programmed
by two sources: resource set-up before run time by configware code,  run time behavior (data streams) by flowware.



Fig. 7. A simple processor execution example: computing in time needing many memory cycles.

Speed-up by time to space migration

Figure 8 (Kress-Kung machine version) illustrates, why time to space migration removes the memory cycles needed for the instruction-stream-based CPU-executed version shown in fig. 7. Fig. 9 lists a few spee-up factors having been published. Fig. 10 summarizes some speed-up mechanisms obtaines ba time to space migration.
.


Fig. 8:  example from fig. 7, but by computing in space: no memory cycles needed.


Fig. 9. Some speed-up examples: time to space migration, for example from CPU to FPGA, or, to PACT platform


Fig. 10: Some mechanisms for speed-up by time to space migration.



for Xputer Lab Homepage, please, click here
invited papers: click here
recent invited talks: click here
for literature click here
configware | morphware | flowware | data.streams anti-machine
search Configware with Google | Lycos | Zapmeta
AllTheWeb | PepeSearch | Northern Light | Yahoo
MSN Search | LookSmart | AltaVista | HotBot
Netscape Search | Entireweb.com | Excite | NBCi | WebCrawler | Ask Jeeves | Web.de |
.
Impressum
.

Computer Structures Group
Department of Computer Science
University of Kaiserslautern
© Copyright 2001, University of Kaiserslautern, Kaiserslautern, Germany Webmaster