Реализациясистемы технического зрения (СТЗ) на базе многокристального микропроцессора(К1804)
Введение
Микропроцессорныйкомплект серии К1804 включает в себя ряд модулей для построения операционных иуправляющих устройств. Основой операционного устройства (ОУ) может служитьмикропроцессорная секция (МПС) ВС1 и ВС2. Кроме того, могут использоватьсясхема ускоренного переноса ВР1 и устройство управления сигналами состояния исдвига ВР2.
Блок микропрограммногоуправления может быть построен на основе схем формирования адреса микрокомандыВУ4 и ВУ1(ВУ2), ВУ3.
Для построения ОУ выбереммикропроцессорную секцию ВС2. Разрядность секции равна четырём. Следовательно,для построения 16-ти разрядного ОУ необходимы четыре секции. Микропроцессорнаясекция К1804 ВС2 имеет 16 РОН с двумя выходными портами считывания ификсаторами входных данных, три внешних информационных шины: входная DA, двунаправленные DB и Y — арифметико-логическое устройство со сдвиговым устройствомна выходе, многофункциональный регистр со сдвиговым устройством на входе, дешифратор9-ти разрядного кода операции микрокоманд. Каскадное соединение четырёх секцийс использованием схемы ускоренного переноса К1804ВР1 производится по стандартнойсхеме.
1. Разработкаструктуры аппаратных средств
Основой для разработки системы является, как ипрежде, алгоритм функционирования. Согласно этому алгоритму определим, в какихзапоминающих элементах будут храниться используемые переменные.
Распределение переменных по внутренним регистрам МПсекции приведено в табл.1.
Таблица 1 ¾ Таблица соответствия Переменные РОН секции ВС2
Шестнадцатиричный адрес
ОН Xц, Yц R1 1 Rmin R2 2 Xт, Yт R3 3 Xт’, Yт’ R4 4 R R6 6 I R11 B J R12 C L R13 D K R14 E
Cтруктурная схема системы изображенана рис. 1.
Исходные данные (m, r, Xцн, Yцн) с пульта управления заносятся врегистры PM, PR, PXYЦ.
Информация в этихрегистрах может быть прочитана в МПС по шине Y. Таким образом, источниками шины Y являются регистры PM, PR, PXY и выход сдвигового устройства АЛУ.
В результате выполненияалгоритма в конце каждого кадра выдаются координаты центра объекта. Для ихзапоминания необходимы регистр PXY.Информация в этот регистр заносится с шины Y.
МПС не имеет отдельнойадресной шины, поэтому необходимо организовать запоминание адреса внешнейпамяти в специальном регистре.
Адрес ОЗУИ запоминается врегистре адреса РА, информация в который загружается с шины Y. Адрес ПЗУ формируется счётчикомадреса СчА, начальная загрузка которого также производится по шине Y. Формирование адреса с помощью СчАпозволяет совместить по времени выполнение операций формирования адреса ОЗУИ иПЗУ.
Таким образом приёмникамишины Y являются PXY, РА, СчА и РОНы МПС, причём возможна одновременнаязапись в РОН и один из оставшихся приёмников, а также отсутствие записи во всеприёмники.
ОЗУИ и ПЗУ подключены кшинам DA и DB соответственно, что позволяет осуществить их одновременноечтение. В алгоритме предполагается формирование адресов отдельно по координате X и Y. Целесообразно осуществлять формирование адресов одновременнопо двум координатам в одном 16-ти разрядном регистре. Для этого необходимосформировать специальные константы. Так, для одновременного выполнениямикрокоманд Y4 и Y5 необходимо сформировать константу
С1 = />; Y8, Y9 ¾ C2 = />; Y18, Y19 ¾ C3 = /> и Y25, Y26 ¾ C4=/>
Формирование констант С1 ¾ С4 предполагает выполнение микрокомандсдвига вправо и влево. Для обоих сдвигов в освободившиеся разряды записываетсянуль.Организация сдвигов достигается подключением к входам — выходам сдвиговповторителей с тремя состояниями, на вход которых подан логический нуль. Всеуправляющие сигналы формирует устройство управления, схема которого показана нарис.2.
Устройство управления включает в себя памятьмикрокоманд (ЗУМК), регистр микрокоманд, дешифратор источников шины Y (DC1), дешифратор приёмников шины Y(DC2), коммутатор условий М, D — триггер для хранения младшего разряда адреса ЗУМК,генератор тактовых импульсов (ГТИ), схему «пуска-останова», включающую в себятриггер пуска (ТП), одновибратор (ОВ), инвертор и схему «И».
Данное устройствоявляется микропрограммным устройством с принудительной адресацией.
Адрес следующеймикрокоманды задаётся непосредственно в соответствующем поле (АМК0 — АМК7).
Организация условныхпереходов осуществляется путём модификации младшего разряда адреса, на входкоторого в зависимости от кода условия (АУС) через мультиплексор подаютсясигналы по значениям которых необходимо произвести переход. Для реализации алгоритмадостаточно два разряда для кода условия. Значения кодов условия (АУС) исоответствующие им сигналы приведены в табл. 2.
микропроцессораппаратный переменная программа
Таблица 2 ¾ Коды условий АУС Сигналы АМК0 1 N(знак) 2 Z(нуль) 3 EW
/>
Рисунок 1 ¾ Структурная схема вычислительногоустройства на МП
/>
Рисунок 2 ¾ Схема устройствауправления
Таким образом, дляформирования адреса следующей микрокоманды необходимо 10 разрядов поля микрокоманд.
Использование схем формированияадреса микрокоманды К1804 ВУ4 или К1804ВУ1(2) и ВУ3 потребовало бы не менее 12разрядов поля микрокоманд и значительно большие аппаратурные затраты.
Схема «пуска-останова»служит для начальной установки РМК, разрешения подачи тактовых импульсов (ТИ) сГТИ на все схемы по сигналу «Пуск» и прекращения их подачи по сигналу «Ост»Она работает следующим образом. Сигналом «Пуск» сбрасываются в нуль РМК итриггер младшего разряда адреса. Сигнал «Пуск», задержанный с помощьюодновибратора, по заданному фронту тактового импульса устанавливает в «1» ТП,который открывает схему «И» и разрешает прохождение через неё ТИ. Сигналом«Ост.» ТП сбрасывается в нуль и закрывает схему «И».
2. Формат микрокоманды
Рассмотрим теперь форматмикрокоманды. Для управления МПС необходимо 20 разрядов микрокоманды: кодоперации I0-I9, EA, OEB, A0-A3, B0-B3, Cn.
Поля СО и СS предназначены для управлениянаправлением сдвига сдвигового устройства регистра Q и сдвигового устройства АЛУ соответственно.
Поле IY определяет код источников шины Y. Содержимое этого поля дешифруется иподключается к шине Y одного изисточников. Значения поля IY исоответствующие им регистры приведены в табл. 3.
Поля АУС и АМК былирассмотрены ранее. Таким образом, общая длина микрокоманды равна 37 разрядам.
Микрокоманда составляетсяв процессе последовательного анализа вершин алгоритма и интерпретации каждойвершины одной или несколькими микрокомандами. Микропрограмма приведена в табл.4. Значения всех полей микрокоманд приведены в шестнадцатиричной форме. Впримечании в символьном виде дана операция, выполняемая данной микрокомандой исоответствующая микрокоманда из граф — схемы алгоритма. Микрокомандами садресами 01-10 формируются константы С1, С2, С3 и С4, которые заносятсясоответственно в РОН МПС R7, R8, R9, R10.Микрокоманды с адреса 20 строго соответствуют граф — схеме алгоритма.
3. Расчёт времениработы программы
Микрокоманды с адресами00-1F выполняются однократно в начале работы, затем накаждом кадре ¾микропрограмма с адреса 20.
Таким образом, прирасчёте временных параметров будем учитывать только эту циклическую частьмикропрограммы. Время её выполнения:
/>tц.
Время цикла tц и соответственно тактовая частотаопределяется длительностью самого длинного пути прохождения сигналов. Самыйдлинный путь: чтение ОЗУ (ПЗУ) ¾ выполнение операции в АЛУ ¾ запись в РОН. Адрес ОЗУИ(ПЗУ) вмикропрограмме формируется заранее и поэтому данные на выходе ОЗУИ (ПЗУ) кмоменту выполнения микрокоманды, их использующей всегда готовы. Время цикла отнаиболее длинного пути самих МПС. В литературе описан расчёт такого пути для16-ти разрядного процесса на МПС К1804ВС2. Время цикла не превышает 200 нс.Пусть tц = 200 нс, тогда Т = 8 мс.Полученное время удовлетворяет ТЗ.