Правильная ссылка на эту страницу
http://az-design.ru/Support/HardWare/AMI/D19790830Elc033.shtml

V-МОП-прибор, подключаемый к микропроцессору для обработки сигналов в реальном времени

УДК 681.325.5-181.48:621.382

Ричард Бласко (R.W.Blasco)
Фирма American Microsystems Inc. (Сайта-Клара, шт.Калифорния)

R.W.Blasco. V-MOS chip joins microprocessor to handle signals in real time, pp.131—138.

Новый прибор, выполняющий миллионы операций в секунду, позволяет стандартному микропроцессору соперничать с микросистемами, выполненными на процессорных секциях. Описан периферийный прибор для обработки сигналов S2811, который представляет собой по существу мощный микрокомпьютер, содержащий 30500 элементов на кристалле размером всего 5,0*5,2 мм и оптимизированный по архитектуре для обработки звуковых сигналов.

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

Мощный микрокомпьютер

Новая большая интегральная схема дает микропроцессорной системе вычислительную мощность, необходимую для обработки сигналов в реальном времени. Эта мощная микросхема, называемая периферийным прибором обработки сигналов (SPP), S2811, обеспечивает для микросистемы возможности по обработке сигналов, сравнимые с возможностями, предоставляемыми в случае использования биполярных процессорных секций и специализированных умножителей, — при значительном уменьшении общего числа приборов, стоимости и потребляемой мощности.

Сигнальный процессор. Показанный периферийный прибор, представляющий собой фактически 16-разрядный микрокомпьютер, выполнен по V-МОП-технологии, чтобы
Рис.0. Сигнальный процессор. Показанный периферийный прибор, представляющий собой фактически 16-разрядный микрокомпьютер, выполнен по V-МОП-технологии, чтобы обеспечить высокую плотность компоновки, необходимую для цифровой обработки сигналов телефонной связи в реальном времени.

Прибор 2811 представляет собой по существу мощный микрокомпьютер в полном смысле этого слова, содержащий 30500 элементов на кристалле размером всего 5,0*5,2 мм. Столь высокая плотность компоновки была достигнута благодаря применению оригинальной V-МОП-технологии, при которой приборы с вертикальной структурой изготавливаются путем травления V-образной канавки в эпитаксиальном слое. Подобно микрокомпьютеру, новая микросхема программируется для цифровой обработки сигналов в телефонных системах связи и других видах аппаратуры звуковой частоты. Архитектура микрокомпьютера оптимизирована для обработки звуковых сигналов (рис.1).

Высокое быстродействие. Архитектура периферийного прибора для обработки сигналов S2811 характеризуется наличием нескольких шин и специализированных ре
Рис.1. Высокое быстродействие. Архитектура периферийного прибора для обработки сигналов S2811 характеризуется наличием нескольких шин и специализированных регистров, что обеспечивает высокое быстродействие, сравнимое с быстродействием изделий на биполярных процессорных секциях; при этом новый прибор реализуется на одном кристалле.

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

В результате достигнута вычислительная мощность, эквивалентная мощности примерно 35 биполярных процессорных секций, оформленных конструктивно в 28-контактных корпусах типа DIP. Синхронизация прибора обеспечивается благодаря подключению 20-МГц кварцевого резонатора к двум его выводам. Прибор работает от одного 5-В источника питания при мощности потребления менее 1 Вт.

Таблица 1. Результаты оценочных испытаний периферийного прибора для обработки сигналов S2811

Применение

Число инструкций

Время выполнения

Секция биквадратного фильтра

7

2,1 мкс

Двухтональный многочастотный декодер

51

54 мкс/выборка

µ-закон/линейное преобразование

15

6,6 мкс

Вычисление синуса и косинуса угла

19

5,7 мкс

Преобразование чисел с фиксированной запятой в числа с плавающей запятой

18

15,9 мкс

Преобразование чисел с плавающей запятой в числа с фиксированной запятой

3

5,1 мкс

Модем V.27 (4800 бит/с)

248

497,7 мкс/бод

Быстрое преобразование Фурье на 32 точки (с возможностью расширения)

190

1,5 мкс/32 точки

Анализатор спектра звуковых частот

34

21,7 мкс/выборка

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

Управление от микропроцессора

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

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

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

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

