7 Общие сведения о цифровой обработке сигналов




Скачать 239.49 Kb.
Название7 Общие сведения о цифровой обработке сигналов
Дата конвертации27.12.2012
Размер239.49 Kb.
ТипДокументы
7. СИГНАЛЬНЫЕ МИКРОПРОЦЕССОРЫ

7.1. Общие сведения о цифровой обработке сигналов


Цифровая обработка сигнала - это арифметическая обработка в реальном масштабе времени последовательности значений амплитуды сигнала, определяемых через равные временные промежутки [42,43]. Примерами цифровой обработки являются:

• фильтрация сигнала;

• свертка двух сигналов (смешение сигналов);

• вычисление значений корреляционной функции двух сигналов;

• усиление, ограничение или трансформация сигнала;

• прямое/обратное Фурье-преобразование сигнала.

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

(i)Математическое описание сигнала


  1. АС описывается: xa(t)=Umsin2ft, Um=1v, f=2гц



  1. ДС описывается решетчатыми функциями – последовательностями x(), - интервал дискретизации, k=0,1,2,....j, x(k)=xk

Квантование по времен.

t={0,,2,3,4,5,...}

k={0,1,2,3,4,5....}

x(k)[-xmin,+xmax]


  1. Цифровые сигналы



k={0,1,2,3,4,...} x(k)={0,2,3,2,0,-2,-3,-2,0}

Квантование по времени и по уровню.




Сигнал задается последовательностью

=const: x(k)={0,2,3,2,0,-2,-3,-2,0}

h=const: y(k)=x(k-2)

с периодом N=8






y(h)=x(k+2)




Дискретная  функция:

Любая последовательность x(k) может быть записана в виде .

Пример: x(k)=(k)+2(k-1)+3(k-2)++2(k-3)+0(k-4)-2(k-5)-3(k-6)-2(k-7)

с периодом N=8

7.2. Основные понятия о ЦОС


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



x(n)=x(n); y(n)=y(n).

Как правило ДС имеют вполне определенное представление и образуют класс линейных ковариантных по времени систем (ЛИВ), которые полностью характеризуются своим откликом h(n) (импульсной характеристикой) на единичный импульс (n), где



Последовательность {h(n)} называют импульсной характеристикой (ИХ). При этом, последовательность на выходе:



Это выражение называется оператором свертки и обозначается y(n)=x(n)*h(n)


Б1. Цифровая фильтрация сигналов заключается в восстановлении полезного сигнала sk с периодом Т1 и амплитудой А1 из измерений , где wk - синусоидальный высокочастотный сигнал помехи с периодом Е2 и амплитудой А2;vk - белый гауссовый шум измерителя с интенсивностью .

Дискретная передаточная функция фильтра имеет вид:

,

где х - заданный вектор значений входного сигнала; у - вектор значений выходного сигнала фильтра; b, а - векторы коэффициентов передаточной функции фильтра, определяющие его частотную характеристику.

В случае n=0, фильтр называют нерекурсивным (КИХ-фильтром), а число m - порядком фильтра. Если n>0 фильтр называют рекурсивным (БИХ-фильтром). Порядком фильтра при этом называют наибольшее из чисел m и n.

Задача заключается в определении по исходным данным (например, по заданной амплитудно-частотной характеристике (АЧХ)) векторов b, а таким образом, чтобы получить АЧХ как можно более близкой к желаемой, что необходимо продемонстрировать соответствующими графиками, выведенными в одном графическом окне.

В MatLAB расчет БИХ-фильтра по заданной амплитудно-частотной характеристике (АЧХ) производится процедурой yuiwalk, а расчет КИХ фильтра процедурой fir2. В MatLAB имеются и другие процедуры для расчета БИХ- и КИХ-фильтров.

АЧХ может быть задана векторами f[0,...,1] (частоты в нормированных значениях) и m[0,...,1] - соответствующих значений отношений амплитуд выхода и входа. Нормирование частоты производится следующим образом:

1) по заданному значению  определяется Fmax=1/, которая принимается за 1; 2) по заданной длительности процесса Т рассчитывается дискрет частоты df=1/T; 3) по вычисленным данным формируется вектор f[0,...,1].

