Reads one or two sources of data from memory, write result to memory
Each source and destination is defined by start address, word gap (e.g. given word i at location L(i), then word i+1 is located at L(i+1) = L(i) + delta, with delta signed value.
Each source and destination can be shifted, meaning a supplemental word read/write to get/set data as expected.
Maintains an internal registry of 32 values of 32bits.
operations with one source of data S, to a destination D
various binary operation between S and the internal registry I (S, S and I, S or I, I, etc...), with configurable way to select the internal value to use (fixed, dynamic by counting, dynamic by the nature of S, etc...) ⇒ S'
various binary operation between D and the internal registry I (S, S and I, S or I, I, etc...), with configurable way to select the internal value to use (fixed, dynamic by counting, dynamic by the nature of S, etc...) ⇒ D'
various binary operation between S' and D' (S', S' and D', S' or D', D', etc...)
alternatively, some arithmetic operation between S and D and I
Can hog or share the data channel accessing the memory.
Word size : 16 or 32 bits
Reads one or two sources of data from memory, write result to memory
Maintains an internal registry of 32 values of 32bits.
operations with one source of data S, to a destination D
Can hog or share the data channel accessing the memory.