Анализ композиционных устройств управления с разделением кодов

УДК 681.3
Оптимизация устройства управления с разделением кодов
А.А. Баркалов1, Л.А. Титаренко1, А.Н. Мирошкин2
1 Зеленогурский университет, г. Зелена Гора, Польша
E-mail: A.Barkalov@iie.uz.zgora.pl
2 Донецкий национальный технический университет
E-mail: MiroshkinAN@gmail.com

Введение


Одним из важных блоков цифровой системы является устройство управления [1]. При реализации схем устройств управления (УУ) актуальной является задача уменьшения аппаратурных затрат [2]. Для решения этой задачи необходимо учитывать особенности как алгоритма управления, так и используемого элементного базиса. В настоящей работе предлагается метод решения этой задачи для случая интерпретации линейного алгоритма управления на программируемых логических интегральных схемах (ПЛИС). Используемые ПЛИС включают макроячейки программируемой матричной логики (ПМЛ) и встроенные блоки памяти (ВБП) [3,4]. В линейных алгоритмах управления доля операторных вершин превышает 75% от общего числа вершин [5]. Для интерпретации линейных алгоритмов целесообразно использовать композиционные микропрограммные устройства управления (КМУУ) [5]. В работах [6,7] предлагается метод оптимизации схемы КМУУ с разделением кодов, основанный на использовании классов псевдоэквивалентных операторных линейных цепей (ПОЛЦ). Однако при этом не уменьшаются аппаратурные затраты в блоке формирования микроопераций. В настоящей работе предлагается развитие этого метода, основанное на кодировании наборов микроопераций [2].
Целью исследования является оптимизация комбинационной схемы КМУУ за счет введения в формат микрокоманд кодов классов ПОЛЦ и кодов наборов микроопераций. Задачей исследования является разработка метода синтеза КМУУ, позволяющего уменьшить число макроячеек ПМЛ и блоков ВБП в его логической схеме. При этом алгоритм управления представляется в виде граф-схемы алгоритма [8,9].

^ Анализ композиционных устройств управления с разделением кодов


Обозначим в некоторой ГСА множество вершин и множество дуг . В этом множестве – начальная вершина,  – конечная вершина,  – множество операторных вершин, – множество условных вершин. Операторная вершина содержит набор микроопераций , где – множество микроопераций (выходных сигналов). Условная вершина содержит один элемент множества логических условий (входных сигналов) .
Операторная линейная цепь (ОЛЦ) является последовательностью операторных вершин граф-схемы алгоритма. Сформируем множество ОЛЦ , где обозначает количество ОЛЦ в данной ГСА. При этом каждая пара соседних вершин ОЛЦ соответствует некоторой дуге из множества [5]. Каждая ОЛЦ имеет произвольное число входов и только один выход . Формальные определения ОЛЦ, их входов и выходов можно найти в [5]. Отметим, что каждая вершина соответствует микрокоманде , хранимой в управляющей памяти (УП) по адресу . Для адресации микрокоманд достаточно
(1)
бит, где . Пусть каждая ОЛЦ включает компонент и пусть . Закодируем каждую ОЛЦ двоичным кодом разрядности
, (2)
а каждую компоненту – двоичным кодом разрядности
. (3)
Используем для кодирования ОЛЦ элементы , а для кодирования компонент – элементы , где , . Кодирование компонент выполняется в естественном порядке, то есть
, (4)
где , . Пусть для ГСА выполняется условие
. (5)
В этом случае для её интерпретации может быть использована модель КМУУ с разделением кодов (Рис.1), обозначаемая в дальнейшем символом .
В КМУУ схема адресации микрокоманд ­(САМ) реализует систему функций возбуждения счетчика CT и регистра Рг
(6)
При этом адрес микрокоманды представляется в виде
, (7)
где вершина входит в ОЛЦ , * - ­­знак операции конкатенации.
По сигналу Start в Рг и СТ заносится начальный адрес микропрограммы, а триггер выборки ТВ устанавливается в единичное состояние. При этом сигнал Fetch=1,что разрешает выборку микрокоманд из УП. Если считанная микрокоманда не соответствует выходу ОЛЦ, то одновременно с микрооперациями формируется сигнал . Если , то к содержимому СТ прибавляется единица и адресуется следующая компонента текущей ОЛЦ. Если выход ОЛЦ достигнут, то . При этом адрес входа следующей ОЛЦ формируется схемой САМ. При достижении окончания микропрограммы формируется сигнал , триггер ТВ обнуляется и выборка микрокоманд прекращается.
Число термов в схеме САМ может быть уменьшено путем введения преобразователя кодов ОЛЦ в коды классов псевдоэквивалентных ОЛЦ [5]. Операторные линейные цепи ­ называются псевдоэквивалентными, если их выходы связаны со входом одной и той же вершины ГСА . Однако реализация такого преобразователя требует дополнительных макроячеек ПМЛ.
В настоящей работе предлагается уменьшить сложность преобразователя кодов, для чего используются свободные ресурсы встроенных блоков памяти. Для уменьшения числа ВБП предлагается использовать максимальное кодирование наборов микроопераций.

