A memory centric approach to massive parallel processing based on asynchronous logic

Overview
The VIAMPP system is a clockless and registerless 64-bit computing system consisting of three basic building blocks:
The memory system forms a single 64-bit address space and is based on individual tiles of one tera-words non-volatile memory. The memory interface also decided if an access is to the local tile or a remote tile.
The routing system connects the individual memory tiles together and also handles the signalling between the various processing units.
The processing unit can be compared to a CPU in classical computer systems, but differs in many ways it operates. One of the main difference is the lack of dedicated registers for processing data.
All units together form a massive parallel processing system with up to 2^28 processing elements and 2^64 64-bit words of memory.

The Routing
no store and forward; information flows or is halted;
The Compiler

llvm based;

The Memory
The memory system can span an entire 64-bit address space and is made up of individual tiles of one tera-words. Tiles are connected together via the routing system.
The memory system is responsible for all incoming and outgoing requests, either local or remote. It is connected to the processing unit, the memory cells and the routing system.
The memory system decides if a memory request from the processing unit is directed towards the local tile or a remote one. In case the access is addressed to a remote tile it also prepares the necessary information for the routing system.

The Processing Unit
not a classical cpu; flow control units; mostly shared components;
Supporting Tools

simulator; design and simulation tool;