Abstract:
A simplified algorithm for digital signal interpolation and a novel architecture to implement the algorithm in an integrated circuit (“IC”) with significant space constraints are presented. According to embodiments of the present invention, the interpolator is divided into two parts. The first part of the interpolator increases the sample rate by a factor of two and smoothes the signal using a half-band Infinite Impulse Response (“IIR”) filter. The second part of the interpolator increases the sample rate of the signal by a factor of thirty-two using a zero-order-hold (“ZOH”) circuit. In one embodiment, the half-band IIR filter is implemented using an all-pass lattice structure to minimize quantization effects. The lattice coefficients are chosen such that the structure can achieve all filter design requirements, yet is capable of being implemented with a small number of shifters and adders, and no multipliers.
Abstract:
A simplified algorithm for digital signal interpolation and a novel architecture to implement the algorithm in an integrated circuit (“IC”) with significant space constraints are presented. According to embodiments of the present invention, the interpolator is divided into two parts. The first part of the interpolator increases the sample rate by a factor of two and smoothes the signal using a half-band Infinite Impulse Response (“IIR”) filter. The second part of the interpolator increases the sample rate of the signal by a factor of thirty-two using a zero-order-hold (“ZOH”) circuit. In one embodiment, the half-band IIR filter is implemented using an all-pass lattice structure to minimize quantization effects. The lattice coefficients are chosen such that the structure can achieve all filter design requirements, yet is capable of being implemented with a small number of shifters and adders, and no multipliers.
Abstract:
A lattice filter for processing lattice equations includes a fast adder (78) for adding partial products to partially perform a multiplication step. A full adder (44) is provided for completing the multiplication and then adding the product with a previously calculated and stored value. The input to the full adder (44) is multiplexed with a multiplexer (74) for selecting the sum output of the fast adder (78) and a multiplexer (76) for selecting the carry output of the fast adder (78). The multiplexer (74) also selects prestored values for addition with the summed output of the full adder (44). This summed output is selected by the multiplexer (76). The fast adder (78) sums partial products simultaneous with addition operations of the full adder (44). In this manner, the full adder (44) operates at a slower rate than the fast adder (78). Storage registers (58), (62), (70) are utilized to delay results output by the full adder (44) for later selection and operation thereon. These values are utilized as both the multiplicand the addend in subsequent operations. The multiplier is stored in a K-stack (90) and selected for the appropriate operations. A bit correction circuit (190) provides corrections for truncated bits in the form of a carry input to the full adder (44).
Abstract:
A single section digital filter is provided with a digital input signal and includes a serial multiplier having an input responsive to predetermine parameters. An adder/subtractor has an input serially connected to the multiplier output. A first switch serially selects recirculating data from an adder/subtractor output directly or delayed, or the digital input signal. A second input of the multiplier is serially provided with the selected data. A second switch serially and selectively connects delayed selected data to a second input of the adder/subtractor. A latch serially receives delayed data for effecting series/parallel conversion thereof.
Abstract:
Various techniques are generally described for digital signal processing (DSP) such as discrete time filters. In some examples, a Canonic Filter Module (CFM) can be used to configure the discrete time filter using an LSF-Model with a finite length sequence. A single CFM can be configured to provide any type of discrete time filter used in signal processing. Filters can be modeled as a set of interconnected notch filters, a lattice structure of a discrete time filter is generally described that is based on a LSF-Model.
Abstract:
A vehicle navigation system uses a one-multiplier Gray-Markel filter. The sign parameter of each stage of the filter is selected by an algorithm which limits the maximum signal passing through the filter, thereby preventing overflow.
Abstract:
An LPC digital lattice filter includes a full adder (44) which has one input thereof multiplexed with a multiplexer (46) and the other input thereof multiplexed by a multiplexer (50). Combination of the multiplication and addition steps with the full adder (44) results in the calculation of one of the digital filter equations. The result of each of these equations is either a Y-value or a B-value. The Y-values are stored in the output of a Y-register (78) and the B-values are stored in a nine stage B-stack (100) for delay thereof. The multiplexer (60) selects multiplicands from either the output of the one stage delay (86), from the B-stack (100) or the input excitation I. The multiplexer (46) selects addends from either the output of the B-stack (100), the output of the B-register (96) or from the multiplexers (60) or (66). The values are calculated in an interleaved sequence with a Y-value calculated and then a B-value calculated utilizing this generated Y-value. This generated Y-value is then used in calculating the next sequential Y-value and then discarded. However, the B-values are delayed until calculation of the next set of equations. The interleaved sequence allows use of only one set of delay stages.
Abstract:
A digital filter for a voice synthesis circuit which operates on the basis of the principle of linear predictive coding. More particularly, a digital filter of the lattice type for voice synthesis on the basis of the principle of linear predictive coding and capable of operating with a low clock frequency. Furthermore, the digital filter may use one multiplication circuit and one addition/subtraction circuit as well as containing an attenuation term element.
Abstract:
Various techniques are generally described for digital signal processing (DSP) such as discrete time filters. In some examples, a Canonic Filter Module (CFM) can be used to configure the discrete time filter using an LSF-Model with a finite length sequence. A single CFM can be configured to provide any type of discrete time filter used in signal processing. Filters can be modeled as a set of interconnected notch filters, a lattice structure of a discrete time filter is generally described that is based on a LSF-Model.
Abstract:
A system for processing a plurality of Equations includes a single full adder (44) which has the A input thereof multiplexed by multiplexer (62) and the B input thereof multiplexed by a multiplexer (94) and a multiplexer (66). The multiplexer (94) is operable to select a multiplicand for multiplication operations from a delay stack (54) for multiplication operations. The multiplication operation is performed by adding together partial products recording to Booth's modified algorithm. The partial products are generated by recode logic circuit (90) and (98). The recode logic circuits (90) and (98) are controlled by the multiplexed output from the multiplexer (80) which selects bits of a given multiplier stored in a K-stack (72). The multiplexer (62) in conjunction with the recode logic circuits (90) and (98) control reconfiguration of the adder (44) as a multiplication circuit. The addition operation is performed on the generated product by circulating the product back to the B-input of the adder (44) through the multiplexer (66). Data is selected from the output of a data stack (52) or from a D-register (108) which contains a prestored output value.