Основы построения процессоров цифровой обработки сигналов
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ ФГАОУ ВПО «СЕВЕРО-КАВКАЗСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ»
ИНСТИТУТ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И ТЕЛЕКОММУНИКАЦИЙ
КАФЕДРА ПРИКЛАДНОЙ МАТЕМАТИКИ И КОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ
КУРСОВАЯ РАБОТА
по дисциплине
«Информационно-логические и алгоритмические основы вычислительной техники»
на тему:
«ОСНОВЫ ПОСТРОЕНИЯ ПРОЦЕССОРОВ ЦИФРОВОЙ ОБРАБОТКИ СИГНАЛОВ»
Выполнил:
-----------------
студент 2 курса группы А
направления (специальности) «Прикладная математика и информатика» очной формы обучения
________________________
(подпись)
Руководитель работы:
Гладков А.В., ст. преподаватель кафедры прикладной математики и компьютерных технологий
Работа допущена к защите _____________________
(подпись руководителя) (дата)
Работа выполнена и
защищена с оценкой _________________________ Дата защиты______________
Члены комиссии: ________________ __________ _______________
(должность) (подпись) (И.О. Фамилия)
________________ _____________
________________ _____________
Ставрополь, 2013 г.
СОДЕРЖАНИЕ
ВВЕДЕНИЕ 3
Глава 1. Реализация цифровой обработки сигналов 5
Глава 2. Общие принципы построения ЦПОС и особенности их архитектуры 8 2.1 Архитектура фон Неймана и гарвардская архитектура 9
2.2 Структура ЦПОС 11
2.3 ЦПОС с фиксированной и плавающей точкой 14
2.4 Основные типы ЦПОС 15
Глава 3. Применение цифровой
обработки сигналов
3.1 Шумоподавление для
звука
3.2 Передискретизация
3.3 Антиалиасинг изображений
3.4 Псевдотонирование изображений 22
3.5 Выравнивание освещенности изображений 24
3.6 Другие применения
ЗАКЛЮЧЕНИЕ 27
ЛИТЕРАТУРА 28
Введение
Процессор цифровой обработки сигналов (ПЦОС) - это специализированный программируемый микропроцессор, предназначенный для манипулирования в реальном масштабе времени потоком цифровых данных.
Первые ЦПОС, появившиеся в начале 80-х годов XX века, представлялись потребителям сугубо специализированными. В настоящее время они используются в очень многих конструктивных решениях: автомобилях. ЭВМ, музыкальных инструментах, видеотехнике, медицинской аппаратуре. Этот список может быть бесконечным, причем сфера использования ЦПОС непрерывно расширяется.
ПЦОС являются также мощными ускорителями для персональных компьютеров (мультимедийные приложения, трёхмерная графика и др.).
ПЦОС широко используются для обработки потоков графической информации, аудио- и видеосигналов.
Любой современный компьютер
оснащен центральным
К цифровым сигналам, в общем случае, естественно отнести все потоки цифровой информации, которые формируются в процессе телекоммуникаций. Главное, что отличает эту информацию, — она не обязательно заносится в память (и поэтому может оказаться недоступной в будущем), следовательно, обрабатывать ее нужно в режиме реального времени.
Число источников цифровой информации практически неограниченно. Так, например, загружаемые файлы в формате MP3 содержат цифровые сигналы, собственно и представляющие звукозапись. В некоторых камкодерах выполняется оцифровка видеосигналов и их запись в цифровом формате. В некоторых моделях беспроводных и сотовых телефонов перед передачей также производится преобразование голоса в цифровой сигнал.
Процессоры цифровой обработки сигналов принципиально отличаются от микропроцессоров, образующих центральный процессор настольного компьютера. По роду своей деятельности центральному процессору приходится выполнять объединяющие функции. Он должен управлять работой различных компонентов аппаратного обеспечения компьютера, таких как дисководы, графические дисплеи и сетевой интерфейс, с тем чтобы обеспечить их согласованную работу.
Это означает, что центральные процессоры настольных компьютеров имеют сложную архитектуру, поскольку должны поддерживать такие базовые функции, как защита памяти, целочисленная арифметика, операции с плавающей запятой и обработка векторной графики.
В итоге типичный современный
центральный процессор
ПЦОС, напротив, должен быть «узким специалистом». Его единственная задача — изменять поток цифровых сигналов, и делать это быстро. ПЦОС состоит главным образом из высокоскоростных аппаратных схем, выполняющих арифметические функции и манипулирующих битами, оптимизированных с тем, чтобы быстро изменять большие объемы данных.
В силу этого набор команд у ПЦОС куда меньше, чем у центрального процессора настольного компьютера; их число не превышает 80. Это значит, что для ПЦОС требуется облегченный декодер команд и гораздо меньшее число исполнительных устройств. Кроме того, все исполнительные устройства в конечном итоге должны поддерживать высокопроизводительные арифметические операции. Таким образом, типичный ПЦОС состоит не более чем из нескольких сот тысяч транзисторов.
Являясь узкоспециализированным, ПЦОС отлично справляется со своей работой. Его математические функции позволяют непрерывно принимать и изменять цифровой сигнал (такой, как звукозаписи в MP3 или запись разговора по сотовому телефону), не тормозя передачу информации и не теряя ее. Для повышения пропускной способности ПЦОС оснащается дополнительными внутренними шинами данных, которые обеспечивают более быстрый перенос данных между арифметическими модулями и интерфейсами процессора.
Глава 1. Реализация цифровой обработки сигналов
Реальные сигналы, как правило, являются аналоговыми (речь, музыка, информация с датчиков, например, температурных, и т. д.). Обработка сигналов может производиться аналоговой и цифровой системами. Общая структура цифровой системы обработки информации приведена на рис. 1.
Рис. 1. Система цифровой обработки сигнала
АЦП (аналого-цифровой преобразователь)
формирует из аналогового сигнала
цифровой. ЦАП (цифро-аналоговый преобразователь)
осуществляет обратное преобразование
цифрового сигнала в
Цифровая обработка сигнала (ЦОС)
в вычислителе может
Вычислитель может быть реализован аппаратным способом (устройство с жесткой логикой) и программным методом. Элементная база включает различные непрограммируемые (работающие не под управлением программы) и программируемые устройства. К непрограммируемым элементам относятся интегральные схемы ASICs (Application Specific Integrated Circuits, специализированные или проблемно-ориентированные интегральные схемы) PLDs (Programmable Logic Devices, программируемые логические устройства), FPGA (Field Programmable Gate Arrays). Программируемыми элементами являются микроконтроллеры, универсальные процессоры общего назначения разного типа (RISC и CISC), и, наконец, ЦПОС (цифровые процессоры обработки сигнала). Следует отметить, что устройства типа PLD, FPGA "программируются" для реализации ими определенной функции. В результате получается некоторая специализированная интегральная схема. На основе схем типа PLD возможно получение и программируемого процессора, в том числе процессора цифровой обработки сигнала.
Не существует и невозможно построить цифровой процессор, эффективно выполняющий любые прикладные программы. Для каждой задачи можно подобрать наиболее подходящий и лучший по какому-то критерию процессор.
Эффективность и скорость решения
задач ЦОС при использовании
различной элементной базы будут
отличаться. Решение задачи ЦОС при
примерно равных тактовых частотах занимает
приблизительно в три раза больше времени
на универсальных процессорах по сравнению
с процессорами ЦПОС. Например, в процессоре
i8086 (первый 16-битный микропроцессор компа
Цифровой процессор обработки сигналов чаще всего определяется как процессор, предназначенный для выполнения обработки данных и решения задач анализа и управления в реальном масштабе времени с использованием "оцифрованных" реальных сигналов, в том числе и реализации алгоритмов ЦОС в реальном масштабе времени. Примером различия задачи решаемой в реальном и в нереальном масштабе времени, может служить задача обработки изображения. Обработка фотографии небесных объектов, передаваемых из космоса, может производиться достаточно долго на универсальных ЭВМ, в то время как обработка кадров кинофильма или кадров телевизионного изображения должна выполняться за некоторый промежуток времени, определяемый частотой смены кадров.
Для повышения производительности ЦПОС в них используются общие методы повышения производительности типа увеличения тактовой частоты работы. Однако главным образом применяются структурные и архитектурные решения, учитывающие специфику задач и алгоритмов ЦОС. Таким образом. ЦПОС являются специализированными или проблемно-ориентированными процессорами. Они во многих случаях обеспечивают преимущества при решении задач ЦОС по сравнению с другими вариантами реализации систем.
Глава 2. Общие принципы построения ЦПОС и особенности их архитектуры
Термин "архитектура" обычно используется для описания состава, принципа действия, конфигурации и взаимного соединения основных узлов вычислительной системы. Этот термин включает в себя также изложение возможностей программирования, форматов данных, системы команд, способов адресации и т. д. Таким образом, термин "архитектура" относится как к аппаратным средствам или программному обеспечению, так и к их комбинации.
С момента появления самых первых ЦПОС (1982 г.) их архитектура формировалась алгоритмами ЦОС. Любые особенности этих процессоров определяются требованиями, возникающими при реализации алгоритмов цифровой обработки сигналов. Исследование типичных алгоритмов ЦОС и их вычислительных требований является лучшим способом для изучения и понимания развития архитектуры ЦПОС.
Традиционным простым примером, на котором иллюстрируются особенности алгоритмов ЦОС и ЦПОС, является алгоритм реализации КИХ-фильтра (фильтр с конечной импульсной характеристикой).
Выходной сигнал фильтра определяется выражением
где x(n) – отсчеты входного сигнала; h(i) – коэффициенты фильтра.
В соответствии с алгоритмом, выборки входного сигнала умножаются на коэффициенты фильтра и суммируются. Подобные вычисления используются и во многих других алгоритмах ЦОС. Таким образом, базовой операцией ЦОС является операция умножения и добавление (накопление) результата умножения. Подобную операцию часто обозначают при описаниях мнемоникой MAC.
Для того чтобы работать с высокой производительностью, процессор должен выполнять операцию MAC за один цикл (такт) работы процессора. Отсчеты сигнала, коэффициенты фильтра и команды программы хранятся в памяти. Для выполнения операции требуется произвести три выборки из памяти — команды и двух сомножителей. Следовательно, для работы с высокой производительностью эти три выборки необходимо произвести за один такт работы процессора. При этом подразумевается, что результат операции остается в устройстве выполнения операции (в центральном процессорном устройстве ЦПУ), а не помещается в память. В более общем случае нужна еще операция записи результата в память, т. е. необходимы четыре обращения к памяти за цикл. Таким образом, производительность процессора прежде всего определяется возможностями обмена данными между ЦПУ и памятью процессора и организацией их взаимодействия.
Ниже рассматриваются
2.1 Архитектура фон Неймана и гарвардская архитектура
На рис. 2 показана традиционная структура вычислительной системы, соответствующая «фон-неймановской» вычислительной машине. Американский математик Д. фон Нейман (1903—1957) предложил концепцию вычислительной машины (и в частности, хранимой в памяти программы), которая лежит в основе большинства современных машин. Одним из основных моментов этой концепции является то, что система обладает единой памятью, в которой хранятся и команды программы, и данные. Система содержит одну шину данных (ШД), по которой передаются и команды программы, и данные. Следовательно, в такой системе требуется три цикла для выборки команды и двух сомножителeй (то есть для выполнения операции MAC).
В процессорах ЦПОС применяется гарвардская архитектура вычислительной системы, приведенная на рис. 3. Подобная архитектура названа по работе, выполненной в 40-х годах XX века в университете Гарварда под руководством Г. Айкена (1900—1973). В соответствии с этой концепцией для хранения программы (команд) и данных используются различные устройства памяти. Соответственно в системе имеется два комплекта шин для этих устройств: шина адреса памяти программ (ШАПП), шина данных памяти программ для работы с памятью программ (ПП) и шина адреса памяти данных (ШАПД), шина данных памяти данных (ШДПД) для работы с памятью данных (ПД). В системе с гарвардской архитектурой можно одновременно производить операции обращения к различным устройствам памяти, т. е. синхронно выбирать команду из памяти программ ПП по шине ШДПП и сомножитель из памяти данных ПД по шине ШДПД. Соответственно при этом для выполнения операции MAC требуется два цикла работы процессора. Реально за счет различных дополнительных мер почти всегда время операции MAC сводится к одному циклу. Различные варианты реализации операции рассмотрены ниже. В частности, ПП иногда используется не только для хранения команд, но и данных. Поэтому при описаниях ЦПОС говорят о модифицированной гарвардской архитектуре.
Рис. 2. Архитектура фон Неймана
Рис. 3. Гарвардская архитектура
Следует лишь иметь в виду, что
несколько комплектов шип для
одновременной выборки данных и
команд из ПД и ПП используются только
внутри кристалла ЦПОС при работе
с внутренней памятью процессора.
Для обращения к внешней памяти
во всех процессорах применяется
один комплект внешних шип — ВША
и ВШД. Это определяется ограничениями,
накладываемыми технологией на количество
выводов ИС. Поэтому разработчики
систем ЦОС стремятся использовать
только внутреннюю память, и процессоры
выпускаются с большой
2.2 Структура цифрового процессора обработки данных.
На рис. 4 представлена обобщенная структура ЦПОС, отражающая только основной состав узлов процессора и их взаимодействие.
Для хранения информации в процессоре используются память программ ПП и память данных ПД, которые связаны с другими устройствами шинами. ЦПОС имеет шины различного назначения. Шина адреса ПП ШАПП предназначена для передачи адресов ячеек памяти программ. Шина данных ПП ШДПП служит для передачи команд, хранимых в памяти программ, а также данных при использовании ПП для хранения данных (например, таблиц коэффициентов цифровых фильтров). Шины адреса ПД ШАПД, и данных ПД ШДПД применяются для передачи адреса и данных памяти данных. Количество шин, особенно шин данных в различных процессорах существенно отличается. Увеличение количества ШДПД связано с увеличением производительности процессоров за счет одновременной передачи данных для использования в различных модулях. Это дает возможность модулям одновременно выполнять определенные операции. В некоторых процессорах (например, TMS320C5000) производится разделение функции шины данных: используются различные шины данных для чтения и записи информации.
Все ЦПОС имеют внутреннюю (внутрикристальную) память. Однако внутренней памяти процессора иногда оказывается недостаточно для хранения программ и данных. Кроме того, процессор может не иметь внутренней памяти типа ПЗУ для хранения программы, которая не изменяется. В этих случаях может использоваться внешняя память, связь с которой осуществляется через интерфейс внешних шин и внешние шины адреса ВША и данных ВШД. Как уже указывалось ранее, количество внешних шин ограничено двумя, поэтому при использовании внешних ПП и ПД одновременное обращение к ним может вызвать конфликт и задержку операции чтения или записи. Внешние шины могут использоваться не только для обращения к внешней памяти, но и к другим адресуемым устройствам, например параллельным портам.
Устройство управления выполнением программы в соответствии с командами читаемыми из ПП, вырабатывает сигналы управления работой всех узлов процессора. Оно связано с регистрами состояния и управления. В эти регистры, адресуемые как ячейки памяти, заносится на этапе инициализации системы различная информация, управляющая работой процессора, например информация об используемой конфигурации памяти и распределении адресов между внешней и внутренней памятью. В эти же регистры заносится информация о текущем состоянии процессора, например, о наличии на входе запроса на прерывание.
Рис. 4. Обобщенная функциональная схема ЦПОС
На устройство управления от внешних устройств ВУ поступают запросы на прерывания основной программы работы. Как уже отмечалось. ЦПОС, как
правило, работают с ВУ и их сигналами в реальном масштабе времени. Работа в режиме с прерываниями и в частности, ввод/вывод информации по прерываниям позволяют процессору согласовывать свою работу и прием/выдачу сигналов со скоростью (частотой) работы ВУ. Ввод/вывод информации от ВУ осуществляется через устройства ввода/вывода, в качестве которых в основном применяются различного вида последовательные порты.
ЦПОС имеют большое количество периферийных модулей, состав и количество которых определяются назначением процессора. Все процессоры имеют различные таймеры, предназначенные, скажем, для генерации сигналов необходимых частот (например, частоты дискретизации внешнего АЦП) и внутренних запросов на прерывания по таймеру, с помощью которых можно организовать временной опрос внешних датчиков информации.
АЛУ, умножитель и дополнительные функциональные узлы предназначены для выполнения операций над обрабатываемой информацией. Принципы их построения определяют производительность процессора.
Устройство генерации адреса (УГА) формирует адреса данных, извлекаемых из ПД. Для одновременной выборки нескольких операндов необходимо формировать одновременно несколько адресов. Для этого и процессор может иметь несколько УГА. Эти устройства включают в себя арифметические модули для вычисления адресов при различных сложных методах адресации.
2.3 ЦПОС с фиксированной и плавающей точкой
Процессоры с фиксированной (ФТ) и плавающей точкой (ПТ) отличаются способностью обрабатывать сигналы и данные, использующие соответствующие формы представления. При этом следует иметь в виду, что все процессоры с ПТ имеют набор команд для обработки данных как с ФТ, так и с ПТ, т. е. являются в этом смысле универсальными.
С другой стороны, в процессорах с ФТ всегда можно организовать обработку данных с ПТ, но программным образом. Соответствующие программы преобразования и обработки данных требуют достаточно много времени для выполнения.
Основные отличия процессоров с ФТ и ПТ заключаются в следующем:
- Функциональные модули, выполняющие арифметические операции и операции умножения, в процессорах с ПТ по сравнению с ЦПОС с ФТ гораздо сложнее, т. к. алгоритмы выполнения операций над числами с ФТ и ПТ существенно отличаются.
- Процессоры с ПТ имеют более разнообразные типы представления данных, системы команд для обработки данных как с ФТ, так и ПТ и их взаимного преобразования.
- Разрядность внутреннего представления данных в процессорах с ПТ как правило 32 разряда, в некоторых ЦПОС возможно использование укороченной формы представления.
Усложнение процессоров с ПТ приводит к тому, что их цена становится выше чем у процессоров с ФТ. Однако для многих применений это окупается большими преимуществами ЦПОС с ПТ. Основные преимущества сводятся к следующему:
- При использовании 32 разрядов и ПТ существенно повышается точность внутреннего представления данных.
- Существенно расширяется возможный динамический диапазон сигналов и данных, т. е. отношение максимально возможного к минимально возможному значению сигнала и соответственно отношение сигнал/шум.
- При использовании процессоров с ПТ снимается проблема масштабирования данных с целью избежать переполнения при выполнении различных операций и особенно операций накопления.
- Большое разнообразие типов данных и особенно данных с ПТ приводит к тому, что архитектура ЦПОС с ПТ становится более дружественной для компиляторов с языка С; это в свою очередь позволяет получать более эффективные программы в ЦПОС с ПТ при использовании языков высокого уровня.
Достоинства процессоров с ПТ приводят к тому, что при их использовании построение системы ЦОС становится более легким и быстрым.
2.4 Основные типы ЦПОС
Как уже отмечалось выше, особенности архитектуры ЦПОС определяются тем, каким образом он реализует алгоритмы ЦОС. Исследование вариантов реализации типичных алгоритмов ЦОС и их вычислительных требований является лучшим способом для изучения и понимания развития архитектуры ЦПОС.
Процессоры можно разделить, с точки зрения архитектуры, на следующие основные типы:
- стандартные процессоры (conventional);
- улучшенные стандартные процессоры (enhanced conventional);
- процессоры VLIW (очень длинное слово команды);
- суперскалярные процессоры (superscalar);
- гибриды ЦПОС/микроконтроллер.
Это деление естественно носит условный характер, особенно для процессоров первых двух типов. Вопрос, куда отнести тот или иной конкретный процессор, может вызвать затруднение. Однако такая классификация является полезной для определения особенностей построения и архитектуры процессоров.
Глава 3. Применение цифровой обработки сигналов.
3.1 Шумоподавление для звука
Звуковой сигнал, записываемый
в реальных акустических условиях,
часто содержит нежелательные шумы,
которые могут порождаться
Аддитивность означает, что шум суммируется с "чистым" сигналом и не зависит от него.
Стационарность означает, что свойства шума (мощность, спектральный состав) не меняются во времени.
Примерами таких шумов могут являться постоянное шипение микрофона или усилительной аппаратуры, гул электросети. Работа различных приборов, не меняющих звучания по времени (вентиляторы, компьютеры) также может создавать шумы, близкие к стационарным. Не являются стационарными шумами различные щелчки, удары, шелест ветра, шум автомобилей.
Для подавления аддитивных стационарных шумов существует алгоритм спектрального вычитания. Он состоит из следующих стадий:
1. Разложение сигнала
с помощью кратковременного
2. Оценка спектра шума.
3. «Вычитание» амплитудного спектра шума из амплитудного спектра сигнала.
4. Обратное преобразование
STFT - синтез результирующего
В качестве банка фильтров рекомендуется использовать STFT с окном Ханна длиной порядка 50 мс и степенью перекрытия 75%. Амплитуду весового окна надо отмасштабировать так, чтобы при выбранной степени перекрытия окон банк фильтров не менял общую амплитуду сигнала в отсутствие обработки.
Оценка спектра шума может осуществляться как автоматически, путем поиска участков минимальной энергии в каждой частотной полосе, так и вручную, путем анализа спектра на временном сегменте, который пользователь идентифицировал как шум.
Одна из проблем метода спектрального вычитания – т.н. «музыкальный шум». Он появляется вследствие того, что коэффициенты STFT шумовых сигналов статистически случайны, что приводит к их неравномерному подавлению. В результате, очищенный сигнал содержит кратковременные и ограниченные по частоте всплески энергии, которые на слух воспринимаются как «колокольчики» или «льющаяся вода». В некоторых случаях этот эффект даже менее желателен, чем исходный подавляемый шум.
Для подавления этого эффекта можно применять следующие методы:
• Завышение оценки шумового порога. Приводит к подавлению слабых компонент полезного сигнала, звук становится глуше.
• Неполное подавление шума
(ограничение снизу константой, отличной
от нуля). Часть шума остается в сигнале
и отчасти маскирует «
• Сглаживание по времени оценок спектра. Приводит к размытию или подавлению транзиентов (резких всплесков в сигнале: ударов, атак музыкальных инструментов).

- Основы построения рынка ценных бумаг
- Основы построения тарифной системы оплаты труда
- Основы построения тарифов по страхованию жизни
- Основы построения телекоммуникационных сетей и систем
- Основы построения тракта приема и фильтрации радиолокационных сигналов в местах радиолокации
- Основы построения урока физической культуры
- Основы построения учета процесса реализации продукции
- Основы построения бухгалтерского финансового учета в организациях
- Основы построения и анализа системы автоматического управления
- Основы построения имиджа руководителей
- Основы построения инфокоммуникационных систем и сетей
- Основы построения комплексного чертежа наименование темы
- Основы построения оздоровительной тренировки
- Основы построения процесса учета промышленного производства