vsdevaraddi/Systolic_array
We design a 2-D systolic array architecture as shown in teh figure. Each node is a Processing ELement (PE) which takes in 3 inputs and produces an output. Each PE shifts the data of horizontally and vertically to the neighboring PEs every clock cycle. Systolic arrays access the memory only once, and all the PEs transfer the data to the nearby PEs, thus reducing the memory access.
Specification:
5 horizontal inputs and 5 vertical inputs
5 diagonal inputs
All 15 inputs are given the same input in our design
Each input is 8 bits wide
Clock: 100MHz
Outputs: 5, which are 8 bits wide
Operation being performed: Multiplication and Accumulation at each PE