Б2. Спектральный анализ сигналов заключается в выявлении гармонического спектра, т.е. в определении частот гармонических составляющих сигнала (выявление частотного спектра), амплитуд этих составляющих (амплитудного спектра) и их начальных фаз (фазового спектра).

Известно, что любой периодический процесс x(t) с периодом Т может быть представлен в виде комплексного ряда Фурье:

(1)

где  - временной интервал дискретизации процесса; m - номер точки от начала процесса (t=(m-1)); n=(Т/) - число точек, соответствующих промежутку времени Т, на котором задан процесс; 2/n - интервал дискретизации по частоте; k - номер значения частоты.

Значение X(k) соответствует амплитуде сигнала x(m) на частоте (2/n)k, поэтому амплитудный спектр может быть получен по формуле (1).

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

Взаимная корреляционная функция двух стационарных процессов x1(t), x2(t) определяется в дискретном времени соотношением:

(2)

Взаимная спектральная плотность двух стационарных процессов x1(t), x2(t) определяется в дискретном времени соотношением:

(3)


Например: y(n)=0.5y(n-1)+x(n);

y(-1)=0; x(n)=(n)- начальное состояние.

y(n)=h(n)- отклик на единичный импульс.

h(n)=0.5h(n)+(n), отсюда

n=0; h(0)=0.5h(-1)+(0)=1, h(-1)=0, (0)=1;

n=1; h(1)=0.5h(0)+(1)=0.5, (1)=0;

n=2; h(2)=0.5h(1)+(2)=0.25, (2)=0;

Отсюда: h(n)=(0.5)n – импульсная характеристика.

Таким образом, если известно уравнение ДС, то задав начальные условия, можно определить импульсную характеристику ДС. И наоборот, зная импульсную характеристику и значения входного сигнала, всегда можно определить значения выходного сигнала.

h(n)=0, при n<0,

x(n)=0, при n<0, поэтому

Если x(m) и h(n) определены только для 0
По виду ИХС ЛИВ-системы разбиваются на две группы-системы с конечной импульсной характеристикой (КИХ) и системы с бесконечной импульсной характеристикой (БИХ). Если последовательность h(n) ограниченна во времени – КИХ – система, иначе БИХ.

Кроме представления сигналов и систем во временной области, их можно представить в области Z – преобразования.

Z- преобразованием последовательности {X} называется функция X(z) комплексного переменного z, а такая, что

Где z=r*exp(j)=+j - комплексная переменная (см. рис.)

Z=x(k)/x(k-1)=y(k)/y(k-1) – временная задержка.

При r=1, z=exp(j).

Ряд



сходится, если


Область сходимости определяется радиусом круга R в z- плоскости.



Например: Пусть x(n)=(0.5)nu(n), где u(n)- единичная импульсная функция:

u(n)=|1, если n 0

|0, в противном случае

Тогда:

Z- преобразование обладает двумя важными свойствами:

  1. x(n)*h(n)<->X(z)*H(z)

  2. x(n+k)<->zk *X(z)

Преобразование Фурье X(ejw) дискретной последовательности {x(n)}

можно получить, вычислив Z – преобразование в точках единичной окружности, т.е.

X(ejw)=X(z) | z=ejw

В области Z – преобразования операция свертки сводится к простому умножению последовательностей: Y(z)=H(z)*X(z)

Функция H(z) называется передаточной функцией системы и определяется отношением:

Свертка сигналов: y(n)=u(n)*w(n)

Если u(n) и w(n) – последовательности сигналов конечной длины N, т.е. n=0,1,2,...,N-1, то линейная свертка этих, последовательностей

В цифровой фильтрации:



u(n)- обрабатываемая входная последовательность, w(n)-ИХ ЦФ:

y(n)- может быть сглаженный сигнал (сглаживающая фильтрация), либо выделенный полезный сигнал (согласованная фильтрация), либо сигнал – результат другого алгоритма обработки.

С точки зрения обеспечения вычислительной эффективности для вычисления свертки часто сначала переходят в область преобразования, в котором операции




Рис. 7.1. Аналоговая обработка сигнала


Пример аналоговой фильтрации сигнала приведен на рис. 7.1. Используемый в фильтре операционный усилитель позволяет расширить динамический диапазон обрабатываемых сигналов. Форма амплитудно-частотной характеристики фильтра определяется значениями величин Rf, Сf . Для аналогового фильтра сложно обеспечить высокое значение добротности, характеристики фильтра сильно зависят от температурного режима. Компоненты фильтра вносят дополнительный шум в результирующий сигнал. Аналоговые фильтры трудно перестраивать в широком диапазоне частот.

Аналогичные результаты обработки сигнала могут быть получены с помощью цифровой схемы, показанной на рис. 7.2.




Рис. 7.2. Цифровая обработка сигнала


Компонентами схемы являются фильтры низкой частоты (ФНЧ), выполняющие предварительное и последующее удаление из частотного спектра дополнительных гармоник сигнала, аналого-цифровой (АЦП) и цифро-аналоговый (ЦАП) преобразователи сигнала и собственно цифровой фильтр с конечной импульсной характеристикой. Амплитудно-частотная характеристика фильтра определяется значениями коэффициентов фильтра C(k). Изменяя количество коэффициентов (длину фильтра) и их значения, можно получить фильтр с любой требуемой амплитудно-частотной характеристикой. Вносимый шум (шумы квантования) зависит от частоты и разрядности АЦП и ЦАП, а также точности вычислений.

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

Существует классификация фильтров по виду импульсной характеристики: фильтры с конечной импульсной характеристикой КИХ (FIR) и фильтры с бесконечной импульсной характеристикой БИХ (IIR).

Структура цифровых фильтров типа FIR и IIR приведена на рис. 7.3 и 7.4 соответственно. На рисунках приняты обозначения: Т - блок задержки на 1 такт, х - блок умножения, + - блок сложения.



Рис. 7.3. Структура каскада фильтра типа FIR

w(n) = x(n) - ai1 x w(n-1) - ai2 x w(n-2)

y(n) = w(n) + bi1 x w(n-1) + bi2 x w(n-2)



Рис. 7.4. Структура каскада фильтра типа II R


Для эффективной реализации алгоритмов цифровой фильтрации необходима аппаратная поддержка базовых операций: умножения с накоплением (MAC), модульной адресной арифметики, нормировки результатов арифметических операций.

Другим часто выполняемым преобразованием сигнала является Фурье-преобразование (прямое и обратное).

Любой сигнал может быть представлен как во временной области (совокупность графиков в координатах время - амплитуда), так и в частотной области (последовательность графиков в координатах частота - амплитуда). В зависимости от сложности реализации обработки может быть выбрано либо частотное, либо временное представление сигнала. Фурье-преобразование позволяет осуществлять перенос сигнала из одной формы представления в другую.

ДПФ в аналитическом виде задается формулой:



где (nT) - последовательность отсчетов сигнала.

Существует большое разнообразие реализации дискретного преобразования Фурье. В ряде алгоритмов используются приемы, позволяющие сократить объем требуемых вычислений. Эти алгоритмы известны под общим названием "быстрое преобразование Фурье".

На практике интервал суммирования ограничен некоторым числом временных отсчетов - N, зависящим от требуемой точности преобразования. В этом случае формула принимает вид:



N - называют числом точек преобразования.

Для уменьшения числа операций умножения при выполнении ДПФ используется метод, получивший название "прореживание по времени". Сущность данного метода заключается в том, что преобразование Фурье по последовательности из N точек может быть выражено через преобразования, выполненные по подпоследовательностям этой последовательности, каждая из которых имеет длину N/2 точек. Так как число умножений пропорционально числу точек преобразования, то процедура двукратного преобразования по N/2 точкам (с последующим объединением результатов) представляется более выгодной с точки зрения времени вычисления. Применив к последовательности отсчетов процедуру прореживания рекурсивно, получим схему вычислений, изображенную на рис. 7.5.

На рисунке k/N обозначает умножение на коэффициент d.

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



Рис. 7.5. Схема БПФ по 8 точкам


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

7.5. Сигнальные микропроцессоры


Для цифровой обработки сигналов используются так называемые сигнальные микропроцессоры (DSP-процессоры).

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