^ Основная идея предлагаемого метода


Пусть , если и ее выход не связан с входом конечной вершины ГСА . Найдем разбиение множества на классы ПОЛЦ. Закодируем классы двоичными кодами разрядности
. (8)
Используем для кодирования классов переменные , где .
При синтезе КМУУ исходная ГСА преобразовывается путем введения в ее операторные вершины дополнительных переменных и . Таким образом, исходное множество преобразовывается в множество . Пусть множество включает различных наборов микроопераций и дополнительных переменных. Поставим в соответствие каждому набору двоичный код разрядности
. (9)
Используем для кодирования наборов переменные , где . В этом случае управляющая память состоит из двух блоков [5]: блок микропамяти (БМП), формирующий функции
, (10)
и блок микроопераций (БМО), формирующий переменные
. (11)
Оба блока БМО и БМП реализуются на встроенных блоках памяти, имеющих выходов. Будем считать, что емкости одного БВП достаточно для хранения всех слов БМП и БМО:
. (12)
В настоящей работе предлагается использовать микрокоманды, формат которых включает поле и поле . Разрядность таких микрокоманд определяется как
. (13)
Блок БМП имеет выходов и для его реализации требуется
(14)
блоков БВП. При этом бит слова БМП могут быть свободными, где
. (15)
Эти биты могут использоваться для хранения части кода .
При выполнении условия
(16)
все разряды кода реализуются блоком микропамяти. В противном случае
(17)
разрядов кода формируются блоком преобразователя кодов (БПК). Эти разряды образуют часть кода класса . Предложенный подход ведет к КМУУ (Рис. 2).
В КМУУ блок САМ реализует функции
, (18)
, (19)
а блок БПК реализует функции
. (20)
При этом, естественно, выполняются условия
, (21)
. (22)
Назначение остальных блоков уже рассматривалось. Отметим, что схемы БАМ, СТ, Рг, ТВ реализуются с использованием макроячеек ПМЛ, схемы БМП и БМО – с использованием встроенных блоков памяти, а схема БПК может быть реализована в любом из этих базисов. В настоящей работе предлагается метод синтеза, включающий следующие этапы:

  1. Формирование множеств , и для ГСА .

  2. Кодирование ОЛЦ, их компонент и классов .

  3. Кодирование наборов микроопераций .

  4. Формирование содержимого блоков управляющей памяти.

  5. Формирование таблицы переходов КМУУ.

  6. Формирование таблицы блока преобразователя кодов.

  7. Синтез логической схемы КМУУ.


Рис. 1. Структурная схема КМУУ

Рис. 2. Структурная схема КМУУ
modelnij-pravovoj-akt-subekta-rossijskoj-federacii-ob-utverzhdenii-tipovogo-polozheniya-ob-ustanovlenii-grupp-po-oplate-truda-rukovoditelej-uchrezhdenij-kulturi-klubnogo-tipa.html
modelnij-pravovoj-akt-subekta-rossijskoj-federacii-ob-utverzhdenii-tipovogo-polozheniya-ob-ustanovlenii-tipovih-shtatov-uchrezhdenij-kulturi-klubnogo-tipa.html
modelnij-reliz.html
modelnij-ryad-kompleks-spektralnoj-korrekcii-apparat-ksk-bars.html
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат