RU2631976C2 - Tunable digital filter with programmable structure - Google Patents
Tunable digital filter with programmable structure Download PDFInfo
- Publication number
- RU2631976C2 RU2631976C2 RU2016109227A RU2016109227A RU2631976C2 RU 2631976 C2 RU2631976 C2 RU 2631976C2 RU 2016109227 A RU2016109227 A RU 2016109227A RU 2016109227 A RU2016109227 A RU 2016109227A RU 2631976 C2 RU2631976 C2 RU 2631976C2
- Authority
- RU
- Russia
- Prior art keywords
- filter
- input
- switch
- unit
- output
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H17/00—Networks using digital techniques
- H03H17/02—Frequency selective networks
- H03H17/04—Recursive filters
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H17/00—Networks using digital techniques
- H03H17/02—Frequency selective networks
- H03H17/06—Non-recursive filters
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H21/00—Adaptive networks
Landscapes
- Complex Calculations (AREA)
Abstract
Description
Изобретение относится к области цифрового управления объектами авиационной техники, техники обработки и передачи дискретной информации в таких системах и наиболее эффективно может быть использовано для создания цифровых фильтров различного типа и структуры, выполнения цифровой фильтрации, формирования потоков с определенными свойствами, а также при построении цифровых контуров управления непрерывными объектами.The invention relates to the field of digital control of objects of aeronautical engineering, technology for processing and transmitting discrete information in such systems, and can be most effectively used to create digital filters of various types and structures, perform digital filtering, generate flows with certain properties, and also when constructing digital circuits continuous objects management.
Известно, что в аппаратуре дискретной автоматики, вычислительной техники и техники передачи информации широко используются авторегрессионные цифровые фильтры и фильтры с конечным импульсным откликом (КИО), которые реализованы на регистровых структурах и сумматорах сигналов с определенными весовыми коэффициентами, местоположение и включение которых определяют тип цифрового фильтра, со структурой, определяемой разностным уравнением или Z-передаточной функцией [1, стр. 45]. Однако при изменении в процессе работы частоты f0 периодического поступления обрабатываемой входной информации частотные свойства фильтра меняются, а при значительном изменении такая фильтрация может привести к неудовлетворительным результатам, если при этом не изменять - перестраивать параметры цифрового фильтра.It is known that in equipment of discrete automation, computer technology and information transmission technology, autoregressive digital filters and filters with finite impulse response (KIO) are widely used, which are implemented on register structures and signal adders with certain weight coefficients, the location and inclusion of which determine the type of digital filter , with a structure defined by a difference equation or a Z-transfer function [1, p. 45]. However, when the frequency f0 of the periodic input of the processed input information changes during operation, the frequency properties of the filter change, and with a significant change, such filtering can lead to unsatisfactory results, if you do not change it, rebuild the parameters of the digital filter.
Авторегрессионные фильтры и фильтры с конечным импульсным откликом (КИО-фильтры), которые известны и реализованы как отдельные устройства, имеют жесткую структуру, определяемую типом фильтра и «фильтрующим» полиномом, которые для фильтров остаются неизменными. Применительно к фильтрам второго порядка в устройстве [3] приведена реализация программируемого цифрового фильтра, допускающая изменение свойств фильтра, в частности обеспечение устройством свойств фильтра низких частот, фильтра высоких частот и режекторного фильтра. Наиболее близким техническим решением является цифровой фильтр с программируемой структурой, содержащий, последовательно соединенные внешнее устройство настройки, блок хранения кода типа фильтра и блок фильтрации, выход внешнего устройство настройки соединен с входом блока хранения кода структуры фильтра, а через блок формирования тактовых импульсов - со вторым входом блока фильтрации [2] - ПРОТОТИП. Указанный прототип позволяет реализовать цифровые фильтры различного назначения и с различными свойствами, например авторегрессионные фильтры, фильтры с конечным импульсным откликом (КИО) и т.пAutoregressive filters and filters with finite impulse response (KIO filters), which are known and implemented as separate devices, have a rigid structure, determined by the type of filter and the "filtering" polynomial, which remain unchanged for filters. In relation to second-order filters, the device [3] shows the implementation of a programmable digital filter that allows changing the filter properties, in particular, providing the device with the properties of a low-pass filter, a high-pass filter, and a notch filter. The closest technical solution is a digital filter with a programmable structure, comprising, in series, an external tuner, a filter type code storage unit and a filter unit, the output of an external tuner connected to the input of the filter structure code storage unit, and through a second pulse generating unit, to a second the input of the filtering unit [2] - PROTOTYPE. The specified prototype allows you to implement digital filters for various purposes and with various properties, such as autoregressive filters, filters with finite impulse response (KIO), etc.
Однако при наличии в процессе работы нерасчетного изменения фактической частоты относительно расчетной частоты поступления входной информации, свойства фильтра, в частности частотные характеристики меняются, а при значительном изменении частоты фильтр может потерять требуемые функциональные свойства. В замкнутой цифровой системе управления непрерывным объектом это может привести к уменьшению запасов устойчивости и ухудшению качества процессов управления, а при определенном изменении возможна даже потеря устойчивости системы. Это можно показать на простейшем примере цифрового фильтра 1 порядка, описываемого z-передаточной функцией вида: ,However, if there is an off-design change in the actual frequency during operation relatively estimated the frequency of input information, filter properties, in particular, the frequency characteristics change, and with a significant change in frequency, the filter may lose the required functional properties. In a closed digital control system for a continuous facility, this can lead to a decrease in stability margins and a deterioration in the quality of control processes, and with a certain change even a loss of system stability is possible. This can be shown on the simplest example of a first-order digital filter described by a z-transfer function of the form: ,
где а0, b0, С - числовые параметры звена.where a 0, b0, C are the numerical parameters of the link.
Данная Z - передаточная функция соответствует разностным уравнениям, связывающим вход X и выход U цифрового фильтра:This Z - transfer function corresponds to difference equations connecting the input X and the output U of the digital filter:
где а0, b0, С - параметры фильтра.where a0, b0, C are filter parameters.
Пусть данный алгоритм цифрового управления (цифровой фильтр) реализуется с различными частотами: - расчетная частота и - измененная частота, где параметр N определяет изменение частоты. При этом разностные уравнения и соответствующая программа реализации фильтра, будут одинаковыми, но моменты квантования разными - соответственно и Частотная характеристики такого фильтра для частоты квантования имеет вид:Let this digital control algorithm (digital filter) be implemented with different frequencies: - estimated frequency and - the changed frequency, where the parameter N determines the change in frequency. In this case, the difference equations and the corresponding filter implementation program will be the same, but the quantization moments will be different, respectively and The frequency response of such a filter for the quantization frequency has the form:
а для измененной частоты квантования определится выражением:and for the modified quantization frequency defined by the expression:
, ,
т.е. при изменении частоты квантования частотные свойства фильтра существенно меняются относительно расчетных свойств D0*(j⋅ω). Так, при a 0=-0.97, b0=0.3 амплитудно-частотная характеристика может отличаться в два раза на определенных частотах.those. as the quantization frequency changes, the frequency properties of the filter change substantially with respect to the calculated properties D0 * (j⋅ω). So, with a 0 = -0.97, b 0 = 0.3, the amplitude-frequency characteristic can differ by half at certain frequencies.
С целью исключения указанных недостатков известного фильтра предложенное техническое решение отличается тем, что перестраиваемый цифровой фильтр с программируемой структурой, дополнительно содержит блок идентификации частоты импульсов и блок пересчета кода фильтра, выход блока хранения кода структуры фильтра через блок пересчета кода фильтра соединен с третьим входом блока фильтрации, а выход блока формирования тактовых импульсов через блок идентификации частоты импульсов - со вторым входом блока пересчета кода фильтра, при этом блок идентификации частоты импульсов содержит Т-триггер, первый генератор импульсов и счетчик импульсов, причем вход блока идентификации частоты импульсов соединен через последовательно подключенные Т-триггер, первый генератор импульсов и счетчик импульсов с выходом блока идентификации частоты импульсов, а второй выход Т-триггера соединен со вторым входом первого генератора импульсов, кроме того, блок пересчета кода фильтра содержит сумматор, реле с первым переключателем, блок элементов памяти, вычислитель параметров пересчета, регистр множителя, мультиплексор, счетчик-коммутатор, умножитель, сумматор-накопитель, память вектора параметров, второй генератор импульсов, второй переключатель, второй вход блока пересчета кода фильтра соединен со входом реле через сумматор, а через последовательно подключенные первый переключатель, вычислитель параметров пересчета, мультиплексор, умножитель, сумматор-накопитель, память вектора параметров и второй переключатель с выходом блока пересчета кода фильтра, выход блока элементов памяти через регистр множителя соединен со вторым входом умножителя, второй выход вычислителя параметров пересчета соединен через второй генератор импульсов со входом счетчика-коммутатора, а первый, второй третий и четвертый выходы счетчика-коммутатора соединены соответственно со входом блока элементов памяти, вторыми входами мультиплексора, сумматора-накопителя и блока памяти вектора параметров, пятый выход счетчика-коммутатора соединен со вторым входом второго переключателя, третий вход которого подключен к первому входу блока пересчета кода фильтра.In order to eliminate these disadvantages of the known filter, the proposed technical solution is characterized in that the tunable digital filter with a programmable structure further comprises a pulse frequency identification unit and a filter code conversion unit, the output of the filter structure code storage unit through the filter code conversion unit is connected to the third input of the filter unit , and the output of the clock pulse generation unit through the pulse frequency identification unit - with the second input of the filter code conversion unit, ok pulse frequency identification contains a T-trigger, a first pulse generator and a pulse counter, and the input of the pulse frequency identification block is connected via series-connected T-trigger, the first pulse generator and a pulse counter with the output of the pulse frequency identification block, and the second output of the T-trigger is connected with the second input of the first pulse generator, in addition, the filter code conversion unit contains an adder, a relay with a first switch, a memory element block, a calculator of conversion parameters, a register multiplier, multiplexer, counter-switch, multiplier, accumulator-accumulator, parameter vector memory, second pulse generator, second switch, second input of the filter code conversion unit is connected to the relay input through the adder, and through the first switch connected in series, the conversion parameter calculator, multiplexer , multiplier, accumulator-accumulator, parameter vector memory and a second switch with the output of the filter code conversion unit, the output of the memory element block through the register of the multiplier is connected from the second m of the multiplier input, the second output of the calculator of the conversion parameters is connected through the second pulse generator to the input of the counter-switch, and the first, second third and fourth outputs of the counter-switch are connected respectively to the input of the block of memory elements, the second inputs of the multiplexer, adder-drive and vector memory block parameters, the fifth output of the counter-switch is connected to the second input of the second switch, the third input of which is connected to the first input of the filter code conversion unit.
На фиг. 1 изображена структура перестраиваемого цифрового фильтра с программируемой структурой, на фиг. 2 - структура блока идентификации частоты импульсов, на фиг. 3 - структура блока пересчета кода фильтра, на фиг. 4 - структура реализации вычислителя параметров пересчета, фиг. 5 - структура реализации блока фильтрации, фиг. 6 - структура реализация блока коммутации, фиг. 7 - пример реализации счетчика-коммутатора, где приняты следующие обозначения:In FIG. 1 shows the structure of a tunable digital filter with a programmable structure, FIG. 2 shows the structure of a pulse frequency identification unit; FIG. 3 shows a structure of a filter code conversion unit, FIG. 4 is a structure of an implementation of a calculator of conversion parameters, FIG. 5 shows a structure of an implementation of a filtration unit, FIG. 6 is a structure implementation of a switching unit, FIG. 7 - an example implementation of a counter-switch, where the following notation:
1 - Блок хранения кода типа фильтра,1 - Block storage code type filter,
2 - Блок хранения кода структуры фильтра,2 - Block storage code structure of the filter,
3 - Блок формирования тактовых импульсов,3 - Block forming clock pulses,
4 - Блок идентификации частоты импульсов4 - Pulse frequency identification unit
5 - Блок пересчета кода фильтра,5 - Block recount filter code,
6 - Блок фильтрации,6 - Filtration unit,
7 - Т-триггер,7 - T-trigger
8 - Первый генератор импульсов,8 - The first pulse generator,
9 - Счетчик импульсов,9 - pulse counter
10 - Сумматор,10 - adder,
11 - Реле,11 - Relay
12 - Блоки элементов памяти,12 - Blocks of memory elements,
13 - Вычислитель параметров пересчета,13 - Calculator parameters conversion,
14 - Регистр множителя,14 - Register of the multiplier,
15 - Мультиплексор,15 - Multiplexer,
16 - Счетчик- коммутатор,16 - Counter-switch,
17 - Умножитель,17 - Multiplier,
18 - Сумматор-накопитель,18 - adder drive
19 - Память вектора параметров,19 - Memory parameter vector
20 - Второй переключатель,20 - The second switch,
21 - Первый переключатель,21 - The first switch
22 - Второй генератор импульсов,22 - The second pulse generator,
23 - Блок коммутации,23 - Switching unit,
24 - Первый векторный умножитель,24 - The first vector multiplier,
25 - Второй векторный умножитель25 - Second vector multiplier
26 - Первый регистр-накопитель,26 - The first drive register,
27 - Второй регистр-накопитель,27 - The second register-drive
28 - Память значений функции,28 - Memory function values,
29 - Первый умножитель,29 - The first multiplier,
30 - Второй умножитель,30 - The second multiplier,
31 - N-й умножитель,31 - Nth multiplier,
32 - Внешнее устройство настройки.32 - External configuration device.
Осуществление перестраиваемого цифрового фильтра с программируемой структурой.Implementation of a tunable digital filter with programmable structure.
Сущность работы перестраиваемого цифрового фильтра заключается в следующем.The essence of the tunable digital filter is as follows.
Пусть требуется обеспечить близость частотной характеристики цифрового фильтра при измененной частоте и частотной характеристики (исходного) линейного цифрового фильтра, описываемого z-передаточной функцией видаLet it be required to ensure the proximity of the frequency response of the digital filter at a changed frequency and frequency response of the (initial) linear digital filter described by a z-transfer function of the form
где - период дискретности, A0(z) и B0(z) - многочлены от z.Where is the period of discreteness, A0 (z) and B0 (z) are polynomials in z.
Фильтр, описываемый передаточной функцией (1), назовем опорным цифровым фильтром (ОЦФ) - он соответствует желаемым функциональным свойствам. Частотная характеристика (ЧХ) такого фильтра определяется выражением [1]:The filter described by the transfer function (1) is called the reference digital filter (OTsF) - it corresponds to the desired functional properties. The frequency response (CH) of such a filter is determined by the expression [1]:
где символом * будем обозначать ЧХ дискретной системы. Такая характеристика является трансцендентной функцией ω и обладает периодическими свойствами [1, стр. 59]:where the symbol * will denote the frequency response of the discrete system. Such a characteristic is a transcendental function of ω and has periodic properties [1, p. 59]:
В случае, когда частота квантования изменилась , использование старой передаточной функции опорного фильтра приведет к измененной ЧХ вида:In the case when the quantization frequency has changed , the use of the old transfer function of the reference filter will lead to a modified frequency response of the form:
. .
Заметим, что данная ЧХ обладает другими свойствами: она масштабно изменена по оси частот относительно опорной, а главное, имеет период повторения который в N раз меньше, чем у исходной (N>1). В силу этого, подобрать «подобный фильтр», т.е. некоторый цифровой фильтр DN (z, T0⋅N) такого же порядка, как опорный, но который полностью повторял бы свойства опорного ЦФ, при измененной частоте невозможно.Note that this frequency response has other properties: it is scaled along the frequency axis relative to the reference, and most importantly, has a repetition period which is N times less than the original (N> 1). Because of this, choose a "similar filter", i.e. some digital filter DN (z, T0⋅N) of the same order as the reference one, but which would completely repeat the properties of the reference DF at a changed frequency impossible.
Однако можно сформировать цифровой фильтр, обеспечивающий повторение ЧХ опорного фильтра в ограниченной полосе частот, в частности в основной полосе частот цифровой системы . Для этого нужно выбирать параметры подобного ЦФ так, чтобы псевдочастотные характеристики ОЦФ при исходной частоте квантования и псевдочастотные характеристики подобного фильтра при частоте квантования были близки в указанном диапазоне. Такой критерий может дать очень близкое совпадение характеристик подобного и опорного фильтров в полосе реальных частот However, it is possible to form a digital filter that ensures repetition of the frequency response of the reference filter in a limited frequency band, in particular in the main frequency band of a digital system . For this, it is necessary to choose the parameters of such a DF so that the pseudofrequency characteristics of the DFT at the initial quantization frequency and pseudo-frequency characteristics of such a filter at a quantization frequency were close in the indicated range. Such a criterion can give a very close coincidence of the characteristics of a similar and a reference filter in the band of real frequencies
Это следует из того, что абсолютная псевдочастота ∧ [1, стр. 61] и реальная частота совпадают в указанном диапазоне достаточно близко. Используя переход в W-область, где W - параметр билинейного преобразования [1, стр. 61], и приравнивая характеристики ОЦФ и ПФ в W-области, запишем:This follows from the fact that the absolute pseudofrequency ∧ [1, p. 61] and the real frequency coincide fairly close in the indicated range. Using the transition to the W-region, where W is the bilinear transformation parameter [1, p. 61], and equating the characteristics of the OTsF and PF in the W-region, we write:
откуда получим для подобного фильтра передаточную функцию в W области в форме:whence we get for a similar filter the transfer function in the W region in the form:
Зная передаточную функцию DN(W) из (2) подобного фильтра в W области, перейдем к его z-передаточной функции с учетом измененной частоты :Knowing the transfer function DN (W) from (2) a similar filter in the W region, we pass to its z-transfer function taking into account the changed frequency :
DN (z, T0⋅N)=DN(W, T0⋅N) при замене DN (z, T0⋅N) = DN (W, T0⋅N) when replacing
Пусть опорный цифровой фильтр описывается z-передаточной функцией вида:Let the reference digital filter be described by a z-transfer function of the form:
Используя выражение (2), после преобразований получим:Using expression (2), after the transformations we get:
Подставляя в полученное выражение формулу обратного w-преобразования, где , получим z-передаточную функцию фильтра в виде:Substituting the inverse w-transformation formula into the expression obtained, where , we obtain the z-transfer function of the filter in the form:
Для упрощения выражения введем коэффициент , в дальнейшем называемый параметром пересчета, связанный с изменением частоты квантования (R=0 при неизменной частоте f0), и преобразуем DN(z) к следующему виду:To simplify the expression, we introduce the coefficient , hereinafter referred to as the conversion parameter, associated with a change in the quantization frequency (R = 0 at a constant frequency f0), and transform DN (z) to the following form:
Из выражения (3) получим алгоритм вычисления коэффициентов числителя при степенях z, используя представления многочлена в форме схемы Горнера:From expression (3) we obtain an algorithm for calculating the numerator coefficients at powers of z using representations of the polynomial in the form of a Horner scheme:
Обозначим многочлены в квадратных скобках как M1(z), а многочлены в круглых скобках как M2(z). При этом размерность многочленов меняется от 1 до n, элементы многочленов - коэффициенты при степенях z. Из схемы Горнера следует правило для вычисления последующих многочленов M1 и M2(z):We denote the polynomials in square brackets as M1 (z), and the polynomials in parentheses as M2 (z). Moreover, the dimension of polynomials varies from 1 to n, the elements of polynomials are coefficients at powers of z. From Horner's scheme follows the rule for calculating the following polynomials M1 and M2 (z):
M1(z)=M1(z)⋅(z+R)+a i⋅M2(z).M1 (z) = M1 (z) ⋅ (z + R) + a i ⋅ M2 (z).
Начальные многочлены:Initial polynomials:
M2(z)=(z⋅R+1),M2 (z) = (z⋅R + 1),
M1(z)=(a 0+a 1⋅R)⋅z+(a 1+a 0⋅R),M1 (z) = ( a 0 + a 1 ⋅ R) ⋅ z + ( a 1 + a 0 ⋅ R),
Вычисление многочленов заканчивается на шаге i=n, причем коэффициенты результирующего многочлена M1 это и есть искомые коэффициенты числителя.The calculation of polynomials ends at step i = n, and the coefficients of the resulting polynomial M1 are the desired coefficients of the numerator.
Аналогично, но для коэффициентов bi можно вычислить и знаменатель DN(z). В таблице, приведенной в ПРИЛОЖЕНИИ 1, записаны конкретные значения многочленов числителя и знаменателя в функции параметра пересчета R для подобных, т.е. пересчитанных, фильтров низкого порядка. Аналогичные соотношения можно получить для любого фиксированного порядка фильтра по (4). На приведенном в ПРИЛОЖЕНИИ 2 чертеже пунктирной линией показаны частотные характеристики подобного цифрового фильтра первого порядка, параметры которого вычислены по соотношениям (4). Как видно из чертежа, перестройка параметров цифрового фильтра позволяет добиться значительной близости ЧХ фильтра к характеристикам опорного цифрового фильтра при значительном изменении Т0.Similarly, but for the coefficients b i , the denominator DN (z) can also be calculated. The table given in
Удобно задавать формулы пересчета в форме матричных соотношений, позволяющих по известным параметрам опорного алгоритма {a0i,b0i} и значениям фактического периода квантования T0*N, или параметра R, пересчитать значения параметров подобного фильтра по следующему соотношению:It is convenient to set the recalculation formulas in the form of matrix relations, which, using the known parameters of the reference algorithm { a 0 i , b0 i } and the values of the actual quantization period T0 * N, or the parameter R, recalculate the values of the parameters of such a filter according to the following relation:
где A0, B0-n+1 - мерные векторы параметров опорного цифрового фильтра,where A0, B0-n + 1 - dimensional vectors of the parameters of the reference digital filter,
AN, BN-n+1 - мерные векторы параметров подобного цифрового фильтра,AN, BN-n + 1 - dimensional vectors of parameters of such a digital filter,
Q(R)-(n+1)×(n+1) - матрица преобразований, или пересчета.Q (R) - (n + 1) × (n + 1) - matrix of transformations, or recalculation.
Представляя (5) по отдельным компонентам aNJ, bNJ, получим:Representing (5) for the individual components a N J , bN J , we obtain:
Представим матрицу пересчета Q в виде произведения Q=QN⋅T, гдеWe represent the conversion matrix Q in the form of the product Q = QN⋅T, where
- нормирующая матрица (n+1)⋅(n+1) is the normalizing matrix (n + 1) ⋅ (n + 1)
- нормированная матрица пересчета. - normalized translation matrix.
Так, для примера 2 порядка матрицы QN и Т примут вид:So, for example 2 orders of the matrix QN and T will take the form:
Рассмотрим структуру матрицы QN пересчета в ее нормированном виде. Нетрудно заметить, что J-й столбец матрицы представляет собой набор коэффициентов многочленаConsider the structure of the matrix QN recalculation in its normalized form. It is easy to see that the Jth column of the matrix is a set of coefficients of the polynomial
причем (J-1) корней многочлена равно 1/R, а остальные (n-J+1) корни равны R. Тогда строка с номером I будет определять коэффициент при n-I+1 степени z многочлена (6): первая строка - степень n, вторая - n-1, …, последняя - степень 0. Таким образом, можно сформулировать простое правило вычисления коэффициентов нормированной матрицы QN пересчета для перестройки параметров фильтра при изменении частоты квантования.moreover, the (J-1) roots of the polynomial is 1 / R, and the remaining (n-J + 1) roots are equal to R. Then the line with number I will determine the coefficient of n-I + 1 degrees z of the polynomial (6): the first line is degree n, the second - n-1, ..., the last - degree 0. Thus, we can formulate a simple rule for calculating the coefficients of the normalized conversion matrix QN for tuning the filter parameters when the quantization frequency changes.
Элемент матрицы пересчета QN [I,J] = сумме всевозможных сочетаний произведений (I-1) разных корней: ,The element of the translation matrix QN [I, J] = the sum of all possible combinations of products (I-1) of different roots: ,
причем значений различных корней всего два: -R и -1/R.and there are only two values of different roots: -R and -1 / R.
Выразить J-й столбец исходной Q[I,J] матрицы можно в виде рядаThe Jth column of the original Q [I, J] matrix can be expressed as a series
Например, для n=4 матрица пересчета в функции R выразится так:For example, for n = 4, the translation matrix in the function R is expressed as follows:
В связи с этим для хранения векторов GJ,K, определяющих матрицу пересчета, можно использовать память на (n+1)*(n+1)*(n+1) целых чисел. В этом случае общий алгоритм вычисления векторов QJ[1] для любых J примет вид:In this regard, to store the vectors G J, K that determine the translation matrix, you can use the memory for (n + 1) * (n + 1) * (n + 1) integers. In this case, the general algorithm for computing the vectors QJ [1] for any J takes the form:
Формула (8) позволяет вычислить векторы, составляющие матрицу пересчета по известным векторам GJ,K и текущим значениям Rn, Rn-1 … R,Formula (8) allows you to calculate the vectors that make up the conversion matrix for the known vectors G J, K and the current values of R n , R n-1 ... R,
Таким образом для вычисления матрицы пересчета необходимо использовать блоки памяти Пk, содержащие векторы GJ,K в следующем виде:Thus, to calculate the translation matrix, it is necessary to use memory blocks Пk containing vectors G J, K in the following form:
Приведенная матрица П из (9) содержит (n+1)*(n+1)*(n+1) целых чисел, которые не зависят от параметров фильтра, а определяются только его порядком. Получение матрицы пересчета Q(R) для конкретного значения R можно осуществить умножением П на (n+1)2×(n+1) - матрицу Р вида:The reduced matrix из from (9) contains (n + 1) * (n + 1) * (n + 1) integers that do not depend on the filter parameters, but are determined only by its order. Obtaining the conversion matrix Q (R) for a specific value of R can be done by multiplying P by (n + 1) 2 × (n + 1) - a matrix P of the form:
где RG=[Rn Rn-1 … R 1]T, Т - знак транспонирования.where RG = [R n R n-1 ... R 1] T , T is the sign of transposition.
Характерно, при этом, что векторы GJ,K содержат большое число нулей и целые числа - биноминальные коэффициенты или их композиции, в связи с чем число умножений при вычислении матрицы Q по крайней мере в два-три раза меньше, чем номинальное число (n+1)3 умножений.Moreover, it is characteristic that the vectors G J, K contain a large number of zeros and integers - binomial coefficients or their compositions, and therefore the number of multiplications in calculating the matrix Q is at least two to three times less than the nominal number (n +1) 3 multiplications.
Учитывая, что собственно матрица пересчета нам не нужна, а нужны ее строки, умноженные на aNJ и bNJ, из (5*) получим:Given that we do not need the conversion matrix itself, but we need its rows multiplied by a N J and bN J , from (5 *) we get:
Таким образом, получим для вычисления параметров aNi, bNi соотношение вида:Thus, we obtain for calculating the parameters a N i , bN i a relationship of the form:
Раскрывая (11), получим:Opening (11), we obtain:
В компактном виде полученное выражение запишем так:In a compact form, we write the expression as follows:
Из выражения (12) видно, что пересчитанные коэффициенты цифрового фильтра aNi, bNi могут вычисляться по известным, рассчитанным заранее векторам Dk и Uk, зависящим от порядка системы, известным параметрам a0i, b0i опорного фильтра, а также по параметрам пересчета R, R2, …, Rn, зависящим от текущего изменения частоты дискретности относительно опорной частоты .It can be seen from expression (12) that the recalculated coefficients of the digital filter a N i , bN i can be calculated using the well-known, previously calculated vectors Dk and Uk, which depend on the order of the system, the known parameters a 0 i , b0 i of the reference filter, as well as the parameters recalculation of R, R 2 , ..., R n , depending on the current frequency change discreteness relative to the reference frequency .
Следует отметить, что хорошая близость характеристик опорного фильтра на частоте и подобного фильтра на частоте будет выполняться на низких частотах, а на частотах в окрестности и выше реальная частота может отличаться от псевдочастоты, и характеристика фильтра будет смещена на 10-15% относительно опорной. Для уменьшения смещения по частоте в указанном диапазоне частот удобно ввести компенсирующий множитель V=0,9-1,3 и параметр пересчета R вычислять по формуле: , где множитель V выбирается при проектировании цифрового фильтра так, что N>1 при и V<1 при .It should be noted that the good proximity of the characteristics of the reference filter at a frequency and similar filter on frequency will be performed at low frequencies, and at frequencies in the vicinity and higher, the real frequency may differ from the pseudo-frequency, and the filter characteristic will be shifted by 10-15% relative to the reference. To reduce the frequency offset in the specified frequency range, it is convenient to introduce a compensating factor V = 0.9-1.3 and the conversion parameter R calculated by the formula: , where the factor V is chosen when designing a digital filter so that N> 1 for and V <1 for .
Следовательно, для обеспечения постоянства характеристик цифрового фильтра при изменении в процессе работы частоты квантования необходимо:Therefore, to ensure the constancy of the characteristics of the digital filter when the frequency changes during operation quantization is necessary:
1. Предварительно, перед использованием цифрового фильтра, рассчитать постоянные векторы GJ,K, определяющие вычисление матрицы пересчета, для чего:1. Previously, before using the digital filter, calculate the constant vectors G J, K that determine the calculation of the translation matrix, for which:
а) вычислить матрицу пересчета как функцию от параметра R,a) calculate the conversion matrix as a function of the parameter R,
б) получить нормированную матрицу пересчета,b) get a normalized translation matrix,
в) составить постоянные векторы Dk, Uk по (12) для К=0, 1, …, n,c) compose constant vectors Dk, Uk according to (12) for K = 0, 1, ..., n,
г) определить минимальное значение eps изменения частоты дискретности, при котором требуется перестройка параметров фильтра.d) determine the minimum value eps of the change in the frequency of the discreteness, at which the tuning of the filter parameters is required.
2. Предварительно разместить данные, определяющие векторы Dk, Uk в блоках памяти устройства фильтрации - 2⋅(n+1)2 чисел.2. Pre-place the data defining the vectors Dk, Uk in the memory blocks of the filtering device - 2 - (n + 1) 2 numbers.
3. В процессе фильтрации эпизодически проводить измерения частоты поступления информации.3. During the filtering process, periodically measure the frequency receipt of information.
4. В случае значительного изменения частоты фильтрации произвести оперативный пересчет параметров фильтра, для этого:4. In the case of a significant change in the filtering frequency make an operational recount of filter parameters, for this:
а) вычислить текущие параметры пересчета , Ri,a) calculate the current conversion parameters , R i ,
б) используя формулу (12), рассчитать параметры aNi, bNi для конкретных значений параметра пересчета R,b) using formula (12), calculate the parameters a N i , bN i for specific values of the conversion parameter R,
в) использовать рассчитанные параметры aNi, bNi в текущей работе цифрового фильтра.c) use the calculated parameters a N i , bN i in the current operation of the digital filter.
Именно такой способ обеспечения постоянства характеристик цифрового фильтра реализует описываемое далее устройство. Работа предлагаемого устройства заключается в следующем.It is this method of ensuring the constancy of the characteristics of the digital filter that the device described below implements. The operation of the proposed device is as follows.
Предварительно, на этапе проектирования выбирается структура цифрового фильтра, работающего на определенной частоте квантования Выбранный тип структуры определяется порядком фильтра n, типом фильтра (КИО или авторегрессионный), а также конкретными параметрами - например коэффициентами фильтрующего полинома, или z-передаточной функции. Выбирается значение частоты первого генератора импульсов 8, соответствующей соотношению - фиксированное число. По расчетам и результатам моделирования процессов фильтрации при изменении частоты на определяются допустимые величины ε изменения частоты квантования по соответствующей величине , где - относительный текущий период квантования. Рассчитываются весовые векторы GJK, используемые при вычислении К-х векторов Dk, Uk, данные векторы размещаются в 2⋅(n+1)2 ячейках блока элементов памяти 12 блока перестройки кода фильтра 5. Соответствующие данные по параметрам опорного цифрового фильтра в виде числовых параметров заносятся в блок 2 хранения кода структуры фильтра. Данные параметры помещаются в память опорных параметров фильтра - блоки регистров, где каждый регистр определяет один из 2n+1 параметров фильтра.Preliminarily, at the design stage, the structure of a digital filter operating at a certain quantization frequency is selected The selected type of structure is determined by the order of the filter n, the type of filter (KIO or autoregressive), as well as specific parameters - for example, the coefficients of the filtering polynomial, or z-transfer function. Frequency value is selected the
При работе перестраиваемого цифрового фильтра сигналом от внешнего устройства запускается формирователь тактовых импульсов 1, обеспечивающий синхронный ввод в блок фильтрации 6 непрерывной фильтруемой последовательности данных. Эпизодически, например, с периодом в процессе работы производится идентификация периода дискретности поступления информации. Для этого в блоке идентификации частоты квантования 4 по переднему фронту тактового импульса запускается Т-триггер 7 и своим первым выходом запускает первый генератор импульсов 8, частота которого в 100-200 раз больше расчетной частоты квантования Счетчик импульсов 9 фиксирует число Nt импульсов с первого генератора импульсов 8 за период квантования. По переднему фронту следующего импульса генератор 8 отключается по сигналу со второго - инвертирующего выхода Т-триггера 7.When the tunable digital filter is working, the signal from an external device starts the
Все вышеперечисленные устройства могут быть реализованы на серийно выпускаемых интегральных микросхемах (ИМС). Так, например, Т-триггер 7 реализуется на КМ555ТМ2 или К155ТМ2 [4, стр. 76, 75], первый генератор импульсов 8 - К555АГ3(К155АГ3)[4, стр. 190], счетчик импульсов 9 может быть реализован на одной или нескольких микросхемах декадного двоично-десятичного счетчика К155ИЕ9 [4, стр 97]. Так, на указанной странице приведено соединение четырех таких микросхем в синхронный 16-разрядный счетчик (от 0 до 64000). Для описываемого устройства достаточно использовать три указанных микросхемы (12 разрядов, счет до 4096).All of the above devices can be implemented on commercially available integrated circuits (ICs). So, for example, the T-
Значение параметра Nt передается на второй вход блока 5 пересчета кода фильтра. Далее в сумматоре 10 вычисляется разность dN между измеренным Nt и заданным N0 значением числа импульсов. Результат операции рассматривается по модулю, как положительное число. Данная операция для 12-разрядных чисел может реализовываться тремя микросхемами сумматора-вычитателя, например К555ИМ7, содержащими 4 последовательных сумматора [4, стр. 162], без учета знакового разряда на выходе. В случае, если изменение dN относительного периода Nt не превышает порог, реле 11 не срабатывает, первый переключатель 21 не передает сигнал, перестройка не выполняется, второй переключатель 20 передает на цифровой фильтр 6 опорные параметры из блока хранения кода фильтра 2. Если изменение dN относительного периода велико, срабатывает специальное реле 11, построенное соединением компаратора и порогового элемента, так что компаратор сравнивает и ε и формирует логический сигнал 1 в случае а пороговый элемент формирует переключения. Реализация компаратора может выполняться на базе соединения компараторов К555СП1 или К561ИП2 [4, стр. 277, рис 2.68]. На данном рисунке представлено соединение трех 4-разрядных компараторов К561ИП2, реализующих 12-разрядный компаратор. Пороговый элемент можно реализовать триггером Шмидта (К155ТЛ1), возможно, при низких частотах использование усилителя и электромеханического реле, замыкающего переключатель, включающий устройства, выполняющие пересчет параметров фильтра.The value of the parameter Nt is transmitted to the second input of the filter
Собственно перестройка параметров цифрового фильтра осуществляется путем применения матрицы преобразований Q(R) к опорным параметрам, хранящимся в блоке хранения кода структуры фильтра 2 и подаваемым на вход блока перестройки кода фильтра 5. Первоначально, по сигналу Nt на первом переключателе 21 в вычислителе параметров пересчета13 вычисляются параметр пересчета R=(Nt⋅V-N0)/(Nt⋅1/+N0), а также его степени R2…Rn, т.е. вычислитель подсчитывает параметр R по нелинейной функции R(Nt), затем вычисляет степени, последовательно используя перемножения R⋅R, R2⋅R, R3⋅R, …, Rn-1⋅R, и по окончании вычислений формирует сигнал на запуск второго генератора импульсов 22, тактирующего счетчик-коммутатор 16. Удобным способом вычислений R в блоке 13 может быть использование блоков памяти для вычисления нелинейной функции R(Nt) [5, стр. 219, 220]. Учитывая, что параметр Nt - целое число с ограниченным диапазоном, каждому значению № как адресу можно поставить в соответствие число R (Nt) и вычисление нелинейной функции заменить извлечением из памяти заранее рассчитанного результата по конкретному значению Nt. Для конкретности будем считать, что первый генератор импульсов 8 генерирует частоту, в 200 раз превышающую т.е. N0=200, и идентификация текущей частоты по подсчету значения Nt счетчиком импульсов 9 дает ошибку в 0.5% (1/200). Пусть требуется удовлетворительная работа цифрового фильтра при изменении частоты в 10 раз, т.е. 20<Nt<2000. Следовательно, для размещения всевозможных значений R(Nt) достаточно памяти на 2000 слов. Если каждое слово задает 16-разрядное число (1 знаковый разряд), то объем памяти для размещения нелинейной функции составит 4 кбайта, при этом точность вычислений R составит 1/215=0.003%. Если под слово отводить 1 байт, то потребуются 2 кбайта памяти и точность вычислений составит 1/27=0.8%, что также вполне достаточно. Такая память может реализовываться на матрицах запоминающих элементов PROM К155РЕ3 (32×8, бит) или микросхемах серии К556, имеющих информационную емкость до 64 кбит [5, стр. 198, 200]. Обращение к памяти может выполняться по значению целого Nt. Структура такой реализации вычислителя параметров пересчета 13 представлена на фиг. 4. Характерно, что данная реализация вычислителя нелинейной функции R(Nt) может существенно упростить приборную реализацию за счет исключения сумматоров и делителя. Заполнение памяти значениями R(Nt) должно производиться на предварительном этапе подготовки цифрового фильтра. Для вычисления произведений R⋅R, R2⋅R, R3⋅R, …, Rn-1⋅R можно использовать умножитель. Такие умножители могут реализовываться на ИМС К1802ВП5, возможно использование перемножителя К555ИП9 и сумматора К555ИМ7 [4, стр. 165, 162]. Данные, полученные с вычислителя параметров пересчета 13, используются для вычисления отдельных i-х элементов вектора параметров. Для этого вычислитель параметров пересчета 13 по выполнению всех умножений формирует сигнал на запуск второго генератора импульсов 22, приводящего в действие счетчик-коммутатор 16. Период импульсов второго генератора 22 должен быть таким, чтобы за это время могли осуществиться операции извлечения из памяти и умножения. Реализация второго генератора импульсов 22 аналогична описанной выше реализации блока 8 - ИМС К555АГ3 (К155АГ3) [4, стр. 190]. По сигналам второго генератора импульсов 22, подаваемым на вход счетчика-коммутатора 16, начинает работать счетчик-коммутатор 16, управляющий работой блока элементов памяти 12, мультиплексора 15, сумматора накопителя 18 и обеспечивающий очередность перемножения RK⋅DK[i]. Для этого на входы умножителя 17 поочередно передаются из i-го блока элементов памяти 12 и вычислителя параметров пересчета 13 множители для К-й компоненты RK⋅DK[i] (К=0, 1, 2, …, n) скалярного произведения Множители для каждой компоненты поступают в умножитель через регистр множителя 14 и мультиплексора, которыми управляет счетчик-коммутатор 16, приводимый в действие тактирующими импульсами. Данный счетчик поочередно выдает на своем первом выходе значения 0, 1, … (n+1)2-1 (для КИО фильтра), подаваемые на блок элементов памяти 12, по которым из блока 12 считывается число и подается на регистр множителя 14, передающий число на умножитель 17. Соответствующие последовательности данных чисел, извлекаемых из памяти 12, имеют вид: D0[i], D1[i], …, Dn[i]. На втором выходе счетчика-коммутатора 16, связанном со вторым адресным входом мультиплексора 15, формируется последовательность значений К=0, 1, …, n. По данной последовательности второй мультиплексор 15 передает на блок умножения 17 второй множитель, формируемый в вычислителе параметров пересчета 13. Последовательность сигналов на втором входе умножителя 17 при этом будет такой: 1, R, …, Rn-1, Rn. Первоначально на счетчике-коммутаторе 16 устанавливается 0, что соответствует К=0, i=1, сумматор-накопитель обнуляется. В умножителе 17 осуществляется умножение 1⋅D0[1], результат пересылается в сумматор-накопитель 18. Далее по приходу задающего импульса счетчик-коммутатор 16 сдвигается на 1 и вычисляется следующее произведения R⋅D1[1], которое складывается в сумматоре-накопителе 18 с предыдущим, затем для нового состояния счетчика вычисляется R2, для нового состояния счетчика вычисляется Rn-2⋅D2[i] и т.д. до К=n. В результате n+1 перемножений и сложений получается один элемент aN0, составляющий вектор AN. После вычисления второй выход счетчика-коммутатора 16 обнуляется, счетчик-коммутатор 16 подает на второй вход блока 19 сигнал записи в память вектора параметров 19 содержимого вектора накопителя 18, который затем обнуляется.The actual tuning of the parameters of the digital filter is carried out by applying the transformation matrix Q (R) to the reference parameters stored in the filter structure
Вычисление значений других компонент aNi вектора AN для других значений i выполняется аналогично, но с использованием новых элементов блока памяти 12. С использованием аналогичных процедур вычисляются все элементы вектора AN, которые размещаются в памяти вектора параметров 19. После вычисления всех компонент вектора AN аналогично вычисляется BN, при этом если цифровой фильтр 6 реализует фильтр КИО, вычисление BN не производится.The calculation of the values of the other components a N i of the vector AN for other values of i is carried out similarly, but using the new elements of the
В описанных выше действиях возможна следующая схемная реализация на типовых ИМС или их комбинациях. Блоки элементов памяти 12 могут реализовываться на матрицах запоминающих элементов PROM К155РЕ3 (32×8 бит) или микросхемах серии К556 [5, стр. 198, 200]. Память вектора параметров 19 может реализовываться на микросхемах К537РУ8 - статическое ОЗУ объемом 2 Кбайта (по 8 бит) или набором микросхем К155РУ2 (ОЗУ 64 бит) [4, стр. 167], регистр множителя 14 - К555ИР8 [5, стр. 121], мультиплексор 15 - К555КП15 [4, стр. 154], умножители 17, 29-31 - К555ИП9 [4, стр. 165] либо 1802 ВП5. Счетчик-коммутатор 16 должен формировать на первом выходе последовательность 0, 1, …, (n+1)2-1 а на втором выходе 0, 1, 2, …, n, 0, 1, 2, … n, … 0, 1, 2, … n. Такое устройство можно сформировать из схем стандартных двоично-десятичных счетчиков КР1533ИЕ2 [5, стр. 160], которые включают секции с модулем 2 и 5, могут при подаче на вход тактирующих импульсов обеспечивать модуль счета М=n+1 (число состояний) до 10, а при наращивании нескольких ИМС и больше. Осуществляя сброс счетчика при достижении М-1 подачей сигнала с выхода на вход СБРОС, можно реализовать желаемую последовательность 0, 1, 2, …n, 0, 1, 2, … n, … 0, 1, 2, … n для управлений вторым мультиплексором 15 и формирования сигнала записи в память вектора параметров 19 и сигнала сброса сумматора-накопителя 18 после записи. Передавая 1 в момент сброса на точно такую же схему, получим на выходе последовательность с модулем (n+1)2 для управления чтением из блока элементов памяти 12 и формирования после окончания данной последовательности сигнала на переключатель 20 в случае КИО фильтра. Для авторегрессионного фильтра, после вычислений параметров aNi аналогично вычисляются параметры bNi - еще (n+1)2 такт таких же вычислений. Аналогично можно использовать ИМС- К155ИЕ9 [4, стр. 97, рис. 1.70] - где представлено соединение четырех микросхем в быстрый 16-разрядный счетчик. Пример реализации указанных функций счетчика-коммутатора приведен на фиг. 7. Сумматор-накопитель 18 может реализовываться композицией нескольких К555ИМ6 (сумматор на два 4-разрядных слова).In the above operations, the following circuitry is possible on typical ICs or their combinations. Blocks of
По окончании вычислений векторов параметров AN и BN счетчик-коммутатор 16 через второй переключатель 20 осуществляет переключение параметров фильтра с опорных параметров на пересчитанные параметры из памяти вектора параметров 19. Это реализуется подачей запрещающего и разрешающего сигналов на соответствующие регистры памяти. Далее параметры из блока 19 непосредственно участвуют в процессе фильтрации. Следует отметить, что все описанные вычисления по пересчету параметров фильтра проводятся однократно либо эпизодически при изменении частоты квантования, в связи с этим временные характеристики вычислений не имеют для фильтрации существенного значения, в отличие от вычислений в блоке фильтрации, которые выполняются на каждом шаге квантования и ограничены жесткими временными соотношениями.Upon completion of the calculation of the parameter vectors AN and BN, the counter-switch 16 through the
Оценочно время Тв вычислений, без учета операций сложения, выборки из памяти и записи в память при перестройке определится для фильтра так:Estimated time of TV calculations, without taking into account the operations of addition, fetch from memory and write to memory during rebuilding will be determined for the filter as follows:
Тв=Тумн*2⋅(n+1)2, где Тумн - время реализации умножения чисел.Tv = Tumn * 2⋅ (n + 1) 2 , where Tumn is the time of implementation of the multiplication of numbers.
Собственно процесс фильтрации заключается в формировании на выходе блока фильтрации 6 суммы координат состояния цифрового фильтра с определенными весами, формируемыми блоком 5 перестройки параметров фильтра. Эта стандартная операция может быть реализована различными известными устройствами, например из [1] или из [2].The filtering process itself consists in forming at the output of the
При другом подходе к организации этого процесса, в блоке фильтрации 6 используются ячейки памяти, образующие однородную среду, и коммутатор 23, реализуемый на кольцевом регистре-счетчике, отсчитывающим тактовые импульсы 1, 2 …n, 1, 2, … - фиг. 5. Коммутатор организует периодические подключения выходов ячеек и входного сигнала блока к векторным умножителям - блокам 24, 25. Для пояснения работы рассмотрим некоторые ячейки памяти А1, А2, А3, А4, в которых содержатся числовые данные, характеризующие состояние фильтра. Пусть для примера имеем цифровой фильтр 4-го порядка, описываемый четырьмя координатами состояния Х1, Х2, Х3, Х4, причем на определенном такте работы координата состояния X1 размещена в A1, Х2 в А2, Х3 в A3, а Х4 в А4. Цифровой фильтр реализуется методом прямого программирования [3, стр. 33], при котором уравнения изменения вектора состояния X и скалярного выхода Y имеют видWith another approach to organizing this process, in the
где qI и cJ - параметры фильтра - константы, рассчитанные в блоке 5 при выполнении перестройки, либо константы из блока хранения кода структуры фильтра 2 в случае, когда перестройки нет.where qI and cJ are the filter parameters — constants calculated in
При поступлении нового входного сигнала коммутатор 23 передает на вторую группу входов 5, 6, 7, 8 второго векторного блока умножителя 24 содержимое ячеек А1, А2, А3, А4, а также входной сигнал Z. В блоке осуществляется соответствующее умножение координат на вычисленные ранее в блоке 5 (или блоке 2 без перестройки) константы и формируется выходной сигнал блока фильтрации в виде:Upon receipt of a new input signal, the
Y=c1*Х1+с2*Х2+с3*Х3+с4*Х4+d*Z.Y = c1 * X1 + c2 * X2 + c3 * X3 + c4 * X4 + d * Z.
Указанная сумма произведений формируется в первом регистре-накопителе 26 и поступает на выход фильтра.The specified amount of works is formed in the first register-
Далее пересчитываются новые значения координат состояния по уравнениям и изменяется размещение координат состояния для следующего такта вычислений: координата Х4 (А4) становится Х3, Х3(А3) становится Х2, Х2(А2) становится X1, а координата Х4 вычисляется по соотношению:Next, the new values of the state coordinates according to the equations are recalculated and the placement of the state coordinates for the next calculation step is changed: the coordinate X4 (A4) becomes X3, X3 (A3) becomes X2, X2 (A2) becomes X1, and the X4 coordinate is calculated by the ratio:
Х4=q1*X1+q2*X2+q3*X3+q4*X4+v*Z.X4 = q1 * X1 + q2 * X2 + q3 * X3 + q4 * X4 + v * Z.
Вычисление производится в блоке 25, суммирование частных произведений во втором регистре-накопителе 27, полученный результат записывается в А1. Таким образом координаты состояния поменяли расположение: X1(А2), Х2(А3), Х3(А4), Х4(А1), но перезапись произведена только в одной ячейке А1. На следующем такте все повторяется, но на входы 5, 6, 7, 8 блоков перемножения необходимо подавать сигналы с ячеек памяти в другом порядке: А2, А3, А4, А1, потом А3, А4, А1, А2, далее А4, А1, А2, А3 и, наконец, А1, А2, А3, А4. Все эти смещения связей ячеек памяти и входов блоков перемножения организуются блоком 23 коммутации, который может быть реализован с использованием кольцевого регистра-счетчика на 4 такта (в общем случае на n тактов) и мультиплексоров, коммутирующих поступление сигналов на различные входы блока перемножения - фиг. 6. В частности, каждый из 4 мультиплексоров передает сигнал на определенный вход из второй группы входов первого векторного умножителя 24 и второго векторного умножителя 25. На информационные входы мультиплексора подаются сигналы со всех ячеек, а также сигналы с первого векторного блока перемножителя 24. На адресные входы различных мультиплексоров 1, 2, 3, 4 подаются числа с различных выходов кольцевого регистра. Пусть в определенный такт квантования на мультиплексоры 1, 2, 3, 4 подаются соответственно адреса 1, 2, 3, 4. Так, 1-й мультиплексор получает адрес 1 и пропускает сигнал со своего входа 1 на 5 вход блока 24, 2-й мультиплексор - сигнал со своего входа 2 на 6 вход блока 24, 3-й мультиплексор - сигнал со входа 3 на 7 вход блока 24, 4-й мультиплексор - сигнал со входа 4 на 8 вход блока 24. На следующем такте кольцевой регистр сдвинет последовательность адресов - она поменяется и станет 2, 3, 4, 1, т.е. первый мультиплексор получает адрес 2 и пропустит на 5 вход блока 24 сигнал на его 2 входе, второй мультиплексор получает адрес 3 и передаст сигнал с 3 своего входа, третий мультиплексор получает адрес 4 и пропускает сигнал со своего 4 входа на 7 вход блока 24, четвертый мультиплексор по адресу 1 пропустит сигнал со своего первого входа на 8 вход блока 24. На следующем такте последовательность адресов будет 3, 4, 1, 2, затем 4, 1, 2, 3 и, наконец, снова 1, 2, 3, 4. При этом, хотя номера ячеек под координаты состояния изменяются на каждом шаге, первый и второй векторные блоки умножители 24, 25 выполняют неизменные операции по обработке сигнала.The calculation is carried out in
Все блоки и устройства, входящие в блок фильтрации 6, также могут быть реализованы на серийно выпускаемых ИМС различных серий или их простых соединениях. Такая реализация умножителей сумматоров, счетчиков, мультиплексоров на конкретных элементах была раскрыта ранее при описании блока пересчета кода фильтра 5, в частности раскрыты процедура и реализация векторного умножения, выполняющая операцию по соотношению (12). Память для записи коэффициентов q может реализовываться микросхемой К537 РУ8 - ОЗУ объемом 2 Кбайта (8 бит) или набором микросхем К155РУ2 (ОЗУ 64 бит) [4, стр. 167], мультиплексоры - К555КП15 [4, стр. 154], умножители - К555ИП9 [4, стр. 165,] либо 1802ВП5, первый и второй регистры-накопители 26, 27 могут реализовываться композицией нескольких К555ИМ6 (сумматор на два 4-разрядных слова), кольцевой регистр-счетчик - К155ИЕ9 [4, стр. 97] или КР1533ИЕ2 [5, стр. 160], аналогично счетчики в блоках векторного умножения 24, 25.All blocks and devices included in the
В ПРИЛОЖЕНИИ 2 приведены результаты математического моделирования реализации процессов перестройки для цифрового фильтра 4-го порядка с учетом конечной точности представления чисел. Как видно из графиков, полученных по результатам моделирования, частотные характеристики опорного и перестроенного цифрового фильтра практически очень близки в рабочем диапазоне частот при значительном изменении частоты дискретности: уменьшение в 2,5 раза и увеличение в 2,5 раза.
Таким образом, предлагаемый перестраиваемый цифровой фильтр с программируемой структурой позволяет путем введения новых блоков и организации новых связей между ними обеспечить улучшение свойств фильтрации за счет постоянства характеристик фильтрации при изменении частоты квантования . Технический результат от использования изобретения заключается в уменьшении искажения характеристик цифрового фильтра, в частности обеспечении расчетных запасов устойчивости при изменении частоты дискретизации входного сигнала. Изобретательский уровень предложенного технического решения подтверждается отличительной частью формулы изобретения.Thus, the proposed tunable digital filter with a programmable structure allows, by introducing new blocks and organizing new connections between them, to provide improved filtering properties due to the constancy of the filtering characteristics when the quantization frequency changes . The technical result from the use of the invention is to reduce the distortion of the characteristics of the digital filter, in particular, providing estimated stability margins when changing the sampling frequency of the input signal. The inventive step of the proposed technical solution is confirmed by the distinctive part of the claims.
Используемые источникиSources used
1. Шамриков Б.М. Основы теории цифровых систем управления: Учебник для высших технических учебных заведений. - М., Машиностроение, 1985. - 286 с ил.1. Shamrikov B.M. Fundamentals of the theory of digital control systems: Textbook for higher technical educational institutions. - M., Mechanical Engineering, 1985. - 286 with silt.
2. Патент РФ №2399152 - прототип.2. RF patent No. 2399152 - prototype.
3. Патент РФ №2037364 - аналог.3. RF patent No. 2037364 - analogue.
4. Шило В.Л. Популярные цифровые микросхемы. Справочник. - М., Радио и связь, 1989 г. - 352 с., с ил.4. Shilo V.L. Popular digital circuits. Directory. - M., Radio and communications, 1989 - 352 p., With ill.
5. Угрюмов Е.П. Цифровая схемотехника. – СПб.: БХВ-Петербург, 2004. - 528 с., с ил.5. Ugryumov EP Digital circuitry. - SPb .: BHV-Petersburg, 2004 .-- 528 p., With silt.
ПРИЛОЖЕНИЕ 1
ПРИЛОЖЕНИЕ 2
МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ РАБОТЫ ФИЛЬТРА.MATHEMATICAL MODELING OF THE FILTER.
При моделировании рассматривался цифровой фильтр 4-го порядка, аналоговый прототип которого описывался передаточной функцией вида:When modeling, a fourth-order digital filter was considered, the analog prototype of which was described by a transfer function of the form:
. .
Расчетная частота квантования соответствовала f0=80 Гц, Т0=0.0125 с.The calculated quantization frequency corresponded to f 0 = 80 Hz, T0 = 0.0125 s.
Опорный цифровой фильтр, соответствующий данной частоте, описывался z-передаточной функцией вида:The reference digital filter corresponding to a given frequency was described by a z-transfer function of the form:
, ,
где коэффициенты {a i, bi} определяются следующими значениями:where the coefficients { a i , b i } are determined by the following values:
а 0=0, a 1=0.483, а 2=-.705, а 3=.368, а 0=0.066; a 0 = 0, a 1 = 0.483, and 2 = -. 705, and 3 = .368, and 0 = 0.066;
b0=1, b1=-1.329, а 2=.615, а 3=-0.076, а 0=0.0028.b 0 = 1, b 1 = -1.329, and 2 = .615, and 3 = -0.076, and 0 = 0.0028.
Матрица пересчета в нормированном представлении имеет вид:The translation matrix in the normalized representation has the form:
Откуда векторы GJK определятся выражениями:From where the GJK vectors are determined by the expressions:
Пересчитанные параметры {aNi, bNi} фильтра определятся с использованием матрицы пересчета в следующем виде:The recalculated parameters { a N i , bN i } of the filter are determined using the conversion matrix in the following form:
Вычисления, производимые в блоке пересчета параметров фильтра для конкретного примера цифрового фильтра 4-го порядка, моделировались на вычислительной программе, реализованной в среде МАТКАД.The calculations performed in the filter parameter conversion unit for a specific example of a fourth-order digital filter were modeled on a computer program implemented in the MATKAD environment.
При этом выполнялись все математические операции пересчета в той последовательности, в которой они приведены в описании устройства, но со специальным ограничением точности представления чисел и точности выполнения вычислительных операций.In this case, all the mathematical operations of recalculation were performed in the sequence in which they are given in the description of the device, but with a special restriction on the accuracy of the representation of numbers and the accuracy of the computational operations.
Параметр ограниченной точности вычислений составлял 4 десятичных разряда, что соответствует 14 двоичным разрядам, т.е. практически 2 байта.The parameter of limited accuracy of calculations was 4 decimal places, which corresponds to 14 binary digits, i.e. almost 2 bytes.
Ниже приведены результаты моделирования - частотные характеристики исходного опорного фильтра, пересчитанного фильтра и исходного при увеличении и уменьшении частоты. Результаты подтверждают работоспособность представленных решений - характеристики подстроенного цифрового фильтра близки характеристикам опорного фильтра в рабочем диапазоне частот цифровой системы 0<ω<2 min(f0, ft).Below are the simulation results - the frequency characteristics of the original reference filter, the recalculated filter and the original when the frequency increases and decreases. The results confirm the efficiency of the presented solutions - the characteristics of the tuned digital filter are close to the characteristics of the reference filter in the working frequency range of the digital system 0 <ω <2 min ( f 0, ft ).
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2016109227A RU2631976C2 (en) | 2016-03-15 | 2016-03-15 | Tunable digital filter with programmable structure |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2016109227A RU2631976C2 (en) | 2016-03-15 | 2016-03-15 | Tunable digital filter with programmable structure |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2016109227A RU2016109227A (en) | 2017-09-20 |
RU2631976C2 true RU2631976C2 (en) | 2017-09-29 |
Family
ID=59893627
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2016109227A RU2631976C2 (en) | 2016-03-15 | 2016-03-15 | Tunable digital filter with programmable structure |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2631976C2 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2057364C1 (en) * | 1992-11-25 | 1996-03-27 | Научно-исследовательский институт "Научный центр" | Programming digital filter |
RU2189109C2 (en) * | 1996-06-27 | 2002-09-10 | Квэлкомм Инкорпорейтед | Finite impulse response filter built around rom for mobile telephone set |
RU2001132755A (en) * | 2000-03-03 | 2003-08-20 | Сони Компьютер Энтертейнмент Инк. (Jp) | Digital filter |
RU2399152C2 (en) * | 2008-03-12 | 2010-09-10 | Государственное Образовательное Учреждение Высшего Профессионального Образования "Дагестанский Государственный Технический Университет" (Дгту) | Universal digital filter with programmable structure |
EP2418773A1 (en) * | 2010-07-28 | 2012-02-15 | Brandenburgische Technische Universität Cottbus | Glitch-free switchable FIR-filter |
RU2460130C1 (en) * | 2011-04-13 | 2012-08-27 | Закрытое акционерное общество "Ассоциация предприятий морского приборостроения" | Method for digital recursive band-pass filtering and digital filter for realising said method |
-
2016
- 2016-03-15 RU RU2016109227A patent/RU2631976C2/en active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2057364C1 (en) * | 1992-11-25 | 1996-03-27 | Научно-исследовательский институт "Научный центр" | Programming digital filter |
RU2189109C2 (en) * | 1996-06-27 | 2002-09-10 | Квэлкомм Инкорпорейтед | Finite impulse response filter built around rom for mobile telephone set |
RU2001132755A (en) * | 2000-03-03 | 2003-08-20 | Сони Компьютер Энтертейнмент Инк. (Jp) | Digital filter |
RU2399152C2 (en) * | 2008-03-12 | 2010-09-10 | Государственное Образовательное Учреждение Высшего Профессионального Образования "Дагестанский Государственный Технический Университет" (Дгту) | Universal digital filter with programmable structure |
EP2418773A1 (en) * | 2010-07-28 | 2012-02-15 | Brandenburgische Technische Universität Cottbus | Glitch-free switchable FIR-filter |
RU2460130C1 (en) * | 2011-04-13 | 2012-08-27 | Закрытое акционерное общество "Ассоциация предприятий морского приборостроения" | Method for digital recursive band-pass filtering and digital filter for realising said method |
Also Published As
Publication number | Publication date |
---|---|
RU2016109227A (en) | 2017-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7543008B1 (en) | Apparatus and method for providing higher radix redundant digit lookup tables for recoding and compressing function values | |
EP0447245A2 (en) | Bit-serial division method and apparatus | |
Yakowitz et al. | Computation of bounds for digital filter quantization errors | |
RU2631976C2 (en) | Tunable digital filter with programmable structure | |
Xu | Evaluations of nonlinear Euler sums of weight ten | |
CN101427252A (en) | System and method for design and implementation of integrated-circuit digital filters | |
US6745219B1 (en) | Arithmetic unit using stochastic data processing | |
Falkowski | Properties and ways of calculation of multi-polarity generalized Walsh transforms | |
Yazhini et al. | Fir filter implementation using modified distributed arithmetic architecture | |
SE429080B (en) | DIGITAL FILTER DEVICE FOR OWN-SIZED QUANTIZED Pulse Code Modulated Signals | |
US5289398A (en) | Small-sized low power consumption multiplication processing device with a rounding recording circuit for performing high speed iterative multiplication | |
Stamenković | Digital fir filter architecture based on the residue number system | |
EP1947796A2 (en) | Method and apparatus for dividing information bit string | |
CN112039495B (en) | Floating-point number FIR digital filter and design method thereof | |
JPH0563576A (en) | Decimation filter of plural channels relating to a/d converter of sigma delta system | |
Malaschonok et al. | Symbolic-numerical solution of systems of linear ordinary differential equations with required accuracy | |
Radecka et al. | Arithmetic transforms for verifying compositions of sequential datapaths | |
Beletsky et al. | Generators of pseudo random sequences of Galois | |
Ortigueira et al. | Pseudo-fractional ARMA modelling using a double Levinson recursion | |
US6681235B2 (en) | Frequency synthesizer and Gaussian noise generator using the same | |
RU2682862C2 (en) | Arbitrary shape signal conversion method and device with the use of stepped saw-tooth functions | |
Seegal | The canonical signed digit code structure for FIR filters | |
RU2682860C2 (en) | Method and device for transforming signals of unrestricted form with the use of saw-like stepped wavelets | |
Kowalski | Algebraic characterization of orthogonality in the space of polynomials | |
Kumar et al. | Finite-element approximation for singularly perturbed nonlinear elliptic boundary-value problems |