Сигнальные процессоры обладают высокой степенью специализации. В них широко используются методы сокращения длительности командного цикла, характерные и для универсальных RISC-процессоров, такие как конвейеризация на уровне отдельных микроинструкций и инструкций, размещение операндов большинства команд в регистрах, использование теневых регистров для сохранения состояния вычислений при переключении контекста, разделение шин команд и данных (Гарвардская архитектура). В то же время для сигнальных процессоров характерным является наличие аппаратного умножителя, позволяющего выполнять умножение двух сорной системы с более простыми процессорами, обрабатывающими целочисленные операнды. Примерами таких, так называемых медийных процессоров, служат Mediaprocessor компании MicroUnity, Trimedia компании Philips, Mpact Media Engine компании Chromatic Research, NV1 компании Nvidia, MediaGx компании Cyrix.

Эти процессоры создавались, исходя из потребности обработки в реальном времени видео- и аудиоинформации в мультимедийных ПК, игровых приставках, бытовых радиоэлектронных приборах. В связи с более простой схемотехникой по сравнению с универсальными сигнальными процессорами стоимость медийных процессоров достаточно низкая (порядка $100), а значение показателя "производительность/стоимость" на два - три порядка больше. Пиковое значение производительности медийных процессоров составляет несколько миллиардов целочисленных операций в секунду.

В числе наиболее распространенных сигнальных процессоров можно назвать изделия следующих компаний Motorola (56002,96002), Intel (i960), Texas Instruments (TMS320Cxx), Analog Devices (21xx, 210xx). Большая производительность, требуемая при обработке сигналов в реальном времени, побудила две последние из перечисленных компаний выпустить транспьютерные семейства микропроцессоров TMS320C4x и ADSP2106x, ориентированные на использование в мультипроцессорных системах.

Выбор того или иного процессора для реализации конкретного проекта - многокритериальная задача, однако следует отметить предпочтительность процессоров компании Analog Devices для приложений, требующих выполнения больших объемов математических вычислений (таких как цифровая фильтрация сигнала, вычисление корреляционных функций и т.п.), поскольку их производительность на подобных задачах выше, чем у процессоров компаний Motorola и Texas Instruments. В то же время для задач, требующих выполнения интенсивного обмена с внешними устройствами (многопроцессорные системы, различного рода контроллеры), предпочтительнее использовать микропроцессоры компании Texas Instruments, обладающие высокоскоростными интерфейсными подсистемами.

Компания Motorola является лидером по объему производства сигнальных микропроцессоров, большую часть из которых составляют дешевые и достаточно высокопроизводительные 16-и 24-разрадные микропроцессоры с фиксированной точкой. Расширенные коммуникационные возможности, наличие достаточных объемов внутрикристальной памяти для данных и программы, возможности защиты программы от несанкционированного доступа, поддержка режима энергосбережения делают эти микропроцессоры привлекательными для использования не только в качестве специализированных вычислителей, но и в качестве контроллеров в промышленных роботах, бытовых электронных приборах, системах управления оружием, средствах беспроводной связи.

7.5.1. Сигнальные микропроцессоры компании Texas Instruments


Сигнальные процессоры компании Texas Instruments [44] разделяются на два класса: это процессоры для обработки чисел с фиксированной точкой и процессоры для обработки чисел с плавающей точкой. Первый класс представлен тремя семействами процессоров, базовыми моделями которых являются соответственно TMS320.10,.20,.50. Второй класс включает процессоры TMS320.30,.40, TMS320C80, которые поддерживают операции с плавающей точкой и представляют собой мультипроцессорную систему, выполненную в одном кристалле, а семейство TMS320C6x включает процессоры как с фиксированной, так и с плавающей точкой.

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

(i)Микропроцессоры семейства TMS320Clx


Первый процессор семейства - TMS320C10 был выпущен в 1982 г. и благодаря ряду удачных технических решений получил широкую распространенность [45]. Структура типичного представителя семейства - микропроцессора TMS320C15 приведена на рис. 7.7.




Риc 7.7. Структура микропроцессора семейства TMS320Clx


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

TMS320C10 является 16-разрядным процессором. Его адресное пространство составляет 4К 16-разрядных слов памяти программ и 144 16-разрядных слов памяти данных. Длительность командного такта процессора составляет 160-200 нс.

