RU2096911C1 - Цифровой фильтр - Google Patents
Цифровой фильтр Download PDFInfo
- Publication number
- RU2096911C1 RU2096911C1 RU93028514A RU93028514A RU2096911C1 RU 2096911 C1 RU2096911 C1 RU 2096911C1 RU 93028514 A RU93028514 A RU 93028514A RU 93028514 A RU93028514 A RU 93028514A RU 2096911 C1 RU2096911 C1 RU 2096911C1
- Authority
- RU
- Russia
- Prior art keywords
- input
- multipliers
- rounding
- block
- correction
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Abstract
Способ относится к вычислительной технике и может быть использован для цифровой обработки сигналов в радиосвязи и автоматике. Технический результат - повышение точности цифровой фильтрации за счет исключения накопления погрешностей, обусловленных округлением постоянных коэффициентов. Сущность способа заключается в том, что в корректирующий сигнал дополнительно вводится составляющая, обусловленная округлением постоянных коэффициентов путем умножения промежуточной переменной на величину ошибки округления каждого коэффициента. Цифровой фильтр содержит штанговый генератор 1, регистры сдвига 2, 3 сумматоры 4, 5 умножители 6-12, N блоков коррекции 13.1-13N,входной сумматор 14, блок 15 округления, умножители 18-21. 1 ил.
Description
Изобретение относится к вычислительной технике и может быть использовано для цифровой обработки сигналов в радиосвязи и автоматике.
Известен цифровой фильтр, реализующий систему разностных уровней вида:
Fi=Xi+aiFi-1+ a2Fi-2
yi=b0Fi+b1Fi-1+b2Fi-2 (1)
где Xi, yi входной и выходной сигналы устройства в i-м такте,
Fi промежуточная переменная в i-м такте,
а1, а2, b0, b1, b2 постоянные коэффициенты [1]
Недостатком известного устройства является наличие вычислительной погрешности, указанная погрешность включает в себя две составляющие. Первая из них обусловлена округлением постоянных коэффициентов. Коэффициенты, как правило, являются дробными числами. При их представлении в двоичном коде получаются бесконечные двоичные дроби. Для размещения в регистрах дроби требуют округления, при котором происходит искажение значений коэффициента. В результате вместо точных значений а1, а2, b0, b1, b2 в вычислениях используются приближенные значения коэффициентов отличающиеся от точных на величины ошибок округления α1, α2, βo, β1, β2,
Вторая составляющая обусловлена округлением произведений промежуточных переменных на постоянные коэффициенты, что приводит к появлению погрешностей А1i, A2i, B0i, B1i, B2i.
Fi=Xi+aiFi-1+ a2Fi-2
yi=b0Fi+b1Fi-1+b2Fi-2 (1)
где Xi, yi входной и выходной сигналы устройства в i-м такте,
Fi промежуточная переменная в i-м такте,
а1, а2, b0, b1, b2 постоянные коэффициенты [1]
Недостатком известного устройства является наличие вычислительной погрешности, указанная погрешность включает в себя две составляющие. Первая из них обусловлена округлением постоянных коэффициентов. Коэффициенты, как правило, являются дробными числами. При их представлении в двоичном коде получаются бесконечные двоичные дроби. Для размещения в регистрах дроби требуют округления, при котором происходит искажение значений коэффициента. В результате вместо точных значений а1, а2, b0, b1, b2 в вычислениях используются приближенные значения коэффициентов отличающиеся от точных на величины ошибок округления α1, α2, βo, β1, β2,
Вторая составляющая обусловлена округлением произведений промежуточных переменных на постоянные коэффициенты, что приводит к появлению погрешностей А1i, A2i, B0i, B1i, B2i.
В результате в каждом такте работы цифрового фильтра формируется промежуточная переменная:
с ошибкой
ΔFi = α1Fi-1 + α2Fi-2 + A1i + A2i,
что приводит к появлению погрешности выходного сигнала yi.
с ошибкой
ΔFi = α1Fi-1 + α2Fi-2 + A1i + A2i,
что приводит к появлению погрешности выходного сигнала yi.
Наиболее близким аналогом является цифровой фильтр, содержащий последовательно соединенные тактовый генератор, первый и второй регистры сдвига, второй умножитель, первый сумматор. выход которого подключен к второму входу первого регистра сдвига, третий умножитель и второй сумматор, к второму входу которого и второму входу первого сумматора подключен соответственно через четвертый умножитель и первый умножитель выход первого регистра сдвига, а выход второго регистра сдвига, к тактовому входу которого подключен выход тактового генератора, подключен через пятый умножитель к третьему входу второго сумматора, N блоков коррекции, к тактовому входу каждого из которых подключен выход тактового генератора, а к первому и второму входам первого блока коррекции подключены выходы первого и второго умножителей, выход первого блока коррекции подключен к четвертому входу входного сумматора, а выход каждого (i+1)-го блока коррекции подключен к третьему входу i-го блока коррекции, при этом каждый из N блоков коррекции содержит последовательно соединенные входной суматор, выход которого подключен к входу блока округления, первый регистр сдвига, выход которого через второй умножитель подключен к третьему входу входного сумматора, второй регистр сдвига и первый умножитель, выход которого подключен к четвертому входу входного сумматора, первый второй и пятый входы входного сумматора первого блока коррекции являются первым, вторым и третьим входами блока коррекции, выходом которого является выход блока округления, а тактовым входом блоков коррекции являются вторые входы первого и второго регистров сдвига каждого блока коррекции, выходом (i+1)-го блока коррекции является выход блока округления (i+1)-го блока коррекции, первый и второй входы (i+1)-го блока коррекции соединены соответственно с выходами первого и второго умножителей i-го блока коррекции [2]
Известное устройство позволяет с помощью блоков коррекции сформировать корректирующий сигнал для компенсации ошибок округления произведений промежуточных переменных на постоянные коэффициенты а1 и а2 и устранения их накопления. Однако при этом не учитывается составляющая результирующей погрешности, обусловленная определением постоянных коэффициентов. Ошибки α1Fi-1 и α2Fi-2 циркулируют в петле обратной связи и не компенсируются. Они могут накапливаться, существенно снижая точностные характеристики цифрового фильтра. Поэтому целесообразно в корректирующий сигнал ввести составляющую, компенсирующую погрешности округления постоянных коэффициентов.
Известное устройство позволяет с помощью блоков коррекции сформировать корректирующий сигнал для компенсации ошибок округления произведений промежуточных переменных на постоянные коэффициенты а1 и а2 и устранения их накопления. Однако при этом не учитывается составляющая результирующей погрешности, обусловленная определением постоянных коэффициентов. Ошибки α1Fi-1 и α2Fi-2 циркулируют в петле обратной связи и не компенсируются. Они могут накапливаться, существенно снижая точностные характеристики цифрового фильтра. Поэтому целесообразно в корректирующий сигнал ввести составляющую, компенсирующую погрешности округления постоянных коэффициентов.
Технический результат повышение точности цифровой фильтрации за счет исключения накопления погрешностей, обусловленных округлением постоянных коэффициентов.
На чертеже представлена структурная электрическая схема цифрового фильтра.
Цифровой фильтр содержит тактовый генератор 1, первый и второй регистры сдвига 2, 3, первый и второй сумматоры 4, 5, первый, второй, третий, четвертый, пятый, шестой и седьмой умножители 6-12 и N блоков коррекции 13.1-13. N, каждый из N-1 блоков коррекции содержит входной сумматор 14, блок 15 округления, первый и второй регистры сдвига 16, 17, первый, второй, третий и четвертый умножители 18-21, блок коррекции содержит входной сумматор, 14, блок 15 округления, первый и второй регистры сдвига 16, 17 третий и четвертый умножители 20, 21.
Цифровой фильтр работает следующим образом.
Входной сигнал Xi в виде последовательности отсчетов, представленных в цифровой форме и следующих с периодом дискредитации То, поступает на вход звена второго порядка (первый вход сумматора 4), а также на вход тактового генератора 1 для формирования управляющего импульса. В цифровом фильтре, построенном на блоках 1-8, 10-11, производится формирование выходного сигнала в соответствии с системой уравнений (1).
Для компенсации вычислительной погрешности фильтра, обусловленной округлении коэффициентов и промежуточных результатов вычисления, в блоках 13.1-13N производится формирование корректирующего сигнала. Во входной сумматор 14.1 в каждом i-м тактовом интервале вводятся сигналы A1i, A2i ошибки округления произведений, формируемые на дополнительных выходах умножителей 7 и 10, а также сигналы α1Fi-1 и α2Fi-2 формируемые на выходах умножителей 9 и 12. Таким образом, на вход цифрового звена 13.1 поступает сигнал ΔFi, равный погрешности формирования и промежуточной переменной Fi.
Поскольку цифровое звено (блоки 14.1, 16.1, 17.1, 20.1 и 21.1) в составе первого блока 13.1 коррекции функции низшей в соответствии с первым уравнением системы (1), при отсутствии округления в умножителях 20.1 и 21.1 и точном представлении коэффициентов а1 и а2 сигнал на выходе входного сумматора 14.1 в каждом такте в точности повторяет сигнал ошибки, накопленной к данному такту в основном звене второго порядка. Если этот сигнал в каждом такте вводить в сумматор 4, то можно добиться полной компенсации ошибок, обусловленных округлением коэффициентов а1 и а2 и произведений в умножителях 7 и 10. Однако, чтобы избежать наращивания разрядности отсчетов, циркулирующих по петле обратной связи через умножители 7 и 10, выходной сигнал сумматора 14.1 необходимо предварительно округлить с точностью до младшего разряда отсчетов Fi, что и производится в блоке 15.1 округления.
Блок 13.1 коррекции содержит точно такие цепи обратной связи (через умножители 20.1 и 21.1), какие входят с состав основного звена, а умножение производится на коэффициенты а1 и а2. Поэтому для сохранения постоянной разрядности отсчетов в процессе работы в умножителях 20.1 и 21.1 необходимо производить округления результатов умножений, а в качестве постоянных коэффициентов использовать округленные значения При этом также может иметь место накопление ошибок округления, которые имеют уже гораздо меньшее значения.
Для повышения точности вычислений за счет компенсации ошибок округления, возникающих уже в блоке 13.1, в состав цифрового фильтра может быть введен точно такой же блок 13.2, на вход которого в каждом такте необходимо подавать сигналы ошибок округления от умножителей 20.1 и 21.1 и ошибок, обусловленных округлением коэффициентов, от умножителей 18.1 и 19.1. В блоке формируется корректирующий сигнал, который вводится в сумматор 14.1, т. е. блок 13.2 по отношению к блоку 13.1 коррекции выполняют те же функции, что и блок 13.1 по отношению к основному звену второго порядка.
Компенсация ошибок округления, возникающих в блоке 13.2 коррекции, может быть аналогично осуществлена следующим блоком 13.3 коррекции и т. д. В общем случае в устройстве может быть N блоков коррекции, число которых определяется требованиями точности вычислений и зависит от того, насколько велика может оказаться ошибка округления, накопленная в основном звене при данных постоянных коэффициентов а1 и а2.
Claims (1)
- Цифровой фильтр, содержащий первый и второй регистры сдвига, первый и второй сумматоры, первый, второй, третий, четвертый и пятый умножители, N блоков коррекции, где N 1, 2, 3, и тактовый генератор, вход которого подключен к входу первого сумматора, выход тактового генератора подключен к тактовым входам N блоков коррекции и тактовым входам первого и второго регистров сдвига, при этом выход первого регистра сдвига подключен к входу второго регистра сдвига через первый умножитель к второму входу первого сумматора, к третьему входу которого через второй умножитель подключен выход второго регистра сдвига, причем выходы первого и второго регистров сдвига подключены соответственно через четвертый и пятый умножители к второму и третьему входам второго сумматора, вторые выходы первого и второго умножителей подключены соответственно к первому и второму входам первого блока коррекции, выход которого подключен к четвертому входу первого сумматора, а выход каждого (i + 1)-го, где i 1, 2, N-1, блока коррекции подключен к третьему входу i-го блока коррекции, при этом каждый из N блоков коррекции содержит последовательно соединенные входной сумматор, первый регистр сдвига, второй регистр сдвига и первый умножитель, а также второй умножитель и блок округления, к входу которого подключен выход входного сумматора, первый, второй и пятый входы которого являются соответственно первым, вторым и третьим входами первого блока коррекции, выходом которого является выход блока округления, а к третьему и четвертому входам входного сумматора подключены первые выходы соответственно второго и первого умножителей, причем тактовым входом каждого блока коррекции являются вторые входы первого и второго регистров сдвига каждого блока коррекции, выходом (i + 1)-го блока коррекции является выход блока округления (i + 1)-го блока коррекции, к первому и второму входам которого подключены вторые выходы первого и второго умножителей i-го блока коррекции, отличающийся тем, что введены шестой и седьмой умножители, при этом выходы первого и второго регистров сдвига соответственно через шестой и седьмой умножители подключены к четвертому и пятому входам первого блока коррекции, а в каждый i-й блок коррекции введены третий и четвертый умножители, к входам которых подключены выходы соответственно первого и второго регистров сдвига, а выходы третьего и четвертого умножителей i-го блока коррекции подключены соответственно к шестому и седьмому входам входного сумматора (i + 1)-го блока коррекции.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU93028514A RU2096911C1 (ru) | 1993-05-26 | 1993-05-26 | Цифровой фильтр |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU93028514A RU2096911C1 (ru) | 1993-05-26 | 1993-05-26 | Цифровой фильтр |
Publications (2)
Publication Number | Publication Date |
---|---|
RU93028514A RU93028514A (ru) | 1995-09-10 |
RU2096911C1 true RU2096911C1 (ru) | 1997-11-20 |
Family
ID=20142301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU93028514A RU2096911C1 (ru) | 1993-05-26 | 1993-05-26 | Цифровой фильтр |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2096911C1 (ru) |
-
1993
- 1993-05-26 RU RU93028514A patent/RU2096911C1/ru active
Non-Patent Citations (1)
Title |
---|
1. Введение в цифровую фильтрацию /Под ред. Боднера Р. и Констрантинидиниса А. - М.: Мир, 1876, с. 50. 2. SU, авторское свидетельство, 1566471, кл. H 04 H 17/04, 1988. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5894428A (en) | Recursive digital filter | |
US3749895A (en) | Apparatus for suppressing limit cycles due to quantization in digital filters | |
JPS567172A (en) | Method and device of complex ternary correlation for adaptive gradient calculation | |
JPH0834408B2 (ja) | Iirデイジタルフイルタ | |
US5177703A (en) | Division circuit using higher radices | |
JPH0640301B2 (ja) | 並列乗算回路 | |
EP0098016A2 (en) | A method of and a circuit arrangement for producing a gamma corrected video signal | |
RU2096911C1 (ru) | Цифровой фильтр | |
US5930160A (en) | Multiply accumulate unit for processing a signal and method of operation | |
EP0606775A1 (en) | System and method for approximating nonlinear functions | |
CN111630509B (zh) | 执行积和运算的运算电路 | |
US5233549A (en) | Reduced quantization error FIR filter | |
KR880004463A (ko) | 샘플 데이타 톤 제어 시스템 | |
JP3041563B2 (ja) | 有限インパルス応答フィルタ | |
JPS60254372A (ja) | 積和演算装置 | |
JPH05252045A (ja) | 剰余演算処理回路 | |
SU1608660A1 (ru) | Устройство дл вычислени позиционных характеристик модул рного кода | |
RU2024049C1 (ru) | Способ переменной задержки сигнала | |
Beaumont-Smith et al. | A VLSI chip implementation of an A/D converter error table compensator | |
EP0213854A2 (en) | Fixed-Coefficient serial multiplication and digital circuits therefor | |
Ambika et al. | Design of Fir Filter Using Area and Power Efficient Truncated Multiplier | |
RU2119242C1 (ru) | Цифровой трансверсальный фильтр | |
JPS6043743A (ja) | 信号処理回路 | |
JPS5833754A (ja) | デイジタル乗算回路 | |
SU842855A1 (ru) | Экстрапол тор |