CN114389575A - Method and device for generating digital filter and digital signal processing system - Google Patents

Method and device for generating digital filter and digital signal processing system Download PDF

Info

Publication number
CN114389575A
CN114389575A CN202011131678.5A CN202011131678A CN114389575A CN 114389575 A CN114389575 A CN 114389575A CN 202011131678 A CN202011131678 A CN 202011131678A CN 114389575 A CN114389575 A CN 114389575A
Authority
CN
China
Prior art keywords
pole
zero
target
zero point
poles
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011131678.5A
Other languages
Chinese (zh)
Inventor
朱马
姚炜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Awinic Technology Co Ltd
Original Assignee
Shanghai Awinic Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Awinic Technology Co Ltd filed Critical Shanghai Awinic Technology Co Ltd
Priority to CN202011131678.5A priority Critical patent/CN114389575A/en
Publication of CN114389575A publication Critical patent/CN114389575A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H17/00Networks using digital techniques
    • H03H17/02Frequency selective networks

Abstract

The invention provides a method and a device for generating a digital filter and a digital signal processing system. The method comprises the following steps: acquiring a zero set and a pole set corresponding to the transmission characteristics of the N-order IIR digital filter; the zero set comprises n zeros, and the pole set comprises m poles; configuring the transmission characteristics of the second-order IIR digital filter based on the zero point set and the pole set to obtain a plurality of configured second-order IIR digital filters; the transmission characteristic is determined by the zero and the pole together; the poles corresponding to any configured second-order IIR digital filter belong to a pole set, and the zeros corresponding to any configured second-order IIR digital filter comprise: among the n zeros, the zero closest to the pole corresponding to any configured second-order IIR digital filter; and cascading the plurality of configured second-order IIR digital filters to obtain the N-order IIR digital filter.

Description

