In one-dimensional DSP problems it is frequently the case that infinite impulse response filters provide acceptable performance and therefore very wide sum-of-products circuits are seldom required. Two-dimensional problems, on the other hand, often involve image data that would be ``smeared'' by the assymetry of an IIR filter and so finite-impulse response (FIR) filters are desirable in such application. The work reported here began in response to just such a requirement.
Two dimensional DSP problems arise in both realtime and non-realtime contexts. In offline image processing an algorithm may access the numbers encoding the image in any convenient order. Realtime problems, the kind typically associated with FPGA solutions, often are constrained by the scanning structure of the image acquisition or communication mechanisms.
Thus we assume that the sequence represents samples from a two dimensional space, scanned in some specified sequence. The image processing paradigm involves applying a function to a geometric neighborhood of a point in the image space. The data representing this neighborhood (i.e. ) is scattered through by the scanning protocol. Reassembling is one of the system-level design challenges in two-dimensional DSP implementation.
The topology of the image space and the timing of the data stream will determine how the circuit must handle edge effects. Realizing the edge effect policy appropriate to the context is the other characteristic two-dimensional DSP challenge.
Common topologies include the video image, a rectangle, and the radar image, a cylinder. When sequence timing is based on the classical analog implementations there are gaps at the edges of the space that can be logically filled with zeros or handled in more exotic ways, such as reflection. If the sequences have been retimed to eliminate the gaps then implementation of edge correction may require multiple coefficient sets selected dynamically based on the relationship between an input vector and the edges of the space.
These problems are independent of the mechanism used to sum the products except for the observation that packed (retimed) data may preclude exploiting the constant-coefficient assumption. Let us now consider the problem of gathering a coherent at the inputs of the sum-of-products circuit.