Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
сигналы6.docx
Скачиваний:
39
Добавлен:
30.01.2015
Размер:
43.45 Кб
Скачать

Санкт-Петербургский государственный электротехнический университет «лэти» им. В.И. Ульянова (Ленина) (сПбГэту)

Кафедра ВТ

Реферат

по дисциплине: «Цифровая обработка сигналов»

на тему: «Архитектура процессоров ЦОС»

Выполнил:

Проверил:

г. Санкт-Петербург, 2014 г.

Оглавление

1. Введение 3

2. Особенности архитектуры процессоров ЦОС 4

3. Алгоритмы обработки 6

4. История микропроцессоров ЦОС 8

5. Обзор микропроцессоров цос 10

6. Литература 13

Введение

Процессоры цифровой обработки сигналов представляют собой класс специализированных микропроцессоров, предназначенных для решения задач цифровой обработки сигналов (ЦОС), к которым относятся обработка звуковых сигналов, обработка изображений, распознавание речи, распознавание образов, цифровая фильтрация, спектральный анализ и др.

Часто такие микропроцессоры называются цифровыми сигнальными процессорами (ЦСП), илиDSP (Digital Signal Processors).

Первые процессоры этого класса появились в конце 1970-х годов. Требования практики, связанные с широким развитием мобильной беспроводной связи, стационарных систем широкополосной связи, использованием цифровой обработки сигналов в бытовой аудио- и видеотехнике и устройствах компьютерной периферии, с одной стороны и колоссальный прогресс электронной промышленности с другой привели к тому, что к настоящему времени производительность ЦСП возросла до сотен миллионов операций в секунду, а цена упала более чем на 90 % и даже для самых мощных процессоров составляет в настоящее время менее $20. Низкая потребляемая мощность (менее 1 Вт на максимальной частоте работы процессора) обеспечивает их широкое использование в различных встраиваемых устройствах от бытовой электроники до бортовых систем специального назначения.

Цифровая обработка сигналов - это арифметическая обработка последовательности значений амплитуд сигнала, получаемых через равные промежутки времени. Главное, что отличает эту информацию, - она необязательно заносится в память и поэтому может оказаться недоступной в будущем. Следовательно, обрабатывать ее нужно в реальном масштабе времени (РМВ).К основным особенностям цифровой обработки сигналов, которые во многом определяют архитектуру процессоров DSP, относятся:

  • поточный характер обработки больших объемов данных в РМВ;

  • обеспечение возможности интенсивного обмена с внешними устройствами.

Для эффективной реализации алгоритмов цифровой обработки сигналов необходима аппаратная поддержка базовых операций ЦОС

