The term ``computational origami'' was coined by Alan Huang of AT&TBell Laboratories [16][15][14] to refer to a class of parallel computing architectures that have four main properties:
On the surface, an origami array looks identical to a systolic array,
which also consists of a regularly connected array of processing
elements (PEs). However, the added constraints that the architecture
be tessellable and have causal data flow give it certain properties
that will be discussed below. There are no constraints on the size of
the network, processor functionality, or level of connectivity, as
long as the three constraints above are satisfied. There are many
viable origami networks, but we will be dealing solely with simple
rectangular arrays because they are the easiest to analyze. The width
of each array, , is the number of PEs arranged horizontally in the
array, and the height,
, is the number of PEs arranged vertically.
More detailed information about origami arrays and their application can be found in [5][16][13][10][4][6][3][19][15][14].