Арифметические функции в процессоре реализованы аппаратно. Он имеет аппаратные умножитель (MULT), устройство сдвига (SHIFTER), аппаратную поддержку автоинкремента/декремента адресных регистров данных (ARO, AR1).

С внешними устройствами процессор взаимодействует через 8 16-разрядных портов ввода/вывода. Предусмотрена возможность обработки внешнего прерывания.

Другие микропроцессоры данного семейства (С 14 - С 17) имеют аналогичную архитектуру и отличаются длительностью командного такта, конфигурацией памяти, наличием (или отсутствием) дополнительных периферийных устройств (например, в С17 - дешифратор данных по /А-закону, преобразователь логарифмической импульсно-кодовой модуляции (ИКМ) в линейную ИКМ).

(ii)Микропроцессоры семейства TMS320C62x


Новое семейство DSP-процессоров компании Texas Instruments TMS320C62x включает в себя процессоры как с фиксированной, так и с плавающей точкой [56-58]. Первый представитель данного семейства -TMS320C6201, оперирует с данными в формате с фиксированной точкой.

С производительностью до 1,6 млрд. операций в секунду и широким набором инструментальных средств представители этого семейства могут претендовать на экономичное решение многих задач, требующих высокопроизводительной обработки сигналов. В числе новых областей применения микропроцессоров семейства 'С6х компания Texas Instruments называет:

• сети TCP/IP;

универсальная беспроводная связь;

• удаленная медицинская диагностика;

• радикально новые возможности телефонии;

• персональные средства информационного обеспечения и защиты. В то же время возможно использование микропроцессоров TMS320C62x и в уже существующих прикладных системах для увеличения их производительности. К таким системам относятся:

• базовые станции мобильной связи;

модемные пулы и серверы удаленного доступа;

• xDSL модемы следующего поколения и кабельные модемы;

• многоканальные телефонные платформы, включая центральные офисные коммутаторы, РВХ и системы речевой передачи сообщений;

• мультимедийные системы.

Первое устройство семейства - TMS320C6201, помимо процессорного ядра, содержит:

1 Мбит внутрикристальной памяти (512 Кбит для программы, 512Кбит для данных);

32-битовый интерфейс внешней памяти, поддерживающий стандарты памяти SDRAM (статическая память с динамическим рандомизированным доступом), SBSRAM (синхронная пакетная статическая память), SRAM (статическая память);

два последовательных расширенных буферизированных порта (EBSP);

16-битовый порт host-процессора;

два канала доступа к памяти данных с возможностью начальной загрузки;

генератор интервалов времени.

Построенный в соответствии с разработанной компанией Texas Instruments архитектурой VelociTI процессор 'Сб2хх - первый из сигнальных VLIW - процессоров, использующий для повышения производительности параллелизм уровня команд. Традиционная VLIW-архитектура подразумевает наличие нескольких параллельно работающих функциональных устройств, выполняющих за один такт несколько инструкций. Принимая основные принципы повышения производительности суперскалярных процессоров, архитектура VelociTI позволяет обеспечить лучшую эффективность за счет ослабления ограничений на порядок и способ выполнения инструкций. Такая архитектурная гибкость создает предпосылки и для повышения эффективности компиляторов.

Структура микропроцессора TMS320C6201 приведена на рис. 7.17.

Процессор TMS320C6201 состоит из трех основных частей: центрального процессора (или "ядро"), периферийных устройства и памяти.




Рис. 7.17. Структура микропроцессора TMS320C6201


Ядром TMS320C6201 является VelociTI VLIW - процессор с 8 функциональными модулями, включая 2 умножителя и 6 АЛУ. Модули взаимодействуют через два регистровых файла, содержащих по 16 32-разрядных регистров. ЦП может выполнять до 8 команд за один такт.

Программный параллелизм выявляется на этапе компиляции, анализ зависимости по данным аппаратными средствами на стадии выполнения не производится. Код программы выполняется на независимых функциональных устройствах в той же последовательности, в которой программируется.

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

Процессор может оперировать с 8/16/32 - разрядными данными. Для приложений, требующих высокой точности вычислений, предусмотрена возможность вычислений с 40-разрядными операндами. Для результатов всех основных арифметических операций выполняется округление и нормализация. В процессоре реализованы операции над битовыми полями, такие как "выделить" (extract), "установить" (set), "очистить" (clear), "подсчет битов" (bit counting).