Данные в прибор 2811 могут поступать через микропроцессорный или последовательный порт под программным управлением. Многошинная архитектура обеспечивает возможность одновременного выполнения последовательного ввода и вывода или параллельного ввода или вывода и внутренних вычислений. Все необходимые логические операции управления прибором 2811 реализуются в нем аппаратным способом, что сводит к минимуму накладные затраты программных средств. Такое внутреннее усложнение прибора делает его интерфейс исключительно простым и эффективным (рис.2).

Простота. Микропроцессорный порт (а) и последовательные порты (б) обеспечивают простоту и эффективность интерфейса прибора 2811. Последовательные вход
Рис.2 Простота. Микропроцессорный порт (а) и последовательные порты (б) обеспечивают простоту и эффективность интерфейса прибора 2811. Последовательные входной и выходной порты являются независимыми, причем благодаря формату временного уплотнения каждый из этих портов может обслуживать до 10 кодеков,

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

Последовательный порт, по которому осуществляется прием и выдача обрабатываемых сигналов, непосредственно совместим с интерфейсами кодера/декодера S3501/S3502 фирмы American Microsystems. Для аналого-цифровых и цифроаналоговых преобразований можно использовать недорогие кодеки, поскольку в программное обеспечение прибора 2811 можно включать преобразование из компандированного кода в несжатый код и наоборот.

Последовательный порт может непосредственно подключаться к стандартному каналу связи для сигналов с импульсно-кодовой модуляцией (ИКМ) без выхода из цифровой области. Порт рассчитан на обработку слов длиной от 1 до 16 бит при частоте сдвига до 5 МГц. Прибор может обслуживать до 10 передающих и 10 приемных каналов ИКМ, работающих одновременно при частоте сдвига 2,048 МГц. При этом передающие и приемные каналы являются асинхронными и независимыми.

Синхронизация данных

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

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

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

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

Аппаратные ресурсы

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

Программный код пользователя хранится в ПЗУ объемом 256*17 бит. Шесть 17-бит слов инструкции зарезервированы для тестирования прибора в производстве; остальные 250 слов предоставляются пользователю. Такой ограниченный размер памяти инструкций не является очень серьезным ограничением, как может показаться на первый взгляд, поскольку сам набор инструкций является исключительно мощным (что будет ясно из последующего описания набора инструкций). Наш опыт свидетельствует о том, что в большинстве случаев допустимое время обработки сигнала истекает несколько раньше, чем исчерпывается имеющийся объем программного кода.

Память данных хранит 256 слов по 16 бит. Схема, показанная на рис.3, обеспечивает одновременный доступ к двум операндам по одной команде вызова. Память организована как 32 группы «базы» по 8 слов «смещения» в каждой. Ко всем восьми словам смещения обращение производится параллельно, по линиям 0—7, а два из этих слов для обработки выбираются двумя мультиплексорами смещения. Для удобства ссылок один мультиплексор и соответствующие ему линии называются U-схемой, а другой мультиплексор и соответствующие линии — V-схемой.

Память данных объемом 256 слов, организованная по принципу «база — смещение», а также пара выходных мультиплексоров обеспечивают обращение к двум слов
Рис.3. Память данных объемом 256 слов, организованная по принципу «база — смещение», а также пара выходных мультиплексоров обеспечивают обращение к двум словам памяти по одной команде. Одно слово поступает по линиям U-битов, а другое — по линиям V-битов.

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

Выдаваемые по V-линиям данные можно заменить содержимым блокнотной памяти емкостью 8 слов. Блокнотная память, реализованная на ЗУПВ, работает независимо от выборки базовых групп (каждая базовая группа состоит из 4 слов в ЗУПВ и 4 слов в ПЗУ). В блокнотной памяти хранятся константы и параметры, общие для нескольких групп данных; она удобна также для кратковременного запоминания промежуточных результатов.

Полностью параллельный умножитель, работающий по модифицированному алгоритму Бута, образует произведение двух 12-бит исходных чисел и округляет результат до 16 бит. Применяемая схема округления имеет точность 153/4 бит и характеризуется нулевой средней ошибкой.

Время умножения составляет 300 не и перекрывается с 300-нс циклом инструкции, так что произведение двух операндов, вызванных при выполнении инструкции N, оказывается сформированным во время инструкции N + 1. Такой конвейерный режим обеспечивает максимальную производительность, причем не вызывает практически никаких затруднений при программировании прибора 2811.

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

