We describe a complete, fast implementation to compute a 2D discrete cosine transform. We briefly discuss the hardware model for which we are developing a toolkit. We employ an 11 x 8 array of common processors handling data at the level of words with automatic data flow synchronization. We present a general software solution as opposed to a custom-built hardware description. The solution is a unique composition of two, algorithms, yielding a systolic (highly parallel with regular data flow) implementation. It is efficient as utilization of resources is high. Although the solution is computationally intensive, it is suitable for real-time applications as the input data, which is an infinite sequence of 8 x 8 matrices, is input one row at a time continuously. Finally, we discuss programming tools which are needed to ease the programming effort. We hope this work demonstrates the importance of such tools.