Центральный процессор имеет два тракта обработки данных, каждый из которых содержит функциональные модули (.L, .S, .М, .D) и регистровый файл (16 32-разрядных регистров). Функциональные модули выполняют сдвиг, умножение, логические и адресные операции. Все операции выполняются над регистрами. Два набора устройств адресации данных (.D1 и .D2) отвечают исключительно за все пересылки данных между регистровым файлом и памятью. Управляющий регистровый файл определяет различные аспекты функционирования процессора.

Процесс обработки VLIW начинается с выборки из памяти команд 256-битового пакета. Команды связываются для совместного выполнения в выполняемый пакет (до 8 команд) по значению младшего бита команды (LSB).

Устройство выборки-декодирования-диспетчеризации команд может направлять к функциональным модулям до 8 32-разрядных команд за один такт по каждому из путей обработки (А и В).

В 'С62хх реализованы прямой и циклический (для регистров А4-А7 и В4-В7) способы адресации. Способ адресации определяется регистром режима адресации (AMR).

'С62хх имеет 14 прерываний, соответствующих сигналу Reset, немаскируемому прерыванию (NMI) и прерываниям с номерами 4-15.

Процессоры 'С62хх содержат внутрикристальную память, которая может использоваться как память программ, или программный кэш. Интерфейс внешней памяти процессора (EMIF) объединяет в единое адресное пространство внутреннюю и внешнюю памяти.

Внутрикристальная память разделена на память данных и память программ. 'С62хх имеет два 32-разрядных порта к памяти данных и один 256-разрядный порт к памяти программ для выборки инструкций. TMS320C6201 имеет по 64Кбайт памяти данных и программ на кристалле. В процессоре используется расслоение памяти данных (4 16-разрядных банка) для повышения скорости выборки за счет одновременного обращения к различным банкам памяти.

Дополнительно процессоры семейства 'С62хх могут содержать на кристалле интерфейс внешней памяти (EMIF), контроллер ПДП (DMA), интерфейс хост-порта (HPI), средства энергосбережения, расширенные буферизированные последовательные порты, 32-разрядные таймеры.

7.5.2. Сигнальные микропроцессоры других фирм и компаний


Микропроцессоры компании Analog Devices образуют два семейства: ADSP21xx и ADSP210xx [59,60].

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

Второе семейство микропроцессоров ADSP210xx объединяет 32-разрядные микропроцессоры, ориентированные на сигнальные алгоритмы, требующие выполнения вычислений с плавающей точкой. Семейство представлено микропроцессорами ADSP21010, ADSP21020, ADSP21060, ADSP21062.

Сигнальные микропроцессоры компании Motorola подразделяются на семейства 16-и 24-разрядных микропроцессоров с фиксированной точкой - DSP560хх, -561хх, -563хх, -566хх, - 568хх и микропроцессоры с плавающей точкой - DSP960хх.

Основные принципы, положенные в основу архитектуры сигнальных микропроцессоров Motorola были разработаны и воплощены в семействе DSP560xx.

Типовая структура представителя семейства DSP560xx микропроцессора приведена на рис. 7.25. Основными компонентами микропроцессора являются:

• шины данных;

• шины адресов;

• АЛУ данных (ALU);

• устройство генерации адресов (AGU);

• устройство программного управления (PCU);

• расширение памяти (порт А);

• внутрикристальная схема эмуляции (OnCEдд);

• схема умножения частоты.

Процессор содержит три независимых исполнительных устройства:

PCU, AGU и АЛУ данных. Пересылка данных между регистрами исполнительных устройств осуществляется по двунаправленным 24-разрядным шинам: шине данных Х (XDB), шине данных Y (YDB), программной шине данных (PDB) и глобальной шине данных (GDB). Некоторые команды используют шины данных Х и Y как единую 48-разрядную шину. Для повышения скорости выборки операнды команды загружаются в АЛУ из модулей памяти Х и Y по независимым шинам XDB и YDB, а команда - по программной шине данных PDB. Обмен данных с периферийными устройствами осуществляется по шине GDB.

