NuMesh CFSM Architecture

The CFSM ("Communications Finite State Machine") is a simple, fast programmable communication processor local to each node. It mediates the communications between each node and its immediate neighbors, following a largely pre-compiled systolic pattern which is "choreographed" by appropriate programming of the CFSMs within individual nodes. For example, a node in a 2D mesh might drive data over its East port during the 37th clock cycle of a periodic schedule, while its neighbor to the east would be programmed to load data from the west during the same cycle.

Early NuMesh prototypes used straightforward single-thread FSM controllers capable of enabling various combinations of reads and writes during each clock cycle. Our experience with these designs have led to an alternative CFSM architecture, the subject of the following sequence. Click on each thumbnail for a full-size view.