Цифровые сигнальные процессоры фирмы ZILOG

Журнал "Радио", номер 5, 1999г.
Автор: С. Кругликов, г. Рыбинск

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

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

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

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

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

    Наиболее известны ЦСП фирм Texas Instruments, Motorola, Analog Devices [3]. Фирма Zilog выпускает составляющие им достойную конкуренцию ЦСП серии Z89, основные характеристики которых приведены в табл. 1. Они относятся к процессорам с фиксированной запятой и имеют так называемую гарвардскую архитектуру, согласно которой ПД и память программ (ПП) физически и логически разделены. Система команд (табл. 2) дает представление о возможностях ЦСП этой серии. Из 30 команд 28 выполняются за один такт, если их операнды находятся в ПД или внешних устройствах (ВУ). Для обработки операндов, размещенных в ПП, требуется один-два дополнительных такта. Все рассматриваемые ЦСП снабжены шестиуровневым 16-разрядным аппаратным стеком.

    Базовый в серии - процессор Z89c00 [4], структурная схема которого показана на рис. 1. Его внутренняя ПП состоит из 4096, а ПД - из 512 16-разрядных слов. К шинам PA0-PA15, PD0-PD15 можно подключить внешнюю ПП емкостью до 64K слов. Внутренняя ПД разделена на два банка по 256 слов. Каждый из них адресуется косвенно с помощью восьмиразрядных регистров-указателе Р0:0, Р1:0, Р2:0 (банк 0) или Р0:1, Р1:1, Р2:1 (банк 1). Адресация может быть автоинкрементной или автодекрементной с возможностью циклического изменения адресов. Цикл можно задать тремя способами:

    LD Y,@P0:1+ ;автоинкремент с периодом 256 (SR[0-2] =000)

    LD Y,@P0:1+LOOP ;автоинкремент с периодом 2SR[0-2] (SR[0-2]>000)

    LD Y,@P0:1-LOOP ;автодекремент с периодом 2SR[0-2] (SR[0-2]>000)

    Период повторения адресов зависит от значений трех младших разрядов регистра состояния процессора (SR). Если все они нулевые, период максимален (256 адресов). В противном случае его длина вычисляется как 2SR[0-2] и может составлять 2, 4, 8, 16, 32, 64 или 128 адресов.

    Возможна прямая адресация ПД. При этом используется сквозная нумерация ячеек: банк 0 - от 0 до 255, банк 1 - от 256 до 511. Например, команды LD Х,@Р0:1 (при Р0:1=255) и LD X,511 загрузят в регистр Х число из одной и той же ячейки памяти. Некоторые ячейки ПД можно адресовать через указатели данных: четыре из них находятся в банке 0 (D0:0, D1:0, D2:0, D3:0) и столько же - в банке 1 (D0:1, D1:1, D2:1, D3:1). Абсолютные адреса указателей данных можно изменять. В зависимости от значений определенных разрядов регистра состояния процессора они располагаются в ячейках 0-3, 4-7, 8-11 или 12-15 каждого из банков.

    При необходимости данные можно размещать и в ПП. Существует гибкая система, позволяющая организовать в ней до 38 таблиц. К шести из них обращаются через регистры-указатели с помощью двойной косвенной адресации (значение в регистре указывает на ячейку ПД, в которой находится 16-разрядный адрес ячейки ПП). Еще 32 таблицы дает косвенная адресация через указатели данных. При обращении к ПП адрес всегда автоматически инкрементируется.

    Операционная часть ЦСП представлена арифметико-логическим устройством, 24-разрядным аккумулятором и умножителем с 24-разрядным регистром произведения (Р). Как известно, перемножение двух 16-разрядных чисел дает 32-разрядный результат. Недостающие восемь разрядов регистра Р снижают точность вычислений, но при обработке сигналов это лишь изменяет величину шумов квантования, что можно учесть в расчетах [5].

    К 16-разрядному порту ввода/вывода можно подключить до восьми ВУ. Он имеет шину данных ЕХТ0-ЕХТ15 и трехразрядную шину адреса ЕА0- ЕА2. Управление обменом производится с помощью сигналов чтения/записи (ER/W), стробирования (ЕI) и готовности данных (RDYE). Типовая схема подключения ВУ приведена на рис. 2. В процессоре предусмотрен также "порт пользователя", имеющий по два независимых входа и выхода, связанных со специальными разрядами регистра состояния процессора.

    Z89с00, как и другие ЦСП этой серии, не имеет специальных средств для работы с внешней ПД. При необходимости ее можно подключить к порту ввода/вывода. На рис. 3 показано, как организовать 16-разрядную внешнюю ПД всего на одной восьмиразрядной микросхеме ОЗУ (DD4). Дешифратор адреса (DD3) имеет два выхода. К одному из них через логический элемент ИЛИ (DD5.1) подключен управляющий вход регистра адреса (DD2). Второй выход дешифратора соединен со входом CS микросхемы ОЗУ. Таким образом, при обращении процессора к одному из ВУ в регистре DD2 фиксируется адрес ячейки внешнего ОЗУ, а ко второму - происходит обмен данными между ОЗУ и процессором. Шина данных восьмиразрядного ОЗУ соединена только с четными выводами 16-разрядной шины порта ввода/вывода.

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

    (Окончание следует)

Литература

1. Гладштейн M. Z8 - микроконтроллеры широкого применения. - Радио, 1997, #5, с. 27-29.

2. Щелкунов Н. Н., Дианов А. П. Микропроцессорные средства и системы. - М.: Радио и связь, 1989.

3. Долгий А. Цифровая обработка сигналов: время пришло. - КВ-журнал, 1996, # 2, с. 17-24; # 4, с. 28-32.

4. Z89c00 16-bits Digital Signal Processor. User▓s Manual. - Zilog Inc., 1998.

5. Гольденберг Л. М. и др. Цифровая обработка сигналов: Справочник. - М.: Радио и cвязь, 1985.







Рекомендуемый контент




Copyright © 2010-2018 housea.ru. Контакты: info@housea.ru При использовании материалов веб-сайта Домашнее Радио, гиперссылка на источник обязательна.