Алгоритмы цифровой фильтрации требуют реализации задержки на один период выборки (Z-1). При помощи VP-регистра V-операнд, вызванный во время инструкции N, может быть записан в память во время выполнения инструкции N + 1. Благодаря этому упрощаются программы фильтрации (см. врезку «Простые фильтры»), поскольку исключаются накладные затраты, необходимые в противном случае для реализации задержек Z-1.

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

Управлять работой прибора 2811 помогают несколько счетчиков и регистров:

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

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

— Программный счетчик — 8-бит счетчик с возможностью предварительной установки, работающий на прибавление и обеспечивающий формирование адреса памяти инструкций. Разнообразные инструкции передачи управления позволяют эффективно организовать ветвление и циклы программы.

— Регистр адреса возврата — 8-бит регистр, где запоминается адрес возврата на программу при вызове подпрограммы. Предусматривается один уровень вложения подпрограмм.

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

Управляющие коды

Микропроцессор управляет работой прибора 2811 при помощи четырех адресных линий, которые на рис.2 имеют обозначения F0—F3. Когда на линии разрешения сопряжения IE появляется низкий уровень, команда передается по линиям F0—F3 и поступает на хранящийся регистр прибора. Пользователь преобразует свои коды обработки сигналов в 16 смежных адресов области памяти микропроцессора, связывая эти F-линии с четырьмя младшими разрядами адреса. После этого чтение или запись по соответствующему адресу памяти будет вызывать срабатывание нужной команды прибора 2811.

Команды DUH/DLH (данные — старшие полбайта и данные — младшие полбайта) позволяют производить обмен 16-бит данными с прибором 2811. Поскольку команда DUH завершает передачу слова, старшие биты слова всегда передаются последними. При помощи только команды DUH можно с полной скоростью производить передачу 8 бит данных.

Основной командой вызова программы является команда XEQ микропроцессора: начать выполнение с ячейки D0—D7. Выполнение программы начнется с ячейки кода прибора 2811, соответствующей исходным данным D0—D7. Кроме того, аппаратный или программный сброс позволит начать выполнение программы с ячейки 00, что обеспечивает начальную загрузку (раскрутку) программы, когда не используется управляющий процессор.

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

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

Гибкие варианты управления

Остальные восемь команд в управляющем коде предусматривают различные варианты форматов и источников ввода-вывода с целью обеспечения максимальной гибкости. Прибор 2811 обычно работает таким образом, что все данные передаются через параллельный микропроцессорный порт, по одному байту за цикл. Команды SRI и SRO (разрешение последовательного ввода или вывода) позволяют направлять данные выборок через последовательный входной или выходной порты соответственно. Если выбран последовательный порт, данные могут представляться в формате знак-величина, а не в обычном формате обратного двоичного кода. Команды SMI и SMO (последовательный ввод или вывод знака-величины) служат разрешением для соответствующей логики преобразования.

Блоки данных могут пересылаться при помощи режима BLK. Передача слов данных обеспечивается путем многократного выполнения команд DLH/DUH при автоматическом приращении значения индекс-регистра для выбора следующего слова. При наличии соответствующего контроллера непосредственного доступа к памяти данные могут передаваться в прибор 2811 и выдаваться из него со скоростью 4 Мбайт/с. Благодаря такой высокой скорости блочной передачи данных можно при помощи виртуальных способов расширить видимый размер памяти кристалла.

Режим внешнего ПЗУ (XRM) позволяет управлять работой прибора 2811 от внешнего источника программного кода. Этот режим был предусмотрен главным образом для тестирования прибора и позволяет выполнять на приборе стандартные тесты независимо от программного кода пользователя. Применив 10 средних интегральных схем, пользователи могут организовать работу прибора от внешнего программируемого ПЗУ, однако в этом режиме скорость снижается вдвое (длительность цикла составляет 600 нс).

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

Команды SOP и СОР определяют, будут ли в устройстве сложения/вычитания выполняться арифметические операции «с насыщением» (SOP) или с переполнением (СОР). При наличии разрешения схемы защиты от переполнения результат, выдаваемый УСВ, будет насыщаться до максимального положительного или отрицательного значения, соответственно направлению переполнения.

Возможности расширения

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

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

