Реализация системы технического зрения (СТЗ) на базе многокристального микропроцессора (К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 предполагает выполнение микрокоманд сдвига вправо и влево. Для обоих сдвигов в освободившиеся разряды записывается нуль.Организация сдвигов достигается подключением к входам - выходам сдвигов повторителей с тремя состояниями, на вход которых подан логический нуль. Все управляющие сигналы формирует устройство управления, схема которого показана на
Устройство управления включает в себя память микрокоманд (ЗУМК), регистр микрокоманд, дешифратор источников шины Y (DC1), дешифратор приёмников шины Y(DC2), коммутатор условий М, D - триггер для хранения младшего разряда адреса ЗУМК, генератор тактовых импульсов (ГТИ), схему «пуска-останова», включающую в себя триггер пуска (ТП), одновибратор (ОВ), инвертор и схему «И».
Данное устройство является микропрограммным устройством с принудительной адресацией.
Адрес следующей микрокоманды задаётся непосредственно в соответствующем поле (АМК0 - АМК7).
Организация условных переходов осуществляется путём модификации младшего разряда адреса, на вход которого в зависимости от кода условия (АУС) через мультиплексор подаются сигналы по значениям которых необходимо произвести переход. Для реализации алгоритма достаточно два разряда для кода условия. Значения кодов условия (АУС) и соответствующие им сигналы приведены в табл. 2.
микропроцессор аппаратный переменная программа
Таблица 2 ¾ Коды условий
АУС | Сигналы |
0 | АМК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 мс. Полученное время удовлетворяет ТЗ.