The present application is a U.S. National Phase Application pursuant to 35 U.S.C. 371 of International Application No. PCT/IB2010/055584, filed on Dec. 4, 2010, which in turn claims priority under 35 U.S.C. 119(a) to Indian patent application serial number 3081/CHE/2010 filed on Oct. 18, 2010, the entire contents of which are herein incorporated by reference.
Digital signal processing (DSP) is a technical field concerned with the representation of continuous analog signals by a sequence of discrete numbers or symbols and the processing of such discrete sequences. DSP algorithms may be performed by standard computers, computing devices or microprocessors, by specialized processors called digital signal processors (DSPs), or on specialized hardware such as application-specific integrated circuit (ASICs). In addition, digital signal processing may be performed on more powerful general purpose microprocessors, field-programmable gate arrays (FPGAs), digital signal controllers (mostly for industrial application such as motor control), and stream processors, among others.
Oftentimes, a DSP system incorporates one or more digital filters. A digital filter is a system that performs mathematical operations on a sampled, discrete time signal (e.g. sequence of digital samples) to reduce or enhance certain aspects of that signal. For example, a high pass digital filter may be used to suppress or reduce low frequency components of a signal and enhance or amplify high frequency components. Conversely, a low pass digital filter may be used to suppress or reduce high frequency components of a signal and enhance or amplify low frequency components. A further example may be a notch digital filter that suppresses or reduces a specific frequency component or a small range of frequency components of a digital signal. An application for such a notch filter may be reducing the 60 Hz frequency component that is introduced as noise due to electrical power lines.
The LSF-Model of a sequence translates a causal finite length sequence into sets of AH-sequences and a few complex constants based on a set of model parameters and a spectral decomposition principle. From the spectral decomposition principles used for LSF Models, a Canonic Filter Module (CFM) is identified, which can be configured to realize a finite impulse response which is an AH/MP/NP/SM/LP-sequence. A single CFM block may be configured to implement all types of discrete time filters. Further, the CFM can also be configured to realize any stable discrete time filter with a rational transfer function defined with finite number of zeros and poles.
The basic building block of a CFM is a notch filter with transfer function (i) (1−ei2παz−1), (ii) (1−2 cos(2πα)z−1+z−2) defined by a single notch frequency at 2α [radians]. As these two notch filter blocks are also lattice stages ((i) LU, (ii) LV), they are also robust to quantization noise. Hence the CFM structure is not only modular but also robust to quantization noise. As the CFM is a basic module of any discrete time filter, its optimal realization effectively results in an optimal realization of any discrete time filter. As the notch filter LU utilizes a Rotate-and-Accumulate (RAC) operation (α≠{½, 0}), one can also use CORDIC algorithms for realizing LU. The notch filter LV requires a real Multiply-And-Accumulate (RMAC) operation. As Notch filters serve as basic building blocks in time domain filtering operations, we believe the Notch filters are as fundamental to filtering as NAND gates are to logic circuits. That is, as a NAND gate is a building block of any combinatorial logic circuit, a Notch filter defined by an LSF also serves as a basic building block of any discrete time filter (FIR/IIR).
Within embodiments described herein, a method for determining a digital filter structure is disclosed. The structure comprises a lattice filter structure derived from an LSF-Model of a causal finite length sequence. The structure can be implemented by a Canonic Filter Module (CFM) which uses two types of basic lattice stages that are notch filters defined by a single notch frequency. The filter structure, apart from its modularity, is also robust to coefficient quantization noise, which is desirable in many practical signal processing systems. Further, the notch filter lattice structures are each configured with a single input node and single output node.
One method described herein includes obtaining a transfer function for a digital filter in the form of one or more filter components. The filter components include an annihilating component, a minimum phase component, a non-minimum phase component, and a symmetric component, although not every component may be present for a given desired filter. Each filter component is implemented as a set of interconnected notch filters. In addition, each set of notch filters may include at least one of a first notch filter having a half-lattice structure and a second notch filter having a full lattice structure.
The method may further include implementing each filter component as a series and/or parallel combination of one or more first notch filters and one or more second notch filters. For example, the annihilating component may be a series combination of one or more first notch filters and one or more second notch filters. As another example, the minimum phase component, the non-minimum phase component, and the symmetric component may be a parallel or series-parallel combination of one or more first notch filters and one or more second notch filters. Additionally, the method may include decomposing a filter component, such as the minimum phase component, the non-minimum phase component, and the symmetric component, into annihilating subcomponents such that the annihilating subcomponents include one or more first notch filters and one or more second notch filters.
Also, the method may include using a canonic filter module structure to define or implement at least one of the annihilating component, the minimum phase component, the non-minimum phase component, and the symmetric component. Further, the method may determine lattice coefficients of the first notch filter and the second notch filter for each set of notch filters. In addition, the method may generate a data structure defining the digital filter structure.
Another embodiment of the present disclosure includes a device for filtering digital signals. The device may include a processor having one or more function modules. The function modules may include an annihilating function module, a minimum phase function module, a non-minimum phase function module, and a symmetric function module. Further, each function module may include a set of interconnected notch filters such that each set of notch filters includes at least one of a first notch filter having a half-lattice structure and a second notch filter having a full lattice structure. In addition, the device may include a memory coupled to the processor and storing sets of half-lattice and full-lattice coefficients respectively corresponding to each set of interconnected notch filters.
The function modules may include series and/or parallel or series-parallel combination of one or more first notch filters and one or more second notch filters. For example, the annihilating function module may include a series combination of one or more first notch filters and one or more second notch filters. As another example, the minimum phase function module, the non-minimum phase function module, and the symmetric function module may include a series, parallel, or a series-parallel combination of one or more first notch filters and one or more second notch filters. Further, the device may include a canonic filter function module configured to be a function module such as an annihilating function module, a minimum phase function module, a non-minimum phase function module, and a symmetric function module.
Additionally, the first notch filter having a half-lattice structure may include a first delay circuit, a first multiplier circuit, and a first adder circuit. Alternatively, the second notch filter having a full-lattice structure may include a second delay circuit and a third delay circuit, a second multiplier circuit and a third multiplier circuit, and a second adder circuit, a third adder circuit, and a fourth adder circuit.
The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description.
In the following detailed description, reference is made to the accompanying drawings, which form a part hereof. In the drawings, similar symbols typically identify similar components, unless context dictates otherwise. The illustrative embodiments described in the detailed description, drawings, and claims are not meant to be limiting. Other embodiments may be utilized, and other changes may be made, without departing from the spirit or scope of the subject matter presented herein. It will be readily understood that the aspects of the present disclosure, as generally described herein, and illustrated in the Figures, can be arranged, substituted, combined, separated, and designed in a wide variety of different configurations, all of which are explicitly contemplated herein.
The output of the Input Decimator 140 is configured to generate an output signal xM[n] in response to digital signal xS[n]. Signal xM[n] can be provided to a Digital Filter 150 having an impulse response h[n], which may be configured to responsively generate an output digital signal yo[n]. The transfer function for the Digital Filter 150 may be given as H(z), which is the z-transform of the impulse response h[n]. The Digital Filter 150 may be any appropriate variety of filter functions such as a low-pass filter, a high-pass filter, a band-pass filter, a notch filter, for example, or any other filter that may be used to reduce or enhance certain aspects of the digital signal xM[n] in the digital signal processing system 100. Further, the output digital signal, yo[n] of the Digital Filter 150 may be provided to an Output Interpolator 160, which may have an up-sampling factor L2. Output Interpolator 160 may be configured to output digital signal yL[n] in response to digital signal yo[n], where digital signal yL[n] may be provided to an Output Sampling Filter 170. As with the Input Sampling Filter 130, the Output Sampling Filter 170 may be used to reduce aliasing and imaging effects introduced during the digital conversion, decimation, or interpolation process. An impulse response for the Output Sampling Filter 170 may correspond to a2[n]. Output Sampling Filter 170 may be configured to output digital signal ys[n] in response to digital signal yL[n] in accordance with the impulse response a2[n]. Digital signal ys[n] can be provided to an Output Decimator 180, with a down-sampling factor of M2 which responsively outputs signal yM[n]. The output signal of the Output Interpolator, yM[n], may be provided to a Digital-to-Analog Converter (DAC) 190, which may responsively convert the digital or discrete time signal yM[n] to a continuous time analog signal yo(t). One or more of the filtering operations performed by filter modules 130, 150, and 170 may be adapted to use the filter structures described herein.
Further details of the methods and systems described herein may be found later in the specification section entitled “Properties and Further Examples of the Canonic Lattice Filter Structures Based on Notch Filters.” Furthermore, in the following description, much of the mathematical justification for the filter derivation may be found in “The Line Spectral Frequency Model of a Finite-Length Sequence” by Yedlapalli, S. S.; Hari, K. V. S.; IEEE Journal of Selected Topics in Signal Processing, Volume 4, Issue 3, pp 646-658 (2010), the contents of which are hereby incorporated herein by reference for all purposes, and are referred to herein as “the LSF Model publication”. This publication is also referenced herein by way of the following notation: “/[1]”, wherein, for example, a reference to “property 8/[1]” refers to property 8 as described in the LSF Model publication.
In the LSF model publication, a spectral decomposition of finite length sequences is described. The filter structures described herein make use of the LSF spectral decomposition techniques by applying them to the impulse response sequence of a desired FIR filter.
Annihilating sequences, or AH sequences, are basic sequences. The AH sequences {χAH, χU, χV} can be synthesized by cumulative convolution operation of basic sequences defined by the LSFs {θAH, u, v} as in
Alternately, from linear system theory one can also use a non-recursive discrete time system which can use difference equations to generate AH-sequences. The non-recursive discrete time filter in
An LTI system with transfer function as ΛAH (α, z) can be recognized as a Notch filter with spectral null at f=α.
In addition, the LSF decomposition and generation of digital filters may be extended to any rational transfer function.
As set forth in more detail in the LSF Model Publication, identifying the various polynomial components may be achieved by factoring and finding the roots for the polynomial X(z). This may be done using a root-finding software utility program running on a microprocessor. Numerous utilities exist including the function “roots( )” in the Matlab® software from The Mathworks, Inc. Software is then used to group the roots into the various filter function modules, or components, as described in the LSF model publication with respect to a polynomial corresponding to a finite sequence. The roots of a polynomial, which in this case correspond to the transfer function X(z), may lie within the unit circle of the z-domain, on the unit circle of the z-domain, or outside the unit circle in the z-domain. Roots of X(z) that lie on the unit circle may be grouped together to be the annihilating filter component XAH(z) 320. A root, or zero, on the unit circle corresponds to suppressing or reducing a frequency component that corresponds to that frequency in the frequency response of the annihilating filter component XAH(z) 320. Thus, the annihilating filter component may be characterized as one or more notch filters. Hence, the name “annihilating” filter component for such a digital filter.
Alternatively, roots of X(z) that are complex conjugates of each other such that one root lies within the unit circle and one root lies outside the unit circle are grouped together to be the symmetric filter component XSM(z) 350. Further, roots of X(z) that are within the unit circle (with no corresponding complex conjugate) may be grouped together to be the minimum phase filter component XMP(z) 330. In addition, roots of X(z) that are outside the unit circle (with no corresponding complex conjugate) may be grouped together to be the non-minimum phase filter component XNP(z) 340. Details of the annihilating, minimum phase, non-minimum phase, and symmetric filter components will be discussed when describing
The principle of scalar synthesis can be used to translate the vector synthesis structures of the LSF-models {χMP, χNP, χSM} in [1] to LTI systems with impulse responses as {χMP, χNP, χSM}. These LSF-models (FIG. 4/[1], FIG. 5/[1], FIG. 6/[1]) require the knowledge of their roots {ρMP, ρNP, ρSM,} and a choice of the model parameters {μ, λ} [1].
The CFM 390 of
The annihilating filter component may be a series combination of one or more half-lattice notch filters and one or more full-lattice notch filters. Further, the minimum phase component 330, the non-minimum phase component 340, and the symmetric component 350 may be a series and a parallel combination of one or more half-lattice notch filters and one or more full-lattice notch filters. A series combination of filters is one in which the filters are configured such that an output of a first filter is provided as an input to a second filter. A parallel combination of filters is one in which one or more filters are configured to each receive the same input and wherein the respective outputs are coupled and/or combined. A series-parallel configuration is one in which at least one branch of a parallel filter may itself be one or more series combinations of filters, or may be one in which one or more filters are coupled in series together with one or more parallel combinations of filters. Let NU and NV denote the number of lattice blocks of type LU and LV used in a CFM block.
The operation and implementation of the example CFM shown in
The CFM 390 of
An annihilating filter component may be implemented through the use of block 360 where HAB(z)=XAH(z), which corresponds to the portion of the CFM structure from node A to node B. The transfer function of the annihilating filter component may be XAH(z) and may be referred to an annihilating transfer function. The impulse response for such a transfer function may be referred to an annihilating sequence xAH[n]. The digital filter may be implemented by cascading (i.e., a series coupling) a digital filter having a transfer function XU(z), and a digital filter having a transfer function XV(z). The digital filter with transfer function XU(z) may be a combination of the half-lattice notch filters as shown in
An annihilating transfer function has roots on the unit circle in the z-domain. Thus, an annihilating sequence or annihilating transfer function may be characterized by [θAH, LAH] where LAH is the number of roots for the annihilating transfer function and θAH is the roots of the annihilating transfer function such that the root is given by ej2πθAH[1] which implies XAH(f)=0 for f=θAH.
For example, an annihilating sequence, xAH1[n] may be given as [θAH, 6]={0.07, 0.18. 0.2, −0.2, 0.36, −0.36]. The annihilating transfer function XAH1(z) that corresponds to the annihilating sequence xAH1[n] has six roots that includes two single roots (0.07 and 0.18) and two conjugate pairs (0.2, −0.2, 0.36, and −0.36). Each single root (0.07 and 0.18) can be characterized as transfer function for a half-lattice notch filter. Further, each conjugate pair may be characterized as transfer function for full-lattice notch filter. The two half-lattice notch filters may be cascaded together to form a digital filter 620 with transfer function xU(z)=(z−ej2π(0.07))(z−ej2π(0.18)) where the transfer function for one half-lattice notch filter is (z−ej2π(0.07)) and the transfer function for the other half-lattice notch filter is (z−ej2π(0.18)). One half-lattice notch filter is configured to suppress or reduce the frequency component at f=0.07 and the other half-lattice notch filter is configured to suppress or reduce the frequency component at f=0.18. The half-lattice coefficients may be calculated as KU1=−ej2π(0.07)=1<(−0.43) and KU2=−ej2π(0.18)=1<(−0.32).
Alternatively, the two full-lattice notch filters may be cascaded together to form a digital filter with transfer function XU(z)=(z−ej2π(0.2))(z−ej2π(−0.2))(z−ej2π(0.36))(z−ej2π(−0.36)) where one transfer function for one full-lattice transfer function is (z−ej2π(0.2)) (z−ej2π(−0.2)) and the transfer function for the other full-lattice transfer function is (z−ej2π(0.36))(z−ej2π(−0.36)). One full-lattice notch filter is configured to suppress or reduce frequency components at f=−0.2 and f=0.2 and the other full-lattice notch filter is configured to suppress or reduce frequency components at f=−0.36 and f=0.36. The full-lattice coefficients may be calculated as KV1=−cos(2π(0.2))=−0.30902 and KV2=−cos(2π(0.36))=0.63742.
This example may therefore be summarized as follows:
The AH-sequence with LSFs as [θAH: 6]={0.07, 0.18, 0.2, −0.2, 0.36, −0.36}.
Here [u:2]={0.07, 0.18} and [v:2]={0.2, 0.36} and the corresponding AH-sequences are as follows:
The example filter module implemented on CFM may be a minimum phase filter component, which has a minimum phase transfer function XMP(z)=1+a1z−1+a2z−2 where a1 and a2 are complex coefficients, for example. X˜MP(z)=a2*+a1*z−1+z−2 where a1* and a2* are complex conjugates of complex coefficients a1 and a2. Generally, XMP(z) may be a transfer function of arbitrary length and the complex coefficients for X˜MP(z) may be found by reversing and conjugating the coefficients of XMP(z). Further, X+MP(z)=XMP(z)+X˜MP(z) such that X+MP(z) is an annihilating transfer function. In addition, X−MP(z)=XMP(z)−X˜MP(z) such that X−MP(z) is an annihilating transfer function. Thus, the minimum phase transfer function can be characterized as XMP(z)=X+MP(z)+X−MP(z).
The configuration of CFM 390 for a minimum phase filter module does not use nodes A, E, F, or G. xMP is mapped to two AH sequences xMP± (LSF-MP-1 for simplicity) with LSFs as θ±MP. Here HB0(z)=X+MP(z); HB1(z)=X−MP(z); G0=GMP; HBC(z)=XMP(z); HBD(z)=W(μMP, λMP, z) {tilde over (X)}MP(z).
An example may be summarized as:
[xMP:4]={1, 0.72759∠(−0.02583), 0.90237∠(−0.01154), 0.162∠(−0.1)};
ρM,[0]=0.2∠(0.4); ρA[0]=0.9∠(0.3).
The lattice structure for XMP(z) can be realized with one CFM block as follows. The Lattice structure for xMP+:
[xMP+: 5]={1, 0.84939∠(−0.00419), 1.8, 0.84939∠(0.00419), 1};
[u: 4]={−0.33994, −0.23189, 0.23766, 0.33417}; LV=0;
[kU:4]={1∠(0.16006), 1∠(0.26811), 1∠(−0.26234), 1∠(−0.16583)};
The Lattice structure for xMP−:
[xMP−: 5]={1, 0.62435∠(−0.05535), 0.13078∠(−0.25), 0.62435∠(−0.44465), 1∠(−0.5)};
[u: 4]={−0.29764, 0.01715, 0.29712, 0.48337}; LV=0;
[kU:4]={1∠(0.20236), 1∠(−0.48285), 1∠(−0.20288), 1∠(−0.01663)}
G0=GMP=0; NU=8; NV=0; where NU, NV denote the number of lattice blocks of type LU and LV used in a CFM block.
The example filter module implemented on a CFM may be a non-minimum phase filter component, which has a non-minimum phase transfer function XNP(z)=1+b1z−1+b2z−2 where b1 and b2 are complex coefficients, for example. Further, X˜NP(z)=b2*+b1*z−1+z−2=b2*[1+(b1*/b2*)z−1+z−2] where b1* and b2* are complex conjugates of complex coefficients b1 and b2. Generally, XNP(z) may be a transfer function of arbitrary length and the coefficients of X˜NP(z) may be found by reversing and conjugating the coefficients of XNP(z) and factoring X˜NP(z) such that X˜NP(z)=s*[L]AMP(z). Further, s*[L] may be a sequence of complex coefficients and AMP(z) is a minimum phase transfer function. Thus, AMP(z) can be characterized as AMP(z)=A+MP(z)+A−MP(z) where A+MP(z) and A−MP(z) are annihilating subcomponents of AMP(z).
The configuration of CFM 390 for a non-minimum phase filter module does not use nodes A or C. The function aMP is mapped to two AH sequences aMP± (LSF-NP-1 for simplicity) with LSFs as θ±NP. Here, HB0(z)=A+MP(z); HB1(z)=A−MP(z); G0=GMP; G1=KNP; HBG(z)=W(μMP, λMP+D1, z) XNP (z); D0=∞, i.e., node D connects directly to node E, or addition is bypassed.
An example may be summarized as follows:
[xNP:4]={1, 1.4588∠(0.25547), 2.2312∠(−0.18898), 5.55556∠(0.13)};
ρN[0]=2∠(−0.37); ρB[0]=0.6∠(0.18);
The lattice structure for XNP(z) can be realized with one CFM block as follows:
The Lattice structure for aMP+
[aMP+:5]={1, 0.23766∠(0.28062), 0.37024, 0.23766∠(−0.28062), 1};
[u: 4]={−0.34178, −0.15354, 0.12411, 0.37121}; LV=0;
[kU:4]={1∠(0.15822), 1∠(0.34646), 1∠(−0.37589), 1∠(−0.12879)};
The Lattice structure for aMP−
[aMP−:5]={1, 0.57525∠(0.3347), 0.37246∠(−0.25), 0.57525∠(0.1653), 1∠(−0.5)};
[u: 4]={−0.45157, −0.23885, −0.02879, 0.21921};LV=0;
[kU:4]={1∠(0.04843), 1∠(0.26115), 1∠(0.47121), 1∠(−0.28079)};
G0=GMP=0; G1=KNP=5.55556∠(0.13); NU=8; NV=0; where NU, NV denote the number of lattice blocks of type LU and LV used in a CFM block.
The example digital filter implemented on a CFM may be a symmetric filter component. Further, the symmetric filter component 800 may have a symmetric transfer function XSM(z)=c0+c1z−1+c2z−2+c1z−3+c0z−4 where c0, c1, c2 are complex coefficients, for example. Further,
XSM(z)=(c0/2)[2d0+2d1z−1+2z−2+2d1z−3+2d0z−4]
XSM(z)=(c0/2)[{2d0+2d1z−1+z−2}+z−2{1+2d1z−1+2d0z−2}]
XSM(z)=(c0/2)[A˜MP(z)+z−2AMP(z)]
where AMP(z) is a minimum phase filter component. Generally, XSM(z) may be a transfer function of arbitrary length. The configuration of CFM 390 for a symmetric filter module does not use node A. The function aMP is mapped to two AH sequences aMP± (LSF-SM-1 for simplicity) with LSFs as θ±SM. Here, HB0(z)=A+MP(z); HB1(z)=A−MP(z); G0=GMP; G1=KSM; HBG(z)=W(0MP, λMP+D1, z)XSM(z); D0=LSM+λMP; D1≧1 is an additional delay.
An example may be summarized as follows:
[XSM:7]={1, 1.2746∠(0.30285), 0.86793∠(0.10843), 2.96328∠(0.4), 0.86793∠(−0.30843), 1.2746∠(0.49715), 1∠(−0.2)};
ρC[0]=0.8∠(−0.1); ρD[0]=0.9∠(−0.3);
[aMP:4]={1, 0.58579∠(0.29157), 0.86026∠(0.09715), 0.67493∠(0.4)}
The lattice structure for XSM(z) can be realized with one CFM block in as follows:
[aMP+:5]={1, 0.71752∠(0.46211), 1.40985, 0.71752∠(−0.46211), 1};
[u: 4]={−0.27113, −0.1671, 0.13415, 0.304081; L,=0;
[kU:4]={1∠(0.22887), 1∠(0.3329), 1∠(−0.36585),
[aMP−:5]={1, 1.04044∠(0.18806), 0.98617∠(0.25), 1.04044∠(0.31194), 1∠(−0.5)};
[u: 4]={−0.45443, −0.23446, −0.11011, 0.299}; LV=0;
[kU:4]={1∠(0.04557), 1∠(0.26554), 1∠(0.38989), 1∠(−0.201)
G0=GMP=0; G1=KSM=1.48164∠(0.4); NU=8; NV=0; where NU, NV denote the number of lattice blocks of type LU and LV used in a CFM block.
Following, in Table C, is a summary of LSF-A and LSF-B (FIG. 7/[1]) that have the same LSF set χx. The transfer function X(z) can be realized by cascading three independent CFM blocks as shown in
As shown in
The delay circuit 510 is configured to receive an input signal from an input node and to delay the input signal for one time interval. Further, as mentioned previously, the full-lattice notch filter may be realized in a digital signal processor ASIC, FPGA, or any other specialized processor having memory. The multiplier circuit 520 may be configured to access a full-lattice coefficient kV=−cos(2πα) from such a memory and to multiply the full-lattice coefficient by the signal from the delay circuit 510. The resulting signal can be provided to adder circuit 530 which can be configured to add the signal from the multiplier circuit to the input signal received from the input node. Further, multiplier circuit 540 can be configured to receive the input signal from the input node, accesses the full-lattice coefficient kV from memory, and multiply kV by the input signal. The resulting signal can be coupled to adder circuit 550 which can be configured to add the signal from the multiplier circuit to the delayed input signal received from delay circuit 510. The resulting signal from adder circuit 550 can be coupled to delay circuit 560. The resulting delayed signal from delay circuit 560 can be coupled to adder circuit 570. The adder circuit 570 can be configured to add the signal received from adder circuit 530 to the signal received from delay circuit 560 and to couple the resulting signal to an output node. The resulting signal from adder circuit 570 is the output signal for the full-lattice notch filter shown in
An annihilating transfer function has roots on the unit circle in the z-domain. Thus, an annihilating sequence or annihilating transfer function may be characterized by [θAH, LAH] where LAH is the number of roots for the annihilating transfer function and θAH is the roots of the annihilating transfer function such that the root is given by ej2πθAH[1] which implies XAH(f)=0 for f=θAH[1].
For example, an annihilating sequence, xAH1[n] may be given as [θAH, 6]={0.07, 0.18. 0.2, −0.2, 0.36, −0.36]. The annihilating transfer function XAH1(z) that corresponds to the annihilating sequence xAH1 [n] has six roots that includes two single roots (0.07 and 0.18) and two conjugate pairs (0.2, −0.2, 0.36, and −0.36). Each single root (0.07 and 0.18) can be characterized as transfer function for a half-lattice notch filter. Further, each conjugate pair may be characterized as transfer function for full-lattice notch filter. The two half-lattice notch filters may be cascaded together to form a digital filter 620 with transfer function XU(z)=(z−ej2π(0.07))(z−ej2π(0.18)) where the transfer function for one half-lattice notch filter is (z−ej2π(0.07)) and the transfer function for the other half-lattice notch filter is (z−ej2π(0.18)). One half-lattice notch filter is configured to suppress or reduce the frequency component at f=0.07 and the other half-lattice notch filter is configured to suppress or reduce the frequency component at f=0.18. The half-lattice coefficients may be calculated as KU1=−ej2π(0.07)=1<(−0.43) and KU2=−ej2π(0.18))=1<(−0.32).
Alternatively, the two full-lattice notch filters may be cascaded together to form a digital filter 630 with transfer function XU(z)=(z−ej2π(0.2))(z−ej2π(−0.2))(z−ej2π(0.36))(z−ej2π(−0.36)) where one transfer function for one full-lattice transfer function is (z−ej2π(0.2))(z−ej2π(−0.2)) and the transfer function for the other full-lattice transfer function is (z−ej2π(0.36))(z−ej2π(−0.36)). One full-lattice notch filter is configured to suppress or reduce frequency components at f=−0.2 and f=0.2 and the other full-lattice notch filter is configured to suppress or reduce frequency components at f=−0.36 and f=0.36. The full-lattice coefficients may be calculated as KV1=−cos(2π(0.2))=−0.30902 and KV2=−cos(2π(0.36))=0.63742.
In an alternative embodiment, the modules 706-712 may take the form of a logic circuit that may be realized as part of an FPGA. Each component may be designed separately, or they may all be combined within a single logic circuit. Still further, as described herein, each notch filter lattice structure that makes up the various components 706-712 may be programmable and reused during different portions of the overall filtering operation. The filter input/output sequences may be buffered to allow for reuse of the filter hardware components. This may be desirable when the overall sampling rate of the digital signal is some fraction of the internal processing rate of the filter 700. Thus, in this alternative embodiment, the microprocessor 702, memory 704 as well as the function modules (706, 708, 710, and 712) may be separate hardware modules coupled to each other by an internal bus 714. Other suitable interconnections may be used between the microprocessor, memory and the function modules to communicate with each other.
The structures described herein may be used for FIR filtering of real and complex sequences. For stable filters, hDEN is an MP-sequence [2]. In most of the practical digital filters, the corresponding sequence h34 also turns out to be an MP-sequence. In many practical systems, typically filtering is performed in one of the two cases (i) real input sequence with real impulse response (ii) complex input sequence with complex impulse response. In the former case, it is easy to see that the LSF-Model of a real sequence is required for the CFM based lattice structure. Further, the Multiplication operation may not be required (Table-IV, below) in the lattice block LU and LV whenever αε{−(½), 0}. This motivates us to bifurcate a sequence x into two sequences XREAL and XCMPX as in the following Property-1. From Property-1, an FIR filter with impulse response x can be realized as a cascade of two FIR filters with impulse responses as XREAL and XCMPX as in
Regarding the arithmetic complexity of the CFM, the notch filter LU in
In some of the signal processing applications, it may be necessary to shape the spectrum of a sequence, with a spectral function which is the auto-correlation of a reference sequence. In communication systems, the Raised-Cosine or Root-Raised-Cosine spectral functions are typically used to minimize Inter-Symbol-Interference (ISI) at a marginal increase in the bandwidth. If [x:Lx+1)] is a reference sequence with desired spectrum, then this spectral shaping requires an FIR filter with LP-impulse response as x† (Property-2/[1]). From the root structure of x (Table-II/[1]), we obtain two alternate spectral decompositions of x† as summarized in Property-2. The Table E gives the canonic FIR lattice structure based on Property-2.
→ → → → → → → →
In order to decompose the filter components into the notch filter structures as described herein, each filter component can be further decomposed. Specifically, the annihilating component can be decomposed into a series combination of one or more half-lattice notch filters and one or more full-lattice notch filters. The decomposition module implements the coefficient manipulation described above to decompose the minimum phase component, the non-minimum phase component, and the symmetric component into annihilating subcomponents, and then represents them as a series and parallel combination of one or more half-lattice notch filters and one or more full-lattice notch filters.
In embodiments of the methods described herein, a canonic filter module structure can be used to implement a filter component such as an annihilating component, a minimum phase component, a non-minimum phase component, and a symmetric component. Such a canonic filter module may be implemented within a digital signal processor (DSP), ASIC, FPGA, or any other specialized processor. Lattice coefficients of the half-lattice notch filter and the full-lattice notch filter for each set of notch filters used in an annihilating component, a minimum phase component, a non-minimum phase component, and a symmetric component, and may be stored in a data structure defining the digital filter structure. Such a data structure may be implemented in hardware and software in a digital signal processor (DSP), ASIC, FPGA, or any other specialized processor. The data structure may set forth the values of each of the filter variables shown in
Depending on the desired configuration, the system memory 1320 can be of any type including but not limited to volatile memory (such as RAM), non-volatile memory (such as ROM, flash memory, etc.) or any combination thereof. System memory 1320 typically includes an operating system 1321, one or more applications 1322, and program data 1324. Application 1322 includes one or more canonical filter module routines 1323. Program Data 1324 includes CFM configuration data 1325.
Computing device 1300 can have additional features or functionality, and additional interfaces to facilitate communications between the basic configuration 1301 and any required devices and interfaces. For example, a bus/interface controller 1340 can be used to facilitate communications between the basic configuration 1301 and one or more data storage devices 1350 via a storage interface bus 1341. The data storage devices 1350 can be removable storage devices 1351, non-removable storage devices 1352, or a combination thereof. Examples of removable storage and non-removable storage devices include magnetic disk devices such as flexible disk drives and hard-disk drives (HDD), optical disk drives such as compact disk (CD) drives or digital versatile disk (DVD) drives, solid state drives (SSD), and tape drives to name a few. Exemplary computer storage media can include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data.
System memory 1320, removable storage 1351 and non-removable storage 1352 are all examples of computer storage media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by computing device 1300. Any such computer storage media can be part of device 1300.
Computing device 1300 can also include an interface bus 1342 for facilitating communication from various interface devices (e.g., output interfaces, peripheral interfaces, and communication interfaces) to the basic configuration 1301 via the bus/interface controller 1340. Exemplary output interfaces 1360 include a graphics processing unit 1361 and an audio processing unit 1362, which can be configured to communicate to various external devices such as a display or speakers via one or more A/V ports 1363. Exemplary peripheral interfaces 1370 include a serial interface controller 1371 or a parallel interface controller 1372, which can be configured to communicate with external devices such as input devices (e.g., keyboard, mouse, pen, voice input device, touch input device, etc.) or other peripheral devices (e.g., printer, scanner, etc.) via one or more I/O ports 1373. An exemplary communication interface 1380 includes a network controller 1381, which can be arranged to facilitate communications with one or more other computing devices 1390 over a network communication via one or more communication ports 1382. The Communication connection is one example of a communication media. Communication media may typically be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media. A “modulated data signal” can be a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media can include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared (IR) and other wireless media. The term computer readable media as used herein can include both storage media and communication media.
Computing device 1300 can be implemented as a portion of a small-form factor portable (or mobile) electronic device such as a cell phone, a personal data assistant (PDA), a personal media player device, a wireless web-watch device, a personal headset device, an application specific device, or a hybrid device that include any of the above functions. Computing device 1300 can also be implemented as a personal computer including both laptop computer and non-laptop computer configurations.
In general, it should be understood that the circuits described herein may be implemented in hardware using integrated circuit development technologies, or yet via some other methods, or the combination of hardware and software objects that could be ordered, parameterized, and connected in a software environment to implement different functions described herein. For example, the present application may be implemented using a general purpose or dedicated processor running a software application through volatile or non-volatile memory. Also, the hardware objects could communicate using electrical signals, with states of the signals representing different data.
It should be further understood that this and other arrangements described herein are for purposes of example only. As such, those skilled in the art will appreciate that other arrangements and other elements (e.g. machines, interfaces, functions, orders, and groupings of functions, etc.) can be used instead, and some elements may be omitted altogether according to the desired results. Further, many of the elements that are described are functional entities that may be implemented as discrete or distributed components or in conjunction with other components, in any suitable combination and location.
The present disclosure is not to be limited in terms of the particular embodiments described in this application, which are intended as illustrations of various aspects. Many modifications and variations can be made without departing from its spirit and scope, as will be apparent to those skilled in the art. Functionally equivalent methods and apparatuses within the scope of the disclosure, in addition to those enumerated herein, will be apparent to those skilled in the art from the foregoing descriptions. Such modifications and variations are intended to fall within the scope of the appended claims. The present disclosure is to be limited only by the terms of the appended claims, along with the full scope of equivalents to which such claims are entitled. It is to be understood that this disclosure is not limited to particular methods, reagents, compounds compositions, or biological systems, which can, of course, vary. It is also to be understood that the terminology used herein is for the purpose of describing particular embodiments only, and is not intended to be limiting.
With respect to the use of substantially any plural and/or singular terms herein, those having skill in the art can translate from the plural to the singular and/or from the singular to the plural as is appropriate to the context and/or application. The various singular/plural permutations may be expressly set forth herein for sake of clarity.
It will be understood by those within the art that, in general, terms used herein, and especially in the appended claims (e.g., bodies of the appended claims) are generally intended as “open” terms (e.g., the term “including” should be interpreted as “including but not limited to,” the term “having” should be interpreted as “having at least,” the term “includes” should be interpreted as “includes but is not limited to,” etc.). It will be further understood by those within the art that if a specific number of an introduced claim recitation is intended, such an intent will be explicitly recited in the claim, and in the absence of such recitation no such intent is present. For example, as an aid to understanding, the following appended claims may contain usage of the introductory phrases “at least one” and “one or more” to introduce claim recitations. However, the use of such phrases should not be construed to imply that the introduction of a claim recitation by the indefinite articles “a” or “an” limits any particular claim containing such introduced claim recitation to embodiments containing only one such recitation, even when the same claim includes the introductory phrases “one or more” or “at least one” and indefinite articles such as “a” or “an” (e.g., “a” and/or “an” should be interpreted to mean “at least one” or “one or more”); the same holds true for the use of definite articles used to introduce claim recitations. In addition, even if a specific number of an introduced claim recitation is explicitly recited, those skilled in the art will recognize that such recitation should be interpreted to mean at least the recited number (e.g., the bare recitation of “two recitations,” without other modifiers, means at least two recitations, or two or more recitations). Furthermore, in those instances where a convention analogous to “at least one of A, B, and C, etc.” is used, in general such a construction is intended in the sense one having skill in the art would understand the convention (e.g., “a system having at least one of A, B, and C” would include but not be limited to systems that have A alone, B alone, C alone, A and B together, A and C together, B and C together, and/or A, B, and C together, etc.). In those instances where a convention analogous to “at least one of A, B, or C, etc.” is used, in general such a construction is intended in the sense one having skill in the art would understand the convention (e.g., “a system having at least one of A, B, or C” would include but not be limited to systems that have A alone, B alone, C alone, A and B together, A and C together, B and C together, and/or A, B, and C together, etc.). It will be further understood by those within the art that virtually any disjunctive word and/or phrase presenting two or more alternative terms, whether in the description, claims, or drawings, should be understood to contemplate the possibilities of including one of the terms, either of the terms, or both terms. For example, the phrase “A or B” will be understood to include the possibilities of “A” or “B” or “A and B.”
In addition, where features or aspects of the disclosure are described in terms of Markush groups, those skilled in the art will recognize that the disclosure is also thereby described in terms of any individual member or subgroup of members of the Markush group.
As will be understood by one skilled in the art, for any and all purposes, such as in terms of providing a written description, all ranges disclosed herein also encompass any and all possible subranges and combinations of subranges thereof. Any listed range can be easily recognized as sufficiently describing and enabling the same range being broken down into at least equal halves, thirds, quarters, fifths, tenths, etc. As a non-limiting example, each range discussed herein can be readily broken down into a lower third, middle third and upper third, etc. As will also be understood by one skilled in the art all language such as “up to,” “at least,” “greater than,” “less than,” and the like include the number recited and refer to ranges which can be subsequently broken down into subranges as discussed above. Finally, as will be understood by one skilled in the art, a range includes each individual member. Thus, for example, a group having 1-3 cells refers to groups having 1, 2, or 3 cells. Similarly, a group having 1-5 cells refers to groups having 1, 2, 3, 4, or 5 cells, and so forth.
While various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.
Properties and Further Examples of the Canonic Lattice Filter Structures Based on Notch Filters:
Property-2
For a monic sequence [x:(Lx+1)] (Table-II/[1]);
X(z)=A(z)B(z) with A(z) and B(z) as follows.
B†(z)=b†[0]RSM(z) with RSM(z) a monic SM-polynomial with coefficients rSM as follows.
X†(z)=KxA2(z)RSM(z) with Kx given as follows.
Consider an AH-sequence with LSFs as [θAH:6]={0.07, 0.18, 0.2, −0.2, 0.36, −0.36}. Here [u:2]={0.07, 0.18} and [v:2]={0.2, 0.36} and the corresponding AH-sequences are as follows.
[xAH:7]={1, 1.49148∠(−0.3246), 0.36087∠(0.05678), 1.35201∠(−0.375),
0.36087∠(0.19322), 1.49148∠(−0.4254), 1∠(0.25)}; LAH=6;
[xU:3]={1, 1.88176∠(−0.375), 1∠(0.25)}; LU=2;
[xV:5]={1, 0.65681, 1.2121, 0.65681, 1}; LV=2;
The
For the AH-sequences in Example-1;
[kU:2]={1∠(−0.43), 1∠(−0.32)};
[kV:2]={−0.30902, 0.63742};
Consider the AH-sequence xAH of x used in Example-1/[1]. The lattice structure of XAH(z) can be realized with one CFM block in CAH (
The Lattice structure for hAB=xAH with CAH:
[xAH:4]={1, 1.44475∠(−0.43953), 1.4447540.02953), 1∠(−0.41)}; u[0]=0.09; v[0]=0.21;
kU[0]=1∠(−0.41); kV[0]=−0.24869; NU=1; NV=1;
Consider the MP-sequence xMP of x in Example-1/[1].
The MP-sequence xMP(Table-II/[1]):
[xMP:4]={1, 0.72759∠(−0.02583), 0.90237∠(−0.01154), 0.162∠(−0.1)};
ρM[0]=0.2∠(0.4); ρA[0]=0.9 ∠(0.3);
The LSF-Model of xMP (FIG. 4/[1]) is obtained for μMP=0 and λMP=1 Example-1/[1]. The lattice structure for XMP(z) can be realized with one CFM block in CMP (
The Lattice structure for hB0=xMP+ in
[xMP+:5]={1, 0.84939∠(−0.00419), 1.8, 0.84939∠(0.00419), 1};
[u:4]={−0.33994, −0.23189, 0.23766, 0.33417}; LV=0; [KU:4]={1∠(0.16006), 1∠(0.26811), 1∠(−0.26234), 1∠(−0.16583};
The Lattice structure for hB1=xMP− in
[xMP−:5]={1, 0.62435∠(−0.05535), 0.13078∠(−0.25), 0.62435∠(−0.44465), 1∠(−0.5)};
[u:4]={−0.29764, 0.01715, 0.29712, 0.48337}; LV=0;
[kU:4]={1∠(0.20236), 1∠(−0.48285), 1∠(−0.20288), 1∠(−0.01663};
The Lattice structure of xMP as in
hB0 and hB1 as above; G0=GMP=0; NU=8; NV=0
Consider the NP-sequence xNP of x in Example-1/[1].
The NP-sequence xNP(Table-II/[1]):
[xNP:4]={1, 1.4588∠(0.25547), 2.2312∠(−0.18898), 5.55556∠(0.13)};
ρN[0]=2∠(−0.37); ρB[0]=0.6∠(0.18);
The LSF-Model of αMP (FIG. 5/[1]) is obtained for μMP=0 and λMP=1 Example-1/[1]. The lattice structure for XNP(z) can be realized with one CFM block in CNP (
The Lattice structure for hB0=αMP+ in
[aMP+:5]={1, 0.23766∠(0.28062), 0.37024, 0.23766∠(−0.28062), 1};
[u:4]={−0.34178, −0.15354, 0.12411, 0.37121}; LV=0;
[kU:4]={1∠(0.15822), 1∠(0.34646), 1∠(−0.37589), 1∠(−0.12879)};
The Lattice structure for hB1=αMP− in
[aMP−:5]={1, 0.57525∠(0.3347), 0.37246∠(−0.25), 0.57525∠(0.1653), 1∠(−0.5)};
[u:4]={−0.45157, −0.23885, −0.02879, 0.21921}; LV=0;
[kU:4]={1∠(0.04843), 1∠(0.26115), 1∠(0.47121), 1∠(−0.28079)};
The Lattice structure of xNP as in
hB0 and hB1 as above; NU=8; NV=0;
G0=GMP=0; G1=KNP=5.55556∠(0.13);
Consider the SM-sequence xSM of x in Example-1/[1]
The SM-sequence xSM(Table-II)/[1]), FIG. 5/[1]):
[xSM:7]={1, 1.2746∠(0.30285), 0.86793∠(0.10843), 2.9632840.4), 0.86793∠(−0.30843), 1.2743, 1.2746∠(0.49715), 1∠(−0.2)};
ρC[0]=0.8∠(−0.1); ρD[0]=0.9∠(−0.3);
[αMP:4]={1, 0.58579∠(0.29157), 0.86026∠(0.09715), 0.67493∠(0.4)}; (Theorem-1/[1])
The LSF-Model of αMP(
The Lattice structure for hB0=αMP+ in
[αMP+:5]={1, 0.71752∠(0.46211), 1.40985, 0.71752∠(−0.46211), 1};
[u:4]={−0.27113, −0.1671, −0.13415, 0.30408}; LV=0;
[kU:4]={1∠(0.22887), 1∠(0.3329), 1∠(−0.36585), 1∠(−0.19592)};
The Lattice structure for hB1=αMP− in
[αMP−:5]={1, 1.04044∠(0.18806), 0.98617∠(0.25), 1.04044∠(0.31194), 1∠(−0.5)};
[u:4]={−0.45443, −0.23446, −0.11011, 0.299}; LV=0;
[kU:4]={1∠(0.04557), 1∠(0.26554, 1∠(0.38989), 1∠(−0.201)};
The Lattice structure of xSM in
hB0 and hB1 as above; NU=8; NU=8; NV=0;
G0=GMP=0; G1=KSM=1.48164∠(0.4);
Consider the LP-sequence xLP of x used in Example-1/[1]. The lattice structure for XLP(z)=XAH(z)XSM(z) can be realized with one CFM block as given in CLP. This structure uses be CAH (Example-3) and CSM (Example-6).
Consider the LP-sequence hLP (Table-V in Nguyen and Vaidyanathan [10]) presented in Example-1/[3].
Characteristics of hLP (Table-II/[1]):
hLP[0]=2−7(0.75841); XLP(z)HLP(z)/hLP[0];
[xLP:23]={1, −2.64691, 0.76951, 6.08388, −3.76609, −7.16357, 6.91654, 10.75691, −14.69693, −10.90959, 52.85078, 96.05306, 52.85078, −10.90959, −14.69693, 10.75691, 6.91654, −7.16357, −3.76609, 6.08388, 0.76951, −2.64691, 1};
[xAH:9]={1, 5.35888, 14.41278, 24.73732, 29.41694, 24.73732, 14.41278, 5.35888, 1};
[xSM:15]={1, −8.00578, 29.25875, −60.06195, 65.02339, −2.97119, −105.63161, 164.2252, −105.63161, −2.97119, 65.02339, −60.06195, 29.25875, −8.00578, 1};
LLP=22, LU=0, LV=4, LC=1, LD=3;
[v:4]={0.31328, 0.34636, 0.3914, 0.44797};
[ρD:3]={0.51497∠(0.11084), 0.54854∠(0.04904), 0.64943∠(0.18523)}: ρC[0]=−0.87938;
Characteristics of xSM(Theorem-1/[1]):
[αMP:8]={1, −1.28642, −0.03618, 0.79188, −0.73146, 0.35632, −0.0975, 0.01218}; KSM=82.1126;
The LSF-Model of αMP with μ=0, γ=1 (Property-16/[1]) is used to obtain the lattice structure of hLP as follows.
The Lattice structure for hB0=αMP+ in
[αMP+:9]={1, −1.27425, −0.13368, 1.14821, −1.46292, 1.14821, −0.13368, −1.27425, 1};
[v:4]={0.00936, 0.12635, 0.026156, 0.47009}; LU=0;
[kV:4]={−0.99827, −0.70109, 0.07259, 0.98966};
The Lattice structure for hB1=αMP− in
[αMP−:9]={1, −1.2986, 0.06131, 0.43556, 0, −0.43556, −0.06131, 1.2986, −1};
[u:2]={−0.5, 0}; [kU:2]={1, 1∠(−0.5)};
[v:3]={0.06409, 0.18992, 0.36038};
[kV:3]={−0.92001, −0.36857, 0.63928};
The Lattice structure for hAB=xAH with CAH:
[kV:4]={0.3872, 0.56911, 0.7761, 0.94703};
The Lattice structure for hLP in
hAB, hB0 and hB1 as above; NU=2; NV=11;
G0=GMP=0; G1=KSMhLP[0];
Consider the Hilbert Transformer defined by the following Matlab function (Chapter-15, page-223 [11]).
b=firmpm (30, [0.1 0.9], [1.0 1.0], ‘Hilbert’)
Consider a sequence hLP with coefficients as the Matlab output vector b.
Characteristics of hLP(Table-II/[1]):
hLP[0]=−0.0042; XLP(z)HLP(z)/hLP[0]:
[xLP:31]={1, 0, 2.21232, 0, 4.48938, 0, 8.19924, 0, 14.19369, 0, 24.55829, 0, 46.9134, 0, 150.47865, 0, 150.47865, 0, −46.9134, 0, −24.55829, 0, −14.19369, 0, −8.19924, 0, −4.48938, 0, −2.21232, 0, −1};
[xAH:3]={1, 0, −1};
[xSM:29]={1, 0, 3.21232, 0, 7.7017, 0, 15.90094, 0, 30.09463, 0, 54.65292, 0, 101.56632, 0, 252.04497, 0, 101.56632, 0, 54.65292, 0, 30.09463, 0, 15.90094, 0, 7.7017, 0, 3.21232, 0, 1};
LLP=30, LU=2, LV=0, LC=0, LD=7; [u:2]={−0.5, 0};
[ρD:7]={0.66304∠(0.25), 0.66579∠(0.31248), 0.66579∠(0.18752), 0.6772∠(0.37422), 0.6772∠(0.12578), 0.71537∠(0.06508), 0.71537∠(0.43492)};
Characteristics of xSM(Theorem-1/[1]):
KSM=126.02249;
[αMP:15]={1, 0, 0.80594, 0, 0.43368, 0, 0.2388, 0, 0.12618, 0, 0.061, 11, 0, 0.02549, 0, 0.00794};
The LSF-Model of αMP with μ=0, λ=1 (Property-16/[1]) is used to obtain the lattice structure of xSM as follows.
The Lattice structure for hB0=αMP+ in
[αMP+:16]={1, 0.00794, 0.80594, 0.02549, 0.43368, 0.06111, 0.2388, 0.12618, 0.12618, 0.2388, 0.06111, 0.43368, 0.02549, 0.80594, 0.00794, 1};
u[0]=−0.5; kU[0]=1;
[v:7]={0.04658, 0.11621, 0.17849, 0.2361, 0.2923, 0.35212, 0.41697};
[kV:7]={−0.95748, −0.74508, −0.43437, −0.08723, 0.26264, 0.59852, 0.86697};
The Lattice structure for hB1=αMP− in
[αMP−:16]={1, −0.00794, 0.80594, −0.02549, 0.43368, −0.06111, 0.2388, −0.12618, 0.12618, −0.2388, 0.06111, −0.43368, 0.02549, −0.80594, 0.00794, −1};
u[0]=0; kU[0]=−1;
[v:7]={0.08303, 0.14788, 0.2077, 0.2639, 0.32151, 0.38379, 0.45342};
[KV:7]={−0.86697, −0.59852, −0.26264, 0.08723, 0.43437, 0.74508, 0.95748};
The Lattice structure for hAB=xAH with CAH:
[u:2]={−0.5, 0}; [kU: 2]={1,1∠(−0.5)}
The Lattice structure of hLP in
hAB, hB0 and hB1 as above; NU=4; NV=14;
G0=GMP=0;G1=KSMhLP[0];
Consider the sequence x used in Example-1/[1]. The lattice structure for X(z) can be realized with three CFM blocks based on the LSF-A model of x as in
The LSF-C Model of x (Table III/[1]) uses the LP-sequences x+/NA of the NA-sequence XNA with two model parameters μVEC[0] and λVEC[1]. These sequences corresponding to x in Example-1/[1] can be summarized as follows.
μVEC[0]=0; λVEC[1]=1;
[xNA:13]={1, 2.55782 ∠(0.23427), 0.71216 ∠(−0.06613), 9.6506 ∠(0.21362), 5.0452 ∠(0.43954), 17.30626 ∠(0.25938), 20.89266 ∠(0.49388), 6.69387 ∠(−0.28057), 8.59387 ∠(−0.3042), 3.93104 ∠(−0.11924), 0.9 ∠(−0.17)};
[xNA+:14]={1, 3.40384 ∠(0.21771), 4.26286 ∠(0.09472), 17.5132 ∠(0.25621, 10.33535 ∠(0.34788), 34.97506 ∠(0.35336), 31.25423 ∠(−0.46996), 31.25423 ∠(0.46996), 34.97506 ∠(−0.35336), 10.33535 ∠(−0.34788), 17.5132 ∠(−0.25621), 4.26286 ∠(−0.09472), 3.40384 ∠(−0.21771), 1};
[xNA−:14]={1, 1.76599 ∠(0.26636), 3.70791∠(−0.35253, 5.22162 ∠(0.04002), 5.80555 ∠(−0.34985), 20.25041 ∠(0.05364), 13.34237 ∠(0.40543), 13.34237 ∠(0.09457), 20.25041∠(0.44636), 5.80555 ∠(−0.15015), 5.22161∠(0.45998), 3.70791 ∠(−0.14747), 1.76599 ∠(0.23364), 1∠(−0.5)};
From Property-15/[1] when X1(z)=XNLP(z), X+/1(z)=X+/NLP(z) are LP-sequences with the following characteristics.
The LP-sequence x1+=xNLP+ (Table-I)
[xPAH: 2]={1, 1∠(−0.16352)}; θ+[0]=0.33648;
[xPSM:13]={1, 4.19339 ∠(0.24359), 0.39525 ∠(0.30931), 17.21118 ∠(0.25855), 20.23433 ∠(−0.49028), 14.78917 ∠(0.36315), 40.53399 ∠(−0.41824), 14.78917 ∠(−0.19963), 20.23433 ∠(−0.3462), 17.21118 ∠(−0.09503), 0.39525 ∠(−0.14579), 4.19339 ∠(0.08007, 1 ∠(0.16352)};
KPSM=20.26699 ∠(−0.41824);
[aMP: 7]={1, 0.72972 ∠(0.21861), 0.99839 ∠(0.07204), 0.84922 ∠(0.32321), 0.20691∠(0.33817), 0.04934 ∠(−0.41824};
The LP-sequence x1−=xNA− (Table-II):
[xQAH:4={1, 0.65985 ∠(0.29338), 0.65985 ∠(0.08789), 1∠(0.38126)};
[θ—:3]={−0.30051, −0.11212, 0.29389};
xQSM:11] {1, 1.12118 ∠(0.25052), 3.73919 ∠(−0.34372), 3.91145 ∠(0.03109), 3.96567 ∠(−0.30722), 11.78647 ∠(0.05937), 3.96567 ∠(0.42595), 39.1145 ∠(0.08764), 3.73919 ∠(0.46245), 1.12118 ∠(−0.13178), 1∠(0.11874)};
KQSM=5.89323 ∠(0.05937);
[aMP: 6]={1, 0.67292 ∠(0.36659), 0.66372 ∠(0.02827), 0.63449 ∠(0.40308), 0.19025 ∠(−0.19115), 0.16969 ∠(0.05937)};
Consider the LP-sequence xNA+ in Example 11. The lattice structure for the transfer function z−D
Structure for hAB=xPAH:
Lu=1; Lv=0; ku[0]=1 ∠(−0.16352)
Structure for hB0=aMP+
[aMP+:8]={1, 0.74655 ∠(0.22861), 0.83094 ∠(0.05079), 0.83321∠(0.32532), 0.83321 ∠(−0.32532), 0.83094 ∠(−0.05079), 0.74655 ∠(−0.22861), 1};
[u:7]={−0.45843, −0.28614, −0.25115, −0.1379, 0.05259, 0.27522, 0.30522}; Lv=0;
[ku:7]={1 ∠(0.04157), 1 ∠(0.21386), 1 ∠(0.24885), 1 ∠(0.3627), 1∠(−0.44741), 1∠(−0.22478), 1∠(−0.19478)};
Structure for hB1=aMP−
[aMP−:8]={1, 0.7159 ∠(0.20818), 1.17844 ∠(0.087), 0.86538 ∠(0.32118), 0.86538 ∠(0.17882), 1.17844 ∠(0.413), 0.7159 ∠(0.29182), 1 ∠(−0.5)};
[u: 7]={−0.36011, −0.25475, −0.20589, −0.06398, 0.1817, 0.2996, 0.40343; } Lv=0;
[kU: 7]={1∠(0.13989), 1∠(0.24525), 1 ∠(0.29411), 1 ∠(0.43602), 1∠(−0.3183), 1 ∠(−0.2004), 1∠(0.09657)};
Structure for xNA+:
hAB, hB0 and hB1 as above; Nu=15; Nv=0;
G0=GMP=0; G1=KPSM; D1=DP=0;
Consider the LP-sequence xNA− in Example-11. The lattice structure for the transfer function z−D
Structure for hAB=xQAH
[ku: 3]={1 ∠(0.19949), 1∠(0.38788), 1 ∠(−0.20611)}; Lu=3; Lv=0;
Structure for hB0=aMP+:
[aMP+:7]={1, 0.5268 ∠(0.34351), 0.77985 ∠(0.06167), 1.04089 ∠(−0.5), 0.77985 ∠(−0.06167), 0.5268 ∠(−0.34351), 1};
[u: 6]={−0.34452, −0.24261, −0.11914, 0.05795, 0.27851, 0.36985}; LV=0;
[ku: 6]={1∠(0.15548), 1 ∠(0.25739), 1 ∠(0.38086), 1 ∠(−0.44205), 1 ∠(−0.22149), 1 ∠(−0.13018)};
Structure for hB1=aMP−:
[aMP−:7]={1, 0.82808 ∠(0.38124), 0.5876 ∠(−0.01631), 0.72585 ∠(0.25), 0.5876 ∠(−0.48369), 0.82808 ∠(0.11876), 1∠(−0.5)};
[u: 6]={−0.46741, −0.27206, −0.15692, −0.06125, 0.16833, 0.28931}; LV=0;
[ku: 6]={1 ∠(0.03259), 1 ∠(0.22794), 1∠(0.34308), 1 ∠(0.43875, 1 ∠(−0.33167), 1∠(−0.21069)};
Structure for xNA−:
hAB, hB0 and hB1 as above; Nu=15; Nv=0;
G0=GMP=0; G1=KQSM; D1=DQ=0;
Consider the sequence x used in Example-1/[1]. The lattice structure for X(z) can be realized with the LSF-C model of x using the configuration Cc (
CFM1 in configuration (4.1) as in Example-3.
CFM2 in configuration (4.2) as in Example-12.
CFM3 in configuration (4.3) as in Example-13.
The LSF-D Model of x (Table-III/[1]) uses the LP-sequences xNLP+ of the NLP-sequence xNLP with two model parameters μVEC[0] and λVEC[1]. These sequences corresponding to x in Example-1/[1] can be summarized as follows.
μVEC[0]=0; λVEC[1]=1;
[xNLP: 7]={1, 1.49755 ∠(0.17643), 2.16042 ∠(−0.08347), 5.69442 ∠(0.11206), 4.02355 ∠(0.02943), 4.71534 ∠(0.11175), 0.9 ∠(0.03)};
[xNLP+:8]={1, 1.94459 ∠(0.10293), 6.85239 ∠(−0.10288), 8.803 ∠(0.05432), 8.803 ∠(−0.05432), 6.85239 ∠(0.10288), 1.94459 ∠(−0.10293), 1};
[xNLP−:8]={1, 1.52443 ∠(0.27265), 2.61695 ∠(0.36494), 4.44274 ∠(0.23618), 4.44274 ∠(0.26382), 2.61695 ∠(0.13506), 1.52443 ∠(0.22735), 1∠(−0.5)};
From Property-15[1] when X1(z)=XNLP(z), X+/1(z)=X+/NLP(z) are LP-sequences with the following characteristics.
The LP-sequence x1+=xNLP+ (Table-I):
[xPAH: 4]={1, 1.13644 ∠(0.19318), 1.13644 ∠(0.11361), 1∠(0.30679)};
[θ+: 3]={0.26528, −0.23866, 0.31074};
[xPSM: 5]={1, 1.15973 ∠(0.0147), 7.47951 ∠(−0.1534), 1.15973 ∠(−0.32149), 1∠(−0.30679)};
KPSM=3.73976 ∠(−0.1534);
[aMP: 3]={1, 0.31011∠(−0.16809), 0.2674 ∠(−0.1534)};
The LP-sequence x1−=xNLP− (Table-II):
[xQAH:4]={1, 0.96522 ∠(−0.2331), 0.96522 ∠(−0.13248), 1 ∠(−0.36558)};
[θ—:3]={−0.3155, 0.17436, 0.27556};
[xQSM:5]={1, 2.48927 ∠(0.27042), 5.17073 ∠(0.43279), 2.48927 ∠(−0.40484), 1 ∠(−0.13442)};
KQSM=2.58536 ∠(0.43279);
[aMP: 3]={1, 0.96283 ∠(0.16237), 0.38679 ∠(0.43279)};
Consider the LP-sequence xNLP+ in Example-15. The lattice structure for the transfer function z−D
Structure for hAB=xPAH:
LU=3; LV=0;
[ku:3]={1 ∠(0.23472), 1 ∠(0.26134), 1 ∠(−0.18926)};
Structure for hB0=aMP+:
[aMP+:4]={1, 0.30928 ∠(−0.026), 0.30928 ∠(0.026), 1};
[u:3]={−0.19061, 0.19655, 0.49406}; LV=0;
[ku:3]={1 ∠(0.30939), 1 ∠(−0.30345), 1 ∠(−0.00594)};
Structure for hB1=aMP−:
[aMP−:4]={1, 0.48958 ∠(−0.24996), 0.48958 ∠(−0.25004), 1 ∠(−0.5)};
[u:3]={−0.3562, 0.05344, 0.30275}; LV=0;
[ku:3]={1∠(0.1438), 1 ∠(−0.44656), 1∠(−0.19725)};
Structure for xNLP+:
hAB, hB0 and hB1 as above; Nu=9; Nv=0;
G0=GMP=0; G1=KPSM; D1=DP0;
Consider the LP-sequence xNLP− in Example-15. The lattice structure for the transfer functions z−D
Structure for hAB=xQAH:
LU=3; LV=0;
[kU:3]={1 ∠(0.1845), 1 ∠(−0.32564), 1 ∠(−0.22444)};
Structure for hB0=aMP+:
[aMP+:4]={1, 0.679}; ∠(0.21432), 0.679 ∠(−0.21432), 1};
[u:3]=−0.42083, −0.22832, 0.14915}; LV=0;
[ku:3]={1 ∠(0.07917), 1 ∠(0.27168), 1 ∠(−0.35085)};
Structure for hB1=aMP−
[αMP−:4]={1, 1.30087 ∠(0.13561), 1.30087 ∠(0.36439), 1 ∠(−0.5)};
[u:3]={−0.3822, −0.08502, 0.46722}; LV=0;
[ku:3]={1∠(0.1178), 1 ∠(0.41498), 1∠(−0.03278)};
Structure for xNLP−:
hAB, hB0 and hB1 as above; Nu=9; Nv=0;
G0=GMP=0; G1=KQSM; D1=DQ=0;
Consider the sequence x used in Example-1/[1]. The lattice structure for X(z) can be realized with the LSF-D model of x using the configuration CD (
CFM1 in configuration (4.1) as in Example-7.
CFM2 in configuration (4.2) as in Example-16.
CFM3 in configuration (4.3) as in Example-17.
Consider a rational transfer function defined by the following Matlab function (Chapter-4, page 65[11]);
[b, a]=ellip(4, 1, 60, 0.01);
Consider two sequences hNUM and hDEN with coefficients as the Matlab output vectors b and a respectively.
Characteristics of hNUM:
hNUM[0]=0.001; H12(z)HNUM(z)/hNUM[0];
[h12:5]={1, 3.95562, 5.9115, −3.95562, 1};
LV=0, LV=2; [v:2]={0.01323, 0.03086};
The Lattice structure for hAB=h12 with CAH:
[kv:2]={−0.99655, −0.98126};
Characteristics of hDEN (MP-sequence):
[hDEN:5]={1, −3.96921, 5.9091, −3.91054, 0.97065};
[h34:4]={1, −1.48873, 0.98522, −0.24455};
The LSF-Model of h34=aMP (MP-sequence) with μ=0, λ=1 (Property-16/[1]) is used to obtain its lattice structure as follows.
The Lattice structure for hB0=aMP+ in
[aMP+:4]={1, −0.66651, −0.66651, 1};
u[0]=−0.5; kn[0]=1;
v[0]=0.09324; kV[0]= −0.83325;
The Lattice structure for hB1=aMP− in
[aMP−:4]={1, −1.98784, −1.98784, 1};
u[0]=−0; ku[0]=−1;
v[0]=0.16778; kV[0] −0.49392;
The Lattice structure of h34 in
hB0 and hB1 as above; G0=GMP=−0.24455;
The Lattice structure for H05(z) in
A C F M1 block with hAB as above with NU=0; Nv=2;
A C F M2 block for h34 as above with NU=2; Nv=2;
Consider the following sequence x.
Characteristics of x (Table-II/[1]):
Here, XAH(z)=XU(z) and XSM(z)=XC(z). The lattice structure for XAH(z) can be realized with one CFM block in CAH (
The Lattice structure for hAB=xAH with CAH:
[kU: 2]={1∠(−0.41), 1∠(−0.2)}; NU=2; Nv=0;
Characteristics of xSM (Property-2)
KSM=4.53318∠(−0.3);
[αMP:3]={1, 1.19723∠(0.36437), 0.2206∠(−0.3)};
The LSF-Model of αMP (FIG. 4/[1]) is obtained for μMP=0 and λMP=1
Example-1/[1]. The lattice structure for XSM(z) can be realized with one CFM block in CSM (
The Lattice structure for hB0=αmp+ in
[αMP+:4]={1, 1.40272∠(0.35451), 1.402724-0.35451), 1};
[u:3]={−0.40184, −0.1287, 0.03055}; Lv=0;
[kU:3]={1∠(0.09816), 1∠(0.3713), 1∠(−0.46945)};
The Lattice structure for hB1=αMP− in
[αMP−:4]={1, 0.99821∠(0.37823), 0.99821∠(0.12177, 1∠(−0.5)};
[u:3]={−0.18977, −0.12115, 0.31092}; Lv=0;
[kU:3]={1∠(0.31023), 1∠(0.37885), 1∠(−0.18908)};
The Lattice structure of xSM in
hB0 and hB1 as above; NU=6; Nv=0;
Consider the sequence x in Example-20. The lattice structure of x† (
Characteristics of xNA† (Property-2):
The LSF-Model of αMP (FIG. 4/[1]) is obtained for μMP=0 and λMP=1. The lattice structure for RSM(z) can be realized with one CFM block in CSM (
The Lattice structure of rSM of xNA in
hB0 and hB1 as above; NU=18; NV=0;
G0=GMP=0; G1=KSM;
Consider the sequence x in Example-20. The lattice structure of x† (
Characteristics of XNLP (Property-2):
[xNLP:5]={1, 1.97254∠(−0.28176), 8.23189∠(−0.17971), 1.70613∠(0.09732), 0.64∠(−0.3)};
xNLP†[0]=0.64∠(0.3), RSM(z)=XNLP†(z)/xNLP†[0];
Kx=0.64∠(−0.49); KSM=59.35585∠(−0.3);
[rSM:9]={1, 4.34306∠(−0.34857), 15.66228∠(−0.13152), 35.88468∠(−0.48307), 118.7117∠(−0.3), 35.88468∠(−0.11693), 15.66228∠(−0.46848), 4.34306∠(−0.25143), 1∠(0.4)};
[αMP:5]={1, 0.60457∠(0.18307), 0.26387∠(−0.16848), 0.07317∠(0.04857), 0.01685∠(−0.3)};
The LSF-Model of αMP (FIG. 4/[1]) is obtained for μMP=0 and λMP=1. The lattice structure for RSM(z) can be realized with one CFM block in CSM(
The Lattice structure for hB0=αMP+ in
[αMP+:6]={1, 0.61717∠(0.18599), 0.32116∠(−0.14357), 0.32116∠(0.14357), 0.61717∠(−0.18599), 1};
[u:5]={−0.43906, −0.31595, −0.14669, 0.09751, 0.3042}; LV=0;
[kU:5]={1∠(0.06094), 1∠(0.18405), 1∠(0.35331), 1∠(−0.40249), 1∠(−0.1958)};
The Lattice structure for hB1=αMP− in
[αMP−:6]={1, 0.59217∠(0.18004), 0.21638∠(−0.20564), 0.21638∠(−0.29436), 0.59217∠(0.31996), 1∠(−0.5)};
[u:5]={−0.35871, −0.25423, −0.01776, 0.19714, 0.43356}; LV=0;
[kU:5]={1∠(0.14129), 1∠(0.24577), 1∠(0.48224), 1∠(−0.30286), 1∠(−0.06644)};
The Lattice structure of rSM of xNLP in
hB0 and hB1 as above; NU=10; NV=0;
G0=GMP=0; G1=KSM.
The following publications [1] through [11] are hereby incorporated herein by reference for all purposes:
Number | Date | Country | Kind |
---|---|---|---|
3081/CHE/2010 | Oct 2010 | IN | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/IB2010/055584 | 12/4/2010 | WO | 00 | 10/19/2011 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2012/052807 | 4/26/2012 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
20050261898 | Van Klinken | Nov 2005 | A1 |
20110113082 | Alimohammad et al. | May 2011 | A1 |
20120185525 | Yedlapalli et al. | Jul 2012 | A1 |
Entry |
---|
International Search Report and Written Opinion issued by the Australian Patent Office in PCT/IB2010/055584, dated Mar. 9, 2011. |
Yedlepalli et al., “The Canonic Linear-Phase Fir Lattice Structures”, 2010 National Conference on Communications (NCC), Chennai, Jan. 29-31, 2010, p. 1-5. |
Mahata, “Spectrum Estimation, Notch Filters, and Music”, IEEE Transactions on Signal Processing, vol. 53, No. 10, Oct. 2005, p. 3727-3737. |
Dattorro, “Effect Design, Part I: Reverberator and Other Filters”, J. Audio Eng. Soc., vol. 45, No. 9, Sep. 1997, p. 660-684. |
Jarvilehto, P., and Estola, K-P., “A New Modular VLSI Filter Architecture Using Computationally Efficient Recursive Digital Filter Topology,” IEEE International Symposium on Circuits and Systems, 1988, pp. 1301-1304, vol. 2. |
Harris, F., “Ultra low phase noise dsp oscillator,” IEEE Signal Processing Magazine, Jul. 2007, pp. 121-124, vol. 24, issue 4. |
Nguyen, T.Q and Vaidyanathan, P.P, “Two-channel perfect-reconstruction FIR QMF structures which yield linear-phase analysis and synthesis filters,” IEEE Transactions on Acoustics Speech and Signal Processing, 1989, pp. 676-670, vol. 37, No. 5. |
Oh, Y-J et al., “A Reconfigurable CSD FIR Filter Design using Dynamic Partial Reconfiguration,” IEEE International Symposium on Proceedings, 2006, pp. 381-384. |
Oh, Y-J et al., “Dynamic Partial Reconfigurable FIR Filter Design,” Lecture Notes in Computer Science, 2006, pp. 30-35, vol. 3985. |
Regalia, P. A. et al., “The digital all-pass filter: a versatile signal processing building block,” Proceedings of the IEEE, Jan. 1988, pp. 19-37, vol. 76, No. 1. |
Sayed, A. H. and Kailath, T., “A survey of spectral factorization methods,” Numerical Linear Algebra with Applications, 2001, pp. 467-496, vol. 8, No. 6-7. |
Vachhani, L. et al., “Efficient cordic algorithms and architectures for low area and high throughput implementation,” IEEE Transactions on Circuits and Systems II: Express Briefs, 2009, pp. 61-65, vol. 56, No. 1. |
Yedlapalli, S. S., et al., “The Line Spectral Frequency Model of a finite length sequence,” IEEE Journal of Selected Topics in Signal Processing, 2010, pp. 646-658, vol. 4, No. 3. |
Number | Date | Country | |
---|---|---|---|
20120185525 A1 | Jul 2012 | US |