Шинная структура поддерживает основные пересылки данных типа регистр-регистр, регистр-память, память-регистр. За один такт могут быть переданы два 24-битовых и одно 56-битовое слова. Обмен между шинами осуществляется через внутренний коммутатор - матрицу, позволяющую соединить любые две внутренние шины без добавления тактов задержки. Адреса для внутренних Х- и Y- памятей данных передаются по двунаправленным 16-разрядным шинам ХАВ и YAB, а адреса памяти команд - по двунаправленной программной шине (РАВ). Внешняя память адресуется с помощью однонаправленной шины, являющейся выходом трехвходового мультиплексора шин ХАВ, YAB, РАВ.



Рис. 7.25. Структура микропроцессора семейства DSP560xx


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

АЛУ данных микропроцессора выполняет над данными все арифметические и логические операции и содержит четыре 24-битовых регистра-источника, два 48-битовых регистра-аккумулятора, два 8-битовых регистра расширения аккумуляторов, устройство сдвига аккумулятора, две

схемы сдвига/ограничения данных и параллельное (не конвейеризированное) однотактовое устройство умножения с накоплением (MAC).

Аккумуляторы А и В служат в качестве буферных регистров шин XDB и YDB, а их 8-битовые регистры расширения используются схемой сдвига/ограничения для фиксирования и обработки ситуаций переполнения в результате арифметических операций или сдвига.

АЛУ данных позволяет выполнять умножение в режиме удвоенной точности (задается установкой соответствующего бита в регистре состояния процессора). Результат умножения двух 48-битовых операндов имеет 96 разрядов и содержится в 4 24-битовых регистрах.

Устройство генерации адреса (AGU) работает параллельно с другими компонентами процессора, обеспечивая вычисление требуемых адресов данных в памяти за один такт с помощью двух одинаковых 16-битовых арифметических устройств, каждое из которых может выполнять линейные, модульные и циклические арифметические операции.

С каждым адресным АЛУ связаны три набора из 4 регистров: адресных - RO-R3 и R4-R7, смещения - NO - N3, N4 - N7 и модификаторов МО -МЗ и М4 - М7. Регистры используются тройками : RO:NO:MO, R1:N1:M1, R2:N2:M2, R3:N3:M3, R4:N4:M4, R5:N5:M5, R6:N6:M6 и R7:N7:M7. Адрес формируется из содержимого адресного регистра и регистра смещения с учетом типа арифметики, который определяется содержимым регистра модификатора.

Устройство программного управления генерирует адреса программы (предварительная выборка команд), декодирует, аппаратно обрабатывает команды циклического перехода, внутренние и внешние прерывания или исключительные ситуации. Оно содержит 15-уровневый 32-битовый системный стек (SS) и 6 непосредственно адресуемых регистров: счетчик команд (PC), счетчик цикла (LC), регистр адреса цикла (LA), регистр состояния (SR), регистр режима (OMR) и указатель стека (SP). 16-битовый регистр PC может адресовать до 65536 команд. SS сохраняет PC и SR при вызове процедур, обработке прерываний и выполнении программных циклов.

Команды процессора выполняются в 3-этапном (предвыборка, декодирование, выполнение) конвейере с последующим анализом 5 возможных состояний процессора: "нормальное", "исключение", "сброс", "ожидание" и "останов".

В состав PCU входят три блока: блок декодирования программы (PDC), генератор адреса программы (PGA) и программный контроллер прерываний (PIC). PDC декодирует команды, загруженные в командный буфер, и генерирует все необходимые для выполнения команды управляющие сигналы. Содержимое командного буфера дублируется для более эффективного выполнения команд повтора (REP) и перехода.

Основное назначение блока PGA - аппаратное формирования адресов циклов. При инициализации цикла адрес его начала помещается в стек, значение переменной цикла содержится в регистре LC, адрес конца цикла - в LA. При завершении очередной итерации адрес перехода извлекается из стека, а не формируется программно, что существенно повышает скорость обработки.

PIC получает все запросы на прерывание, классифицирует их и генерирует адрес вектора прерываний. Прерывания могут быть маскируемыми -уровни 0 (нижний уровень), 1, 2 и немаскируемыми - уровень 3 (высший уровень).

