Настоящее изобретение относится к системам связи. В более узком смысле изобретение относится к новым и улучшенным способу и устройству для подавления эхо-сигналов в телефонных системах.
Каждый современный, используемый в наземных условиях телефон соединен с центральной станцией двухпроводной линией передачи (которая называется абонентским шлейфом), которая осуществляет передачу сигналов в обоих направлениях. Однако для осуществления телефонных разговоров на расстоянии более 35 миль (1 миля = примерно 1610 м) два направления передачи необходимо будет разделить на индивидуальные в физическом плане провода, т.е. использовать четырехпроводную линию связи. Устройство, которое обеспечивает сопряжение двухпроводной и четырехпроводной систем, называется гибридным устройством. Типичную дальнюю телефонную схему можно описать как двухпроводную в абонентском шлейфе по отношению к локальному или местному гибридному устройству, как четырехпроводную на протяжении сети дальней связи по отношению к удаленному гибридному устройству, а затем как двухпроводную по отношению к удаленному говорящему абоненту.
Хотя использование гибридных устройств облегчает передачу речи на дальние расстояния, однако рассогласования импедансов в самом гибридном устройстве могут привести к возникновению эхо-сигналов. Речевой сигнал говорящего абонента A отражается от удаленного гибридного устройства (ближайшего к говорящему абоненту B) в телефонной сети обратно к говорящему абоненту A, вынуждая тем самым говорящего абонента A слышать мешающее эхо собственного голоса. Поэтому в наземной телефонной сети используют сетевые эхоподавители для устранения эхо-сигналов, которые образуются в результате рассогласования импедансов в гибридных устройствах. Как правило, сетевые эхоподавители располагаются на центральной станции вместе с гибридным устройством. Таким образом, расположенный на максимально близком расстоянии от говорящего абонента A или B эхоподавитель используется для подавления эхосигнала, обусловленного гибридным устройством на другом конце линии.
Как правило, используемые в наземной телефонной системе сетевые эхоподаватели представляют собой цифровые устройства, что позволяет упростить процесс цифровой передачи сигналов. Поскольку аналоговые речевые сигналы необходимо преобразовывать в цифровую форму, то для этой цели обычно используют расположенный на центральной станции кодек (кодер-декодер). Получаемые от телефона A (говорящего абонента A) на центральной станции аналоговые сигналы проходят через гибридное устройство A и с помощью кодека A преобразуются в цифровую форму. После этого цифровые сигналы передаются в центральную станцию B, где они поступают в кодек B для последующего преобразования в аналоговую форму. Затем аналоговые сигналы через гибридное устройство B передаются в телефон B (говорящему абоненту B). В гибридном устройстве B образуется эхосигнал говорящего абонента A. Этот эхо-сигнал кодируется кодеком B и возвращается на центральную станцию A. На центральной станции A эхоподавитель удаляет обратный эхо-сигнал.
В обычной аналоговой сотовой телефонной системе также используют эхоподавители, которые обычно расположены на центральной станции. Эти эхокомпенсаторы работают точно так, как эхоподавители в наземных системах, обеспечивая подавление нежелательных эхо-сигналов.
В цифровой сотовой телефонной системе для обеспечения разговора между подвижной станцией и стационарным телефоном необходимо прежде всего преобразовать с помощью кодека речевой сигнал абонента подвижной станции в цифровую форму, а затем сжать с помощью вокодера, который моделирует речевой сигнал в виде набора параметров. Затем закодированный вокодером речевой сигнал кодируется и передается в цифровой форме в эфир. Приемник центральной станции декодирует сигнал и пропускает его по четырем проводам в декодер вокодера, который синтезирует цифровой речевой сигнал из переданных параметров речевого сигнала. Синтезированный таким образом речевой сигнал проходит в телефонную сеть через интерфейс TI, группу с временным уплотнением из 24 речевых каналов. В некоторой точке сети, обычно на центральной станции, сигнал вновь преобразуют в аналоговую форму и передают к гибридному устройству в абонентском шлейфе. В этом гибридном устройстве сигнал преобразуется в двухпроводный для последующей передачи по проводной паре к стационарному телефону абонента наземного базирования.
Следует иметь в виду, что при таком вызове в сотовой системе между мобильной станцией и наземным телефоном говорящий абонент в мобильной станции будет абонентом дальнего конца, а говорящий абонент наземного телефона будет абонентом ближнего конца. Как и в наземной системе, речевой сигнал абонента дальнего конца отражается от удаленного гибридного устройства телефонной сети и возвращается к говорящему абоненту дальнего конца. В результате этого говорящий абонент дальнего конца, т.е. абонент мобильной станции, слышит мешающий эхо-сигнал собственного голоса.
Обычные сетевые эхоподавители для подавления эхо-сигналов используют методы адаптивной цифровой фильтрации. Однако используемый в данном случае фильтр не способен точно дублировать канал, что приводит к образованию остаточного эхо-сигнала. Для устранения именно этого остаточного эхо-сигнала обычно используют устройство подавления эхо-сигнала с двухсторонним клиппированием. Подавитель эхо-сигнала подвергает сигнал воздействию нелинейной функции. Синтезированный шумовой сигнал можно использовать для замены тех частей сигнала, которые уже были сведены к нулю с помощью эхоподавителя с двухсторонним клиппированием, что дает возможность исключить блокирование звучания канала.
Хотя описанный способ подавления эхо-сигнала является вполне удовлетворительным для аналоговых сигналов, однако этот тип обработки остаточного эхо-сигнала обуславливает некоторые проблемы в системе цифровой телефонии. Как отмечалось выше, в цифровой системе для сжатия речи с целью ее последующей передачи используют вокодеры. Поскольку вокодеры особенно чувствительны к нелинейным эффектам, то процесс двухстороннего клиппирования вызывает некоторое ухудшение качества речи. Более того, используемые в данном случае способы шумовой замены обуславливают ощутимое изменение в характеристиках шума.
Именно поэтому главной целью настоящего изобретения является создание нового и улучшенного эхоподавателя, способного обеспечить эффективное подавление эхо-сигналов с целью улучшения качества речи.
Другой целью изобретения является создание эхоподавателя, особенно эффективного для подавления эхо-сигналов при взаимодействии системы связи для цифровой передачи речи с системой связи для аналоговой передачи речи.
Еще одной целью изобретения является создание эхоподавителя, обеспечивающего повышение эффективности подавления эхо-сигналов при одновременном ведении разговора обеими сторонами.
Настоящее изобретение относится к новому и улучшенному сетевому эхоподавителю для цифровых телефонных систем. В соответствии с изобретением предлагается использовать эхоподавитель, с помощью которого легко идентифицируется импульсная характеристика неизвестного канала эхо-сигнала, с помощью методов адаптивной фильтрации формируется копия этого эхо-сигнала, сформированная копия эхо-сигнала вычитается из сигнала, поступающего к говорящему абоненту дальнего конца, с целью последующего подавления эхо-сигнала говорящего абонента дальнего конца.
Согласно настоящему изобретению используют два адаптивных фильтра, при этом рабочая характеристика каждого фильтра специально отрегулирована для оптимизации каждого фильтра в соответствии с их различным назначением. Один из фильтров - фильтр эхоподавителя выполняет функцию эхоподавления, а его рабочая характеристика оптимизирована для высокого отношения мощности нескомпенсированного и скомпенсированного эхо-сигналов. Второй фильтр - фильтр с изменяемыми параметрами используют для определения состояния и он оптимизирован для быстрой адаптации.
Настоящее изобретение существенно отличается от обычных эхоподавителей по способу обработки одновременного разговора, когда оба абонента говорят одновременно. Обычные эхоподавители не могут обеспечивать детектирование при одновременном разговоре двух абонентов до тех пор, пока адаптивный фильтр, отслеживающий канал эхо-сигнала, не будет слегка искажен, что вызовет необходимость использования нелинейного двухстороннего клиппирования для удаления остаточного эхо-сигнала.
Настоящее изобретение также основано на использовании переменного порога адаптации. Это обеспечивает немедленный останов адаптации фильтра в самом начале одновременного разговора двух абонентов, тем самым сохраняя точную оценку канала эхо-сигнала и устраняя необходимость в двухстороннем клиппировании для удаления остаточного эхо-сигнала. Дополнительной особенностью настоящего изобретения является использование улучшенного способа детектирования речи, который обеспечивает точное детектирование речи в условиях высокого уровня фоновых шумов. Изобретение предусматривает также использование новых способов автоматической компенсации равномерных задержек во времени в канале эхо-сигнала с обеспечением быстрой начальной адаптации.
В соответствии с настоящим изобретением предложен эхоподавитель и способ подавления в сигнале обратного канала отраженного сигнала приемного канала, в котором отраженный сигнал приемного канала объединяется с помощью канала эхо-сигнала с входным сигналом обратного канала. Эхоподавитель содержит первый фильтр, который формирует коэффициент первого фильтра, генерирует первый сигнал оценки эхо-сигнала с помощью коэффициентов первого фильтра и обновляет коэффициенты первого фильтра в ответ на управляющий сигнал первого фильтра. Первое суммирующее устройство вычитает первый сигнал оценки эхо-сигнала из объединенного сигнала обратного канала и канала приема эхо-сигнала для формирования первого остаточного эхо-сигнала. Второй фильтр формирует и выдает коэффициенты второго фильтра, генерирует с помощью коэффициентов второго фильтра второй сигнал оценки эхо-сигнала и обновляет коэффициенты второго фильтра в ответ на управляющий сигнал второго фильтра. Второе суммирующее устройство вычитает второй сигнал оценки эхо-сигнала из объединенного сигнала для формирования второго остаточного эхо-сигнала и обеспечивает подачу в обратный канал второго остаточного эхо-сигнала. Блок управления определяет на основе сигнала приемного канала комбип объединенного сигнала, первого и второго остаточных эхо-сигналов одного из множества состояний управления, причем первое состояние управления указывает на то, что уровень сигнала приемного канала будет выше первого заданного уровня энергии, при этом в случае нахождения блока управления в первом состоянии управления он будет выдавать первый сигнал управления и выдавать второй сигнал управления в том случае, когда по меньшей мере одно из первого и второго отношений энергии соответственно первого остаточного эхо-сигнала и объединенного сигнала и второго остаточного эхо-сигнала и объединенного сигнала превышает заданный уровень.
Признаки, цели и преимущества настоящего изобретения станут более ясными и очевидными из нижеследующего детального описания, которое сопровождается ссылками на чертежи, на которых ссылочные позиции идентифицируют соответствующие блоки и элементы устройства.
Фиг. 1 представляет блок-схему, иллюстрирующую примерную архитектуру цифровой сотовой телефонной системы и ее сопряжение с наземной телефонной системой.
Фиг. 2 - блок-схема обычного эхоподавителя.
Фиг. 3 - график, иллюстрирующий отдельные участки импульсной характеристики канала эхо-сигнала.
Фиг. 4 - блок-схема трансверсального адаптивного фильтра.
Фиг. 5 - блок-схема эхоподавителя, выполненного согласно настоящему изобретению.
Фиг. 6 - блок-схема, иллюстрирующая дополнительные детали показанного на фиг. 5 блока управления.
Фиг. 7 - последовательность выполнения операций по обработке выборки данных при подавлении эхо-сигнала.
Фиг. 8 - последовательность выполнения операций при осуществлении показанной на фиг. 7 операции регулирования параметров.
Фиг. 9 - последовательность выполнения операций при осуществлении показанной на фиг. 7 операции вычисления периодической функции.
Фиг. 10 - схема, иллюстрирующая кольцевое буферное устройство для выборки данных и исходное положение отвода фильтра.
Фиг. 11 - схема, иллюстрирующая буферизацию отводов фильтров и копирование исходного состояния отводов фильтров в фильтр с изменяемыми параметрами и в фильтр эхоподавителя.
Фиг. 12 - схема, иллюстрирующая буферизацию отходов фильтров и максимальный сдвиг положений отводов фильтра с изменяемыми параметрами эхоподавителя относительно выборок данных.
Фиг. 13 - схематичное изображение режимов функционирования конечного автомата, иллюстрирующее различные состояния эхоподавителя.
Фиг. 14-16 - последовательность выполнения операций при осуществлении показанной на фиг. 7 операции срабатывания конечного автомата.
Детальное описание предпочтительных вариантов. В сотовой системе связи, например в сотовой телефонной системе, которая сопрягается с наземной телефонной системой, расположенный на центральной станции сетевой эхоподавитель обеспечивает подавление эхо-сигналов, возвращающихся в мобильную станцию. Теперь обратимся к фиг. 1, где показана типичная архитектура системы для цифровой сотовой телефонной сети и ее сопряжение с наземной телефонной системой. Показанная архитектура системы определяется функциональными элементами мобильной станции 10, сотовой или базовой станцией 30, подвижной коммутационной телефонной станцией (MTSO) 40, центральной станцией 50 и телефоном 60. Необходимо иметь в виду, что возможны и иные конфигурации системы, включающие сотовую систему лишь с иным расположением или позицией различных функциональных элементов. Необходимо также иметь в виду, что эхоподавитель, выполненный согласно настоящему изобретению, можно также использовать вместо обычных эхоподавителей в обычных системах связи.
Мобильная станция 10 содержит среди прочих, не показанных на фиг. 1 элементов, микротелефонную трубку 12, содержащую микрофон 13 и громкоговоритель 14, кодек 16, вокодер 18, приемопередатчик 20 и антенну 22. Речевой сигнал пользователя мобильной станцией принимается микрофоном 13, откуда он подается в кодек 16, а затем преобразуется в цифровую форму. После этого с вокодера 18 происходит сжатие преобразованного в цифровую форму сигнала речи. Закодированная таким образом речь модулируется и передается в цифровой форме с помощью приемопередатчика 20 и антенны 22.
Приемопередатчик 20 может использовать, например, методы цифровой модуляции, например многостанционный доступ с временным разделением каналов методом расширения спектра, например скачкообразную перестройку частоты или многостанционный доступ с кодовым разделением каналов. Один из примеров модуляции с кодовым разделением каналов и способов передачи информации описан в патенте США N 5103459 на "Систему и способ генерирования сигналов в сотовой телефонной сети с многостанционным доступом и кодовым разделением каналов", выданный 7 апреля 1992 г. и переуступленный правопреемнику настоящего изобретения; описание этого патента включено сюда в качестве ссылочного материала. В описанной в упомянутом патенте США системе многостанционного доступа с кодовым разделением каналов рекомендуется использовать вокодер 18 типа с переменной скоростью обработки, описанный, например, в одновременно рассматриваемой заявке на патент США с регистрационным номером 07/713661 на "Вокодер с переменной скоростью обработки", поданной 11 июня 1991 г. и также переуступленной правопреемнику настоящего изобретения; описание этой заявки также включено сюда в качестве ссылочного материала.
Базовая станция 30 в числе прочих не показанных на чертеже элементов содержит антенну 32, взаимопередающую систему 34 и интерфейс 36 подвижной коммутационной телефонной станции. Приемопередающая система 34 базовой станции 30 демодулирует и декодирует принятые от мобильной станции 10 и других мобильных станций (не показаны) сигналы и подает их в интерфейс 36 передвижной телефонной коммутационной станции для последующей передачи в передвижную телефонную коммутационную станцию 40. Эти сигналы можно передавать от базовой станции к передвижной телефонной коммутационной станции 40 различными способами, например, с помощью радиоволн, оптико-волоконной или проводной линии связи.
Передвижная телефонная коммутационная станция 40 среди прочих не показанных на чертежах элементов содержит интерфейс базовой станции 42, множество плат 44A - 44N селектора вокодера и интерфейс телефонной сети общего пользования 48. Сигнал от базовой станции 30 принимает интерфейс базовой станции 42 и передает его на одну из плат 44A - 44N селектора вокодера, например на плату 44A.
Каждая из плат 44A - 44N селектора вокодера содержит соответствующий вокодер 45A - 45N и соответствующий сетевой подавитель 46A - 46N. Содержащийся в каждом из вокодеров 45A - 45N декодер (не показан) синтезирует цифровой речевой сигнал из переданных соответствующей мобильной станцией параметров речевого сигнала. Затем эти выборки речевого сигнала поступают в соответствующий эхоподавитель 46A - 46N, который пропускает их дальше в интерфейс 48 телефонной сети общего пользования. В описываемом примере сигналы проходят через вокодер 45A и эхоподавитель 46A. Затем синтезированные выборки речевого сигнала для каждого телефонного вызова проходят через интерфейс 48 телефонной сети общего пользования и направляют в телефонную сеть, обычно через интерфейс Т1 линии проводной связи, т.е. уплотненную во времени группу из 24 речевых каналов, и дальше на центральную станцию 50.
В числе прочих не показанных на чертеже элементов центральная станция 50 содержит интерфейс 52 передвижной телефонной коммутационной станции, кодек 54 и гибридное устройство 56. Принятый на центральной станции 50 через интерфейс 52 цифровой сигнал обрабатывается в кодеке 54, где он вновь преобразуется в аналоговую форму и подается в гибридное устройство 56. В этом гибридном устройстве 56 аналоговый четырехпроводной сигнал преобразуется в двухпроводный для последующей его передачи по проводной паре по направлению к телефону наземного абонента 60.
Выходной аналоговый сигнал кодека 54 также отражается от гибридного устройства 56 вследствие рассогласования импедансов. Отражение этого сигнала происходит в форме эхо-сигнала, который вновь возвращается в мобильную станцию 10. На фиг. 1 путь прохождения отражения или эхо-сигнала в гибридном устройстве 56 показан пунктирной линией со стрелкой 58.
В другом направлении в центральную станцию 50 подается двухпроводной аналоговый речевой сигнал от телефона 60. На центральной станции 50 этот речевой сигнал преобразуется в четырехпроводной в гибридном устройстве 56 и суммируется с эхо-сигналом, подаваемым в мобильную станцию 10. В кодеке 54 происходит преобразование в цифровую форму объединенного речевого и эхо-сигнала, который затем через интерфейс 52 подается в подвижную коммутационную телефонную станцию 40.
В станции 40 этот сигнал принимается интерфейсом 48 телефонной сети общего пользования и направляется дальше в эхоподавитель 46A, где перед кодированием сигнала вокодера 45A осуществляется удаление эхо-сигнала. Закодированный в вокодере речевой сигнал направляется через интерфейс 42 базовой станции на базовую станцию 30 и на любые другие соответствующие дополнительные базовые станции для последующей передачи на мобильную станцию 10. Сигнал, передаваемый от интерфейса 42, базовая станция 30 принимает с помощью интерфейса 36 передвижной коммутационной телефонной станции. Затем этот сигнал поступает в приемопередающую систему 34 для кодирования и модуляции с последующей его передачей через антенну 32.
Переданный сигнал принимается антенной 22 мобильной станции 10 и поступает в приемопередатчик 20 для демодуляции и декодирования. Затем этот сигнал подается в декодер 18, где формируются выборки синтезированного речевого сигнала. Эти выборки поступают в кодек 16 для цифро-аналогового преобразования, и аналоговый речевой сигнал подается в динамик 14.
Для полного и правильного уяснения сущности эхоподавителя, выполненного согласно настоящему изобретению, полезно еще раз остановиться на традиционном эхоподавителе и его недостатках при работе в цифровой сотовой системе. На фиг. 2 показана блок-схема традиционного сетевого эхоподавителя 100.
Речевой сигнал от мобильной станции обозначен на фиг. 2 как речевой сигнал дальнего конца x(n), тогда как речь от наземной станции обозначена как речевой сигнал ближнего конца v(n). Отражение x(n) от гибридного устройства моделируется как прохождение сигнала x(n) через неизвестный эхоканал 102 с целью образования эхо-сигнала y(n), который суммируется в суммирующем устройстве 104 с речевым сигналом ближнего конца v(n). Хотя суммирующее устройство 104 не является элементом, включенным, собственно, в эхоподавитель, однако физический эффект этого устройства проявляется как паразитный результат для системы. Чтобы удалить низкочастотный фоновый шум, необходимо отфильтровать сумму эхо-сигнала y(n) и речевого сигнала ближнего конца v(n) с помощью фильтра верхних частот 106, чтобы в конечном итоге получить сигнал r(n). Сигнал r(n) является одним из входных сигналов суммирующего устройства 108 и схемы детектирования речевого сигнала ближнего конца 110.
Другой входной сигнал суммирующего устройства 108 (на вычитающем входе) подается с выхода адаптивного трансверсального фильтра 112. Адаптивный трансверсальный фильтр 112 принимает речевой сигнал дальнего конца x(n) и по цепи обратной связи - остаточный эхо-сигнал e(n) в виде выходного сигнала суммирующего устройства 108. В процессе компенсирования эхо-сигнала адаптивный фильтр 112 непрерывно отслеживает импульсную характеристику канала эхо-сигнала и вычитает копию эхо-сигнала из выходного сигнала фильтра 106 в суммирующем устройстве 108. Адаптивный фильтр 112 также получает управляющий сигнал по схеме 110, чтобы "заморозить" процесс адаптации фильтра после обнаружения речевого сигнала ближнего конца.
Остаточный эхо-сигнал e(n) подается также на схему 110 и на эхоподавитель с двухсторонним клиппированием 114. Выходной сигнал эхоподавителя 114 выдается в качестве сигнала с подавленным эхо-сигналом при осуществлении операции эхоподавления.
Импульсную характеристику канала эхо-сигнала можно разделить на две области - область равномерной задержки и область дисперсии, показанные на фиг. 3. Область равномерной задержки, в которой упомянутая импульсная характеристика приближается к нулю, обусловлена задержкой на распространение речевого сигнала дальнего конца, отражающегося от гибридного устройства и возвращающегося к эхоподавителю. Область дисперсии эхо-сигнала, где имеет место довольно значительный отклик, характеризует собой характеристику эхо-сигнала, обусловленную фактом отражения от гибридного устройства.
Если оценка канала, эхо-сигнала, выдаваемая адаптивным фильтром, точно соответствует истинному каналу эхо-сигнала, тогда эхо-сигнал компенсируется полностью. Однако, как правило, адаптивный фильтр не может точно продублировать канал, вызывая тем самым образование некоторого остаточного эхо-сигнала. Эхоподавитель 114 устраняет остаточный эхо-сигнал посредством пропускания сигнала через нелинейный функциональный преобразователь, который устанавливает на нуль любую часть сигнала ниже порога A и пропускает без изменений любую часть сигнала выше порога A. Синтезированный шум можно использовать для замены тех частей сигнала, которые были установлены на нуль двухсторонним клиппированием с целью исключения блокирования звучания канала.
Как отмечено выше, хотя подобный способ является вполне удовлетворительным для аналоговых сигналов, однако процесс обработки остаточного эхо-сигнала связан с возникновением определенных трудностей в цифровой телефонии, в которой для сжатия речи для последующей ее передачи используют вокодеры. Поскольку вокодеры особенно чувствительны к нелинейным эффектам, то двустороннее клиппирование обуславливает ухудшение качества речи, а замещение шумом вызывает довольно ощутимое изменение в характеристиках шума.
На фиг. 4 показаны дополнительные детали конструкции показанного на фиг. 2 адаптивного фильтра 112. Используемые на фиг. 4 условные обозначения расшифровываются следующим образом:
N - порядок фильтра;
x(n) - выборка речевого сигнала дальнего конца в момент n;
hk(n) - k-й отвод фильтра в момент n;
r(n) - выборка эхо-сигнала в момент n;
- оценка эхо-сигнала в момент n;
e(n) - остаточный эхо-сигнал в момент n.
Адаптивный фильтр 112 содержит множество элементов задержки с отводами 1201 - 120N-1, множество перемножителей 1220 - 122N-1, суммирующее устройство 124 и генератор коэффициентов 126. Входная выборка речевого сигнала дальнего конца x(n) является входным сигналом как для элемента задержки 1201, так и для перемножителя 1220. По мере вхождения в фильтр 112 следующей выборки старые выборки смещаются через элементы задержки 1202 - 120N-1, а также поступают на соответствующие перемножители 1221 - 122N-1.
Генератор коэффициентов 126 получает остаточный эхо-сигнал e(n) с выхода суммирующего устройства 108 (см. фиг. 2) и генерирует набор коэффициентов h0(n) - hN-1(n). Эти значения коэффициентов фильтра h0(n) - hN-1(n) являются соответствующими входными сигналами для перемножителей 1220 - 122N-1. Результирующий выходной сигнал от каждого из переменожителей 1220 - 122N-1 поступает в суммирующее устройство 124, где они суммируются, формируя оценку эхо-сигнала . Затем эта оценка эхо-сигнала поступает в суммирующее устройство 108 (см. фиг. 2), где вычитается из эхо-сигнала r(n), чтобы получить остаточный эхо-сигнал e(n). В традиционном показанном на фиг. 2 эхоподавителе генератор 126 имеет управляющий вход, чтобы можно было обновить коэффициенты, когда схема 110 не обнаруживает речевой сигнал ближнего конца. Если схема 110 обнаруживает одновременный разговор двух абонентов или только речь ближнего конца, то в этом случае управляющий входной сигнал блокирует обновление коэффициентов фильтра.
Алгоритм, реализованный в генераторе коэффициентов 126 для адаптации коэффициентов отводов фильтра для отслеживания характеристики канала эхо-сигнала, является алгоритмом адаптации по методу нормированного наименьшего среднего квадрата (NL M S). Введение для этого алгоритма векторов
x(n)=[x(n) x(n-1) x(n-2)...x(n-N+1)]
h(n)=[h0(n) h1(n) h2(n)...hN-1(n)]
дает возможность определить векторное скалярное произведение между h(n) и x(n) следующим образом:
.
Алгоритм адаптации определяется следующим образом:
,
где
h(n) - вектор коэффициента отвода;
x(n) - входной вектор эталонного сигнала;
e(n) - остаточный эхо-сигнал;
μ - размер шага;
Exx(n) - оценка энергии, рассчитанной в виде суммы квадратов N самых последних выборок, где
.
Основными преимуществами алгоритма (4) являются меньшие вычислительные затраты по сравнению с другими адаптивными алгоритмами, а также хорошо изученные свойства стабильности. Необходимую сходимость можно гарантировать за счет соответствующего выбора размера шага (0< μ <2), причем μ =1 обеспечивает максимально быструю сходимость. Меньшие размеры шага обеспечивают большую степень компенсации установившимся состоянием за счет некоторого снижения скорости сходимости.
Следует иметь в виду, что речевой сигнал v(n) говорящего абонента ближнего конца не включен в остаточный эхо-сигнал e(n) по той причине, что адаптивный фильтр 112 блокируется схемой обнаружения речевого сигнала ближнего конца 110 сразу же после обнаружения говорящего абонента ближнего конца.
Помимо подачи в фильтр 112 управляющего сигнала, схема 110 может также генерировать и выдавать значение Exx(n) для фильтра 112 в управляющем входном сигнале. Кроме того, значение μ обычно фиксируется в генераторе 126 или же фиксированное значение выдается схемой 110 в упомянутом управляющем входном сигнале.
Наиболее трудной проблемой при разработке процедуры эхоподавления является обнаружение и обработка одновременного разговора, т.е. когда оба абонента разговаривают одновременно. В противоположность срабатывающему от голоса переключателю, который допускает только симплексную или одноканальную связь, эхоподавитель сохраняет дуплексную или двухканальную связь и должен продолжать подавлять эхо-сигнал говорящего абонента дальнего конца при продолжении речи абонента ближнего конца. Чтобы исключить вероятность искажения коэффициентов фильтра речевым сигналом ближнего конца, необходимо будет "заморозить" состояние отводов фильтра, чтобы предотвратить возможность отклонения от передаточных характеристик действительного канала эхо-сигнала.
Теперь еще раз вернемся к фиг. 2. Схема обнаружения речи ближнего конца 110 может использовать результаты измерений уровня энергии x(n), r(n) и e(n) для определения момента возникновения речевого сигнала ближнего конца. Классический метод обнаружения одновременного разговора двух абонентов предусматривает сравнение средних кратковременных значений энергии x(n) и r(n), используя при этом известный факт, что потери в канале эхо-сигнала на гибридном устройстве равны примерно 6 дБ. Если потери в гибридном устройстве падают ниже уровня в 6 дБ, то принимается решение о наличии речевого сигнала ближнего конца. Однако экспериментальные исследования показали, что этот метод не обладает достаточной чувствительностью. Большой динамический диапазон значений речевого сигнала ближнего конца v(n) обуславливает при этом методе случайные пропуски некоторых обнаружений, что в конечном итоге может привести к искажению коэффициентов.
Другой известный способ обнаружения одновременного разговора двух абонентов предусматривает анализ кратковременного отношения мощности нескомпенсированного и скомпенсированного эхо-сигналов (ERL E), которое определяется в виде:
ERL E (дБ) = 10log(σ
где
σ
.
ERL E представляет то количество энергии, которое удалено из эхо-сигнала после его пропускания через эхоподавитель. Этот метод обнаружения одновременного разговора двух абонентов предусматривает проведение сравнения оценок кратковременной энергии r(n) и e(n) и если кратковременное значение ERL E падает ниже заданного порога, например 6 дБ, то принимается решение о наличии одновременного разговора двух абонентов. Хотя этот метод гарантирует несколько более высокую чувствительность, однако он связан с некоторой задержкой во времени при определении начала речевого сигнала ближнего конца, что приводит к незначительному искажению оценки канала эхо-сигнала до момента "замораживания" адаптации. Подобный факт связан с необходимостью использования дополнительного способа для удаления остаточного эхо-сигнала. Именно поэтому желательно найти более эффективный способ сохранения оценки канала эхо-сигнала при одновременном разговоре двух абонентов, например такой, как предусмотрено настоящим изобретением.
При использовании любого из упомянутых выше методов сравнения энергии для обнаружения факта наличия одновременного разговора двух абонентов высокие уровни фонового шума, особенно в сотовой системе связи, могут создать довольно большие трудности в плане точного определения факта одновременного разговора двух абонентов. Именно поэтому желательно использовать улучшенный способ обнаружения одновременного разговора двух абонентов в условиях наличия высокого уровня фонового шума, например способ, который предложен в настоящем изобретении.
Теперь обратимся к фиг. 5. На этом чертеже показана блок-схема одного из вариантов сетевого эхоподавителя 140, выполненного согласно настоящему изобретению. В этом примере сетевой эхоподавитель 140 выполнен в виде устройства обработки цифрового сигнала, например в виде процессора цифрового сигнала серии TMS 320C3X фирмы "Техас инструментс" из Далласа, штат Техас. Необходимо иметь в виду, что и другие процессоры цифрового сигнала можно запрограммировать на функционирование в соответствии с изложенными в настоящем изобретении принципами. С другой стороны, можно использовать и другие варианты конфигурации сетевого эхоподавителя 140, например с использованием дискретных процессоров или специализированной интегральной схемы.
Следует иметь в виду, что в описанном примере выполнения изобретения сетевой эхоподавитель 140 является по существу конечным автоматом, который имеет определенные функции для каждого из различных рабочих состояний. Эхоподавитель 140 может работать в следующих режимах: молчание, речь дальнего конца, речь ближнего конца, одновременный разговор двух абонентов и "затягивание" разговора. Более подробно работа эхоподавителя 140 будет описана ниже.
На фиг. 5, как и на фиг. 2, речевой сигнал от мобильной станции обозначен как речевой сигнал дальнего конца x(n), а речевой сигнал от наземной станции обозначен как речевой сигнал ближнего конца v(n). Отражение сигнала x(n) от гибридного устройства моделируется как прохождение сигнала x(n) через неизвестный канал 142 эхо-сигнала с образованием эхо-сигнала y(n), который суммируется в суммирующем устройстве 144 с речевым сигналом ближнего конца v(n). Хотя суммирующее устройство 144 не является элементом, включенным собственно в эхоподавитель, однако физический эффект этого устройства проявляется как паразитный результат для системы. Чтобы удалить низкочастотный фоновый шум, необходимо отфильтровать сумму эхо-сигнала y(n) и речевого сигнала ближнего конца v(n) с помощью фильтра верхних частот 146 и в конечном итоге получить сигнал r(n). Сигнал r(n) подается в качестве входного сигнала в каждое суммирующее устройство 148 и 150 и в блок управления 152.
Входной речевой сигнал дальнего конца x(n) хранится в буферном устройстве 154 для последующего ввода в множество трансверсальных адаптивных фильтров (первичный фильтр 156, фильтр с изменяемыми параметрами 158 и фильтр эхоподавителя 160) и в блок управления 152. В описываемом примере выполнения изобретения первичный фильтр 156 имеет 448 коэффициентов или отводов фильтра, а фильтр с изменяемыми параметрами 158 и фильтр эхоподавителя 160 имеют по 256 отводов каждый.
В процессе начального этапа работы эхоподавителя 140 выборки речи x(n) подаются в первичный фильтр 156 для начального этапа эхоподавления и настройки задержек эхо-сигнала с помощью блока управления 152. В течение этого начального периода работы фильтр с изменяемыми параметрами 158 и фильтр эхоподавителя 160 блокируются блоком управления 152. Выходной сигнал начального этапа эхоподавления с выхода первичного фильтра 156 подается через переключатель фильтров 162 в суммирующее устройство 148. В суммирующем устройстве 148 сигнал вычитают из сигнала r(n), чтобы получить первичную оценку остаточного эхо-сигнала e(n). Переключатель фильтров 162, управляемый блоком управления 152, осуществляет выбор между выходным сигналом первичного фильтра 156 и фильтра эхоподавителя 160 для последующего ввода в суммирующее устройство 148.
Как отмечалось выше, процесс настройки задержек эхо-сигнала осуществляется в течение периода начальной работы эхоподавителя 140. В течение этого периода коэффициенты отводов фильтра или отводы первичного фильтра 156 используются блоком управления 152 для определения отводов с максимальным значением. Этот процесс используется для разделения на область равномерной задержки и область дисперсии сигнала.
После завершения процесса настройки задержек эхо-сигнала 256 отводов первичного фильтра 156 копируются в отводы фильтра с изменяемыми параметрами 158 и фильтра эхоподавителя 160, как описано ниже. Результат процесса настройки задержек эхо-сигнала будет гарантировать осуществление адаптивной фильтрации выборок x(n), которые совпадают с областью дисперсии эхо-сигнала r(n). После этой начальной операции начинают работать фильтр с изменяемыми параметрами 158 и фильтр эхоподавителя 160, с использованием состояний отводов, которые были получены для фильтра 156. Вся последующая адаптация основывается на сформированных состояниях отводов.
В течение периода нормальной работы эхоподавителя 140 сигнал с выхода фильтра с изменяемыми параметрами 158 подается на один из входов суммирующего устройства 150, где он вычитается из сигнала r(n). Результирующий выходной сигнал суммирующего устройства 150 представляет собой сигнал e1(n), поступающий на вход блока управления 152. Выходной сигнал фильтра эхоподавителя 160, т.е. сигнал копии , через переключатель фильтров 162 подается на один из входов суммирующего устройства 148, где он вычитается из сигнала r(n). Полученный остаточный эхо-сигнал e(n) с выхода суммирующего устройства 148 подается на вход блока управления 152. Остаточный эхо-сигнал e(n) с выхода суммирующего устройства 148 может подаваться непосредственно в качестве выходного сигнала эхоподавителя 140 или через дополнительные элементы обработки. Блок управления 152 может также осуществлять функцию управления через адаптацию фильтра с изменяемыми параметрами 158 и фильтра эхоподавителя 160, что будет подробнее описано ниже.
Согласно настоящему изобретению, анализ и синтез шума можно осуществлять на выходе сетевого эхоподавителя 140. Эта функция реализуется с помощью выходного переключателя 164, блока анализа шума 166 и блока синтеза шума 168. Выходной сигнал e(n) суммирующего устройства 148 поступает на выходной переключатель 164 и блок анализа шума 166. Блок анализа шума 166, управляемый блоком управления 152, анализирует сигнал e(n) и выдает сигнал с результатами анализа в блок синтеза шума 168. Блок синтеза шума 168 генерирует и выдает синтезированный шумовой сигнал s(n) на основе уже проанализированных характеристик сигнала e(n). Затем на выходной переключатель 164 подается выходной сигнал блока синтеза шума 168. Через выходной переключатель 164 блоком управления 152 выходной сигнал эхоподавителя 140 подается либо в виде сигнала e(n) непосредственно с выхода суммирующего устройства 148, либо в виде синтезированного сигнала шума s(n) с выхода синтезирования шума 168.
Большая часть обычного телефонного разговора передается в режиме одиночного разговора, т.е. когда в каждый момент времени разговаривает только один абонент. Если говорит только абонент дальнего конца, тогда эхоподаватель 140 использует функцию анализа и синтеза шума для полной режекции эхо-сигнала посредством замены остаточного эхо-сигнала e(n) синтезированным сигналом шума s(n). Чтобы исключить вероятность обнаружения абонентом дальнего конца каких-либо изменений в характеристиках сигнала, шум синтезируют согласованным по мощности и спектральным характеристикам с реальным фоновым шумом в течение самого последнего периода молчания с использованием кодирования методом линейного предсказания. Этот метод синтеза шума, который более детально будет описан ниже, обеспечивает оптимизацию эхоподавителя не по одному разговору, а по одновременному разговору двух абонентов. Особенности анализа и синтеза шума более подробно будут описаны ниже.
В качестве дополнительного важного признака настоящего изобретения следует упомянуть каскад усиления, который показан на фиг.5. В соответствии с реализацией этого признака изобретения на входе эхоподавителя 140 установлен элемент переменного усиления 170, на который подается речевой сигнал дальнего конца. Входной речевой сигнал дальнего конца x(n) подается через каскад переменного усиления 170 в буферное устройство 154 и в неизвестный канал эхо-сигнала 142. Блок управления 152 вместе с каскадом переменного усиления 170 образуют средство автоматической регулировки усиления с целью ограничения сигналов, на которые в противном случае мог бы оказать нелинейное воздействие неизвестный канал эхо-сигнала 142. Блок управления 152 и каскад переменного усиления 170 также выполняют функцию уменьшения времени сходимости для процесса адаптации фильтра. Более подробно об этом будет сказано ниже.
Как показано в примере выполнения настоящего изобретения, два адаптивных независимых друг от друга фильтра, а именно фильтры 158 и 160, отслеживают состояние неизвестного канала эхо-сигнала. Если фильтр 160 выполняет функцию фактического эхоподавления, то фильтр 158 используется блоком управления 152 для определения того, какое из нескольких состояний эхоподавителя 140 должно быть использовано как рабочее состояние. Именно по этой причине фильтры 158 и 160 называют соответственно фильтром с изменяемыми параметрами и фильтром эхокомпенсатора. Преимущество совместного использования этих двух фильтров заключается в том, что коэффициенты фильтра подавителя 160, которые моделируют неизвестный канал эхо-сигнала 142, можно сохранить более эффективным образом без риска их ухудшения речевым сигналом ближнего конца. За счет сохранения специфических особенностей канала эхо-сигнала изобретение позволяет отказаться от двухстороннего клиппирования.
Алгоритм управления, используемый блоком управления 152, который осуществляет постоянный контроль за рабочей характеристикой обоих фильтров 158 и 160, оптимизирован с таким расчетом, чтобы гарантировать сохранение оценок характеристик канала эхо-сигнала в процессе одновременного разговора двух абонентов. Блок управления 152 включает и выключает адаптацию фильтров 158 и 160 в нужный момент времени, регулирует шаг адаптации обоих фильтров и регулирует режим работы блока усиления 170 относительно сигнала x(n) с целью ускорения процесса начальной адаптации.
На фиг. 6 показана функциональная блок-схема, на которой иллюстрируются дополнительные детали показанного на фиг.5 блока управления 152. Показанный на фиг.6 блок управления 152 содержит блок управления процессом обработки и конечный автомат 180, блок вычисления уровня энергии 182, блок вычисления величины дифференциальной энергии 184, блок порога изменяемой адаптации 186, блок автоматического регулирования усиления 188 и блок вычисления равномерной задержки 190.
Конечный автомат 180 выполняет общую функцию конечного автомата, как показано на фиг.14, и функцию управления общим процессом обработки данных, которая схематически показана на фиг.7. Конечный автомат 180 обеспечивает управление режимом работы первичного фильтра 156 и блоком вычисления равномерной задержки 190, причем эти функции он выполняет в течение начального этапа работы эхоподавителя 140. Конечный автомат 180 обеспечивает также функцию управления режимом работы фильтра с изменяемыми параметрами 158 и фильтра эхоподавателя 160 относительно начальной настройки управления адаптацией и управления размером шага адаптации. Конечный автомат 180 обеспечивает также функцию управления режимом работы блока анализа шумов 166 и переключателей 162 и 164. Конечный автомат 180 управляет блоком порога изменяемой адаптации 186 для управления адаптацией фильтра эхоподавителя 160. Конечный автомат также принимает сигналы e(n) от суммирующего устройства 148 и e1(n) от суммирующего устройства 150 с целью последующей их подачи в фильтр эхоподавителя 160 и фильтр с изменяемыми параметрами 158 соответственно. По альтернативному варианту сигналы e1(n) и e(n) могут подаваться непосредственно в фильтр с изменяемыми параметрами 158 и в фильтр подавителя 160.
Блок вычисления уровня энергии 182 принимает значения выборки сигнала x(n) от кольцевого буферного устройства 154, сигнала r(n) от фильтра верхних частот 146, сигнала e(n) от суммирующего устройства 148 и сигнала e1(n) от суммирующего устройства 150 и вычисляет различные значения для последующей их подачи в блок определения величины дифференциальной энергии 184 и конечный автомат 180. Блок определения дифференциальной величины энергии 184 использует значения энергии, рассчитанные в блоке вычисления уровня энергии 182, для сравнения с пороговыми уровнями, чтобы можно было определить, имеет ли место в данном случае речь ближнего конца или речь дальнего конца. Результат этого определения подается в конечный автомат 180.
Блок вычисления уровней энергии 182 выдает оценки уровня энергии на каждом этапе для фильтров 158 и 160. Эти оценки уровня энергии рассчитывают в виде суммы квадратов самых последних выборок сигналов. Два измеренных значения уровня энергии - Ex(n) и Exx(n) сигнала x(n) в момент n рассчитываются соответственно для всех 128 и 256 выборок; результаты этих измерений можно выразить с помощью следующих уравнений:
.
Подобным же образом блок вычисления уровней энергии 182 рассчитывает и выдает оценки уровня энергии Er(n), Ee(n) и Ee1(n) в момент n для соответствующих сигналов r(n), e(n) и e1(n) в соответствии со следующими уравнениями:
Блок вычисления уровней энергии 182 также рассчитывает потери в гибридном устройстве в момент n -Hloss (n) по следующему уравнению:
Hloss (n) (дБ) = 10 log10 [Ex(n)/Er(n)] (14)
Отношение мощности нескомпенсированного и скомпенсированного эхо-сигнала (ERLE) фильтра эхоподавителя 160 рассчитывается блоком вычисления уровней энергии 183 по следующему уравнению:
ERLE(n) (дБ) = 10 log10[Er(n)/Ee(n)], (15)
причем этот же блок вычисления уровней энергии 182 рассчитывает также отношение мощности нескомпенсированного и скомпенсированного эхо-сигнала (ERLEI) фильтра с изменяемыми параметрами 158 по следующему уравнению:
ERLEI (n) (дБ) = 10 log10[Er(n)/Ee1(n)] (16)
Чтобы избежать появления в эхо-сигнале нелинейностей, обусловленных каналом эхо-сигнала, рекомендуем ограничить принимаемое значение выборки x(n) значением меньше заданного порогового значения вблизи максимума. Блок автоматического регулирования усиления 188 совместно с каскадом переменного усиления 170 обеспечивает достижение этого результата. Блок автоматического регулирования усиления 188, который принимает выборки x(n) от кольцевого буферного устройства, выдает сигнал регулировки усиления в каскад переменного усиления 170, чтобы ограничить значения выборки в ситуации, когда эти значения будут слишком большими.
Блок вычисления равномерной задержки 190, управляемый конечным автоматом 180, на начальном этапе функционирования эхоподавителя 140 рассчитывает равномерную задержку на основе данных первичного фильтра. Затем этот блок вычисления равномерной задержки 190 передает информацию о смещении кольцевого буферного устройства в фильтр с изменяемыми параметрами 158 и в фильтр эхоподавителя 160, чтобы учесть период равномерной задержки для телефонного вызова.
В описываемом в качестве примера варианте сетевого эхоподавителя по настоящему изобретению для решения проблем обнаружения/обработки одновременного разговора двух абонентов используется сторонний подход. Согласно изобретению предусматривается использование (1) двух адаптирующихся независимым образом фильтров с различными шагами, (2) переменной пороговой величины включения и выключения адаптации фильтра и (3) алгоритм дифференциальной энергии для обнаружения речевого сигнала.
Эхоподавитель 140 использует два адаптирующихся независимым образом адаптивных фильтра, работающих по методу нормированных наименьших средних квадрата. В противоположность всем прочим методам с использованием двух фильтров, эхоподавитель 140 не использует принцип переключения фильтров 158 и 160 "одного на другого" для эхоподавления, а в установившемся состоянии не происходит обмен информацией между этими двумя фильтрами о состоянии отводов. Оба упомянутых выше известных способа обуславливают наличие нежелательных переходных процессов, проявляющихся в выходном сигнале эхоподавителя. Согласно настоящему изобретению, фильтр эхоподавителя 160 всегда выполняет операцию действительного эхоподавления, тогда как фильтр с изменяемыми параметрами 158 используется при реализации управления, использованного в конечном автомате 180, для определения различий между отдельными состояниями эхоподавителя. Этот новый подход к использованию двух фильтров дает возможность использовать для фильтра эхоподавителя 160 консервативную стратегию адаптации. Если алгоритм управления "не уверен", в каком рабочем состоянии должен находиться в данный момент эхоподавитель, то алгоритм отключает адаптацию фильтра эхоподавителя 160, а фильтр с изменяемыми параметрами будет продолжать адаптироваться. Конечный автомат 180 использует полученные от фильтра с изменяемыми параметрами 158 статистические данные с целью облегчения процедуры определения состояния. Размеры шага адаптивных фильтров настраиваются таким образом, чтобы фильтр эхоподавителя 160 обязательно получал в установившемся состоянии высокое отношение мощности нескомпенсированного и скомпенсированного эха (ERLE), а фильтр с изменяемыми параметрами быстро реагировал на любые изменения в рабочей характеристике канала эхо-сигнала. За счет обеспечения практически одновременной адаптации обоих фильтров 158 и 160 по описанному способу можно повысить общую эффективность эхоподавителя.
Фильтр с изменяемыми параметрами 158 и фильтр эхоподавителя 160, а также первичный фильтр 156 выполнены так, как описано в ссылке на фиг. 4. Как фильтр с изменяемыми параметрами 158, так и фильтр эхоподавителя 160 содержит 256 отводов, чтобы при частоте дискретизации 8 кГц учесть дисперсию эхо-сигнала длительностью 32 мс. Необходимо иметь в виду, что в зависимости от длительности дисперсии эхо-сигнала и частоты дискретизации фильтр с изменяемыми параметрами 158 и фильтр эхоподавителя могут иметь большее или меньшее число отводов. Буферное устройство 154 для выборки содержит 512 выборок речевого сигнала дальнего конца, что позволяет учесть интервал равномерной задержки 64 мс и дисперсию эхо-сигнала для телефонных вызовов в пределах территории континентальной части США. Для учета различных значений интервала равномерной задержки, имеющих место для отдельных телефонных вызовов, сетевой эхоподавитель по настоящему изобретению может автоматически определять равномерную задержку и смещать отводы фильтров с целью максимизации количества отводов, работающих в зоне диспресии эхо-сигнала. Именно поэтому эхоподавитель, соответствующий изобретению, успешно обрабатывает отклики эхо-сигнала длительностью от 0 до 32 мс без какого-либо смещения и длительностью от 32 до 64 мс со смещением максимальной задержки. Необходимо иметь в виду, что в связи с широким использованием процессоров цифровых сигналов и связанных с ними методов обработки цифровых сигналов хорошо известно, что первичный фильтр 156 можно использовать для образования фильтров 158 и 160. После завершения начальной обработки данных первичный фильтр 156 можно "разделить" на два фильтра 158 и 160 с независимыми генераторами коэффициентов. Более подробная информация об этом будет представлена ниже.
Чтобы сохранить коэффициенты фильтра эхоподавителя 160 при начале одновременного разговора двух абонентов, эхоподавитель 140 использует переменный порог адаптации (который обозначается как VT) для последующего включения и выключения адаптации фильтра эхокомпенсатора 160. Переменный порог адаптации (VT) рассчитывается с помощью блока переменного порога адаптации 186, а вычисленное значение порога передается в конечный автомат 180. Алгоритм управления дает возможность фильтру эхоподавителя 160 адаптироваться только в том случае, когда либо фильтр с изменяемыми параметрами 158, либо фильтр эхокомпенсатора 160 имеет отношение ETLE больше VT. Теперь еще раз вернемся к фиг. 4, где ясно видно, что подаваемый в генератор 126 входной сигнал управления включает в себя разблокирующий сигнал от блока управления 152, который дает возможность генератору вектора коэффициентов 126 обновлять коэффициенты фильтров для последующей их адаптации. В случае, если отношение ETLE обоих фильтров будет меньше значения VT, тогда конечный автомат 180 блокирует работу генератора вектора коэффициента 126, прерывая процедуру обновления коэффициента. В этом случае генератор вектора коэффициентов 126 выдает имеющиеся значения коэффициентов до тех пор, пока вновь не будет получено разрешение на адаптацию. На вход управления в генератор вектора коэффициентов 126 поступают и некоторые другие параметры, например значения μ , Exx(n) и e(n), входящие в уравнение (4).
Теперь обратимся к фиг. 6, где показана последовательность выполнения процедуры вычисления отношения мощности нескомпенсированного и скомпенсированного эхо-сигнала (ERLE) для фильтра с изменяемыми параметрами 158, причем эта процедура происходит в блоке вычисления уровня энергии 182 в соответствии с уравнением (6) и использованием значений r(n) и e1(n). Подобные же вычисления осуществляются в блоке вычисления уровня энергии 182 для фильтра эхоподавителя 160 с помощью значений r(n) и e(n). В блоке переменного порога адаптации 186 с помощью конечного автомата 180 осуществляется установка VT в состояние начального минимального порога, который в описываемом варианте изобретения равен 6 дБ. Пороговую обработку в блоке переменного порога адаптации 186 можно описать с помощью следующего C-кода:
Если ERLE превышает значение (VT + 6 дБ), тогда также повышается порог адаптации, при этом величина в 6 дБ остается позади пика ERL E. Этот запас в 6 дБ учитывает возможность изменения отношения ERL E. Конечный автомат 180 дает возможность фильтру эхоподавителя 160 продолжить адаптацию в том случае, если ERL E любого из фильтров 158 и 160 находится в пределах 6 дБ от последнего пика ERL E. Если ERL E падает на 3 дБ ниже минимального порогового значения, тогда порог адаптации повторного устанавливается на минимальное пороговое значение. Преимущество этого способа заключается в том, что адаптация фильтра эхоподавителя 160 прекращается сразу же после начала одновременного разговора двух абонентов. Например, предположим, что разговор ведет только один абонент дальнего конца, а последний пик ERL E равен 34 дБ. Сразу же после вступления в разговор абонента ближнего конца отношение ERL E падает и адаптация фильтра прекращается, когда отношение ERL E становится равным 28 дБ. Классические детекторы речевого сигнала ближнего конца не будут приостанавливать адаптацию до тех пор, пока ERL E не упадет ниже примерно 6 дБ, в результате чего оценка канала эхо-сигнала будет в незначительной степени искажаться. Следовательно, за счет более эффективного сохранения специфических особенностей канала эхо-сигнала настоящее изобретение гарантирует более эффективное подавление эхо-сигнала при одновременном разговоре двух абонентов при одновременном сохранении качества речи, т.е. исключается вероятность ухудшения качества речи, связанного с использованием в обычных подавителях устройств двухстороннего клиппирования.
В описываемом примере выполнения настоящего изобретения является предпочтительным, чтобы еще до момента прекращения адаптации фильтра 160 значение ERL E обоих фильтров 158 и 160 было ниже величины VT. Подобная характеристика алгоритма управления помогает провести четкое различие между началом одновременного разговора двух абонентов и обычной изменчивостью любого измерения ERL E, поскольку ERL E обоих фильтров будет уменьшаться сразу же после начала одновременного разговора двух абонентов.
Дополнительный аспект настоящего изобретения основывается на том факте, что при достижении сходимости фильтров 158 и 160 значение минимального порогового значения VT увеличивается по сравнению с первоначально установленным значением. В связи с повышением минимального порогового значения для VT возникает необходимость в более высоком ERL E еще до момента полной адаптации фильтра эхоподавителя 160.
Чтобы исключить помеховое воздействие больших уровней фонового шума на процесс определения состояния, эхоподавитель согласно изобретению использует алгоритм определения дифференциальной энергии по отношению к сигналам x(n) и e(n). Этот алгоритм, реализованный в блоке определения величины дифференциальной энергии 184 и конечном автомате 180, детально описанный ниже, осуществляет непрерывный контроль уровня фонового шума и сравнивает его с энергией сигнала для определения момента, когда абонент говорит. В описываемом в качестве примера варианте изобретения блок определения величины дифференциальной энергии 184 вычисляет три пороговых значения: T1(Bi), T2(Bi) и T3(Bi), которые являются функциями уровня фонового шума Bi. Если энергия сигнала x(n) превышает все три пороговых значения, то в этом случае абонент определяется как "говорящий". Если энергия сигнала превышает только T1 и T2, но не превышает T3, то в этом случае абонент будет определяться как, вероятно, произносящий глухой звук, например звук "Sp" в слове "speed". Если энергия сигнала меньше всех трех пороговых значений, тогда абонент определяется как молчащий.
На фиг. 7 показана общая примерная последовательность выполнения процесса обработки выборки данных образца в эхоподавителе согласно изобретению. Сначала под управлением конечного автомата 180 начинается исполнение алгоритма в блоке 200, после чего в соответствии с этим алгоритмом получаем выборки функции вида μ сигналов x(n) и v(n) в блоке 202, которые затем преобразуются в их линейные значения в блоке 204. После этого выборка v(n) проходит через фильтр верхних частот для получения выборки сигнала r(n) - блок 206. Показанный на фиг. 5 фильтр верхних частот 146, который отфильтровывает остаточные количества постоянного тока и низкочастотные шумы, представлен цифровым фильтром, который сконструирован с использованием хорошо известных способов изготовления цифровых фильтров. Фильтр верхних частот обычно имеет конфигурацию эллиптического фильтра третьего порядка с характеристиками полосы задержания с частотой среза 120 Гц с подавлением 37 дБ и полосы пропускания с частотой среза 250 Гц с неравномерностью 0,7 дБ. Фильтр верхних частот обычно выполнен в виде каскадного из реализаций прямой формы первого и второго порядка с коэффициентами, которые приводятся в показанной ниже табл. 1.
Затем для выборки сигнала x(n) в блоке 208 происходит обновление средних значений энергии Ex(n) и Exx(n). После этого происходит обновление среднего значения энергии Er(n) для выборки сигнала r(n) наряду с вычислением потерь энергии (Hloss (n)) в гибридном устройстве - блок 210.
В блоке 212 происходит вычисление выходного сигнала адаптивного фильтра 158 (см. фиг. 5), т.е. значения y1(n), с последующим определением остаточного эхосигнала e1(n) в блоке 214. Затем в блоке 216 происходит обновление ERL E и среднего значения энергии Ee1 для фильтра 158. Подобным же образом в блоке 218 происходит вычисление выходного сигнала y(n) адаптивного фильтра 160 (см. фиг. 5) с последующим определением в блоке 220 остаточного эхо-сигнала e(n). В блоке 222 происходит обновление ERL E и среднего значения энергии Ee для фильтра 160. Следует иметь в виду, что какие-то конкретные операции, определенные для блоков 208-222, можно выполнять в иной последовательности, причем выбор той или иной последовательности диктуется значениями, необходимыми для выполнения последующих операций. Кроме того, некоторые операции можно выполнять параллельно, например операции в блоках 212 - 216 и 218 - 222. Следовательно, только что описанная с ссылками на фиг. 7 последовательность приведена лишь в качестве примера возможной последовательности и операций обработки данных.
После полного завершения выполнения вышеописанных операций в блоке 224 выполняется операция настройки параметров. Более детально этот этап обработки данных будет описан в связи в рассмотрением фиг. 8. После завершения настройки параметров в блоке 226 выполняется операция вычисления периодической функции. Более детально этот этап будет описан ниже в связи с рассмотрением на фиг. 9. После завершения операции вычисления периодической функции выполняется операция срабатывания конечного автомата (блок 228), более детально описанная ниже в связи с рассмотрением фиг. 14. После завершения этапа срабатывания конечного автомата весь процесс обработки данных повторяется, начиная с точки A блок-схемы алгоритма.
Показанная на фиг. 8 блок-схема последовательности выполнения операций более детально иллюстрирует операцию настройки параметров, выполняемую в блоке 224, как показано на фиг. 7. В процессе выполнения операции настройки параметров обновляются параметры размера шага фильтра и переменного порогового значения, причем это обновление будет происходить во время работы эхоподавителя.
В момент запуска конечный автомат 180 инициализирует фильтр с изменяемыми параметрами 158 и фильтр эхоподавителя 160 (см. фиг. 5) путем подачи на вход управления генератора коэффициента фильтра размера шага 1 (μ1 = μ2 = 1) . Подобная инициализация фильтров на этом уровне допускает осуществление быстрой начальной сходимости. После перехода к операции настройки параметров используется начальный алгоритм настройки параметров. В процессе исполнения этого алгоритма определяется, будет ли значение настройки управляющего элемента μ2 для фильтра эхоподавителя больше фиксированного значения 0,5 (блок 250). Если да, то определяется, будет ли ERL E больше 14 дБ (блок 252). Если ERL E не больше 14 дБ, что обычно бывает в начале достижения сходимости канала, тогда значение счетчика (счетчика Scount) устанавливается равным нулю (Scount = 0), что происходит в блоке 254, и операция настройки параметров для данной выборки заканчивается с помощью стандартной подпрограммы с выходом в точке C.
Если установлено, что ERL E больше 14 дБ, то счетчик получает приращение (блок 256). Затем определяется, составило ли полученное значение Scount величину 400 (блок 258). Если значение Scount меньше 400, то это значит, что операция настройки параметров закончена для этой выборки данных с помощью стандартной подпрограммы с выходом в точке C.
Если в процессе подсчета в блоке 258 окажется, что значение Scount будет равно 400, что соответствует ситуации, когда ERL E будет больше 14 дБ в течение 50 мс (последовательно), тогда величина шага (μ1) фильтра с изменяемыми параметрами смещается до 0,7, а величина шага (μ2) фильтра эхоподавителя смещается до 0,4 (блок 260). Кроме того, в блоке 260 происходит сброс счетчика Scount на нуль. На этом операция настройки параметров для этой выборки данных заканчивается с помощью стандартной подпрограммы с выходом в точке C.
Если в блоке 250 будет установлено, что значение настройки управляющего элемента μ2 для фильтра эхоподавителя не больше фиксированного значения 0,5, то в этом случае активизируется промежуточный алгоритм. В процессе исполнения этого промежуточного алгоритма устанавливают, будет ли значение для μ2 больше 0,2 (в блоке 262). Если упомянутое значение будет больше 0,2, тогда необходимо будет установить (в блоке 264), будет ли значение ERL E больше 20 дБ. Если значение ERL E не больше 20 дБ, тогда значение Scount устанавливается равным нулю (Scount = 0) (в блоке 266) и операция настройки параметров заканчивается для этой выборки данных с помощью стандартной подпрограммы с выходом в точке C.
Если установлено, что значение ERL E больше 20 дБ, то счетчик получает приращение (в блоке 268). Затем пределяется, будет ли полученное значение счетчика равно 400 (в блоке 270). Если значение счетчика будет меньше значения счета 400, то на этом завершается операция настройки параметров для этой выборки с помощью подпрограммы с выходом в точке C. Однако, если будет установлено, что результат определения в блоке 270, т.е. значение счетчика Scount будет равно 400, что соответствует ситуации, когда ERLE будет больше 20 дБ для интервала длительностью в 50 мс, то в этом случае значение μ1 смещается до 0,4, а значение μ2 смещается до 0,1 (блок 272). Кроме того, в блоке 272 минимальное пороговое значение увеличивается от первоначального минимального порогового значения в 6 дБ до 12 дБ. На этом операция настройки параметров заканчивается для данной выборки с помощью стандартной подпрограммы с выходом в точке C.
Следует иметь в виду, что смещение фильтров к меньшим размерам шага дает возможность использовать более высокие уровни ERLE. Однако в предпочтительном примере выполнения изобретения рекомендуется поддерживать отношение μ2 < μ1 , чтобы фильтр эхоподавителя получал высокое значение ERL E в установившемся состоянии, а фильтр с изменяемыми параметрами быстро реагировал на изменения в характеристике канала эхо-сигнала.
После установки значения фильтра эхоподавителя μ2 равным 0,1 начинается выполнение алгоритма переменного порога адаптации с целью максимально полного сохранения характеристики канала эхо-сигнала. Если установлено (в блоке 262), что значение μ2 меньше 0,2, то в этом случае начинается исполнение алгоритма переменного порогового значения, который находится в блоке переменного порогового значения адаптации 186. Если установлено, что ERL E будет на 6 дБ больше переменного порогового значения (VT), которое первоначально устанавливается в блоке 274 на исходное минимальное пороговое значение 6 дБ, тогда происходит изменение VT в блоке 276. В блоке 276 значение VT устанавливается большим по сравнению с прежним значением VT или значением ERL E минус 6 дБ. Как только значение VT установлено, начинается операция настройки параметров для данной выборки с помощью стандартной подпрограммы с выходом в точке C.
Однако, если будет установлено (в блоке 274), что значение ERL E не больше значения VT плюс 6 дБ, тогда необходимо определить, не будет ли значение ERL E меньше минимального порогового значения минус 3 дБ (в блоке 278). В блоке 278 значение минимального порога MT равно 12 дБ; это значение заложено в промежуточном алгоритме. Если значение ERL E больше минимального порогового значения минус 3 дБ, то на этом операция настройки параметров заканчивается для этой выборки данных с помощью стандартной подпрограммы с выходом в точке C. Однако, если будет установлено, что в блоке 278 значение ERL E не больше минимального порогового значения минус 3 дБ, тогда значение VT устанавливается равным значению MT (в блоке 280), которое в данном случае равно 12 дБ. На этом заканчивается операция настройки параметров для выборки данных с помощью стандартной подпрограммы с выходом в точке C.
Следует иметь в виду, что за счет повышения минимального порогового значения процесс обработки данных становится более селективным относительно момента адаптации фильтра эхоподавителя. От любого фильтра требуется более высокое значение ERL E. Использование более высокого минимального порогового значения приводит к тому, что требуется более высокое значение ERL E для перехода в состояние "затягивания" из состояния одновременного разговора двух абонентов, о чем более подробно будет сказано в связи с обсуждением особенностей процесса обработки данных конечным автоматом, показанного на фиг. 14.
Чтобы ускорить быстрый переход в установившееся состояние, даже в присутствии большого фонового шума на ближнем конце, эхоподавитель согласно изобретению сперва будет регулировать входное усиление по сигналу x(n) до + 3 (1Gain = 3 дБ, Gain - усиление) для речевого сигнала дальнего конца. Как это видно на фиг. 5, конечный автомат 180 обеспечивает передачу сигнала управления в каскад переменного усиления 170. Это начальное усиление в 3 дБ увеличивает величину эхо-сигнала, принимаемого в сигнале r(n), относительно шума ближнего конца (отношение сигнал/шумы увеличивается на 3 дБ), что допускает более быструю начальную сходимость. После достижения минимальным порогом значения 12 дБ (в блоке 272 фиг. 7), конечный автомат восстанавливает входное усиление до его номинального значения 0 дБ шагами по 1,5 дБ с интервалом между этапами в 100 мс. Экспериментальные исследования показали, что изменения в коэффициенте усиления на 1,5 дБ незаметны для слушателей. Эта регулировка коэффициента усиления обычно не совпадает по фазе в течение первых 500 мс речи дальнего конца.
Вторая регулировка коэффициента усиления в каскаде переменного усиления 170, осуществляемая блоком автоматической регулировки усиления 188, выполняется с целью автоматического устранения клиппирования. Выборки функции вида μ сигнала x(n), которые эхоподавитель получает от вокодера, обычно находятся в диапазоне от -8031 до +8031. Если выборки x(n), которые подаются в гибридное устройство, близки к максимальному значению +8031 или -8031, то приходящие от гибридного устройства выборки сигнала будут нелинейно связаны с эталонным сигналом x(n). Для решения этой проблемы эхоподавитель, соответствующий изобретению, использует блок автоматической регулировки усиления 188 для автоматического управления каскадом переменного усиления 170 путем внесения ослабления во входные выборки на 1,5 дБ (IGain = - 1,5 дБ) всякий раз, когда абсолютное значение выборки x(n) будет больше заданного значения вблизи его максимального значения, например 7900. Входное усиление восстанавливается до 0 дБ сразу же после вхождения подавителя в состояние молчания. Это изменение усиления, которое будет незаметным для слушателя ближнего конца, как правило, не оказывает никакого влияния на обычный разговор, однако значительно повышает эффективность работы эхоподавителя после начала громкого разговора абонента дальнего конца.
Теперь еще раз вернемся к фиг. 7, на которой схематически показано выполнение операции вычисления периодической функции после завершения операции настройки параметров. На фиг. 9 схематически показаны три вычислительные операции, которые периодически выполняются на этапе вычисления периодической функции: (1) величины дифференциальной энергии сигналов x(n) и e(n), (2) автокорреляции или рекурсия Дурбина для анализа шумов и (3) алгоритм смещения отводов для учета изменяющихся задержек эхо-сигнала.
В соответствии с фиг. 9 вычисление периодической функции начинается с выбора функции (блок 300), при котором на основе состояния конечного автомата и счетчика (Fcount) определяют, какие величины необходимо выполнить. Независимо от состояния в блоке определения величины дифференциальной энергии 184 (см. фиг. 6) для каждых 128 выборок рассчитывают величины дифференциальной энергии сигналов x(n) и e(n).
Величина дифференциальной энергии сигнала х, обозначенная как DEM(x), используется для определения факта разговора в данный момент абонента дальнего конца. По предпочтительному варианту изобретения DEM(x) является целым числом в диапазоне [0,3]. Значение DEM (x) определяют путем сравнения энергии Ex сигнала x(n), получаемой от блока вычисления уровня энергии 182 (см. фиг. 6), с тремя рассчитанными пороговыми значениями, которые являются функцией оценки энергии уровня фонового шума XBi, блок 302.
На этом этапе оценка фонового шума рассчитывается для каждых 128 образцов, при этом каждое следующее обновление XBi+1 рассчитывается следующим образом:
XBi+1 = мин. (Ex, 160000, макс. (1,00547XBi, XBi+1)). (17)
Три пороговых значения рассчитывают в функции XBi следующим образом:
T1(XBi) = -(3,160500 • 10-5) + 10,35 XBi + 704,44 (18)
T2(XBi) = -(7,938816 • 10-4) + 26,00 XBi + 1769,48 (19)
T3(XBi) = -(3,160500 • 10-4) XB
Энергия Ex сигнала дальнего конца еще раз сравнивается с этими тремя порогами. Если Ex будет больше всех трех пороговых значений, тогда DEM(x) = 3, что указывает на наличие речевого сигнала. Если Ex больше T1 и T2, но не T3, тогда DEM(x) = 2, что указывает на вероятное присутствие неслышимого речевого сигнала. Если Ex больше T1, но меньше T1 и T3, тогда DEM(x) = 1. И, наконец, если Ex меньше всех трех пороговых значений, тогда DEM(x) = 0, что указывает на полное отсутствие речевого сигнала. Значение DEM(x) подается из блока определения величины дифференциальной энергии 184 в конечный автомат 180.
Подобным же образом вычисляется величина дифференциальной энергии сигнала e(DEM(e)), используемая для определения факта наличия разговора абонента ближнего конца. DEM(e) по предпочтительному варианту изобретения также определяется в виде целочисленного значения в диапазоне [0,3]. DEM(e) определяется путем сравнения энергии Ee сигнала e(n), определяемого блоком вычисления уровня энергии 182 (см. фиг.6), со следующими тремя рассчитанными в блоке 304 пороговыми значениями:
T1(EBi) = -(6,930766 • 10-6) EB
T2(EBi) = -(1,912166 • 10-5) EB
T3(EBi) = -(4,946311 • 10-5) EB
при этом через каждые 129 выборок происходит также обновление оценки фонового шума сигнала e(n) следующим образом:
EBi+1 = мин (Ee, 160000, макс (1,00547EBi, EBi + 1)) (24)
Если Ee больше всех трех пороговых значений, DEM(e) = 3, тогда это будет указывать на наличие речи ближнего конца. Если Ee больше T1 и T2, но меньше T3, тогда DEM(e) = 2 указывает на вероятное наличие неслышимого речевого сигнала ближнего конца. Если Ee больше T1, но меньше T2 и T3, то это значит, что DEM(e) = 1. И, наконец, если Ee меньше всех трех пороговых значений, т. е. если DEM(e) = 0, то это будет указывать на отсутствие речи в данный момент. Значение DEM(e) подается также из блока определения величины дифференциальной энергии 184 в конечный автомат 180.
После вычисления значений DEM(x) и DEM(e) происходит обновление значений XBi и EBi по уравнениям (17) и (24) в блоке 306. Следует иметь в виду, что оба значения XBi и EBi инициализируются до значения 160000.
За счет использования измерений дифференциальной энергии, которые отслеживают уровень фонового шума, можно точно определить наличия разговора даже в условиях высоких уровней фонового шума. Это обеспечивает корректное определение состояний конечным автоматом, показанным на фиг.6.
Как упоминалось выше, вычисления при анализе шума осуществляются на этапе вычисления периодической функции. Если выбор функции (блок 300) фиксирует, что конечный автомат находится в состоянии "0" для текущей выборки, то определяется, были ли последние 256 выборок, включая текущую выборку, соответствующими состоянию "0" конечного автомата (блок 308). Если это так, то для вычисления спектральных характеристик шума используют кодирование методом линейного предсказания, традиционно используемым для кодирования речевого сигнала. Однако, если не все выборки находились в состоянии "0", то в этом случае кодирование методом линейного предсказания не используется.
Кодирование методом линейного предсказания моделирует каждую выборку, как если бы она была образована линейной комбинацией последних выборок плюс возбуждение. Если не говорит ни один из абонентов, то сигнал ошибки и e(n) проходит через фильтр ошибки предсказания (элемент анализа шума 166 на фиг. 5), чтобы удалить кратковременные избыточности. Передаточная функция для этого фильтра выражается с помощью нижеследующего уравнения:
где порядок устройства предсказания в описываемом примере выполнения изобретения равен 5 (P = 5).
Коэффициенты кодирования методом линейного предсказания ai - рассчитывают на основе блока из 128 выборок с использованием метода автокорреляции (блок 310) и с помощью рекурсии Дурбина (блок 312), представляющей собой хорошо известный эффективный метод вычисления, о чем подробно описывается в работе Рабинера и Шафера под заглавием "Цифровая обработка сигналов речи".
Первые 6 коэффициентов автокорреляции R(0) - R(5) включительно рассчитывают следующим образом:
После этого коэффициенты кодирования методом линейного предсказания рассчитывают непосредственно на основе значения автокорреляции с использованием алгоритма рекурсии Дурбина. Этот алгоритм можно записать следующим образом:
(6) Если i < P, тогда переходим к (2) с i = i + 1 (32).
(7) Окончательное решение для коэффициентов кодирования методом линейного предсказания имеет следующий вид:
αj = α
После получения коэффициентов кодирования методом линейного предсказания (L PC) можно генерировать выборки синтезированного шума с теми же спектральными характеристиками за счет пропускания белого шума через фильтр синтеза шума (элемент синтеза шума 168, см. фиг.5), определяемый выражением:
,
что является инверсией фильтра, используемого для анализа шума.
Следует иметь в виду, что кодирование методом линейного предсказания, использованное в примере выполнения изобретения, например, является эффективным средством моделирования шумов. Однако для моделирования шумов можно использовать и другие средства и способы, а можно вообще обходиться без моделирования шумов.
При вычислении периодической функции можно также использовать алгоритмы смещения отводов, причем в данном случае этот алгоритм используют для учета изменяющихся временных задержек эхо-сигнала. Эти вычисления выполняются после первоначальной обработки выборки для определенного телефонного вызова дополнительно после каждых 256 выборок при условии, что ERLE больше 10 дБ (блок 314). Если ERLE больше 10 дБ, что указывает на наличие некоторой компенсации, то в блоке 316 блока 9 (фиг.6) вычисления равномерной задержки определяется максимальный отвод, т.е. коэффициент фильтра максимальной величины в первичном фильтре (фильтр 156 на фиг.5). После этого осуществляется смещение отводов, чтобы иметь возможность обработать большее число выборок из области дисперсии эхо-сигнала и меньшее число выборок из области равномерной задержки (блок 318). Смещение отводов соответствует определенному перемещению большего числа выборок из области дисперсии эхо-сигнала из буферного устройства в фильтр с изменяемыми параметрами и в фильтр эхоподавления, чем это обычно происходит. Затем в блоке 320 для этих выборок осуществляется повторное вычисление средних уровней энергии. После завершения исполнения алгоритма смещения отводов или любого из двух других вычислений этапа вычисления периодической функции происходит приращение F счета (в блоке 322) и выводится стандартная подпрограмма.
Что касается регулирования задержки эхо-сигнала, то, поскольку расстояние между эхоподавителем на базовой станции и гибридным устройством в телефонной сети может существенно изменяться от вызова к вызову, то и равномерная задержка эхо-сигнала также имеет широкий диапазон изменения. Можно быстро оценить диапазон этой задержки, если допустить, что телефонные линии пересекают США на расстояние в 3000 мили (1 миля - 1609,3 м), а электрические сигналы распространяются со скоростью в 2/3 скорости света. Поскольку расстояние в оба конца равно 6000 миль, то максимальная равномерная задержка будет приблизительно равна
.
Сетевой эхоподавитель по настоящему изобретению обеспечивает учет различных значений равномерной задержки, имеющих место для различных телефонных вызовов, так что большее количество отводов приходится на область дисперсии эхо-сигнала, а не "расходуется напрасно" в области равномерной задержки. Например, в традиционном эхоподавителе, в котором не используется механизм смещения отводов, равномерная задержка 16 мс обусловила бы то, что первые 128 отводов эхоподавителя будут близки к нулю, поскольку 128 последних полученных выборок в линии задержки фильтра еще не коррелированы с выборкой эхо-сигнала, входящей в подавитель. Именно поэтому реальный эхо-сигнал будет компенсироваться только оставшимися 128 отводами. В противоположность этому сетевой эхоподавитель, выполненный согласно настоящему изобретению, автоматически определяет, что равномерная задержка равна 16 мс и смещает отводы, чтобы они "работали" по более старым выборкам. Подобная стратегия использует большое количество отводов в области дисперсии эхо-сигнала, в результате чего обеспечивается более эффективное подавление эхо-сигнала.
Сетевой подавитель, выполненный согласно настоящему изобретению, хранит 512 выборок речевого сигнала дальнего конца x(n) в кольцевом буферном устройстве (буферное устройство 154 на фиг.5), что соответствует задержке длительностью 64 мс. После запуска эхоподавителя в работу он первоначально адаптирует (в первичном фильтре 156 фиг.5) 448 отводов фильтра по 448 самым последним выборкам, как показано на фиг.10.
После получения первоначальной сходимости с данным положением отводов алгоритм определяет равномерную задержку в блоке вычисления равномерной задержки 190 путем нахождения наибольшего значения отвода и соответствующего его положения в буфере отводов первичного фильтра 156. Номер наибольшего отвода (обозначенного Tмакс) соответствует равномерной задержке, поскольку это время (в выборках частотой 8 кГц) требуемой выборки речевого сигнала дальнего конца для вывода ее на выход эхоподавителя, отражения от гибридного устройства и возврата на вход эхоподавителя. Вместо смещения отводов на Tмакс алгоритм осуществляет смещение с запасом из 32 выборок на случай незначительных изменений характеристик канала эхо-сигнала. Фактическое значение смещения Tshift отводов выражается следующим образом:
Tshift = MAX[0, MIN (Tмакс - 32 256)] (36)
После определения Tshift отводы первоначального фильтра, начинающиеся от Tshift, копируются как в фильтр с изменяемыми параметрами, так и в фильтр эхоподавителя с помощью показанного на фиг. 11 блока вычисления равномерной задержки. Смещение на Tshift в кольцевом буферном устройстве осуществляется так, чтобы нулевые отводы как фильтра управления и фильтра эхоподавителя располагались на одной линии с выборкой, поступившей на Tshift раньше последней выборки. На фиг. 12 показано максимальное смещение, которое перекрыло эхо-сигнал длительностью 64 мс. После того, как осуществлено смещение отводов, чтобы можно было обрабатывать более старые выборки, измеренные значения энергии Ex(n) и Exx(n) соответственно модифицируются, чтобы можно было измерить сумму квадратов этих более старых выборок.
С целью иллюстрации изобретения описаны три адаптивных фильтра. Однако ясно, что в различных вариантах осуществления изобретения, в частности в устройствах обработки цифровой информации, первичный фильтр может выполнять функцию фильтра с изменяемыми параметрами и фильтра эхоподавителя с использованием одних и тех же аппаратных средств памяти.
После выхода этапа вычисления периодической функции в точку D (см. фиг. 7 и 9 ) конечный автомат 180 (фиг. 6) начинает исполнение алгоритма управления. Алгоритм управления конечного автомата можно смоделировать в виде конечного автомата с пятью состояниями, которые схематически показаны на фиг. 13. Алгоритм управления, реализуемый в конечном автомате 180, может обеспечивать изменение состояния с каждой новой выборкой.
Состояние 0 (блок 330) является состоянием молчания, когда не говорит ни один из абонентов. В этом состоянии не происходит адаптации ни фильтра с изменяемыми параметрами, ни фильтра эхокомпенсатора, чтобы предотвратить сходимость по каналу эхо-сигнала. Если эхоподавитель остается в состоянии 0 для 256 последовательных выборок, то алгоритм управления инициирует исполнение стандартной программы анализа шума (см. фиг. 9), чтобы закодировать частотные характеристики фонового шума с использованием кодирования методом линейного предсказания.
Если абонент дальнего конца является единственным говорящим в данный момент абонентом, то эхоподавитель вводит состояние 1 (блок 332), при котором всегда происходит адаптация фильтра с изменяемыми параметрами. Адаптация фильтра эхоподавителя происходит тогда, когда ERLE любого фильтра будет выше порога адаптации VT. Стандартная программа синтеза шумов генерирует шум (с использованием коэффициентов, полученных по методу линейного предсказания в течение последнего интервала молчания), чтобы заменить любой остаточный эхо-сигнал. Фактически эхоподавитель имеет бесконечное значение ERLE в состоянии 1, так как независимо от степени громкости речевого сигнала дальнего конца x(n) остаточный эхо-сигнал не будет возвращаться в мобильную станцию.
Если в данный момент разговаривает только абонент ближнего конца, то эхоподавитель вводит состояние 2 (блок 334). В этой ситуации конечный автомат "замораживает" адаптацию обоих фильтров и выдает на выход сигнал e(n). Если прекращается разговор абонента ближнего конца, тогда эхоподавитель переходит в состояние 4 ("затягивание") длительностью 50 мс в описываемом примере выполнения изобретения, прежде чем произойдет переход в состояние 0 (молчание). Это затягивание учитывает возможность пауз в речевом сигнале ближнего конца. Если начинает говорить абонент дальнего конца, тогда эхоподавитель переходит в состояние 3 (одновременный разговор двух абонентов).
В состоянии 3 (блок 336), которое является состоянием одновременного разговора двух абонентов, конечный автомат "замораживает" адаптацию фильтра эхоподавителя и выводит сигнал e(n). Если потери в гибридном устройстве будут выше 3 дБ, тогда алгоритм управления конечного автомата допускает адаптацию фильтра с изменяемыми параметрами с учетом возможного изменения в импульсной характеристике канала эхо-сигнала. Например, предположим, что достигнута сходимость обоих фильтров, что говорит только абонент дальнего конца и что произошло резкое изменение состояния канала эхо-сигнала. Подобная ситуация может возникнуть, например, если кто-то подключает дополнительный телефонный аппарат, в результате чего абонент мобильной станции разговаривает с двумя абонентами на наземной телефонной станции одновременно. В данном случае ERLE обоих фильтров резко упадет, а эхоподавитель будет переходить в состояние одновременного разговора двух абонентов, ошибочно принимая эхо-сигнал за речевой сигнал ближнего конца. Хотя оба фильтра обычно "замораживаются" в процессе одновременного разговора двух абонентов, однако в данном случае, когда исключена возможность адаптации обоих фильтров, эхоподавитель будет оставаться в этом состоянии до момента прекращения разговора. И тем не менее эхоподавитель использует потери в гибридном устройстве для определения, разрешено фильтру с изменяемыми параметрами адаптироваться или нет. Если фильтр с изменяемыми параметрами адаптируется, его ERLE будет увеличиваться при обнаружении нового канала эхо-сигнала, а эхоподавитель стремится выйти из состояния 3 (одновременный разговор двух абонентов). Как видно из схемы состояний, единственным способом выхода из состояния 3 (одновременный разговор двух абонентов) является выход через состояние 4 (затягивание, которое вводится только в том случае, если потери в гибридном устройстве будут больше 3 дБ, а ERLE фильтра с изменяемыми параметрами или фильтра эхоподавителя будет выше минимального порога МТ).
Состояние 4 (блок 338) является состоянием затягивания, которое учитывает паузы в речевом сигнале ближнего конца. Если происходит разговор абонента дальнего конца, а речь абонента ближнего конца не обнаруживается в течение 100 мс (в описываемом примере выполнения), тогда эхоподавитель переходит из состояния 4 (затягивание) в состояние 1 (речь дальнего конца). Если абонент дальнего конца не разговаривает, а речь абонента ближнего конца не обнаруживается в течение 50 мс, то в этом случае эхоподавитель переходит из состояния 4 в состояние 0 (молчание). Если обнаруживается речевой сигнал ближнего конца, тогда алгоритм управления возвращает эхоподавитель в состояние 2 (речевой сигнал ближнего конца) или в состояние 3 (одновременный разговор двух абонентов).
На фиг. 14 показана детализированная последовательность реализации алгоритма управления конечного автомата сетевого эхоподавителя. В соответствии с фиг. 14 алгоритм реализуется для каждой выборки с предварительным определением того, является ли текущее состояние состоянием 1 (речевой сигнал дальнего конца), причем это происходит в блоке 340. Если текущее состояние определяется как состояние 1, а значение Hпотерь меньше 3 дБ (блок 342), тогда элемент управления разрешает выход значения e(n) (блок 344). Это соответствует состоянию, в котором в предыдущей выборке присутствовал речевой сигнал дальнего конца, а в текущей выборке присутствует одновременный разговор двух абонентов. Подобным же образом, если установлено, что текущее состояние не является ни состоянием 1, ни 2 и ни 3 (речевой сигнал конца, речевой сигнал ближнего конца и одновременный разговор двух абонентов) соответственно в блоках 340, 346 и 348, то в этом случае блок 344 разрешает вывод значения e(n) вместе с управлением выходным сигналом, которое обеспечивает конечный автомат. Затем определяется, каково будет следующее состояние эхоподавителя при обработке следующей выборки, причем определение следующего состояния будет начинаться в точке E алгоритма управления конечного автомата.
Теперь еще раз вернемся к блоку 340. Если установлено, что текущее состояние будет состоянием 1 (речевой сигнал дальнего конца) и установлено, что потери H будут больше 3 дБ (блок 342), то в этом случае будет разрешена адаптация фильтра с изменяемыми параметрами (блок 350). Затем проверяются ERLE и ERLEI относительно порога VT и, если одно из этих отношений будет больше VT (в блоках 352 и 354), тогда разрешается адаптация фильтра эхоподавителя (блоком 356). Однако, если в обоих блоках 352 и 354 отношения ERLE и ERLEI не будут больше VT, то адаптация фильтра эхоподавителя не происходит. В любом случае в блоке 358 будет генерироваться выборка синтезированного шума с управлением от управляющего элемента с использованием коэффициентов, полученных методом линейного предсказания в течение последнего интервала молчания. Выборка синтезированного шума S(n) выводится из блока 360 при управлении от элемента управления. Затем устанавливается следующее состояние, в котором будет находиться эхоподавитель для обработки следующей выборки, причем определение следующего состояния начинается в точке E.
В точке E исполнение программы вводит программу определения следующего состояния. Если значение DEM(x) не больше или равно целочисленному значению 2 (блок 362), то делается проверка, будет ли DEM(e) меньше или равно 1 (блок 364). Если DEM(e) не меньше или равно 1, тогда конечный автомат переходит в следующее состояние 2 (речевой сигнал ближнего конца), блок 366. Однако, если DEM(e) меньше или равно 1, тогда конечный автомат переходит в следующее состояние 0 (молчание), блок 368. Независимо от того, осуществляется ли переход в состояние 2 или в состояние 0, исполнение программы продолжается до точки F алгоритма управления конечного автомата, для определения состояния затягивания.
Однако после введения подпрограммы определения следующего состояния в точке E, если значение DEM(x) будет больше или равно 2 (блок 362), тогда необходимо будет установить, не будет ли значение DEM(e) равным 3 (блок 370). Если нет, тогда следующее состояние определяется как состояние 1 (речевой сигнал дальнего конца)(блок 372), а программа будет продолжать свое исполнение до точки F алгоритма управления конечного автомата с целью определения состояния затягивания. Если в блоке 370 будет установлено, что значение DEM(e) будет равно 3, тогда необходимо будет произвести проверку, не будет ли каждое из значений Hпотерь, ERLE и ERLEI меньше 3 дБ (в блоках 374, 376 и 378). Если в блоках 374, 376 и 378 одно из упомянутых значений будет меньше 3 дБ, тогда следующее состояние будет определяться как состояние 3 (одновременный разговор двух абонентов) (в блоке 380). И тем не менее, если в блоках 374, 376 и 378 каждое значение будет больше или равно 3 дБ, тогда следующее состояние определяется как состояние 1 (речевой сигнал дальнего конца) (блок 372). Из блоков 380 и 372, как и раньше, программа продолжается до точки F алгоритма управления конечного автомата с целью определения состояния затягивания.
Теперь еще раз вернемся к блоку 346, в который вводится входное сообщение в том случае, если в блоке 340 установлено, что текущее состояние не является состоянием 1 (речевой сигнал дальнего конца), а затем устанавливается, не является ли текущее состояние состоянием 2 (речевой сигнал ближнего конца). Если текущее состояние представлено состоянием 2, тогда блок 382 выдает значение e(n). Затем определяется следующее состояние, для чего сначала устанавливается, не равно ли значение DEM(x) 3 (блок 384); и если это так, то следующее состояние определяется как состояние 3 (одновременный разговор двух абонентов) (блок 385). Однако, если DEM(x) не равно 3, тогда устанавливается, не будет ли DEM(e) больше или равно 2 (блок 388).
Если в блоке 388 установлено, что DEM(e) будет больше или равно 2, тогда следующее состояние, сохраняемое в качестве текущего состояния, определяется как состояние 2 (речевой сигнал ближнего конца) (блок 390). Однако, если в блоке 388 установлено, что DEM(e) не будет больше и не равно 2, то в блоке 392 определяется, не будет ли DEM(x) меньше или равно 1. Если в блоке 392 установлено, что DEM(x) не меньше и не равно 1, тогда следующее состояние устанавливается как состояние 3 (одновременный разговор двух абонентов) (блок 386). Если в блоке 392 установлено, что DEM(x) меньше или равно 1, тогда следующее состояние определяется как состояние 4 (затягивание). Кроме того, в блоке 394 внутренний счетчик (Hсчетчик, на чертежах не показан) с помощью соответствующего элемента управления устанавливается на значение Hcount 400. Из блоков 386, 390 и 394 программа продолжается до точки F алгоритма управления конечного автомата для определения состояния затягивания.
Теперь вернемся к блоку 346. Если в результате проведенного определения определено, что текущее состояние не является состоянием 2 (речевой сигнал ближнего конца), тогда в блоке 348 устанавливается, не является ли текущее состояние состоянием 3 (одновременный разговор двух абонентов). Если текущее состояние является состоянием 3, тогда блок 396 выдает значение e(n). Затем устанавливается следующее состояние путем определения, не будет ли DEM(x) равно 3 (в блоке 398), и, если оно не является состоянием 3, тогда исполнение программы продолжается в блоке 388 с целью определения состояния по уже описанной выше схеме. Однако, если DEM(x) равно 3, тогда в блоке 400 определяется, не будут ли потери H больше 3 дБ. Если в блоке 400 определено, что потери H не больше 3 дБ, тогда следующее состояние устанавливается как состояние 3 (одновременный разговор двух абонентов) (в блоке 386). Если потери H будут больше 3 дБ, тогда блок 402 допускает адаптацию фильтра с изменяемыми параметрами.
После допущения адаптации фильтра с изменяемыми параметрами с помощью блока 404 определяется, не будет ли ERLE больше MT; если нет, тогда устанавливается (в блоке 406), не будет ли ERLEI больше MT. Любое из отношений ERLE или ERLEI будет больше MT, тогда следующее состояние устанавливается как состояние 4 (затягивание) ( в блоке 408). Однако, если отношение ERLE не больше MT, тогда следующее состояние устанавливается как состояние 3 (одновременный разговор двух абонентов) (в блоке 386). Если в блоке 408 следующее состояние устанавливается как состояние 4, тогда Hcount устанавливается равным 800. Из блоков 386 и 408 стандартной программы переходит к точке F алгоритма управления конечного автомата для определения состояния затягивания.
Программа определения состояния затягивания обеспечивает введение некоторой задержки между переходом речевого сигнала ближнего конца или состояния одновременного разговора двух абонентов в состояние речевого сигнала дальнего конца или молчания. После введения программы определения затягивания в точке F осуществляется операция (в блоке 410) установления, находится ли текущее состояние в состоянии 4 (затягивание). Если текущее состояние не является состоянием 4, то осуществляется выход из программы алгоритма с возвратом в точку A (см. фиг. 7).
Если в блоке 410 установлено, что текущее состояние является состоянием 4, то в блоке 412 устанавливается, установлено ли следующее состояние на меньшее, чем состояние 2, т.е. состояние 1 (речевой сигнал дальнего конца), или состояние 0 (молчание). Если в блоке 412 установлено, что следующее состояние не является ни состоянием 0, ни состоянием 1, то осуществляется выход из программы алгоритма управления конечного автомата, с возвратом программы в точку A (фиг. 7). Однако, если установлено, что следующее состояние будет состоянием 0 или 1, то в этом случае в блоке 414 происходит отрицательное приращение, а также в блоке 416 устанавливается, не будет ли Hcount равен 0. Если установлено, что значение Hcount равно 0, тогда осуществляется выход из программы алгоритма управления конечного автомата с возвратом в точку A (фиг. 7). А если Hcount не равно 0, то следующее состояние устанавливается в блоке 418 в состояние 4 и осуществляется выход из программы алгоритма управления конечного автомата с возвратом программы в точку A (фиг. 7).
Следует иметь в виду, что многие из параметров, упомянутых в связи с описанием примера предпочтительного варианта изобретения, могут быть модифицированы без выхода за пределы объема изобретения. Например, можно изменить задержку затягивания, а также другие параметры порогового значения, количество пороговых уровней или значения размера шага фильтра.
Предпочтительное описание предпочтительных примеров выполнения изобретения имеет цель дать возможность специалистам в данной области изготовить или использовать настоящее изобретение. Для специалистов также очевидна возможность внесения различных модификаций в описанные примеры выполнения изобретения, а описанные выше основные принципы можно будет использовать в других вариантах без какого-либо дополнительного изобретательства. Следовательно, настоящее изобретение не должно ограничиваться описанными выше примерами выполнения, а имеет максимально широкий объем, совместимый с описанными здесь принципами и элементами новизны.
Описан эхоподавитель и способ подавления в сигнале обратного канала отраженного сигнала приемного канала, в котором посредством канала эхо-сигнала происходит объединение отраженного сигнала приемного канала с входным сигналом обратного канала. Эхоподавитель содержит первый фильтр, который генерирует коэффициенты первого фильтра, первый сигнал оценки эхо-сигнала на основе коэффициентов первого фильтра и обнавляет коэффициенты первого фильтра в ответ на сигнал управления первым фильтром. Первое суммирующее устройство вычитает первый сигнал оценки хэхо-сигнала из объединенного сигнала обратного канала и канала приема эхо-сигнала с последующим генерированием первого остаточного эхо-сигнала. Второй фильтр генерирует коэффициенты второго фильтра, генерирует второй сигнал оценки эхо-сигнала на основе коэффициентов второго фильтра и обновляет коэффициенты второго фильтра в ответ на сигнал управления второго фильтра. Второе суммирующее устройство вычитает второй сигнал оценки эхо-сигнала из объединенного сигнала, чтобы генерировать второй остаточный эхо-сигнал и обеспечить прохождение по обратному каналу второго остаточного эхо-сигнала. Устройство управления определяет на основе сигнала приемного канала, объединенного сигнала и на основе первого и второго остаточных эхо-синалов одно из множества состояний управления, причем первое состояние управления указывает на то, что уровень сигнала приемного канала выше первого заданного уровня энергии, а при нахождении устройства управления в своем первом состоянии управления оно будет генерировать первый сигнал управления и второй сигнал управления в тот момент, когда по меньшей мере первое отношение энергий первого остаточного эхо-сигнала и объединенного сигнала или второе отношение энергий второго остаточного эхо-сигнала и объединенного сигнала превышают заданный уровень. 9 з.п. 16 ил. 1 табл.
US, патент, 4782525, кл | |||
Очаг для массовой варки пищи, выпечки хлеба и кипячения воды | 1921 |
|
SU4A1 |
Авторы
Даты
1998-04-20—Публикация
1993-09-24—Подача