Пантелейчук А. Основы выбора цифровых сигнальных процессоров (2006)
Описание файла
PDF-файл из архива "Пантелейчук А. Основы выбора цифровых сигнальных процессоров (2006)", который расположен в категории "". Всё это находится в предмете "компьютерные методы и технологии автоматизации и управления" из 9 семестр (1 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст из PDF
Основы выбора цифровых сигнальных процессоровАлексей Пантелейчук, инженер, ООО «КОМПЭЛ»В статье рассмотрены основные параметры цифровыхсигнальных процессоров (DSP) и их влияние на выборподходящей микросхемы, а также описано текущеесостояние рынка DSP.Выбирая обувь, мы хотим, чтобы она была модной,удобнойивысокогокачества,поэтомумыотдаемпредпочтение известным маркам, тем фирмам, которые ужехорошо известны и занимают на рынке далеко не последниеместа.
Теперь нужно определиться: для чего нам нужна этаобувь? Если для утренней пробежки, то лучше все-такикупить кроссовки, а для корпоративного вечера — туфли. Ачто обувать в горах? В этом случае нужна специальнаякрепкая обувь с твердой подошвой — вибрамы. А чем хужеDSP? Выбирая цифровой сигнальный процессор, не плохобыло бы представлять существующий рынок DSP, знатьосновныхпроизводителейинаправленияразвитиясоздаваемых ими процессоров.DSP-процессорыпредназначеныдляосуществленияцифровой обработки сигнала — математических манипуляцийнад оцифрованными сигналами. Они широко применяются вбеспроводных системах, аудио- и видеообработке, системахуправления. С ростом числа приложений, использующих DSP,исложностиалгоритмовобработкиувеличиваетсяитребования к ним в плане повышения быстродействия иоснащенностиинтерфейснымиспециализированнымиузлами.Кидругиминастоящемувременипоявилось множество типов DSP, как универсальных, так иориентированных на достаточно узкий круг задач.Естественно, ни один из процессоров не может подойтидля всех приложений.
Поэтому первая задача разработчика —выборпроцессора,производительности,наиболеецене,подходящегоналичиюпоопределеннойпериферии, потреблению мощности, простоте использованияи другим критериям.Например, для таких портативных устройств, какмобильныетелефоны,портативныецифровыеплееры,стоимость, степень интеграции и потребляемая мощностьявляютсяпервостепенными,амаксимальнаяпроизводительность зачастую не нужна (т.к. обычно влечет засобой значительное повышение потребляемой мощности, недаваяпреимуществприобработкеотносительнонизкоскоростных аудиоданных).Втожевремядлягидроакустическихилирадиолокационных систем определяющими параметрамиявляютсяскоростьработы,наличиевысокоскоростныхинтерфейсов и удобная система разработки, а стоимостьявляется второстепенным критерием.
Кроме того, во многихслучаяхимеетсмысл учитывать и местона рынке,занимаемое поставщиком процессора, т.к. далеко не всепроизводители могут предоставить в ваше распоряжениеспектр процессоров, покрывающих все ваши потребности.Сложившееся к настоящему времени распределение рынкамежду ведущими поставщиками (см. табл.
1) показывает, что4 компании, стоящие в начале списка, поставляют более 80%всех используемых в мире DSP. Именно эти компаниинаиболее известны и на российском рынке, и их продукциячасто упоминается.Таблица 1. Основные производители DSP и принадлежащиеим доли рынкаКомпании-лидерыДоля рынкаCompany NameрынкаDSP1Texas Instruments54,3%Freescale214,1%Semiconductor3Analog Devices8,0%4Philips Semiconductors7,5%5Agere Systems7,3%6Toshiba4,9%7DSP Group2,2%8NEC Electronics0,6%9Fujitsu0,4%10Intersil0,3%Other Companies0,5%Total100,0%Следует помнить, что производители DSP, проектируяновые микросхемы, достаточно четко позиционируют их дляиспользования в тех или иных приложениях.
Это оказываетвлияние и на их архитектуру, и на быстродействие, и наоснащение процессора тем или иным набором периферийныхмодулей. В таблице 2 показано позиционирование DSP сточки зрения их создателей.Таблица 2. Области применения семейств сигнальныхпроцессоров разных производителейОбработка видео,TMS320DM64x/DaVinci,видеонаблюдение, TMS320C64xx, TMS320C62xx (TI),цифровые камеры,PNX1300, PNX1500, PNX17003D графика(Philips) , MPC52xx (Freescale)Обработка аудио,TMS320C62xx, TMS320C67xx (TI),распознавание речи,SHARC (Analog Devices)синтез звукаПортативные медиа TMS320C54xx, TMS320C55xx (TI),устройстваBlackfin (Analog Devices)TMS320C64xx, TMS320C54xx,TMS320C55xx (TI), MPC7xxx,Беспроводная связь, MPC86xx, MPC8xx PowerQUICC I,телекоммуникации, MPC82xx PowerQUICC II, MPC83xxмодемы, сетевыеPowerQUICC II Pro, MPC85xxустройстваPowerQUICC III (Freescale), Blackfin,TigerSHARC (Analog Devices),PNX1300 (Philips)УправлениеTMS320C28xx, TMS320C24xx (TI),приводами,ADSP-21xx (Analog Devices),преобразованиеMPC55xx, MPC55xx (Freescale)мощности,автомобильнаяэлектроника,предметы домашнегообихода, офисноеоборудованиеМедицина,TMS320C62xx, TMS320C67xx,биометрия,TMS320C55xx, TMS320C28xx (TI),измерительныеTigerSHARC, SHARC (AnalogсистемыDevices)Далее в этой статье будут рассмотрены основныехарактеристикипроцессоров,которыедолженоценитьразработчик для того, чтобы выбрать наиболее подходящийDSP.Формат данных и разрядностьОдна из основных характеристик цифровых сигнальныхпроцессоров — формат обрабатываемых данных.
Все DSPработают либо с целыми числами, либо с числами в формате сплавающей точкой, причем для целых чисел разрядностьсоставляет 16 или 32, а для чисел с плавающей точкой онаравна 32. Выбирая формат данных, необходимо иметь в видуследующее: DSP с целочисленными данными (или данными сфиксированной точкой) обычно дешевле и обеспечиваютбольшую абсолютную точность при равной разрядности (т.к.на мантиссу в 32-битном процессоре с фиксированной точкойотводятся все 32 бита, а в процессоре с плавающей точкой —только 24).В то же время динамический диапазон сигналов, скоторыми могут без искажений работать процессоры, упроцессоров с фиксированной точкой значительно уже (нанесколько десятичных порядков). При относительно простыхалгоритмахобработкиэтоможетбытьневажно,т.к.динамический диапазон реальных входных сигналов чащевсего меньше, чем допускает DSP, однако в некоторыхслучаях возможно возникновение ошибок переполнения привыполнении программы.
Это приводит к принципиальнонеустранимым нелинейным искажениям выходного сигнала,аналогичным искажениям из-за ограничения в аналоговыхсхемах.Следовательно, при выборе DSP необходимо тщательноанализировать алгоритм обработки и входные сигналы дляправильного выбора разрядности и типа арифметики. Иногдапри невозможности подобрать подходящий процессор сплавающей точкой (из-за большей его стоимости илиэнергопотребления) используют DSP с фиксированной точкойи сжатие динамического диапазона обрабатываемых сигналов(компрессию), однако это приводит к увеличению сложностиалгоритма обработки сигнала и повышает требования кбыстродействию.Конечно, можно эмулировать операции с плавающейточкой и на процессоре с целочисленной арифметикой илиперейти к обработке чисел удвоенной разрядности, однако этотакже значительно усложняет программу и значительноснижает быстродействие.Несмотря на все ограничения, большинство встроенныхприложений используют процессоры с фиксированной точкойиз-за меньшей цены и энергопотребления.
Увеличениеколичества разрядов повышает стоимость, размер кристалла ичислонеобходимыхвыводовпроцессора,атакженеобходимый объем внешней памяти. Поэтому разработчикистремятся использовать кристалл с минимально возможнойразрядностью.Стоит заметить, что разрядность данных и разрядностькоманд процессоров не всегда эквивалентны.СкоростьКлючевой параметр при выборе процессора — этоскорость. Она влияет на время выполнения обработкивходногосигналаи,следовательно,определяетегомаксимальную частоту. Одна из самых частых ошибокразработчика—отождествлениетактовойчастотыибыстродействия, что в большинстве случаев неправильно.Очень часто скорость работы DSP указывают в MIPS(миллионах инструкций в секунду).
Это наиболее простоизмеряемый параметр.Однако проблема сравнения скорости различных DSPсостоит в том, что процессоры имеют различные системыкоманд, и для выполнения одного и того же алгоритмаразными процессорами требуется разное число этих команд.Кроме того, иногда для выполнения различных команд однимпроцессоромтребуетсяразличноеколичествотактовсинхронизации. В результате процессор со скоростью 1000MIPS вполне может оказаться в разы медленнее процессора соскоростью300MIPS,особенноприразличнойихразрядности.Одноизрешенийэтой проблемы—сравниватьпроцессоры по скорости выполнения определенных операций,например, операции умножения с накоплением (MAC).Скоростьвыполненияалгоритмов,такихиспользующихоперацийцифровуюкритичнадляфильтрацию,корреляцию и преобразования Фурье.
К сожалению, такаяоценка также не дает полной информации о реальномбыстродействии процессора.Наиболее точной является оценка скорости исполненияопределенных алгоритмов — например, КИХ- и БИХ-фильтрации, однако это требует разработки соответствующихпрограмм и тщательного анализа результатов тестирования.Существуюткомпании,занимающиесяанализомисравнением процессоров по основным характеристикам, в томчисле и по скорости. Лидером среди таких компаний являетсяBDTI — Berkeley Design Technology, Inc.
(www.bdti.com). Вкачестве примера на рисунке 1 показано сравнение поскорости современных DSP разных производителей.Рис. 1. Пример сравнения быстродействия различных DSP сфиксированной точкойОрганизация памятиОрганизация системы памяти процессора влияет напроизводительность. Это связано с тем, что ключевыекоманды DSP являются многооперандными и ускорение ихработы требует одновременного чтения нескольких ячеекпамяти. Например, команда MAC требует одновременногочтения 2 операндов и самой команды для того, чтобы ееможнобылоразличнымивыполнитьза1методами,средитакт.Этокоторыхдостигаетсяприменениемногопортовой памяти, разделение на память программ ипамять данных (Гарвардская архитектура), использованиекэша команд и т.д.Необходимый объем памяти определяется приложением.Необходимо учитывать, что встроенная в процессор памятьобычно имеет значительно большую скорость работы, чемвнешняя,однакоувеличениеееобъемаувеличиваетстоимость и энергопотребление DSP, а ограниченный объемпамяти программ не позволяет хранить сложные алгоритмы.В то же время при достаточности этого объема для вашихцелей наличие встроенной памяти позволяет значительноупростить конструкцию в целом и понизить ее размеры,энергопотребление и стоимость.БольшинствоDSPприменяющиесявосфиксированнойвстраиваемыхточкой,приложениях,предполагают малый объем внутренней памяти, обычно от 4до 256 Кбайт и невысокую разрядность внешних шин данных.В то же время DSP с плавающей точкой обычнопредполагают работу с большими массивами данных исложными алгоритмами и имеют либо встроенную памятьбольшого объема, либо большую разрядность адресных шиндля подключение внешней памяти (а иногда и то, и другое).Еще раз подчеркнем — выбор типа и объема памяти долженбыть результатом тщательного анализа приложения, в которомиспользуется DSP.Удобство разработки приложенийСтепеньсложностиразработкиопределятсяприложением.