Порт расширения памяти А обеспечивает синхронный обмен данными с различными типами памяти и внешними устройствами по 24-разрядной шине данных. Порт работает с высоко- и низкоскоростной памятью, а также другими универсальными и сигнальными процессорами в режиме master/slave.

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

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

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

Команды микропроцессора имеют переменную длину: 1 или 2 24-битовых слова. Типичная команда микропроцессора содержит поле кода операции, определяющее соответствующее действие ALU, AGU или PCU, поле операндов и два поля, задающие пересылки, выполняемые параллельно с основной операцией по шинам XDB и YDB. Пример команды MAC приведен на рис. 7.26.

Opcode MAC

Operands

XO,YO,A

XDB

X:(RO)+,XO

YDB

Y:(R4)+,YO

Рис. 7.26. Структура команды микропроцессора DSP-560xx


Благодаря своей высокой производительности и низкой стоимости семейство микропроцессоров DSP 560хх широко используется в самых различных областях: коммуникационных системах, цифровых аудиосистемах, робототехнике, системах медицинской диагностики, в военной электронике.

Дальнейшие работы по совершенствованию сигнальных процессоров проводились по трем направлениям:

• наращивание производительности 24-разрядных процессоров за счет конвейеризации функциональных модулей и повышения тактовой частоты;

• создание дешевых 16-разрядных микропроцессоров с расширенными средствами взаимодействия с периферией;

• разработка высокопроизводительных процессоров, включающих блок вычислений с плавающей точкой.

Добавить в свой блог или на сайт

Похожие:

7 Общие сведения о цифровой обработке сигналов iconПояснительная записка к курсовому проекту по дисциплине «Процессоры для цифровой обработки сигналов»
Стивен Смит. Научно-техническое руководство по цифровой обработке сигналов [Электронный ресурс] / Пер с англ фирмы «Автэкс». – С-пб,...

7 Общие сведения о цифровой обработке сигналов iconЛекция посвящена перспективной области человеческих знаний цифровой обработке сигналов, то есть обработке средствами вычислительной техники последовательностей равноотстоящих во времени и пространстве отсчетов
Цифровая обработка сигналов: микропроцессоры, платы, средства разработки, программное обеспечение 11

7 Общие сведения о цифровой обработке сигналов iconКлассификация основных видов искажений при цифровой обработке сигналов в телекоммуникационных системах

7 Общие сведения о цифровой обработке сигналов iconЦифровая обработка сигналов
Разработать устройство, представляющее собой цифровой фильтр с бесконечной импульсной характеристикой на основе процессора цифровой...

7 Общие сведения о цифровой обработке сигналов iconГадзиковский В. И. Теоретические основы цифровой обработки сигналов / В. И.
Гадзиковский В. И. Цифровая обработка сигналов. Вып Теоретические основы цифровой обработки сигналов / В. И. Гадзиковский. — Екатеринбург:...

7 Общие сведения о цифровой обработке сигналов iconГадзиковский В. И. Теоретические основы цифровой обработки сигналов / В. И.
Гадзиковский В. И. Цифровая обработка сигналов. Вып Теоретические основы цифровой обработки сигналов / В. И. Гадзиковский. — Екатеринбург:...

7 Общие сведения о цифровой обработке сигналов iconУровень подготовки, необходимый для изучения курса
Ознакомление с классическими и современными методами описания цифровых сигналов и систем их обработки, включая цифровую фильтрацию...

7 Общие сведения о цифровой обработке сигналов iconПояснительная записка к курсовому проекту по дисциплине: «Процессоры для цифровой обработки сигналов»
Вычислительная система цифровой обработки сигналов в реальном времени пояснительная записка

7 Общие сведения о цифровой обработке сигналов iconПояснительная записка к курсовому проекту по дисциплине: «Процессоры для цифровой обработки сигналов»
Вычислительная система цифровой обработки сигналов в реальном времени пояснительная записка

7 Общие сведения о цифровой обработке сигналов iconПояснительная записка к курсовому проекту по дисциплине: «Процессоры для цифровой обработки сигналов»
Вычислительная система цифровой обработки сигналов в реальном времени пояснительная записка


Разместите кнопку на своём сайте:
lib.convdocs.org


База данных защищена авторским правом ©lib.convdocs.org 2012
обратиться к администрации
lib.convdocs.org
Главная страница