Особенности архитектуры процессоров ЦОС

  1. Гарвардская архитектура, основу которой составляет физическое и логическое разделение памяти команд и памяти данных. Ключевые команды DSP-процессора являются многооперандными, и ускорение их работы требует одновременного чтения нескольких ячеек памяти. Соответственно на кристалле имеются раздельные шины адреса и данных (в некоторых типах процессоров - несколько шин адреса и данных). Это позволяет совмещать во времени выборку операндов и исполнение команд. Использование модифицированной гарвардской архитектуры предполагает, что операнды могут храниться не только в памяти данных, но и в памяти команд вместе с программами. Например, в случае реализации цифровых фильтров коэффициенты могут храниться в памяти программ, а значения данных - в памяти данных. Поэтому коэффициент и данные могут выбираться в одном машинном цикле. Для обеспечения выборки команды в том же машинном цикле используется либо кэш-память программ, либо двукратное обращение к памяти программ за время машинного цикла.

  2. Для сокращения времени выполнения одной из основных операций цифровой обработки сигнала - умножения - применяется аппаратный умножитель. В процессорах общего назначения эта операция реализуется за несколько тактов сдвига и сложения и занимает много времени, а в DSP-процессорах благодаря специализированному умножителю нужен всего один цикл. Встроенная схема аппаратного умножения позволяет выполнить за 1 такт основную операцию ЦОС - умножение с накоплением (MultIPly-Accumulate - MAC) для 16- и/или 32-разрядных операндов.

  3. Аппаратная поддержка циклических буферов. Например, для фильтра, при каждом вычислении отсчета выходного сигнала используется новый отсчет входного сигнала, который сохраняется в памяти на месте самого старого. Для такого циркулирующего буфера может использоваться фиксированная область ОЗУ. При этом во время вычислений генерируются лишь последовательные значения адресов ОЗУ вне зависимости от того, какая операция - запись или чтение - выполняется в настоящий момент. Аппаратная реализация циклических буферов позволяет установить параметры буфера (адрес начала, длина) в программе вне тела цикла фильтрации, что позволяет сократить время выполнения циклического участка программы.

  4. Сокращение длительности командного такта. Это во многом обеспечивается приемами, характерными для RISC-процессоров. Главными из них являются размещение операндов большинства команд в регистрах, а также конвейеризация на уровне команд и микрокоманд. Конвейер имеет от 2 до 10 ступеней, что позволяет на различных стадиях выполнения одновременно обрабатывать до 10 команд. При этом используется генерация адресов регистров параллельно с выполнением арифметических операций, а также многопортовый доступ к памяти. Сюда же можно отнести и такой прием, характерный для универсальных микропроцессоров с EPIC-архитектурой, как применение команд со сверхбольшой длиной слова (VLIW), генерируемых на стадии компиляции программы. Этому же служит и рассмотренная выше гарвардская архитектура процессора, характерная для однокристальных микроконтроллеров.

  5. Наличие на кристалле процессора внутренней памяти, что роднит ЦСП с однокристальными МК. Встроенная в процессор память обычно имеет значительно большее быстродействие, чем внешняя. Наличие встроенной памяти позволяет значительно упростить систему в целом, уменьшить ее размеры, энергопотребление и стоимость. Емкость внутренней памяти является результатом определенного компромисса. Ее увеличение ведет к удорожанию процессора и увеличивает энергопотребление, а ограниченная емкость памяти программ не позволяет хранить сложные алгоритмы. Большинство DSP-процессоров с фиксированной точкой имеют малую емкость внутренней памяти, обычно от 4 до 256 Кбайт, и невысокую разрядность внешних шин данных, связывающих процессор с внешней памятью. В то же время ЦСП с плавающей точкой обычно предполагают работу с большими массивами данных и сложными алгоритмами и имеют либо встроенную память большой емкости, либо большую разрядность адресных шин для подключения внешней памяти (а иногда и то, и другое).

  6. Широкие возможности по аппаратному взаимодействию с внешними устройствами, включающие:

  • большое разнообразие интерфейсов, в том числе контроллеры локальной промышленной сети CAN, встроенные коммуникационные (SCI) и периферийные (SPI) интерфейсы, I2C, UART;

  • несколько входов для аналоговых сигналов и, соответственно, встроенный АЦП;

  • выходные каналы широтно-импульсной модуляции (ШИМ);

  • развитую систему внешних прерываний;

  • контроллеры прямого доступа в память.

  • В некоторых DSP-семействах предусмотрены специальные аппаратные средства, облегчающие создание мультипроцессорных систем с параллельной обработкой данных для наращивания производительности.

  • DSP-процессоры широко используются в мобильных устройствах, где потребляемая мощность является основной характеристикой. Для снижения энергопотребления в сигнальных процессорах применяется множество методов, в том числе уменьшение напряжения питания и введение функций управления потреблением, например, динамическое изменение тактовой частоты, переключение в спящий или дежурный режим либо отключение не используемой в данный момент периферии. Следует отметить, что эти меры оказывают значительное воздействие на скорость работы процессора и при некорректном использовании могут привести к неработоспособности проектируемого устройства (в качестве примера можно упомянуть некоторые сотовые телефоны, которые в результате ошибок в программах управления энергопотреблением иногда переставали включаться) или к ухудшению его эксплуатационных характеристик (например, значительному времени восстановления работоспособности при выходе из спящего режима).

    Алгоритмы обработки

    Современные алгоритмы обработки сигналов функционально можно разделить на следующие основные классы:

    1. Алгоритмы цифровой фильтрации (в т.ч. алгоритмы нелинейной, оптимальной, адаптивной фильтрации, эвристические алгоритмы, полиноминальные фильтры, алгоритмы фильтрации изображений и др.

    2. Алгоритмы, основанные на применении ортогональных преобразований (быстрые преобразования Фурье, Хартли, Уолша, Адамара и др.)

    3. Алгоритмы, реализующие кодирование и декодирование, модуляторы и демодуляторы, в том числе сложных сигналов (псевдослучайных, хаотических).

    4. Алгоритмы интерфейсов и стандартных протоколов обмена и передачи данных.

    Существует целый ряд устройств и алгоритмов, которые являются «стандартными», и очень часто повторяются в разных разработках. Например, узлы массовых коммуникационных средств, микросхемы сложных интерфейсов, компоненты систем мультимедиа и видеообработки для компьютеров.

    Алгоритмы ЦОС подразумевают трудоемкие арифметические операции, в частности, умножение и сложение с интенсивным потоком данных через центральный процессор. Например формула, реализующая цифровой фильтр с бесконечной импульсной характеристикой, выглядит следующим образом:

    Таким образом, вся работа устройства сводится к умножению и накапливающему суммированию. Операции умножения и суммирования используются не только в формулах для БИХ-, но и для КИХ-фильтров, а также для преобразований Фурье.

    Именно поэтому неотъемлемой частью всех процессоров являются комбинированные устройства, включающие в себя умножитель и накапливающий сумматор MAC, выполняющие операции за один такт.

    В отличие от других типов приложений, связанных с обработкой данных, ЦОС обычно работают с очень длинными выборками сигналов в частотном диапазоне 10-100 кГц и даже выше. Для обеспечения высокой производительности исполнительные устройства ЦОС функционируют параллельно. Например, одновременно с МАС операции могут выполняться на арифметико-логическом устройстве и регистрах циклического сдвига.

    Архитектура ЦОС накладывает жесткие ограничения на используемую память. Ведь исполнение операций в одном тактовом цикле требует, чтобы за это же время из памяти были выбраны соответствующая команда, данные-операнды и коэффициенты фильтра. Для этого используются два и более отдельных банка памяти, которые имеют собственные шины. Это позволяет обеспечить одновременные процессы записи и чтения в разные банки. Выборка команды и операндов происходит в таком случае параллельно. В ранних моделях ПЦОС обычно использовалось два банка памяти: для команд и для данных. В настоящее время на кристаллах ЦОС реализуется также кэш-память для инструкций. Ее использование особенно эффективно для программных циклов.

    Экономия времени при обращении к памяти достигается и за счет оптимизации генерации адреса выборки. Это происходит из-за того, что выборка операндов при реализации алгоритмов цифровой обработки сигналов более предсказуема. Наиболее часто для этой цели используется постинкрементная косвенная регистровая адресация, а увеличение указателя адреса происходит автоматически. Еще одна команда экономится при использовании так называемой «циклической» адресации, когда после перебора заданного количества последовательных адресов выполняется автоматический переход на начальный адрес. Данный метод адресации находит место и при реализации линий задержки для цифровых фильтров, которые обычно строятся на регистрах типа FIFO.

    Эффективное выполнение подобных алгоритмов в реальном времени требует аппарат­ной архитектуры и набора команд, радикально отличающихся от архитектуры и команд стандартных микропроцессоров. В цифровых процессорах сигналов для этого исполь­зуются гарвардская архитектура, конвейерная обработка и специализированное аппа­ратное обеспечение, например, быстрые аппаратные умножители-накопители и схемы сдвига, скоростная внешняя память, также в процессоры внедряется множество команд, ориентированных на ЦОС.

    В частности используется архитектура VLIW (very long instruction word — с командными словами сверхбольшой длины) и статическая суперскалярная архитектура, которые используются в последнем поколении процессоров ПЦОС.

    VLIW характеризуется тем, что одна инструкция процессора содержит несколько операций, которые должны выполняться параллельно. Фактически это «видимое программисту» микропрограммное управление, когда машинный код представляет собой лишь немного свёрнутый микрокоддля непосредственного управления аппаратурой.

    В суперскалярных процессорахтакже есть несколько вычислительных модулей, но задача распределения между ними работы решается аппаратно. Но это сильно усложняет устройство процессора, и может быть чревато ошибками. В процессорах VLIW задача распределения решается во времякомпиляциии в инструкциях явно указано, какое вычислительное устройство должно выполнять какую команду.

    VLIW можно считать логическим продолжением идеологии RISC, расширяющей её на архитектуры с несколькими вычислительными модулями. Так же, как в RISC, в инструкции явно указывается, что именно должен делать каждый модуль процессора. Из-за этого длина инструкции может достигать 256 бит.

    VLIW сильно упрощает архитектуру процессора, перекладывая задачу распределения вычислительных устройств на компилятор. Поскольку отсутствуют большие и сложные узлы, сильно снижается энергопотребление.

    В то же время, код для VLIW обладает невысокой плотностью. Из-за большого количества пустых инструкций для простаивающих устройств. Программы для VLIW-процессоров могут быть гораздо длиннее, чем аналогичные программы для традиционных архитектур. Также архитектура VLIW выглядит довольно экзотической и несколько непривычной для программиста. Программирование на уровне машинных кодов из-за сложных внутренних зависимостей кода, является достаточно сложным.

    В обеих ар­хитектурах применяются множественные тракты обработки данных и арифметические устройства, также для повышения эффективности используется параллелизм на уровне команд.

    Существует два типа цифровых процессоров сигналов: универсальные процессоры (которые похожи на стандартные микропроцессоры, за исключением архитектур и на­боров команд, приспособленных для выполнения операций ЦОС) и специализирован­ные процессоры. Последние используются для выполнения специфических алгоритмов ЦОС, например, цифровой КИХ-фильтрации, или для эффективного выполнения некоторых операции конкретных приложений. По сравнению с универ­сальными процессорами, специализированные более быстрые, но менее гибкие.

    Как правило, ПЦОС используют 16-разрядный формат данных с фиксированной точкой. Такая «ширина» данных в большинстве случаев оказывается вполне достаточной. Кроме того, накапливающий регистр во избежание переполнения имеет добавочные разряды и специальные служебные биты. Устройства для операций с плавающей точкой не только сложнее по схемотехнике, но и потребляют больше энергии, из-за этого они используются крайне редко.

    История микропроцессоров ЦОС

    До 1980 года несколько компаний выпустили устройства, которые можно считать предшественниками ЦСП. Так, в 1978 Intel выпускает «процессор аналоговых сигналов» 2120. В его состав входили АЦП, ЦАПи процессор обработки цифровых данных, однако аппаратная функция умножения отсутствовала. В 1979AMI выпускает S2811 — периферийное устройство, управляемое основным процессором компьютера. Оба изделия не достигли успеха на рынке.

    Первое поколение (начало 1980-х)

    Основную историю ЦСП принято отсчитывать от 1979—1980 годов, когда Bell Labsпредставила первый однокристальный ЦСП Mac 4, а также на «IEEE International Solid-State Circuits Conference '80» были показаныµMPD7720компанииNECиDSP1компанииAT&T, которые, однако, не получили широкого распространения. Стандартом де-факто стал выпущенный чуть позже кристаллTMS32010фирмыTexas Instruments, по многим параметрам и удачным техническим решениям превосходящий изделия конкурентов. Вот некоторые его характеристики:

    • АЛУ:

      • Размер слова: 16 бит;

      • Разрядность вычислителя: 32 бит;

      • Быстродействие: 5 млн операций сложения или умножения в секунду;

    • Длительность командного цикла: 160—280 нс;

    • Память:

      • ОЗУ: 144—256 слов;

      • ПЗУпрограмм: 1,5—4 К слов;

      • ППЗУ: до 4К слов (отдельные модели);

    • Внешняя шина:

      • Разрядность: 16 бит;

      • Адресуемое пространство: 4К слов

      • Пропускная способность: 50 Мбит/с

    • Устройства ввода-вывода: 8 портов по 16 разрядов;

    Второе поколение (середина 1980-х)

    Благодаря прогрессу в полупроводниковых технологиях, в этот период были выпущены изделия, имеющие расширенные функции по сравнению с первым поколением. К характерным отличиям можно отнести:

    • Увеличение объёма ОЗУ до 0,5 К слов;

    • Добавлена возможность подключения внешней памяти программ и внешней памяти данных объёмом до 128 К слов;

    • Быстродействие повышено в 2—4 раза;

    • Улучшенные подсистемы прерываний и ввода-вывода.

    Много позднее также были выпущены устройства, формально относящиеся ко второму поколению, но имеющие следующие усовершенствования:

    • Увеличена разрядность данных;

    • Пониженное напряжение питания и, как следствие, энергопотребление;

    • Введены режимы экономии энергии;

    • Аппаратная поддержка мультипроцессорности (система совместного доступа к внешней памяти);

    • Аппаратная поддержка кольцевых буферов;

    • Аппаратная поддержка операций циклов;

    • Расширены способы адресации;

    • Две внутренние шины данных, что позволяет значительно ускорить парную обработку данных (координаты X/Y, действительная и мнимая часть и т. д.), либо виртуально удвоить разрядность обрабатываемых данных;

    • Введена кэш-память.

    Третье поколение (конец 1980-х)

    Третье поколение ЦСП принято связывать с началом выпуска изделий, реализующих арифметику с плавающей запятой. Характерные особенности первых выпущенных образцов:

    • Производительность: порядка 20-40 млн оп./сек. (MIPS);

    • Два блока ОЗУ по 1 К 32-разрядных слов с возможностью одновременного доступа;

    • Кэш-память объёмом 64 слова;

    • Разрядность регистров: 32 бит;

    • Разрядность АЛУ: 40 бит;

    • Регистры для операций с повышенной точностью;

    • Встроенные контроллеры ПДП;

    • Разрядность шин: 32 бит для команд и 24 бит для адреса;

    Четвёртое поколение

    Четвёртое поколение ЦСП характеризуется значительным расширением наборов команд, созданием VLIWисуперскалярныхпроцессоров. Заметно возросли тактовые частоты. Так, например, время выполнения команды MAC (Y := X + A × B) удалось сократить до 3 нс.

    Современные ЦСП

    Лучшие современные ЦСП можно характеризовать следующими параметрами:

    • Тактовая частота — 1 ГГц и выше;

    • Многоядерность;

    • Наличие двухуровневого кеша;

    • Встроенные многоканальные контроллеры прямого доступа к памяти;

    • Быстродействие порядка нескольких тысяч MIPSиMFLOPS;

    • Выполнение до 8 параллельных инструкций за такт;

    • Совместимость со стандартными шинами (PCIи др.)

  • Соседние файлы в предмете Цифровая обработка сигналов