Method and device for generating digital filter and digital signal processing system
Technical Field
The present invention relates to the field of digital signal processing, and in particular, to a method and an apparatus for generating a digital filter, and a digital signal processing system.
Background
In many digital signal processing systems, in order to save the computational cost, hardware is used as a plurality of second-order IIR digital filters (Biquad), and the high-order IIR digital filters are converted into a plurality of cascaded second-order IIR digital filters. Specifically, filter coefficients can be respectively distributed to a plurality of second-order IIR digital filters through the top layer, the second-order IIR digital filters are called, and the second-order IIR digital filters are cascaded, so that high-order digital filters with different orders can be flexibly realized.
The existing conversion mode directly adopts an undetermined coefficient method: the coefficient of the second-order digital filter is set as an unknown number, and the requirement after cascade connection is equal to the coefficient of the original high-order digital filter, so that a corresponding equation can be obtained. The respective coefficients of the second order digital filter can be solved by solving equations.
This approach may not take the stability of the filter into account when selecting coefficients. Therefore, each obtained second-order filter may have a risk of instability, and further, the stability of the nth-order IIR digital filter obtained by cascading the second-order filters is affected.
Disclosure of Invention
In view of the above, the present invention provides a method and an apparatus for generating a digital filter, and a digital signal processing system, so as to solve the above problems.
In order to achieve the above object, the present invention provides the following technical solutions:
a digital filter generating method is used for generating an N-order IIR digital filter; n is a positive integer greater than 2;
the method comprises the following steps:
acquiring a zero set and a pole set corresponding to the transmission characteristics of the N-order IIR digital filter; the zero set comprises n zeros, and the pole set comprises m poles; n and m are positive integers;
configuring the transmission characteristics of a second-order IIR digital filter based on the zero point set and the pole set to obtain a plurality of configured second-order IIR digital filters; the transmission characteristic is determined by the zero and the pole together; the pole corresponding to any configured second-order IIR digital filter belongs to the pole set, and the zero corresponding to any configured second-order IIR digital filter comprises: among the n zeros, the zero closest to the pole corresponding to the configured second-order IIR digital filter is selected;
and cascading a plurality of configured second-order IIR digital filters to obtain the N-order IIR digital filter.
Optionally, the configuring the transmission characteristics of the second-order IIR digital filter based on the zero set and the pole set to obtain a plurality of configured second-order IIR digital filters includes: sequencing the m poles from small to large according to the stability to obtain a sequencing pole set; and performing multi-round filter coefficient distribution operation based on the zero point set and the sorting pole set until all the zero points in the zero point set and the poles in the sorting pole set are configured to obtain a plurality of configured second-order IIR digital filters.
Optionally, the transmission characteristic of the configured second-order IIR digital filter is represented by a filter coefficient; a second-order IIR digital filter corresponding to any round of filter coefficient distribution operation is a target second-order IIR digital filter; the transmission function of the target second-order IIR digital filter is a target transmission function; any round of filter coefficient assignment operations includes: allocating poles to the target transfer function based on the set of ordered poles; the distributed poles are target poles; selecting a zero point closest to the target pole from the zero point set as a zero point of the target transmission function; the distributed zero point is a target zero point; expanding the transmission function after the target pole and the target zero are distributed into a polynomial multiplication form; and determining coefficients in a numerator and a denominator in the polynomial as filter coefficients of the target second-order IIR filter.
Optionally, the sorting according to the stability from small to large includes: if the conjugate complex number pole and the real number pole exist, the conjugate complex number pole is placed in front of all the real number poles; if a plurality of pairs of conjugate complex poles exist, calculating a first distance between each pair of conjugate complex poles and the unit circle 1; sequencing the multiple pairs of conjugate complex poles from small to large according to the first distance; if a plurality of real number poles exist, calculating a second distance between each real number pole and the unit circle 1; and sequencing the real number poles according to the second distance from small to large.
Optionally, the allocating poles to the target transfer function based on the sorting pole set includes: if conjugate complex poles exist in the sorting pole set, selecting a first pair of conjugate complex poles from the sorting pole set as the roots of the denominators in the target transmission function according to the sequence: the selected conjugate complex pole isThe target pole; removing the target pole from the sorting pole set; selecting the zero closest to the target pole from the zero set comprises: if the zero point set has conjugate complex number zero point pairs, selecting the conjugate complex number zero point pair closest to the target pole point from the zero point set as the root of the molecule in the target transmission function; or, if there are no conjugate zeros but there are at least two real zeros in the zero set, selecting two real zeros closest to the target conjugate complex number pole as roots of the molecules in the target transmission function; or, if only one real zero exists in the zero point set, selecting the only real zero as the root of the numerator in the target transmission function, and multiplying the numerator by z-1(ii) a Or, if the zero point set is null, let the numerator of the target transfer function be 1 and multiply by z-2(ii) a And removing the selected zero points from the zero point set.
Optionally, the allocating poles to the target transfer function based on the sorting pole set includes: if the conjugate complex pole does not exist in the sorting pole set but at least two real poles exist in the sorting pole set, sequentially selecting the two real poles from the sorting pole set as the roots of the denominators in the target transfer function: selecting a real number pole as the target pole; removing the target pole from the sorting pole set; selecting the zero closest to the target pole from the zero set comprises: if the zero point set has conjugate complex number zero point pairs, selecting the conjugate complex number zero point pair closest to the target pole point from the zero point set as the root of the molecule in the target transmission function; or, if there are no conjugate zeros but there are at least two real zeros in the zero set, selecting two real zeros closest to the target pole as roots of the molecules in the target transmission function; or, if only one real zero exists in the zero point set, selecting the only real zero as the root of the numerator in the target transmission function, and multiplying the numerator by z-1(ii) a Or, if the zero point set is null, let the numerator of the target transfer function be 1 and multiply by z-2(ii) a And removing the selected zero points from the zero point set.
Optionally, the allocating poles to the target transfer function based on the sorting pole set includes: if the conjugate complex pole does not exist in the sorting pole set and only one real pole exists, selecting the real pole as the root of a denominator in the target transmission function: selecting a real number pole as the target pole; removing the target pole from the sorting pole set; selecting the zero closest to the target pole from the zero set comprises: if the zero point set has a conjugate complex number zero point pair, selecting the conjugate complex number zero point pair closest to the target pole point as a root of a molecule in the target transmission function; or, if there are no conjugate zeros but at least two real zeros in the zero set, taking the two real zeros closest to the target pole as the roots of the numerators in the target transmission function; or, if only one real zero exists in the zero point set, selecting the only real zero as the root of the numerator in the target transmission function; or, if the set of zeros is null, the numerator is 1, and z is multiplied over the numerator-1(ii) a And removing the selected zero points from the zero point set.
Optionally, the allocating poles to the target transfer function based on the sorting pole set includes: if the sorting pole point set is empty but the zero point set is not empty, the denominator in the target transmission function is 1; selecting the zero closest to the target pole from the zero set comprises: if the zero point set has a conjugate complex number zero point pair, selecting a pair of conjugate complex number zero point pairs as the roots of the molecules in the target transmission function; or, if there are no conjugate zeros but at least two real zeros in the zero set, selecting two real zeros as roots of the numerator in the target transmission function; or, if only one real zero exists in the zero point set, selecting the only real zero as the root of the numerator in the target transmission function; and removing the selected zero points from the zero point set.
Optionally, before cascading a plurality of configured second-order IIR digital filters, the method further includes: multiplying the transmission function of one second-order IIR digital filter by a fixed coefficient K; and the ratio of the multiplication result of the transmission function of the N-order digital filter and the transmission functions of the plurality of configured second-order digital filters is equal to K.
An apparatus for generating a digital filter, comprising:
a plurality of second order IIR digital filters;
a memory for storing computer programs or instructions;
a processing unit for invoking the computer program or instructions from a memory to perform any of the above methods.
A digital signal processing system comprising an nth order IIR digital filter formed from a plurality of second order IIR digital filters according to the above method; n is a positive integer greater than 2; or comprise the generating means described above.
Therefore, in the embodiment of the present invention, a zero set and a pole set of the transmission characteristic of the high-order digital filter are obtained, and then the transmission characteristic of the second-order IIR digital filter is configured based on the zero set and the pole set, where a zero corresponding to the second-order filter is a zero closest to a pole corresponding to the second-order filter in the zero set. For a second-order IIR filter, the closer the zero point and the pole are, the easier the influence of the pole is to be counteracted, the second-order filter can be stabilized as much as possible, and the stability of the N-order IIR digital filter obtained by cascading the second-order filter is further ensured.
Drawings
FIG. 1a is an exemplary block diagram of a digital signal processing system provided by an embodiment of the present invention;
fig. 1b is an exemplary relationship between a generating device and each second-order IIR digital filter according to an embodiment of the present invention;
fig. 2a is an exemplary flow of a generating method provided by the embodiment of the present invention;
fig. 2b is another exemplary flow of a generating method provided by the embodiment of the present invention;
FIG. 3 is an exemplary distribution flow of poles and zeros provided by embodiments of the present invention;
fig. 4 is an exemplary structure of a generating apparatus according to an embodiment of the present invention.
Detailed Description
The existing method for converting a high-order IIR digital filter into a plurality of cascaded second-order IIR digital filters directly adopts a undetermined coefficient method: the coefficient of the second-order digital filter is set as an unknown number, and the requirement after cascade connection is equal to the coefficient of the original high-order digital filter, so that a corresponding equation can be obtained. The respective coefficients of the second order digital filter can be solved by solving equations.
Taking a fourth-order high-order digital filter as an example, the general expression of the transfer function in the Z domain is as follows:
Figure BDA0002735368420000051
b in equation 10-b4、a0-a4Z represents an argument for a known coefficient; superscripts-1 to-4 represent the first to fourth orders (or how many powers).
The digital filter cascade, namely the multiplication of corresponding transfer functions, can be converted into a cascade form of 2 second-order digital filters:
Figure BDA0002735368420000052
c in equation 10-c2、d0-d2、e0-e2、f0-f2Are all unknown coefficients.
The simultaneous use of equation 1 and equation 2 means that z is equal in the numerator and denominator due to the equal coefficients-1、z-2、z-3、z-4And the constant term is exactly equal. Namely:
Figure BDA0002735368420000061
as can be seen from the above equation 3, one of them involves 10 equations and 12 unknowns. Thus, the equation theoretically has an infinite number of solutions, and this method may not take the stability problem of the filter into account when selecting the coefficients. Thus, the resulting individual second order filters may be at risk of instability.
Embodiments of the present invention provide a method and an apparatus for generating a digital filter, and a digital signal processing system, so as to solve the above problems.
Referring to fig. 1a, the digital signal processing system includes an nth order IIR digital filter formed by a plurality of cascaded second order IIR digital filters.
In implementation, the generating device can respectively distribute filter coefficients for a plurality of second-order IIR digital filters, and call the filter coefficients, and cascade the second-order IIR digital filters distributed with the filter coefficients, so as to flexibly realize high-order digital filters with different orders.
The second-order IIR digital filter may be a hardware circuit, a module, or a functional module implemented by software, and in this embodiment, the second-order IIR digital filter implemented by hardware is preferred.
Referring to fig. 1b, the generating device and each second-order IIR digital filter may be integrated on the same chip or the same board, or may be located on different chips or boards.
Fig. 2a shows an exemplary flow of the generating method performed by the generating device, which may include at least the following steps:
s1: and acquiring a zero set and a pole set corresponding to the transmission characteristics of the N-order digital filter.
N is a positive integer greater than 2.
The transfer characteristics may be characterized by a transfer function.
The transfer function has various formulas, and for example, a six-order IIR digital filter is taken as an example, and it is assumed that one of the formulas of the transfer function is as follows:
Figure BDA0002735368420000071
the above transfer function can be rewritten as another formula form including a proportionality coefficient K, a zero set z (z (1), z (2), etc.), and a pole set p (p (1), p (2), etc.):
Figure BDA0002735368420000072
where z (1), z (2), z (3), z (4), etc. of the numerator portion are zeros, and p (1), p (2), p (3), p (4), etc. of the denominator portion are poles.
It follows that the transfer characteristic (transfer function) can also be determined jointly by the zero and the pole.
By making the transfer function (equation 4) numerator equal to zero, the value of z is found to be zero. The pole is obtained by making the denominator of the transfer function (equation 4) equal to zero, and the value of z is the pole.
Taking equation 1 as an example, the pole set p includes:
Figure BDA0002735368420000073
its zero point set z includes:
Figure BDA0002735368420000074
where j is the unit of expression of the imaginary part, it can be seen that equation 4 corresponds to 6 poles and 5 zeros.
Specifically, the generating device may obtain a coefficient corresponding to a transfer function input by a user to obtain a transfer function of the N-order digital filter.
Further, N z values (i.e. N zeros) are obtained by making the numerator of the transfer function of the N-order digital filter equal to zero, and the N zeros form a zero set; similarly, the denominator of the transfer function of the N-order digital filter is equal to zero, and m z values (i.e., m poles) are obtained, and the m poles form a pole set. N and m are positive integers and are not more than N.
The proportionality coefficient K is a fixed constant equal to the ratio of the transfer function of the N-order digital filter to the multiplication result of the transfer functions of the plurality of configured second-order digital filters.
S2: and configuring the transmission characteristics of the second-order IIR digital filter based on the zero point set and the pole set to obtain a plurality of configured second-order IIR digital filters.
As can be seen from the foregoing, the transmission characteristic (transfer function) of the digital filter can be determined by both the zero and the pole; specifically, the coefficients of the second-order IIR digital filter may be determined based on the zero set and the pole set, and the transmission characteristics of the second-order IIR digital filter may be determined.
In this embodiment, the zero of the pole corresponding to any configured second-order IIR digital filter satisfies the following condition:
the poles belong to the pole set of an nth order IIR digital filter, and the zeros comprise: and the zero closest to the pole corresponding to the configured second-order IIR digital filter is selected from the N zeros of the N-order IIR digital filter.
In one example, please refer to fig. 2b, the m poles may be sorted from small to large according to the stability (how to sort will be described later herein), so as to obtain a sorted pole set. And performing multi-round filter coefficient distribution operation based on the zero point set and the sorting pole set until all the poles in the zero point set and the sorting pole set are configured to obtain a plurality of configured second-order IIR digital filters.
Specifically, the second-order IIR digital filter corresponding to any round of filter coefficient allocation operation may be referred to as a target second-order IIR digital filter, and the transfer function corresponding to the target second-order IIR digital filter may be referred to as a target transfer function. Then, in one example, any round of filter coefficient assignment operations may include:
assigning poles to the target transfer function based on the ordered set of poles (the assigned poles may be referred to as target poles);
and selecting the zero closest to the target pole from the zero set as the zero of the target transmission function.
After distributing the zero and the pole for the second order IIR filter, the transfer function of one of the second order IIR digital filters may be multiplied by a fixed coefficient K. Since K is a constant, after multiplying it to the transfer function (in the numerator coefficients) of some second-order IIR digital filter, it is not necessary to store K in an additional register.
And expanding the transmission function of each configured second-order IIR filter into a polynomial multiplication form, wherein coefficients in a numerator and a denominator in the polynomial are filter coefficients of the corresponding second-order IIR filter.
S3: and cascading the plurality of configured second-order IIR digital filters to obtain the N-order IIR digital filter.
Specifically, the order of calling the second-order IIR digital filter may be configured to implement cascading, that is, setting the input source and the output source of the second-order IIR digital filter.
For example, for three configured second order IIR digital filters A, B, C, if the input of a is the output of B and the input of B is the output of C, then C, B, A is cascaded together.
Therefore, in the embodiment of the present invention, a zero set and a pole set of the transmission characteristic of the high-order digital filter are obtained, and then the transmission characteristic of the second-order IIR digital filter is configured based on the zero set and the pole set, where a zero corresponding to the second-order filter is a zero closest to a pole corresponding to the second-order filter in the zero set. For a second-order IIR filter, the closer the zero point and the pole are, the easier the influence of the pole is to be counteracted, the second-order filter can be stabilized as much as possible, and the stability of the N-order IIR digital filter obtained by cascading the second-order filter is further ensured.
How to sort the m poles from small to large according to the stability is described below.
Still taking the above equation 4 as an example, two poles are arbitrarily selected from the 6 poles and combined together as a coefficient, so as to obtain a denominator of a second-order IIR digital filter; two of the 5 zeros are arbitrarily selected as coefficients, and a second-order IIR digital filter molecule can be formed. Thus, from 6 poles and 5 zeros, there are many ways to combine a second order IIR digital filter.
From the stability point of view, the poles can be sorted according to the stability from small to large so as to obtain a better mode of cascading the second-order IIR filter in the following.
In one example, the above ordering may exemplarily include:
if the conjugate complex pole and the real pole exist, the conjugate complex pole is placed before all the real poles.
That is, the poles are first divided into complex poles arranged in front and real poles arranged in back.
Since the coefficients of the original higher-order filter are real numbers, the obtained poles or zeros, if complex numbers exist, must exist in the form of conjugate complex numbers (the definition of conjugate complex numbers is that the real parts are equal and the imaginary parts are opposite). Zeros and poles other than the conjugate complex number are necessarily real numbers. In the case of an odd-order high-order filter, the total number of zeros or poles is an odd number, because complex numbers are present as pairs of conjugate complex numbers, the real numbers of zeros or poles are necessarily an odd number.
Taking equation 5 as an example, the following equation 7 can be obtained (pn represents the sorted pole set):
Figure BDA0002735368420000101
in a digital signal system, a circle with a Z-domain mode length of 1 is a unit circle. A system with poles all within the unit circle is a stable system and the poles are more likely to be unstable from inside to outside, the closer they are to the unit circle. Thus, the pn can be further ordered as follows:
if a plurality of pairs of conjugate complex poles exist, calculating a first distance between each pair of conjugate complex poles and the unit circle 1;
sequencing a plurality of pairs of conjugate complex poles from small to large according to the first distance;
if a plurality of real number poles exist, calculating a second distance between each real number pole and the unit circle 1;
and sequencing the real poles according to the second distance from small to large.
It should be noted that, by default, all poles are within the unit circle, i.e., the original high-order filter is a stable system, otherwise, the high-order filter has no practical engineering significance.
In addition, the first distance is sorted from small to large in order to give priority to unstable poles, so that unstable poles and zeros are paired, and the whole cascaded multiple second-order filter system is most stable.
Then the pn is further sorted to obtain the following sorted pole set (pnn):
Figure BDA0002735368420000102
after sorting, one or more rounds of filter coefficient distribution operations may be performed to distribute poles and zeros to obtain second order IIR filter coefficients.
Consider the following four cases: the ordered pole set has a complex conjugate pole, no complex conjugate pole but at least two real poles, no complex conjugate pole but only one real pole, and the ordered pole set is empty but the zero set is not empty.
Specific implementations for assigning poles and zeros are described below for different cases.
In case one, there are conjugate complex poles in the ordered pole set.
1, pole assignment:
selecting a first pair of conjugate complex poles from the sorting pole set as the roots of the denominators in the target transmission function according to the sequence: selecting the conjugate complex pole as a target pole;
and removing the target pole from the sorting pole set.
Taking the pole set shown in equation 8 as an example, in the first round of filter coefficient distribution operation, the selected conjugate complex number pole is: 2025/2123+ j 187/2012 and 2025/2123-j 187/2012 as the roots of the denominator, which may be expressed as:
(1-(2025/2123+j*187/2012)*z-1)*(1-(2025/2123-j*187/2012)*z-1)
2, zero point allocation:
for selecting the zero from the zero set that is closest to the target pole, the following operations can be performed:
operation a: and if the zero point set has the conjugate complex number zero point pairs, selecting the conjugate complex number zero point pair closest to the target pole point from the conjugate complex number zero point pairs as the roots of the molecules in the target transmission function.
Taking the zero point set shown in equation 6 as an example, in the first round of filter coefficient distribution operation, the selected conjugate zero point pair that is the last distance from the target pole includes:
651/545+438/4799 j, and, 651/545-438/4799 j. Which acts as the root of a molecule, which can be represented as:
(1-(651/545+438/4799*j)*z-1)*(1-(651/545-438/4799*j)*z-1)
thus, the transfer function of the first second order IIR filter can be obtained as:
Figure BDA0002735368420000111
similarly, the transfer function of the second order IIR digital filter can be obtained as:
Figure BDA0002735368420000112
operation b: and if the zero point set does not have the conjugate zero point but has at least two real zero points, selecting the two real zero points closest to the target conjugate complex number pole as the roots of the molecules in the target transmission function.
And c, operation c: if only one real zero exists in the zero point set, selecting the only real zero as the root of the numerator in the target transmission function, and dividingSub-multiplied by z-1
It is to be noted that z is multiplied by the molecule-1In order to have the molecule, after being expanded into a polynomial, contain z-2This term ensures the correspondence between the pole zero and the filter order, otherwise errors will occur, as follows.
Operation d: if the set of zero points is null, the numerator of the target transfer function is 1 and multiplied by z-2
Operation e: and removing the selected zero points from the zero point set.
In case two, there are no conjugate complex poles but at least two real poles in the ordered pole set.
1, pole assignment:
and selecting two real poles from the sequencing pole set in sequence as the roots of the denominators in the target transmission function: selecting a real number pole as a target pole;
and removing the target pole from the sorting pole set.
Still taking the pole set shown in equation 8 as an example, after the first and second rounds of filter coefficient assignment operations, the poles are left 1409/1494 and 0, so that the two real poles can be assigned to the third second-order IIR digital filter as the root of the denominator, and the denominator part can be expressed as:
(1-0*z-1)*(1-1409/1494*z-1)。
2, zero point allocation:
operation a: if the zero point set has the conjugate complex number zero point pair, selecting the conjugate complex number zero point pair closest to the target pole point from the conjugate complex number zero point pair as the root of the molecule in the target transmission function;
specifically, the two conjugate complex zeros closest to the real pole closer to the unit circle (1409/1494 in the previous example) may be selected from the two real poles.
Operation b: if the zero point set does not have the conjugate zero point but has at least two real zero points, selecting the two real zero points closest to the target pole as the roots of the molecules in the target transmission function;
it should be noted that after two real poles (which may be referred to as a first real pole and a second real pole) are selected, when the real zero is allocated, one real zero closest to the first real pole and one real zero closest to the second real pole may be selected as a root of a numerator in the target transfer function.
And c, operation c: if only one real zero exists in the zero point set, selecting the only real zero as the root of a numerator in the target transmission function, and multiplying the numerator by z-1
Still taking the zero set shown in equation 6 as an example, after the first and second filter coefficient allocation operations, 308/421 remain as zeros, so that the real pole can be allocated to the third second-order IIR digital filter as the root of its numerator, and the numerator part can be expressed as:
z-1*(1-308/421*z-1)。
operation d: if the zero point set is null, let the numerator of the target transfer function be 1 and multiply by z-2
Operation e: and removing the selected zero points from the zero point set.
In case three, there is no conjugate complex pole and only one real pole in the ordered pole set.
1, pole assignment:
selecting a real number pole as a root of a denominator in a target transmission function, and selecting the selected real number pole as a target pole;
and removing the target pole from the sorting pole set.
2, zero point allocation:
operation a: if the zero point set has the conjugate complex number zero point pair, selecting the conjugate complex number zero point pair closest to the target pole point as the root of the molecule in the target transmission function;
operation b: if the zero point set does not have the conjugate zero point but has at least two real zero points, taking the two real zero points closest to the target pole as the roots of the molecules in the target transmission function;
and c, operation c: and if only one real zero exists in the zero point set, selecting the only real zero as the root of the numerator in the target transmission function.
Operation d: if the set of zero points is empty, the numerator is 1, multiplied by z on the numerator-1
In this case, the molecular moiety can be represented as: 1 x z-1
Operation e: and removing the selected zero points from the zero point set.
Case four, the set of sorted poles is empty, but the set of zeros is not.
1, pole assignment:
setting the denominator in the target transmission function as 1;
2, zero point allocation:
if the zero point set has a conjugate complex number zero point pair, selecting a pair of conjugate complex number zero point pairs as the roots of the molecules in the target transmission function;
if the zero point set does not have the conjugate zero point but has at least two real zero points, selecting the two real zero points as the roots of the molecules in the target transmission function;
if only one real zero exists in the zero point set, selecting the only real zero as the root of the molecule in the target transmission function;
and removing the selected zero points from the zero point set.
If the zero point set is empty, the conversion is finished.
Taking the sixth-order IRR digital filter as an example, the transfer functions of the corresponding first-third second-order IRR digital filters are expanded into polynomial forms, which are respectively:
Figure BDA0002735368420000141
Figure BDA0002735368420000142
Figure BDA0002735368420000143
finally, the conversion result of the six-order IRR digital filter is as follows:
H(z)=K*H1(z)*H2(z)*H3(z)。
of course, the transfer function of one of the second order IIR digital filters may also be multiplied by a fixed coefficient K.
Fig. 3 shows the full flow of assigning poles and zeros for the four cases described above.
The generation means is described below.
Fig. 4 shows an exemplary structure of the above-described generating apparatus, including:
a plurality of second order IIR digital filters;
a memory 41 for storing computer programs or instructions;
a processing unit 42 for calling said computer program or instructions from the memory to perform the above described generation method.
For details, refer to the foregoing description herein and are not repeated herein.
In another embodiment of the present invention, in an aspect that a plurality of configured second-order IIR digital filters are obtained by configuring transmission characteristics of a second-order IIR digital filter based on a zero set and a pole set, the processing unit is specifically configured to:
sequencing the m poles from small to large according to the stability to obtain a sequencing pole set;
and performing multi-round filter coefficient distribution operation based on the zero point set and the sorting pole set until all the poles in the zero point set and the sorting pole set are configured to obtain a plurality of configured second-order IIR digital filters.
The second-order IIR digital filter corresponding to any round of filter coefficient distribution operation is a target second-order IIR digital filter; the transmission function corresponding to the target second-order IIR digital filter is a target transmission function;
any round of filter coefficient assignment operations includes:
distributing poles for the target transmission function based on the sorting pole set; the distributed poles are target poles;
selecting a zero point closest to the target pole from the zero point set as a zero point of the target transmission function;
after the transmission function of each configured second-order IIR filter is expanded into a polynomial multiplication form, coefficients in a numerator and a denominator in the polynomial are filter coefficients of the corresponding second-order IIR filter.
For details, refer to the foregoing description herein and are not repeated herein.
In another embodiment of the present invention, in the aspect of sorting from small to large according to the stability, the processing unit is specifically configured to:
if the conjugate complex number pole and the real number pole exist, the conjugate complex number pole is placed in front of all the real number poles;
if a plurality of pairs of conjugate complex poles exist, calculating a first distance between each pair of conjugate complex poles and the unit circle 1;
sequencing a plurality of pairs of conjugate complex poles from small to large according to the first distance;
if a plurality of real number poles exist, calculating a second distance between each real number pole and the unit circle 1;
and sequencing the real poles according to the second distance from small to large.
For details, refer to the foregoing description herein and are not repeated herein.
In another embodiment of the present invention, in an aspect of allocating poles to a target transfer function based on a sorted pole set, the processing unit is specifically configured to:
if conjugate complex poles exist in the sorting pole set, a first pair of conjugate complex poles are selected from the sorting pole set in sequence as the root of a denominator in a target transmission function: selecting the conjugate complex pole as a target pole;
removing the target pole from the sorting pole set;
correspondingly, in the aspect of selecting the zero closest to the target pole from the zero set, the processing unit is specifically configured to:
if the zero point set has the conjugate complex number zero point pair, selecting the conjugate complex number zero point pair closest to the target pole point from the conjugate complex number zero point pair as the root of the molecule in the target transmission function; or
If the zero point set does not have a conjugate zero point but has at least two real zero points, selecting two real zero points closest to a target conjugate complex number pole as roots of molecules in a target transmission function; or
If only one real zero exists in the zero point set, selecting the only real zero as the root of a numerator in the target transmission function, and multiplying the numerator by z-1(ii) a Or
If the zero point set is null, let the numerator of the target transfer function be 1 and multiply by z-2
And removing the selected zero points from the zero point set.
For details, refer to the foregoing description herein and are not repeated herein.
In another embodiment of the present invention, in an aspect of allocating poles to a target transfer function based on a sorted pole set, the processing unit is specifically configured to:
if the conjugate complex pole does not exist in the sequencing pole set but at least two real poles exist in the sequencing pole set, selecting the two real poles from the sequencing pole set in sequence as the roots of the denominators in the target transmission function: selecting a real number pole as a target pole;
removing the target pole from the sorting pole set;
correspondingly, in the aspect of selecting the zero closest to the target pole from the zero set, the processing unit is specifically configured to:
if the zero point set has the conjugate complex number zero point pair, selecting the conjugate complex number zero point pair closest to the target pole point from the conjugate complex number zero point pair as the root of the molecule in the target transmission function; or
If the zero point set does not have the conjugate zero point but has at least two real zero points, selecting the two real zero points closest to the target pole as the roots of the molecules in the target transmission function; or
If only one real zero exists in the zero point set, selecting the only real zero as the root of the numerator in the target transmission function, and obtaining the numeratorUp times z-1(ii) a Or
If the zero point set is null, let the numerator of the target transfer function be 1 and multiply by z-2
And removing the selected zero points from the zero point set.
For details, refer to the foregoing description herein and are not repeated herein.
In another embodiment of the present invention, in an aspect of allocating poles to a target transfer function based on a sorted pole set, the processing unit is specifically configured to:
if the conjugate complex pole does not exist in the sorting pole set and only one real pole exists, selecting the real pole as the root of the denominator in the target transmission function: selecting a real number pole as a target pole;
removing the target pole from the sorting pole set;
correspondingly, in the aspect of selecting the zero closest to the target pole from the zero set, the processing unit is specifically configured to:
if the zero point set has the conjugate complex number zero point pair, selecting the conjugate complex number zero point pair closest to the target pole point as the root of the molecule in the target transmission function; or
If the zero point set does not have the conjugate zero point but has at least two real zero points, taking the two real zero points closest to the target pole as the roots of the molecules in the target transmission function; or
If only one real zero exists in the zero point set, selecting the only real zero as the root of the molecule in the target transmission function; or
If the set of zero points is empty, the numerator is 1, and z is multiplied on the numerator-1
And removing the selected zero points from the zero point set.
For details, refer to the foregoing description herein and are not repeated herein.
In another embodiment of the present invention, in an aspect of allocating poles to a target transfer function based on a sorted pole set, the processing unit is specifically configured to:
if the sorting pole set is empty but the zero point set is not empty, the denominator in the target transmission function is 1;
correspondingly, in the aspect of selecting the zero closest to the target pole from the zero set, the processing unit is specifically configured to:
if the zero point set has a conjugate complex number zero point pair, selecting a pair of conjugate complex number zero point pairs as the roots of the molecules in the target transmission function;
if the zero point set does not have the conjugate zero point but has at least two real zero points, selecting the two real zero points as the roots of the molecules in the target transmission function;
if only one real zero exists in the zero point set, selecting the only real zero as the root of the molecule in the target transmission function;
and removing the selected zero points from the zero point set.
For details, refer to the foregoing description herein and are not repeated herein.
In another embodiment of the present invention, before cascading the plurality of configured second-order IIR digital filters, the processing unit is further configured to:
multiplying the transmission function of one second-order IIR digital filter by a fixed coefficient K; and the ratio of the multiplication result of the transmission function of the N-order digital filter and the transmission functions of the plurality of configured second-order digital filters is equal to K.
For details, refer to the foregoing description herein and are not repeated herein.
An embodiment of the present invention further provides a digital signal processing system, where the digital signal processing system includes an N-order IIR digital filter formed by a plurality of cascaded second-order IIR digital filters according to the above generation method, or includes the above generation apparatus.
The embodiments in the present description are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other.
The foregoing is only a preferred embodiment of the present invention, and it should be noted that, for those skilled in the art, various modifications and decorations can be made without departing from the principle of the present invention, and these modifications and decorations should also be regarded as the protection scope of the present invention.

