Skip to Main Content
An array-based algorithm for multichannel lattice filtering is proposed. The filter is formed by a set of units that are adapted locally and concurrently using recursions that closely match those for single-channel lattice filters. The design, based on a known modular decomposition approach, allows for unequal filter lengths to be specified for different input channels. Individual units are updated using a square-root recursive least-squares (RLS) algorithm in array form that relies mainly on Givens rotations and exhibits highly favorable numerical behavior and a regular structure that is appealing from a hardware implementation perspective. Iterative implementations of Givens rotations using the Newton method and cordic processors are examined in the context of fixed-point implementations. A procedure based on three cordic steps is proposed to handle complex data that arise in several applications of multichannel filtering. Algorithm initialization issues are also addressed. The array algorithm is compared in simulation with plain RLS, QR-RLS, and two related multichannel lattice algorithms. Its performance is shown to be comparable to that of other QR-decomposition-based algorithms under fixed-point arithmetic. In particular, it retains desirable graceful degradation properties as the numerical precision decreases.