Hardware for two-dimensional digital filtering using Fermat number transforms

Two-dimensional convolution computed using minicomputers is very time-consuming when Fourier transform techniques are used because of the large number of complex multiplications required. The Fermat number transform (FNT) has been proposed as an efficient and exact method of implementing one-dimensional and two-dimensional convolutions. Nonetheless, certain inherent restrictions of this transform limit its usefulness in one-dimensional applications. The restrictions associated with the FNT do not, however, appreciably encumber two-dimensional filtering. An implementation of a small two-dimensional convolution using the FNT on a PDP-11/40 minicomputer is presented. In order to decrease the time required to compute the convolution, a specially designed hardware unit is interfaced to the minicomputer. This unit computes the basic element of computation in the FNT, the butterfly, in hardware. An algorithm is given which removes the need for a matrix transposition required by some transform techniques when the main memory of the computer cannot accommodate the entire input matrix. The algorithm is useful on small disk-based computers since a matrix transposition is a very time-consuming operation. This algorithm, in conjunction with the FNT, is compared with other convolution techniques and is shown to be computationally more efficient in certain instances.