Для реализации полных потенциальных возможностей этой архитектуры служит предусмотренный для нее мощный набор инструкций. 17-бит слово инструкции, разделенное на поля двух кодов операций и операнда, хранится в ПЗУ прибора 2811. Это те самые средства, при помощи которых пользователь специализирует функциональные возможности прибора для своего конкретного применения. Этот программный код в общем независим от программы управляющего микропроцессора. Обе программы взаимодействуют посредством F-линий.

Набор инструкций

4-бит код операции OP1 управляет работой УСВ, а 5-бит код команды ОР2 устанавливает режимы передачи данных и прохождения программы. 8-бит поле операнда служит для задания литералов или адресной информации (в том и в другом случае 3 бит служат для выбора смещения, как показано внизу слева на рис.3).

Таблица 2. Инструкции ОР1 (УСВ) периферийного прибора для обработки сигналов S2811

Тип

Мнемоническое обозначение

Операция

Нет операции

NOP

Нет операции

Операции накапливающего регистра

ABS
NEG
SHR
SGV

Абсолютное значение
Изменение знака содержимого УСВ
Арифметический сдвиг вправо
Изменение знака содержимого УСВ, если по знаку оно отличается от содержимого ЗУПВ-V

Операции сложения

AUZ
AVZ
AVA
AUV

Загрузка содержимого ЗУПВ-U в УСВ
Загрузка содержимого ЗУПВ-V в УСВ
Сложение содержимого ЗУПВ-V и УСВ
Сложение содержимого ЗУПВ-U и ЗУПВ-V

Операции вычитания

SVA
SVU

Вычитание содержимого УСВ из ЗУПВ-V
Вычитание содержимого ЗУПВ-U из ЗУПВ-V

Операции умножения/сложения

APZ
АРА
APU

Загрузка произведения в УСВ
Прибавление произведения к содержимому УСВ
Сложение произведения и содержимого ЗУПВ-U

Операции умножения/вычитания

SPA
SPU

Вычитание содержимого УСВ из произведения

Вычитание содержимого ЗУПВ-U из произведения

16 инструкций OP1 (табл.2) и 32 инструкции ОР2 (табл.3) обеспечивают 388 действительных сочетаний инструкций. Оценочные испытания показывают, что такой формат позволяет пользователю задавать в среднем 3,3 операции на строку выполняемого программного кода.

Таблица 8. Инструкции OP2 (пересылки/переходы) периферийного прибора для обработки сигналов S2811

Тип

Мнемоническое обозначение

Операция

Нет операции

NOOP

Нет операции

Инструкции загрузки

LLTI

Загрузка литерала во входной регистр

LIBL

Загрузка содержимого входного регистра в базовый счетчик и счетчик циклов

LACO