Claims (11)

1. A method for generating a digital filter is characterized by being used for generating an N-order IIR digital filter; n is a positive integer greater than 2;
the method comprises the following steps:
acquiring a zero set and a pole set corresponding to the transmission characteristics of the N-order IIR digital filter; the zero set comprises n zeros, and the pole set comprises m poles; n and m are positive integers;
configuring the transmission characteristics of a second-order IIR digital filter based on the zero point set and the pole set to obtain a plurality of configured second-order IIR digital filters; the transmission characteristic is determined by the zero and the pole together; the pole corresponding to any configured second-order IIR digital filter belongs to the pole set, and the zero corresponding to any configured second-order IIR digital filter comprises: among the n zeros, the zero closest to the pole corresponding to the configured second-order IIR digital filter is selected;
and cascading a plurality of configured second-order IIR digital filters to obtain the N-order IIR digital filter.
2. The method of claim 1,
the step of configuring the transmission characteristics of the second-order IIR digital filter based on the zero point set and the pole set to obtain a plurality of configured second-order IIR digital filters comprises the following steps:
sequencing the m poles from small to large according to the stability to obtain a sequencing pole set;
and performing multi-round filter coefficient distribution operation based on the zero point set and the sorting pole set until all the zero points in the zero point set and the poles in the sorting pole set are configured to obtain a plurality of configured second-order IIR digital filters.
3. The method of claim 2, wherein the transmission characteristics of the configured second order IIR digital filter are characterized by filter coefficients;
a second-order IIR digital filter corresponding to any round of filter coefficient distribution operation is a target second-order IIR digital filter; the transmission function of the target second-order IIR digital filter is a target transmission function;
any round of filter coefficient assignment operations includes:
allocating poles to the target transfer function based on the set of ordered poles; the distributed poles are target poles;
selecting a zero point closest to the target pole from the zero point set as a zero point of the target transmission function; the distributed zero point is a target zero point;
expanding the transmission function after the target pole and the target zero are distributed into a polynomial multiplication form;
and determining coefficients in a numerator and a denominator in the polynomial as filter coefficients of the target second-order IIR filter.
4. The method of claim 3, wherein said ranking by degree of stability from small to large comprises:
if the conjugate complex number pole and the real number pole exist, the conjugate complex number pole is placed in front of all the real number poles;
if a plurality of pairs of conjugate complex poles exist, calculating a first distance between each pair of conjugate complex poles and the unit circle 1;
sequencing the multiple pairs of conjugate complex poles from small to large according to the first distance;
if a plurality of real number poles exist, calculating a second distance between each real number pole and the unit circle 1;
and sequencing the real number poles according to the second distance from small to large.
5. The method of claim 3 or 4,
the assigning poles to the target transfer function based on the ordered set of poles comprises:
if conjugate complex poles exist in the sorting pole set, selecting a first pair of conjugate complex poles from the sorting pole set as the roots of the denominators in the target transmission function according to the sequence: the selected conjugate complex pole is the target pole;
removing the target pole from the sorting pole set;
selecting the zero closest to the target pole from the zero set comprises:
if the zero point set has conjugate complex number zero point pairs, selecting the conjugate complex number zero point pair closest to the target pole point from the zero point set as the root of the molecule in the target transmission function; or
If the zero point set does not have a conjugate zero point but has at least two real zero points, selecting two real zero points closest to the target conjugate complex number pole as roots of molecules in the target transmission function; or
If only one real zero exists in the zero point set, selecting the only real zero as the root of the numerator in the target transmission function, and multiplying the numerator by z-1(ii) a Or
If the zero point set is null, let the numerator of the target transfer function be 1 and multiply by z-2
And removing the selected zero points from the zero point set.
6. The method of claim 3 or 4,
the assigning poles to the target transfer function based on the ordered set of poles comprises:
if the conjugate complex pole does not exist in the sorting pole set but at least two real poles exist in the sorting pole set, sequentially selecting the two real poles from the sorting pole set as the roots of the denominators in the target transfer function: selecting a real number pole as the target pole;
removing the target pole from the sorting pole set;
selecting the zero closest to the target pole from the zero set comprises:
if the zero point set has conjugate complex number zero point pairs, selecting the conjugate complex number zero point pair closest to the target pole point from the zero point set as the root of the molecule in the target transmission function; or
If the zero point set does not have a conjugate zero point but has at least two real zero points, selecting two real zero points closest to the target pole as roots of molecules in the target transmission function; or
If only one real zero exists in the zero point set, selecting the only real zero as the root of the numerator in the target transmission function, and multiplying the numerator by z-1(ii) a Or
If the zero point set is null, let the numerator of the target transfer function be 1 and multiply by z-2
And removing the selected zero points from the zero point set.
7. The method of claim 3 or 4,
the assigning poles to the target transfer function based on the ordered set of poles comprises:
if the conjugate complex pole does not exist in the sorting pole set and only one real pole exists, selecting the real pole as the root of a denominator in the target transmission function: selecting a real number pole as the target pole;
removing the target pole from the sorting pole set;
selecting the zero closest to the target pole from the zero set comprises:
if the zero point set has a conjugate complex number zero point pair, selecting the conjugate complex number zero point pair closest to the target pole point as a root of a molecule in the target transmission function; or
If the zero point set does not have a conjugate zero point but has at least two real zero points, taking the two real zero points closest to the target pole as the roots of the molecules in the target transmission function; or
If only one real zero exists in the zero point set, selecting the only-existing real zero as a root of a molecule in the target transmission function; or
If the set of zeros is null, the numerator is 1, and z is multiplied over the numerator-1
And removing the selected zero points from the zero point set.
8. The method of claim 3 or 4,
the assigning poles to the target transfer function based on the ordered set of poles comprises:
if the sorting pole point set is empty but the zero point set is not empty, the denominator in the target transmission function is 1;
selecting the zero closest to the target pole from the zero set comprises:
if the zero point set has a conjugate complex number zero point pair, selecting a pair of conjugate complex number zero point pairs as the roots of the molecules in the target transmission function; or
If the zero point set does not have a conjugate zero point but has at least two real zero points, selecting the two real zero points as the roots of the molecules in the target transmission function; or
If only one real zero exists in the zero point set, selecting the only-existing real zero as a root of a molecule in the target transmission function;
and removing the selected zero points from the zero point set.
9. The method of claim 3 or 4, wherein prior to cascading the plurality of configured second order IIR digital filters, further comprising:
multiplying the transmission function of one second-order IIR digital filter by a fixed coefficient K; and the ratio of the multiplication result of the transmission function of the N-order digital filter and the transmission functions of the plurality of configured second-order digital filters is equal to K.
10. An apparatus for generating a digital filter, comprising:
a plurality of second order IIR digital filters;
a memory for storing computer programs or instructions;
a processing unit for invoking the computer program or instructions from memory to perform the method of any of claims 1-9.
11. A digital signal processing system comprising an nth order IIR digital filter formed from a plurality of second order IIR digital filters according to the method of claims 1 to 9; n is a positive integer greater than 2; or generation means comprising a digital filter according to claim 10.
CN202011131678.5A 2020-10-21 2020-10-21 Method and device for generating digital filter and digital signal processing system Pending CN114389575A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011131678.5A CN114389575A (en) 2020-10-21 2020-10-21 Method and device for generating digital filter and digital signal processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011131678.5A CN114389575A (en) 2020-10-21 2020-10-21 Method and device for generating digital filter and digital signal processing system

