Солонина А., Улахович Д. Алгоритмы и процессоры цифровой обработки сигналов (2002) (1095891), страница 13
Текст из файла (страница 13)
д. Такил< образом. <ерл<ин "архитектура" относится как к аппаРатным средствам ши«<рогрзмлшому обеспечению, так и к их комбинации. С люмснта появления самых первых ЦПОС (1982 г.) их архитектура формировалась алгоритмами ЦОС. Любые особенности атил процессоров опрелеля<отся требованиями, возникающими при реализации алгоритмов цифровой обработки сигналов (ЦОС). Исследование типичных алгоритмов ЦОС и их вы ' вычислительных требовании является «учшим способом лля изучения и понимания развития архитектуры ЦПОС [3!.
Трали шюн Ралишюниым простым примером, на которол» нлл<острируются особенност<' алгоритмов цОС и процессоров цПОС. является алгоритм рсзлизащщ К ИХ-фильтра. Выло однои сигнал фильтра опрсдсчяется выражением У вЂ” < ?(и) = )~~х(п -<1.1<(<), <=И где х -'(п) — отсчеты входного сигнала; /<(<) — коэффициенты фильтра. < З1'к < 5 бб Рис. 2.2. Архитектура фон Неймана Рис. 2.3. Гарвардская врхигектурв Апгорнпиы и процессоры циФровой обработки сигналов В соответствии с алгоритмом, выборки входного сигнала умножаются на козвя ~ з,,фицненты филыра и счлглшруются.
Подобные вычислсшш используются и во многих другил алгоритмах ЦОС (сзс пав) Д. Таким образом, базовой операцией НОС является операция умножения и лобавление (накопзение) результата умножения. Подобную операцию часто обознача!от ири описаниях мнемоникой МАС. Для того чтобы работать с высокой производительностью. и!юцсссор должен выполнять операцию МАС за олин цикл (талт) работы процессора. Отсчеты сигнала, коэффициенты фильтра и команды программы хранятся в памяти. Для выполнения операции требуется произвести три выборки из памяти— кол~анды и двух сомножителей.
Слеловательно, лля работы с высокой яроизволительностью эти три выборки необхолимо произвести за олин такт работы процессора. При этом позразул!еваегся, что результаг операции остается в устройстве выполнения операции (в центральном процессорном устройстве ((ПУ). а не помсшается в память. В более общем случае нужна еще операция записи результата в память, т. е. необходимы четыре обращения к палгяти за цикл.
Талил~ образом, производительность процессора прежде всего определяется возможностями обмена данными между ППУ и памятью процессора и организациеи их взаимодействия. Ниже Рассматриваются различные илеи и методы, используемые в ЦПОС для повышения произвошпечьности системы. Эти идеи являются обшилш для большинства процессоров и в той изи иной форме сводятся к параллелизму — одновременной работе разнообразных модулей, одиовремеинол!> выполнению разныл операции в нескольких модулях. 2.2.1. Архитектура фон Неймана и гарвардская архитектура На рис.
2.2 показана тралиционная структура вычислительной системы, соответствуюшая "фон-иейллановской" вычислительной машине. Американский математик Д. к)юн Нейман (1903 — 1957) предложил концепцию вычислительной машины (и в частности, хранимой в памяти программы). которая лежит в основе большинства современных машин (40!. Одним из основнык моментов этой концеиц!ш является то, что система обладает единой памятью, в которои хранятся и команды программы и лаиные.
Система содержит одну шину данных (ШД). по которой иерелаются и команды програлгны, и данные. Следовательно. в такой системе требуется трн цикла для выборки команды и двух сомножите ~ей (то сеть для выполнения опер.щии МАС). В процессорах ЦПОС применяется гарвардская архитектура вычислительной системы. приведенная на рис. 2.3. Полсбиая архитектура названа по работе, выполненной в 40-х топал ХХ века в университете Гарварда пол руководством Г. Айлена (!900 — !973) (7!.
В соответствии с этой концепцией для хранения программы (команд) и данных используются Различные уст- Глава 2. Архитектура циФровых процессоров обработки сигналов роиства памяти. Соответственно в системе имеется лва комплекта шии для этих чстройстш шина адреса памяти программ (ШАПП). шина данных пал~лги программ для работы с памятью программ (ПП) и шина адреса памяти данных (ШАПД). шина таиных памяти данных [ШДПД) для работы с пал1ятыо данных (ЛД).
В системе с гарвар.!ской архитектурой можно олновремснно производить опе!хл!ши обрашения к различным усгроиствам памяти, т, е. сшгкроино выбирать команду из памяти програл~м ПП по вшие ШДПП и сочиожитель из памяти данных ПД по шине ШДПД. Соответственно при этом для выполнения операции МАС требуется два цикла работы процессора. Реально за счет различных дополнительных мер почти всегда время операщш МАС сводится к одному циклу. Различные варианты реализации операции рассмотрены ниже. В частности, ПП иногда использ>ется не только для хранения кол~вид, но и данных.
Поэтому при описаниях ЦПОС говорят о модифицированной гарвардской архитектуре. Следует лишь иметь в виду, что несколько комплектов шии ддя одновременной выборки данных и команд из ПД и ПП используются только внутри кристалта ЦПОС при работе с внутренней памятью процессора. для обраШения к внешней памяти во всех процессорах применяется один комплект внешних шии — ВША и ВШд. Это определяется ограничениями, накладываем емыми технологией на количество выводов ИС. Поэтому Разработчики систем истем ПОС стремятся использовать только внутреншою память, и процессоры выпускаются с большов внутренней памятью как ПП, так ПЛ. При испо.
спользовании внешней памяти, особешю для храпения програл|л~ы и лаины, ых. увеличивается время. затрачилгаемое на выполнение операций. НекотоРые вопросы использования внешней памяти Рассмотрены в разд. 2.5. Глава 2. Архитектура цифровык процессорое обработки сигнелое бб Алгоритмы и процессоры цифровой обработки сигналов 2.2.2. Структура процессора ЦПРС На рис.
2.4 представлена обобщенная структура процессора ППОС, отра- жающая только основной состав узлов процессора и их взаимодействие. Для хранения цнфорлшции в процессоре используются память программ ПП и память ланных ПЛ, которые связаны с лругими устройствах!и шииамн. ((ПОС имеет шины различного назначения Шина адреса ПП ШАПП предназначена лля передачи алресов ячеек памяти программ. Шина данных ПП ШЛПП служит для перелачи команд, хранимых в памяти программ, а также ланпых при использовании ПП лля хранения данных (например, таблиц коэффициентов цифровых фитьтров). Шины адреса ПЛ ШАПЛ и данных ПЛ ПИПЛ применяются для псрелачн влрсса и данных памяти данных. Количество ишн, особенно инги ланных в различных процессорах существенно отличается.
Увеличение количества ШЛПД связано с увеличением производительности процессо)юв за счет олновремеиной передачи данных для использования в различных модулях. Это дает возможность мочулям одновременно выполнять определенные операции. В некоторых процессорах (например, ТМэ320С5000) производится разлеление функшгй шины Ланиых: используются различные шины ленных для чтения и записи информации. Все щюцессоры ((ПОС имеют внутрен|по|о (внутрикристальную) память.
Однако внутренней памяти процессора инопш оказывается недостаточно лля хранения программ и данных. Кроме того, процессор может не иметь внутренней памяти типа ПЗУ лля хранения программы, которая не изменяется. В этих случаях ьюжет использовазься внешняя память, связь с которой осуществляется через интерфейс внешних шин и виеишие шипы адреса ВША и данных ВШЛ.
Как уже указывалось ранее. количество внешних шни ограничено двумя, поэтому при использовании внешних ПП и ПЛ одновременное обращение к ним может вызвать конфликт и задержку операции чте)шя и чи записи. Внешние шины могут использоваться не только для обращения к внешней памяти. по и к другим ачрссуемым устройствам, например параллельным портам. Устройство управления выполнением программы в соответствии с команлами.
читаемыми из ПП, вырабгпыааст сигналы управления рабогой всех узлов процессора. Оно связано с рсгпстрамп состояния и управления. В эти регистры. адресуемые как ячейки памяти, заиосигся на этапе щшциалнзации системы рагличная информация, управляющая работой п)юцессо)ю, например информация об используемой конфигурации памяти и распречелении алресов между внешней и внутренней памятью.
В эти же регистры заносится информация о текущем состоянии процессора, например, о наличии на входе запроса иа прерывание. Алгоритмы и процессоры цифровой обработки сигналов На >стройство управления от внешних устройств ВУ поступают запросы на прерывания основной программы работы. Как уже отмечалось. ИПОС. как правило, работают с ВУ и их сипгаламгг в реальнолг лгасштабе времени. Рабога в режиме с прерываниями и.
в частности. ввол/вывод информации по прерываниялг позволяют процессору согласовывать свою работу и прием/выдачу сигналов со скоростью (частотой) работы ВУ. Ввод/вывод информации от ВУ осугцествляется через устроиства ввода/вывола, в качестве которых в основном применяются различного вида последовательные порты Гогг. егпеу 8). ЦПОС илгеют большое количество периферийных модулей, состав и количество которых определяются назначением процессора. Все процессоры имеют различные тайлгеры, предназначенные, скажем, лля генерации сигналов необходимых частот (например, частоты дискретизации внешнего АБП) и внутреншгл запросов на прерывания по таймеру, с помощью которых можно оршннзовать врелгенной опрос внешних датчиков информации.
АЛУ, умножитель и дополнительные функпиональные узлы предназначены для выполнения операции над обрабатываемой информацией. Принципы нх построения определяют производительность процессора, и они описываются ниже. Усгроиство генерации адреса (УГА) формирует адреса данных, ггзвлекаелгык из ПД. Для одновременной выборки нескольких операндов необхолимо форлшровать одновременно несколько адресов. Для этого и процессор может иметь несколько устройств УГА. Этп устройства включают в себя арифметические модули Лля вычисления адресов при различных сложных методах адресашш /гмг.
агаву 5). 2.2.3. Конвейерное выполнение команд Процесс выполнения команды во всех процессорах разбивается на несколько этапов. Конвейерный прнншгп выполнения команд состоит в том, что разлггчные этапы Разных команд выполняются одновременно. Необходимо подчеркнут!с выполняются одновременно этапы разливных команд в разных ф> нкцпональных устройствах. Количество этапов.