Загрузка содержимого УСВ в выходной регистр (установка запроса прерывания

LAXV

Загрузка содержимого УСВ в индекс-регистр и ЗУПВ-V

LALV

Загрузка содержимого УСВ в счетчик циклов и ЗУПВ-V

LABV

Загрузка содержимого УСВ в базовый регистр и ЗУПВ-V

Инструкции пересылки данных

TACU

Пересылка содержимого УСВ в ЗУПВ-U

TACV

Пересылка содержимого УСВ в ЗУПВ-V

TIRV

Пересылка содержимого входного регистра в ЗУПВ-V

TVPV

Пересылка содержимого VP-регистра в ЗУПВ-V

TAUI

Пересылка содержимого УСВ в ЗУПВ-U с использованием содержимого индекс-регистра в качестве базы

Операции устройства сложения/вычитания (УСВ)

CLAC

Сброс УСВ и признаков переполнения и своппинга (SWAP)

Инструкции для работы с регистрами

INIX

Приращение индекс-регистра

INCB

Приращение базового регистра

DECB

Уменьшение значения базового регистра

SWAP

Перемена ролей базового и индексного регистра (своппинг)

Инструкции безусловных переходов

JMUD

Безусловный переход по прямому адресу

JMUI

Безусловный переход по косвенному адресу (содержимое индекс-регистра служит указателем для таблицы переходов)

Инструкции условных переходов

JMCD

Переход по прямому адресу в зависимости от значения счетчика циклов (переход происходит, если значение счетчика циклов LC не равно нулю,

JMPZ

с автоматическим вычитанием единицы из этого значения) Переход по прямому адресу, если содержимое УСВ равно нулю

JMPN

Переход по прямому адресу, если содержимое УСВ отрицательно

JMPO

Переход по прямому адресу, если установлен триггер признака переполнения УСВ (со сбросом триггера признака переполнения)

JMIF

Переход по прямому адресу, если признак входного регистра имеет низкий уровень (входной регистр пустой)

JMOF

Переход по прямому адресу, если признак выходного регистра имеет высокий уровень (выходной регистр полный)

Инструкции для работы с подпрограммами

JMSR

Переход на подпрограмму

RETN

Возврат на основную программу

Макроинструкции

JCDT

Условный переход с двойным сложением (с приращением значений базового и индексного регистров)

JCDI

Условный переход по прямому адресу и приращение значения базового регистра

TVIB

Пересылка содержимого VP-регистра в ЗУПВ-V и приращение значения базового регистра

REPT

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

MODE

Установка в поле OPi кода NOP и использование битов ОРХ для формирования управляющего кода (табл.4)

Такое большое число комбинаций инструкций в сочетании с предусмотренными в приборе 2811 возможностями ветвления и организации циклов обеспечивают максимальную эффективность программирования. Кроме того, наличие аппарата подпрограмм позволяет многократно использовать в программе нужные программные коды. Это дает возможность прибору 2811 работать с минимальным вмешательством со стороны управляющего микропроцессора и делает предусмотренный в нем максимальный объем памяти пользователя (250 строк программного кода) более чем достаточным для большинства применений.

Последние два бита операнда определяют режим адресации. Данные могут адресоваться прямо, со смещением или косвенно. Режим прямой адресации позволяет осуществлять доступ к данным секций смещения 2, 4 или 6 (рис.3), независимо от базового регистра и индекс-регистров. При этом осуществляется доступ только к одному слову за цикл.

Режим адресации со смещением предусматривает использование либо базового, либо индекс-регистра для указания базовой группы, в то время как смещения U и V указываются операндом. Это позволяет осуществлять одновременный доступ к двум словам, одно из которых может быть словом блокнотной памяти.

Вариант адресации со смещением

Вариантом адресации со смещением является двухбазовая адресация, при которой базовый и индексный регистры попеременно используются для выборки информации базовой группы, под управлением команды своппинга. Команда JCDT (условный переход, модификация двух адресов) обеспечивает одновременное приращение значения базы и индекса, позволяя работать «с отслеживанием» адресов. Этот режим адресации полезен для эффективного выполнения таких вычислений, при которых обрабатываемые массивы данных разделяются в памяти фиксированным смещением, как в случае быстрого преобразования Фурье; он позволяет устанавливать в базовом и индексном регистре значения, соответствующие необходимому смещению, с минимальными потерями эффективности программы.

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

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

Таблица 4. Режимы адресации и установка входных значений умножителя периферийного прибора для обработки сигналов S2811

Режим

Мнемоническое описание

Входы умножителя

IV

Адресация со смещением при помощи значения базы и двух смещений, определяемых в операнде; данные размещаются в ЗУПВ-U и ЗУПВ-V

ЗУПВ-U х ЗУПВ-V

IS

Адресация со смещением; данные размещаются в ЗУПВ-U и в блокнотной памяти

ЗУПВ-U Х блокнотная память

DA

Прямая адресация с использованием адреса, заданного в операнде; данные находятся только в ЗУПВ

УСВ X ЗУПВ-V

LT

Литерал; данные заданы в операнде

Нет — сохраняются предыдущие входные значения

DT

Прямая передача; адрес перехода задан в операнде

Нет — сохраняются предыдущие входные значения

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

Вспомогательные средства программирования

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

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

Блестящие перспективы

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

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

Дочерние статьи:

Самостоятельное выполнение простых функций

Простые фильтры

Выходные данные:

Журнал "Электроника" том 52, No.18 (570), 1979г - пер. с англ. М.: Мир, 1979, стр.38

Electronics Vol.52 No.18 August 30, 1979 A McGraw-Hill Publication

R.W.Blasco. V-MOS chip joins microprocessor to handle signals in real time, pp.131—138.

Раздел: МЕТОДЫ, СХЕМЫ, АППАРАТУРА

Тема:     Полупроводниковая техника





Дата последнего изменения:
Thursday, 21-Aug-2014 09:10:44 MSK


Постоянный адрес статьи:
http://az-design.ru/Support/HardWare/AMI/D19790830Elc033.shtml