Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://www.sm.bmstu.ru/sm5/n4/oba/df.html
Дата изменения: Thu Feb 15 17:43:24 2007 Дата индексирования: Mon Oct 1 18:44:34 2012 Кодировка: Windows-1251 Поисковые слова: carl sagan |
Перспективы реализации алгоритмов цифровой фильтрации на основе ПЛИС фирмы "Altera" |
Введение С проектированием цифровых фильтров (ЦФ) так или иначе приходилось сталкиваться большинству разработчиков современных систем связи и управления. Тем не менее общепринятый взгляд на эту область схемотехники является настолько же односторонним и упрощенным, насколько и распространенным. Так, проектирование ЦФ в представлении большинства разработчиков прочно ассоциируется с процедурой синтеза структуры ЦФ частотной селекции, причем наиболее простой его разновидности, предназначенной для выделения (подавления) одной априорно заданной полосы частот. Все остальные разновидности ЦФ - многокаскадные структуры с прореживанием по времени и по частоте, фильтры Винера и Калмана, робастные и адаптивные - считаются своего рода экзотикой, предметом исследований узких специалистов. Но соответствуют ли подобные взгляды современному уровню развития радиотехники и мехатроники? В обзорной работе 1990 года [1] по управлению подвижными объектами читаем: "Сейчас различают классическую и современную теории оптимального управления. Первая из них включает методы проектирования систем управления, опирающиеся на аппарат передаточных функций, а вторая, на основе которой и построена данная книга, описывает системы посредством пространства состояний и использует результаты теорий оптимальной фильтрации и идентификации " (т.е. предметом изучения являются оптимальные и адаптивные ЦФ ). В известном справочнике М. И. Жодзишского по цифровым радиоприемным системам [2] тем устройствам, которые построены на основе "традиционных" ЦФ, уделено 10 страниц из 208 (!). Даже в специализированной работе [3] "Цифровая частотная селекция сигналов" основной акцент сделан на способах реализации сложных многокаскадных ЦФ, применяемых в спектроанализаторах и в приемниках панорамного обзора, а описание ЦФ, предназначенных для выделения (подавления) одной априорно заданной полосы частот занимает не более 1/10 общего объема.Таким образом, налицо определенные противоречия, во-первых, между развитием прикладной науки, предлагающей совершенно новые алгоритмы цифровой обработки сигналов (ЦОС), и консерватизмом разработчиков, предпочитающих традиционные подходы; во-вторых, между тенденцией к расширению сферы применения оптимальных и адаптивных ЦФ (в то время как сфера применения ЦФ частотной селекции расширяется чисто экстенсивно) и отсутствием формализации относительно новых и сложных принципов ЦОС в виде т.н. мегафункций, реализованных на том или ином языке описания аппаратуры (AHDL,VHDL и т.п.). Вышеприведенные факты свидетельствуют о том, что необходимо определенное переосмысление всей идеологии проектирования средств ЦОС (и в особенности ЦФ) на современном этапе, а также о том, что существует потребность в активизации деятельности структур, профессионально занимающихся реализацией алгоритмов ЦОС на современной элементной базе. 1. Обзор алгоритмов цифровой фильтрации На рис. 1 приведена классификация цифровых фильтров (ЦФ), составленная на основе публикаций [1-8] за последние 10 лет. В основу классификации положен функциональный принцип, т.е. ЦФ подразделяются исходя из реализуемых ими алгоритмов, а не с учетом каких-либо схемотехнических особенностей. Авторы хотели бы сразу же оговориться, что в дальнейшем изложении не отражены вопросы, связанные с применением в ЦОС различных ортогональных преобразований, в частности, быстрого преобразования Фурье (БПФ). Этому аспекту ЦОС авторы планируют посвятить отдельную статью. ЦФ частотной селекции. Это наиболее известный, хорошо изученный и апробированный на практике тип ЦФ. С алгоритмической точки зрения ЦФ частотной селекции могут рассматриваться как результат перехода на новую элементную базу традиционных аналоговых фильтров частотной селекции, предназначенных для решения следующих задач: - выделение (подавление) одной априорно заданной полосы частот; в зависимости от того, какие частоты подавляются, а какие - нет, различают фильтр нижних частот (ФНЧ), фильтр верхних частот (ФВЧ), полосовой фильтр (ПФ) и режекторный фильтр (РФ); - разделение по отдельным частотным каналам равноценных и равномерно распределенных по всему частотному диапазону спектральных компонент сигнала с линейчатым спектром; в зависимости от того, какой метод используется для уменьшении аппаратурных затрат на реализацию набора однотипных ПФ, которые могли бы быть применены для решения данной задачи, различают ЦФ с прореживанием по времени и с прореживанием по частоте; а поскольку основным методом уменьшения аппаратурных затрат является каскадирование более низкоизбирательных, чем исходный, наборов ПФ, то многоступенчатая пирамидальная структура, получаемая в результате, была названа ЦФ типа "преселектор - селектор"; - разделение по отдельным частотным каналам спектральных составляющих сигнала, чей спектр состоит из субполос различной ширины, неравномерно распределенных в пределах рабочего диапазона фильтра; на практике указанную задачу сводят к предыдущей, разбивая рабочий диапазон на большое число узких поддиапазонов при помощи ЦФ типа "преселектор - селектор", затем подключается специальное устройство, которое определяет " информативные " поддиапазоны (т. е. поддиапазоны, содержащие полезную мощность) и, наконец, каскад завершается синтезатором, который вновь собирает воедино каналы, соответствующие той или иной субполосе спектра входного сигнала; в зависимости от того, где анализируются поддиапазоны на предмет информативности, различают ЦФ с поиском в частотной и во временной области; общее название ЦФ данного класса - " ЦФ с поиском информативных спектральных составляющих". В литературе достаточно подробно описан алгоритм проектирования ЦФ частотной селекции, предназначенного для выделения (подавления) одной априорно заданной полосы частот [3,6,7] (для ЦФ типа " преселектор - селектор ' процедура проектирования дополняется оптимизацией числа ступеней и коэффициентов прореживания на отдельных ступенях, для ЦФ с поиском информативных спектральных составляющих - построением устройства, определяющего информативные поддиапазоны). Этапы проектирования, альтернативы на каждом этапе, последовательность действий при оптимизации, - известны; напрашивается формализация всей процедуры проектирования в виде пакета прикладных программ или САПР Такие попытки предпринимались неоднократно, однако до сих пор на рынке программных продуктов не появились образцы, которые заинтересовали бы разработчиков с коммерческой точки зрения. Не существует пока и практической альтернативы: фильтр с конечной импульсной характеристикой (КИХ-фильтр) или фильтр с бесконечной импульсной характеристикой (БИХ-фильтр), поскольку современная схемотехника представляет собой царство КИХ-фильтров, как более "понятных" интуитивно и не создающих дополнительных проблем, связанных с устойчивостью. Однако реализация БИХ-фильтров в виде мегафункций для САПР ПЛИС остается одной из основных задач, поскольку в ряде приложений (цифровая фильтрация Колмогорова-Винера, оптимальное управление и др.) требуются именно БИХ, а не КИХ-фильтры. |
Перспективные задачи в области проектирования ЦФ частотной селекции |
1. Создание пакета прикладных программ (среды программирования), ориентированных на структурный синтез, анализ качества, схемотехническую реализацию и последующее тестирование ЦФ, предназначенных для выделения одной априорно заданной полосы частот; при этом создаваемое прикладное программное обеспечение должно обязательно воспроизводить в полной мере алгоритм проектирования и предназначаться для использования (на коммерческой основе)не специалистами |
2. Усовершенствование существующих методов оптимизации многоступенчатых структур с целью их полной формализации и включения в состав прикладного программного обеспечения. |
3. Разработка и доведение до мегафункций новых подходов к проектированию ЦФ частотной селекции, альтернативных существующим (на ЦПОС или в форме КИХ-фильтра на ПЛИС), возможно, с использованием БИХ-фильтров. |
Оптимальные (квазиоптимальные) ЦФ. Этот тип фильтров применяется тогда, когда требуется оценить те или иные физические величины, характеризующие состояние системы, подверженной случайным возмущениям. Современная тенденция - использование достижений теории оптимальной фильтрации и реализация устройств, минимизирующих средний квадрат ошибки оценивания. Они подразделяются на линейные и нелинейные в зависимости от того, какими уравнениями описывается состояние системы. Если уравнения состояния линейны, то применяется оптимальный ЦФ Калмана [10], если же уравнения состояния системы нелинейны, то применяются различные многоканальные ЦФ, качество работы которых улучшается с ростом числа каналов; примером может служить устройство, предложенное в диссертационной работе одним из авторов статьи, и являющееся, на его взгляд, наиболее простым (!) с точки зрения практического использования - структурная схема приведена на рис. 2, а,б (а - квазинепрерывный вариант, б - сугубо дискретный). Многоканальность - главная проблема разработчика при реализации "мудреных" алгоритмов теории оптимальной фильтрации: размерность ЦФ Калмана равна числу переменных состояния системы, а та зависит от статистических свойств и в задачах практики может доходить до 10 и более; в случае же нелинейного ЦФ размерность есть быстро растущая функция числа переменных состояния системы и порядка аппроксимации при вычислениях - своего рода аналога порядка ЦФ частотной селекции (см. табл. 1).Таблица 1. Число каналов нелинейного оптимального ЦФ на рис.2 а,б. |
Число переменных состояния системы |
Порядок аппроксимации при вычислениях |
||||||
1 |
2 |
3 |
4 |
5 |
10 |
20 |
|
2 |
2 |
5 |
9 |
14 |
20 |
65 |
230 |
4 |
4 |
14 |
34 |
69 |
125 |
1000 |
10625 |
6 |
6 |
27 |
83 |
209 |
461 |
8007 |
|
10 |
10 |
65 |
285 |
1000 |
3002 |
Цифры впечатляют, не правда ли? Но именно проектирование ЦФ Калмана и ЦФ, подобных представленному на рис. 2, по глубокому убеждению авторов, является гарантией будущего для структур, занимающихся внедрением в практику алгоритмов ЦОС. Существуют различные частные случаи, когда алгоритмы, реализуемые оптимальными (квазиоптимальными) ЦФ могут быть упрощены без существенной потери точности: это, во-первых, случай линейной стационарной системы, приводящий к известному ЦФ Винера; во-вторых случай наблюдений лишь в один фиксированный момент времени, приводящий к ЦФ, оптимальному по критерию максимума отношения сигнал/шум (ОСШ); в-третьих случай уравнений состояния системы близких к линейным приводящий к нелинейным фильтрам первогои второго порядка и др. Важной проблемой является также обеспечение нечувствительности всех вышеперечисленных алгоритмов к отклонению статистических характеристик системы от заранее заданных; синтез таких ЦФ, называемых робастными, подробно описан в [5]. |
Перспективные задачи в области проектирования оптимальных (квазиоптимальных) ЦФ. |
1. Реализация в форме мегафункций для линейных оптимальных ЦФ: формирующего звена в составе фильтра Калмана [10], компандера для робастных ЦФ [5], обеляющего матричного фильтра, входящего в состав фильтра оптимального по критерию максимума ОСШ и др |
2. Реализация (на базе ЦПОС и ПЛИС)точных алгоритмов теории нелинейной оптимальной фильтрации, подобных представленным на рис. 2,а,б, с целью практической апробации указанных алгоритмов, оценки затрат, сопоставления по эффективности с квазиоптимальными ЦФ (нелинейными фильтрами первого и второго порядка и др) |
3.Создание ориентированной на пользователя библиотеки алгоритмов, реализуемых оптимальными (квазиоптимальными)ЦФ, с указанием входных и выходных параметров, реализуемых операций и пригодной для непосредственного использования при моделировании сложных систем |
Адаптивные ЦФ. Сущность адаптивной цифровой фильтрации [4] состоит в следующем: для обработки входного сигнала (обычно адаптивные ЦФ строят одноканальными) используется обычный КИХ-фильтр; однако ИХ этого фильтра не остается раз и навсегда заданной, как это было при рассмотрении ЦФ частотной селекции; она также не изменяется по априорно заданному закону, как это было при рассмотрении ЦФ Калмана; ИХ корректируется с поступлением каждого нового отсчета таким образом, чтобы свести к минимуму среднеквадратическую ошибку фильтрации на данном шаге. Под адаптивным алгоритмом понимается рекуррентная процедура пересчета вектора отсчетов ИХ на предыдущем шаге в вектор "новых" отсчетов ИХ для следующего шага. Таких процедур в свое время (конец 70-х - начало 80-х гг.)было предложено очень много, выделим рекуррентный метод наименьших квадратов (РНК - алгоритм) и метод наименьших квадратов (МНК-алгоритм ), а также ряд методов, основанных на нелинейной теории устойчивости, и в частности, алгоритм Ландау [4]. Проблема для разработчика состоит в том, что априорно устойчивые адаптивные алгоритмы, как правило, недопустимо сложны в реализации (например, включают процедуру обращения матрицы ), а более простые (как МНК - алгоритм) могут расходиться. Одним из возможных методов преодоления указанных трудностей является каскадирование БИХ - фильтров, построенных на основе решетчатых структур, т.к. это позволяет обойти процедуру вычисления обратной матрицы в РНК - алгоритме. Реализация соответствующих "секций" на базе ПЛИС является нерешенной проблемой, сдерживающей внедрение этого, несомненно, интересного подхода в практику. |
Перспективные задачи в области проектирования адаптивных ЦФ |
1. Создание новых, более эффективных, чем МНК и в то же время более ориентированных на практическое использование, чем РНК и методы, основанные на нелинейной теории устойчивости, алгоритмов адаптивной цифровой фильтрации |
2. Реализация в виде мегафункций решетчатых ЦФ, функционирующих по принципу адаптивного РНК-алгоритма, с возможностью каскадирования. |
Эвристические ЦФ .Возможны ситуации, когда применение корректных с математической точки зрения процедур обработки является нецелесообразным, поскольку приводит к неоправданно большим аппаратурным затратам; два случая - когда данные на вход ЦФ поступают в унитарном (счетно-импульсном) коде и когда данные представляют собой последовательность импульсов различной полярности (+1 и -1) - являются наиболее типичными. В первом случае разработчики предпочитают отказаться от априорного задания требований к частотной избирательности ЦФ, но реализовать в полной мере те преимущества, которые достигаются, если заменить операцию интегрирования простым накоплением входных кодовых посылок в реверсивном счетчике; во втором случае алгоритм, реализуемый ЦФ, сводится к тому, чтобы определить, какие импульсы (+1или -1) преобладают во входной последовательности, и после того как количество тех или иных импульсов превзойдет некоторый доверительный предел, выдать сигнал на исполнительное устройство: + 1, если преобладают импульсы типа +1, -1, если преобладают импульсы типа -1, и 0, если идентификация затруднительна. М.И.Жодзишским был описан ЦФ под унитарный код, состоящий из двух петель: пропорциональной иинтегрирующей [ ], конструкция которого стала почти классической и воспроизводится от разработки к разработке; ЦФ, применяемые когда входным сигналом является последовательность импульсов типа+1 и -1 (отсюда название: "последовательностные фильтры"), были впервые предложены еще в 70-е годы, но популярность их со временем только возрастала и они получили даже собственные наименования: сумматор с перекрестным сбросом, N-перед-M фильтр, цифровой эквивалент комбинации интегратора с ограничителем и фильтр случайных блужданий - схемы (в порядке перечисления) приведены на рис.3, а - г. Ввиду популярности последовательностных ЦФ у разработчиков систем синхронизации, демодуляторов и Spread spectrum напрашивается мысль реализовать эти фильтры в виде специализированных ИС, однако это до сих пор не сделано.В литературе описаны также и многие другие ЦФ, 'порожденные' стремлением разработчиков уменьшить аппаратурные затраты и получившие широкое распространение несмотря на отсутствие строгого математического обоснования. Это так называемые ЦФ с авторскими схемными решениями (см. классификацию на рис.1). Одним из наиболее известных примеров является т. н. медианный фильтр. |
Перспективные задачи в области проектирования эвристических ЦФ |
1. Создание базы данных (систематизация) интуитивно не очевидных, но эффективных и периодически воспроизводящихся при разработках схемных решений. |
2. Формализация алгоритмов, реализуемых эвристическими ЦФ, с целью их адаптации под использование современной элементной базы, а также расширения первоначальной (как правило. Узкоспециализированной) сферы применения. |
3. Реализация эвристических схемных решений в виде стандартных элементов библиотек различных САПР и, в дальнейшем, в виде специализированных ИС, в расчете на коммерческое применение и унификацию разработок |
2. Пути реализации алгоритмов цифровой фильтрации на современной элементной базе. Как видно из предшествующего изложения, в проектировании средств ЦОС, в частности ЦФ закончилась 'додарвиновская эпоха'. Сложилась система законченных алгоритмов для решения широкого круга задач, а собственно проектирование устройств и систем на 70% представляет собой системотехническую задачу, т.е. ведется на уровне структурных схем. С другой стороны, независимо от того, реализуем ли мы систему на базе ЦПОС, ПЛИС или специализированной ИС, без широкого применения средств САПР об успешной разработке не может быть и речи. Поэтому одной из главных задач становиться создание библиотек, реализующих те или иные решения. Другой особенностью современного процесса проектирования является необходимость реализации сложных оптимальных и адаптивных алгоритмов для решения новых задач, возникающих в связи с ужесточением требований, предъявляемых заказчиком, к таким параметрам, как помехоустойчивость, точность, быстродействие. Современная элементная база позволяет реализовать алгоритмы, которые несколько лет назад можно было встретить только в теоретических статьях. Однако некоторый консерватизм большинства разработчиков, отсутствие достаточной математической подготовки, а также недостаток информации долго сдерживали этот процесс.Рис. 4. На рис.4 приведены перспективы применения элементной базы различных классов для реализации алгоритмов ЦФ. Более высокая интенсивность заливки говорит о наиболее эффективном способе реализации алгоритма. Следует особо отметить тот факт, что какой либо алгоритм всегда следует реализовывать только на той элементной базе, которая показана на рис.4. Более того, ряд алгоритмов, особенно алгоритмы нелинейной оптимальной фильтрации, наилучшим образом могут быть реализованы в виде комбинации ПЛИС и ЦПОС. 3. Реализация цифровых фильтров на ПЛИС семейства FLEX фирмы ALTERA Многие ЦФ достаточно просто реализовать в виде КИХ-фильтра. С появлением БИС семейства FLEX8000 и FLEX10K фирмы ALTERA появилась возможность создания высокопроизводительных и гибких КИХ-фильтров высокого порядка. При этом ПЛИС благодаря особенностям своей архитектуры позволяют достигнуть наилучших показателей производительности по сравнению с другими способами реализации ЦФ. Так, при реализации ЦФ на базе ЦПОС среднего класса позволяет достигнуть производительности обработки данных порядка 5 милионнов отсчетов в секунду (MSPS, Million samples per second). Использование готовых специализированных БИС позволяет обеспечить производительность 30-35 MSPS. При использовании ПЛИС семейств FLEX8000 и FLEX10K достигаются величины более 100 MSPS. Рис.5. Рассмотрим особенности реализации КИХ-фильтров на базе ПЛИС семейств FLEX8000 и FLEX10K с учетом специфики их архитектуры на примере КИХ-фильтра 8-го порядка (рис.5). На рис.5 введены следующие обозначения: xn-сигнал на выходе n-го регистра, hn-коэффициент СФ, yn-выходной сигнал. Сигнал на выходе фильтра будет иметь вид:. Для обеспечения линейности фазовой характеристики КИХ-фильтра коэффициенты hn СФ фильтра выбираются симметричными относительно центральной величины. Такое построение позволяет сократить число перемножителей. Поскольку компоненты вектора h постоянны для любого фильтра с фиксированными характеристиками, то в качестве параллельного векторного перемножителя (ПВП) удобно использовать таблицу перекодировок (ТП, LUT, Look-up table), входящую в состав логического элемента (ЛЭ) [10-13] ПЛИС. Работа параллельного векторного перемножителя описывается следующим уравнением:При использовании ТП операция перемножения выполняется параллельно. В качестве примера рассмотрим реализацию 2-разрядного векторного перемножителя. Пусть вектор коэффициентов h имеет вид |
h 1 |
H 2 |
h 3 |
h 4 |
01 |
11 |
10 |
11 |
Вектор сигналов s имеет вид |
s 1 |
S 2 |
s 3 |
s 4 |
11 |
00 |
10 |
01 |
Произведение на выходе ПВП принимает вид |
H n |
01 |
11 |
10 |
11 |
|
S n |
11 |
00 |
10 |
01 |
|
Частичное произведение P1 |
01 |
00 |
00 |
11 |
= 100 |
Частичное произведение P2 |
01 |
00 |
10 |
00 |
= 011 |
Выходной сигнал y |
011 |
000 |
100 |
011 |
=1010 |
Аналогично формируется результат P1в случае 4-разрядных сигналов sn. Частичное произведение P2 вычисляется аналогично, только результат необходимо сдвинуть на 1 разряд влево. Структура четырехразрядного ПВП представлена на рис 6.Рис. 6. Очевидно, что с ростом разрядности представления данных возрастает размерность ТП, а, следовательно, большее число ЛЭ требуется. Для реализации алгоритма фильтрации. Так, для реализации 8-разрядного ПЛП требуется 8 ТП размерностью 16x8. Операция умножения на 2 легко обеспечивается сдвиговыми регистрами. Включение сдвиговых регистров на выходах промежуточных сумматоров позволяет обеспечить конвейеризацию обработки данных и, следовательно, повысить производительность. При этом регистры входят в состав соответствующих ЛЭ, поэтому сохраняется компактность структуры, не требуется задействовать дополнительные ЛЭ. Основным достоинством параллельной архитектуры построения фильтров является высокая производительность. Однако, если число задействованных ЛЭ является критичным, предпочтительнее строить фильтр по последовательной или комбинированной архитектуре. В таблице 3 приведены сравнительные характеристики КИХ-фильтров одинаковой разрядности и порядка, но выполненных по различной архитектуре.Таблица 2. |
Архитектура |
Разрядность данных |
Порядок |
Размер (число ЛЭ) |
Тактовая частота, МГц |
Число тактов до получения результата |
Быстродействие, MSPS |
Параллельная |
8 |
16 |
468 |
101 |
1 |
101 |
Последовательная |
8 |
16 |
272 |
63 |
9 |
7 |
С целью уменьшить число используемых ЛЭ применяется последовательая архитектура построения фильтра. Так же как и при параллельном построении фильтра, для вычисления частичных P1, P2,:, PN, N=W+1 произведений применяется ТП, W - разрядность данных. Такой ЦФ обрабатывает только один разряд входного сигнала в течении такта. Последовательно вычисляемые чачтичные произведения накапливаются в масштабирующем аккумуляторе (МА). МА обеспечивает сдвиг содержимого вправо на один разряд каждый такт. После W+1 тактов на выходе появляется результат. Блок управления обеспечивает формирование управляющих сигналов, обеспечивающих корректное выполнение операций. Комбинированная архитектура является компромиссом между экономичностью и производительностью. В этом случае применяются как последовательные, так и параллельные регистры. В результатае распараллеливания вычислений обеспечивается несколько большая производительность, чем у последовательного фильтра. Одним из эффективных способов повышения производительности фильтра является конвейеризация. В случае, если длина вектора S не является степенью двойки, используются дополнительные регистры для обеспечения синхронизации. С целью построения фильтров более высокого порядка используют последовательное соединение фильтров (каскадирование) меньшего порядка. Увеличение разрядности данных требует обеспечения большей точности вычислений и разрядности коэффициентов. Увеличение разрядности данных на один бит требует использования дополнительной ТП при параллельной архитектуре и увеличения на один такт времени фильтрации при последовательной архитектуре. При этом для обеспечения достаточной точности представления данных требуется для фильтра 32-го порядка 19-разрядов длины выходного слова при 8-разрядных входных данных. Построение фильтра нечетного порядка достигается удалением одного из регистров сдвига. Если применять не сумматоры, а вычитатели то легко реализовать фильтр с антисимметричной характеристикой. Довольно легко реализуются фильтры с прореживанием или, наоборот, с интерполяцией отсчетов. При проектировании прореживающего фильтра обеспечивается покаскадное уменьшение тактовой частоты, что позволяет существенно снизить энергопотребление. Интерполирующий фильтр выполняет противоположную операцию-увеличение частоты выборки в определнное число раз. Одним из способов реализации такого алгоритма является дополнение отсчетов нулями. Возможности архитектуры ПЛИС семейств FLEX позволяют реализовать двумерные фильтры для обработки изображений, а также решетчатые структуры. Для проектирования фильтров необходим набор специализированных програмных средств, позволяющих синтезировать требуемую системную функцию фильтра, провести моделирование его работы, а также библиотеки параметризируемых мегафункций, содержащих реализации типовых структур ЦФ. Фирма ALTERA предоставляет в составе Altera DSP Design KIT програмный продукт Firgen. В функции программы Firgen входит моделирование КИХ-фильтра с заданными коэффициентами, а также генерация файлов, предназначенных для реализации фильтра штатными средствами пакета MAX+Plus II. Для построения отклика фильтра, полученного в результате моделирования средствами Firgen можно использовать либо пакет Microsoft Exel, либо входящий в состав Altera DSP Design KIT продукт GNUplot. Схематически процесс разработки фильтра представлен на рис 7.Рис.7. В таблице 3 сведены данные о мегафункциях, входящих в состав Altera DSP Design KIT. Таблица 3. |
Модель |
Разрядность входных данных |
Число отводов (порядок) |
Разрядность представления |
Размер (число ЛЭ) |
Производительность (MSPS) |
||||||
Коэффициентов |
Внутренняя |
Выходных данных |
С конвеером |
Без конвеера |
|||||||
Fir_08tp |
8 |
8 |
8 |
17 |
17 |
296 |
101 |
28 |
|||
Fir_16tp |
8 |
16 |
8 |
10 |
10 |
468 |
101 |
20 |
|||
Fir_24tp |
8 |
24 |
8 |
10 |
10 |
653 |
100 |
18 |
|||
Fir_32tp |
8 |
32 |
8 |
10 |
10 |
862 |
101 |
18 |
|||
Fir_16ts |
8 |
16 |
8 |
18 |
18 |
272 |
7 |
3.4 |
|||
Fir_64ts |
8 |
64 |
8 |
24 |
24 |
920 |
6.5 |
2.4 |
|||
Fir_3x3 |
8 |
9 |
8 |
18 |
18 |
327 |
102 |
24 |
Заключение Рассмотрев основные алгоритмы цифровой фильтрации и пути их реализации на ПЛИС, можно сделать следующие выводы. Разработчики осознают необходимость создания библиотек параметризуемых мегафункций различных функциональных узлов, особенно устройств цифровой обработки сигналов. Определенные шаги в этом направлении предпринимает фирма ALTERA. Так, в августе 1995 года была основана программа поддержки партнеров - разработчиков мегафункций (AMPP, ALTERA Megafunction Partners Program). В 1997 году в данной программе участвовало более 15 независимых фирм - разработчиков. Проанализировав номенклатуру мегафункций, выпущенных в рамках данной программы, можно сказать, что вопросам цифровой обработки сигналов (ЦОС), и, в частности, фильтрации уделяется недостаточное внимание. Так, из 18 партнеров AMPP не более четверти представили готовые продукты или заявили о ведущихся разработках в этой области. При этом основную массу разработок составляют мегафункции, воплощающие стандартные микропроцессоры и микроконтроллеры, устройства обслуживания шинных магистралей (ISA, PCI), сетевые контроллеры и т.д. Типичными предложениями средств ЦОС являются мегафункции, реализующие БПФ и КИХ-фильтры. Фирма Vendor объявила о реализации БИХ-фильтра и медианного фильтра. Лидером по разработке мегафункций в области ЦОС является фирма Integrated Silicon Systems (ISS). Этой фирмой разработаны библиотеки мегафункций БИХ-фильтров, обработке изображений, медианным фильтрам, разработаны также мегафункции, реализующие некоторые алгоритмы адаптивной фильтрации. На рис.1 цветом выделены области, в которых осуществлена реализация алгоритмов на ПЛИС. Видно, что до сих пор отсутствуют предложения в области нелинейных, оптимальных и большинства типов адаптивных структур, не реализованы давно известные алгоритмы последовательностной фильтрации. Между тем, из бесед с разработчиками на ведущих предприятиях, становится ясно, что существует огромная потребность в реализации известных и хорошо обоснованных теоретически алгоритмов, тем более, что применение импортной элементной базы становится обычным делом и в разработках специального назначения. Представляется целесообразным формирование цивилизованного российского рынка продуктов для ПЛИС с учетом отечественной специфики и огромного числа устройств, до сих пор не реализованных в виде мегафункций. Определенные шаги в этом направлении делают центр 'Логические системы' и кафедра М-5 'Автономные информационные и управляющие системы' МГТУ им. Н.Э.Баумана при методической поддержке АО 'Гамма'. Планируется создание совместного научно-консультационного центра, основной задачей которого является адаптация как широко известных, так и оригинальных алгоритмов обработки сигналов и цифрового управления к реализации на базе ПЛИС фирмы ALTERA. В свою очередь, авторы приглашают заинтересоваванные организации и лица к плодотворному совместному сотрудничеству. Центр 'Логические системы' Москва, 9-я Парковая улица, д.39 тел/факс (095) 913-8120, E-mail: mail@mgamma.msk.su Кафедра М-5 'Автономные информационные и управляющие системы' МГТУ им. Н.Э.Баумана 107005, Москва, 2-я Бауманская улица, д.5 тел (095) 263-6736 Литература. 1.Максимов М.В., Меркулов В.И. Радиоэлектронные следящие системы. (Синтез методами теории оптимального управления). - М.: Радио и связь, 1990. - 256 с. 2.Цифровые радиоприемные системы: Справочник /Под ред. М.И.Жодзишского - М.: Радио и связь, 1990. - 208 с. 3.Витязев В.В. Цифровая частотная селекция сигналов. -М.: Радио и связь, 1993. - 240 с. 4.Адаптивные фильтры: Пер. с англ. /Под ред. К.Ф.Н.Коуэна и П.М.Гранта. - М.: Мир, 1988. - 392 с. 5.Кассам С.А., Пур Г.В. Робастные методы обработки сигналов: Обзор / ТИИЭР, т.73, ? 3, март 1985. 6. Лэм Г. Аналоговые и цифровые фильтры: Расчет и реализация. Пер. с англ. - М.: Мир, 1982. - 592 с. 7. Каппелини В., Константидис А.Дж., Эмилиани П. Цифровые фильтры и их применение. -М: Энергоатомиздат, 1983 - 360 с. 8. Nakao M., Yamashita K. Comparative study on DPLL's based on power density spectrum of phase error sequences // Electronics and communication in Japan. 1990. Part I. V.73,N 6, p.85-97. 9 Дж.Р.Армстронг. Моделирование цифровых систем на языке VHDL. Пер. с англ. /-М.: Мир, 1992. -175 с. 10 Балакришнан А. Теория фильтрации Калмана - М.: Мир, 1988. - 168 с. 11. Шипулин С.Н., Храпов В.Ю. ПЛИС фирмы Altera //Chip News, 1996, N 2, с. 44 12. Шипулин С.Н., Храпов В.Ю. Особенности проектирования цифровых схем на ПЛИС - Chip News, 1996, N 5, с. 40 |
||