Publications (1)

Publication Number Publication Date
CN114389575A true CN114389575A (en) 2022-04-22

Family

ID=81193788

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011131678.5A Pending CN114389575A (en) 2020-10-21 2020-10-21 Method and device for generating digital filter and digital signal processing system

Country Status (1)

Country Link
CN (1) CN114389575A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114900155A (en) * 2022-06-08 2022-08-12 电子科技大学 IIR digital multi-passband filter design method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114900155A (en) * 2022-06-08 2022-08-12 电子科技大学 IIR digital multi-passband filter design method
CN114900155B (en) * 2022-06-08 2023-07-18 电子科技大学 IIR digital multi-passband filter design method

Similar Documents

Publication Publication Date Title
Vishwanath et al. VLSI architectures for the discrete wavelet transform
Chen et al. A trellis search algorithm for the design of FIR filters with signed-powers-of-two coefficients
Bull et al. Primitive operator digital filters
McClellan Hardware realization of a Fermat number transform
US5255216A (en) Reduced hardware look up table multiplier
Shahein et al. A novel hybrid monotonic local search algorithm for FIR filter coefficients optimization
JPS6272218A (en) Infinite impulse response filter
JP2957183B2 (en) Cyclic digital filter
Olshevsky et al. A unified superfast algorithm for boundary rational tangential interpolation problems and for inversion and factorization of dense structured matrices
CN114389575A (en) Method and device for generating digital filter and digital signal processing system
Shanbhag An improved systolic architecture for 2-D digital filters
CN113918120A (en) Computing device, neural network processing apparatus, chip, and method of processing data
Lesnikov et al. Classification of structures of IIR digital filters
Pandel et al. Design of bireciprocal wave digital filters for high sampling rate applications
Eskritt et al. A 2-digit DBNS filter architecture
Ty et al. A fast filter for real-time image processing
US4716537A (en) Circuit arrangement for simulating a resistive elementary two port device for use in a wave digital filter
TWI798640B (en) Constant multiplier
Wanhammar Implementation of wave digital filters using distributed arithmetic
WANHAMMAR An approach to LSI implementation of wave digital filters
Mandelbaum A method for calculation of the square root using combinatorial logic
CN105071928A (en) FPGA-based quick generation method of big prime number and big prime number family
de Sá et al. Evolutionary synthesis of low-sensitivity equalizers using adjacency matrix representation
Blanchard et al. Measure-preserving diffeomorphisms with an arbitrary spectral multiplicity
US6954119B2 (en) Cascaded arrangement of lower order filters and method of designing the same

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination