УДК004.274
Баркалов А. А.1, Титаренко Л. А.2, Зеленева И. Я.3, Цололо С. А.4
1Д-р техн. наук, профессор, ДонНТУ, профессор, Зеленогурский Университет (Польша) 2Д-р техн. наук, профессор, ХНУРЭ, профессор, Зеленогурский Университет (Польша) 3Канд. техн. наук, доцент, ДонНТУ, Украина, E-mail: [email protected]
4Канд. техн. наук, доцент, ДонНТУ, Украина
ОПТИМИЗАЦИЯ СХЕМЫ КОМПОЗИЦИОННОГО МИКРОПРОГРАММНОГО УСТРОЙСТВА УПРАВЛЕНИЯ С ОБЩЕЙ
ПАМЯТЬЮ
Предлагается метод уменьшения аппаратурных затрат в схеме композиционного микропрограммного устройства управления с общей памятью при реализации на микросхемах FPGA, с учетом ограничения на число входов LUT элементов. Метод основан на применении двух источников кодов классов псевдоэквивалентных операторных линейных цепей, а также на использовании избыточности встроенных блоков памяти FPGA. Такой подход позволяет уменьшить требуемое число LUT элементов в схеме адресации композиционного устройства, вследствие чего уменьшается площадь кристалла FPGA, занимаемая схемой КМУУ с общей памятью, что позволяет получить реализацию, обладающую меньшей стоимостью, чем известные из литературы аналоги. В статье описан пример применения предложенного метода.
Ключевые слова: композиционное микропрограммное устройство управления, операторная линейная цепь, граф-схема алгоритма, FPGA, мультиплексор, логическая схема.
ВВЕДЕНИЕ
Модель композиционного микропрограммного устройства управления ( КМУУ) с общей памятью [2, 3] применяется для реализации схемы устройства управления (УУ) в том случае, когда граф-схема алгоритма (ГСА) управления некоторой системы относится к классу линейных [1]. Современный элементный базис предполагает широкое использование программируемых логических интегральных схем (ПЛИС) вида FPGA (field-programmable gate arrays) [4, 5] для реализации схем УУ Основу FPGA представляют макроячейки LUT (look-up table), имеющие ограниченное число входов (4-6) [6, 7]. С учетом этого ограничения, для оптимизации схемы УУ на FPGA необходимо уменьшить количество аргументов и термов в реализуемых системах булевых функций [8]. В настоящей работе предлагается метод решения этой задачи для КМУУ с общей памятью. В данном решении учитывается такая особенность рассматриваемой структуры КМУУ, как совмещение функций регистра памяти и счетчика адреса микрокоманд на одном только счетчике. Основная идея метода заключается в использовании двух источников кодов классов псевдоэквивалентных операторных линейных цепей (ОЛЦ) и мультиплексора источников кодов ( МИК).
Целью исследования является оптимизация схемы КМУУ с общей памятью за счет мультиплексирования источников кодов псевдоэквивалентных ОЛЦ и избыточности встроенных блоков памяти.
Задачей исследования является разработка метода синтеза КМУУ с общей памятью, позволяющего уменьшить число LUT-элементов в комбинационной части КМУУ.
Предлагаемый метод является развитием результатов, полученных в работе [9].
ПОСТАНОВКА ЗАДАЧИ
Обозначим, что исходными данными для задачи синтеза схемы композиционного микропрограммного устройства управления служит граф-схема управляющего алгоритма, т.е. некоторая ГСА Г = Г(В,Е), представленная множествами вершин В и соединяющих их дуг Е [2]. Пусть В = Ь0 и ЬЕ и Е1 и Е2, где Ь0 - начальная вершина, ЬЕ - конечная вершина, Е1 - множество операторных вершин и Е2 - множество условных вершин ГСА Г. В операторных вершинах Ъч е Е1 записываются наборы
микроопераций У(ЬЧ) с У, где У = {,...,ум } - множество микроопераций. В условных вершинах Ъч е Е2 записываются элементы множества логических условий
X = { Х1,..., XL }. Введем ряд определений, взятых из [2].
Определение 1. Операторной линейной цепью ГСА Г называется конечная последовательность операторных
вершин ^ =
соседних компонент ,ь§1+1, где 1 - номер компоненты
^ такая, что для любой пары
кортежа ag, существует дуга
(bgi,bgi+i)
е E
Определение 2. Вершина bq е Dg, где Dg -
множе-
ство вершин, входящих в ОЛЦ ^, называется входом ОЛЦ если существует дуга е Е, где Ьг г
Определение 3. Вершина Ьч е называется выходом ОЛЦ аg, если существует дуга е Е, где Ьг г
© Баркалов А. А., Титаренко Л. А., Зеленева И. Я., Цололо С. А., 2014 140 DOI 10.15588/1607-3274-2014-1-20
Определение 4. ОЛЦ а,а] называются псевдоэквивалентными ОЛЦ, если их выходы связаны со входом одной и той же вершины Ьч е В.
Пусть для некоторой ГСА Г сформировано множество ОЛЦ С = (о^,..., ас}, определяющее разбиение на множестве Е1 [3], и пусть |б1 = М. Поставим в соответствие каждой вершине Ьч е Е1 микрокоманду М1Ч с адресом Л(Ьд), имеющим разрядность
R = [log2M~|.
(1)
Используем для адресации микрокоманд переменные Тг е Т, где |Т| = Я. Адресация выполняется таким образом, чтобы выполнялось условие
A(bg 1+1 )= A(bg ; )+L
(2)
где bgi,bgi+1 eDg и (bgi,bgi+1)
e E.
В этом случае УУ может быть реализовано в виде КМУУ и1 (рис. 1), называемом КМУУ с общей памятью [2, 3]. Принципы функционирования КМУУ и1 достаточно полно представлены в литературе [1-3].
В КМУУ и1 схема формирования адреса (СФА) реализует систему функций возбуждения триггеров счетчика СТ, определяемую как
Ф = Ф(Т,Х).
(3)
При этом, как правило, счетчик имеет информационные входы типа D [6,7]. По сигналу Start счетчик СТ устанавливается в ноль, что соответствует адресу первой микрокоманды реализуемого алгоритма. По сигналу y0 = 1 содержимое СТ увеличивается на единицу, что соответствует режиму (2). Управляющая память (УП) хранит наборы микроопераций Y(bq ) ç Y и переменные y0 (управление СТ) и yE (признак окончания алгоритма). Триггер считывания TF формирует сигнал Fetch, разрешающий выборку микрокоманд из УП. При достижении окончания алгоритма формируется переменная yE = 1, что приводит к Fetch = 0 и прекращению выборки из УП.
При использовании FPGA схемы СФА, СТ и TF реализуются на LUT, а схема УП - на встроенных блоках памяти ЕМВ (embedded memory block). Основным недостатком КМУУ U является значительное число термов в системе функций (3). Это приводит к увеличению числа LUT элементов и их уровней в схеме СФА. Для устране-
ния этого недостатка используют оптимальную адресацию микрокоманд, что приводит к КМУУ U2 [9]. Однако такая адресация не всегда возможна. Уменьшение числа термов системе (3) гарантируется в КМУУ U3, где осуществляется преобразование адресов микрокоманд в коды классов псевдоэквивалентных ОЛЦ [2, 3]. Однако это связано с введением в схему КМУУ дополнительного блока преобразователя адресов (БПА), который потребляет некоторые ресурсы кристалла. В настоящей работе предлагается метод синтеза КМУУ, позволяющий уменьшить как число термов в системе (3), так и число LUT элементов в схеме БПА.
Как известно, LUT-элементы имеют ограниченное число входов S (S = [4..6]). Для уменьшения числа LUT-элемен-тов целесообразно уменьшать число аргументов в реализуемых системах функций. Предлагаемый метод позволяет выполнить такое уменьшение числа аргументов.
ОСНОВНАЯ ИДЕЯ ПРЕДЛАГАЕМОГО МЕТОДА
Найдем разбиение Пс множества ОЛЦ С на классы
псевдоэквивалентных ОЛЦ. Пусть Пс = {,...,Bi}, то есть в ГСА имеется I псевдоэквивалентных ОЛЦ.
Пусть для реализации блока УП используются встроенные блоки памяти, входящие в состав FPGA [6, 7]. Эти блоки имеют фиксированную емкость V, однако число их входов t может меняться. Параметр t может принимать одно из фиксированных значений из множества
Q F ={1,2,4,9,18,36} [6, 7].
Для реализации системы функций Y и {уо,Уе} необходимо
nf =T(N + 2)/tF 1 (4)
блоков ВБП. При этом параметр tF (число выходов блока) определяется как
tF = | V/2R
(5)
Этот параметр должен быть выбран ближайшим к меньшему значению из множества Р р. Общее число выходов блоков, входящих в УП, можно найти как
t0 = nftF. Пусть выполняется условие
t0 -(N + 3) = k > 0.
(6)
(7)
В этом случае множество Пс можно разбить на два класса: Пс = П иП2, где П1 пП2 = 0 . Класс П2
включает
I2 = 2k
элементов. Класс П1 будет включать
(8)
Рис. 1. Структурная схема КМУУ Uj
Il = I -12
(9)
элементов. Рассмотрим случай, когда Il Ф 0 и ^ Ф 0. При этом классы Bi е П1 могут быть закодированы кодами K(Bi), имеющими
R1 = flog2 Iii
(10)
разрядов. Пусть для кодирования классов Bi е П используются переменные тг е т, где |т| =
Закодируем классы Bi е П2 кодами С(Б;), имеющи-
R2 = k.
(11)
разрядов. Пусть для кодирования классов Б; еП2 используются переменные zr е Z, где |z| = R2. В этом случае для реализации УУ предлагается модель КМУУ U4 (рис. 2).
КМУУ U4 функционирует следующим образом. По сигналу Start в СТ заносится нулевой адрес, триггера TF и TM устанавливаются соответственно в 1 (Fetch = 1) и 0 (Ex = 0). Схема СФА1 служит для задания переходов из классов Б; е П1. При этом yM = 1, Ex = 1 и
Ф1 = Ф1(т,Х1).
(12)
Схема СФА2 служит для задания переходов из классов Bi е П2. При этом ум = Ех = 0 и
Ф2 =ф 2(T,X2).
(13)
Мультиплексор МИК служит для выбора источника функций возбуждения СТ:
Ф = Ex Ф1 V Ex Ф2,
(14)
при этом Ф1 и Ф2 = Ф. Очевидно, через МИК передаются только функции фг е Ф1 п Ф2.
Блок БПА служит для преобразования адресов выходов ОЛЦ в коды классов Б; е Щ. Для такого преобразования служат функции
т = т(Т).
(15)
Сравнение блоков УП КМУУ и1 и и4 показывает, что они отличаются наличием выхода ум. Как уже стало ясно, этот выход используется для управления триггером ТМ и, следовательно, мультиплексором МИК.
Такой подход позволяет уменьшить число термов в системе (3) до абсолютного возможного минимума. Кроме того, уменьшается сложность блока БПА по сравнению с КМУУ из.Как видно на рис. 2, коды классов Б; еП2 генерируются управляющей памятью. Такой подход позволяет уменьшить число входов в ШТ-элементах блоков СФА1 и СФА2. Недостатком является увеличение числа выходов блока УП. Однако этот блок строится из рекон-фигурируемых блоков ЕмБ, которые имеют строго определенное число выходов [6,7]. При этом имеется высокая вероятность наличия неиспользованных выходов.
В статье предлагается метод синтеза КМУУ и4, включающий следующие этапы:
1. Формирование множества ОЛЦ С для ГСА Г.
2. Формирование разбиения Пс множества С.
3. Оптимальная адресация микрокоманд.
4. Кодирование классов Б; е П1 и Б; е П2.
5. Формирование таблицы переходов для классов Б; е П1.
6. Формирование таблицы переходов для классов Б; е П2.
7. Формирование таблицы блока преобразователя адреса.
8. Формирование таблицы содержимого управляющей памяти.
9. Реализация схемы КМУУ в заданном элементном базисе.
Start
R TF
S
S TM
R
Ex
Fetch
Рис. 2. Структурная схема КМУУ U4
ми
ПРИМЕР ПРИМЕНЕНИЯ ПРЕДЛОЖЕННОГО МЕТОДА
Пусть для некоторой ГСА Г получено множество ОЛЦ С = {аь..., а^>, где а1 = (ЪЬ...,Ъ4), а2 = (Ъ5),
а3 = (Ъ6,Ъ7,Ъ8), а 4 = (Ъ9,Ъю), а5 = (Ъ11,Ъ12,Ъ13,Ъ14), а6 = (Ъ15,Ъ16), а7 = (Ъ17....,Ъ2^, а8 = (Ъ2Ь".,Ъ24), а9 = (Ъ25,Ъ26), а10 = (Ъ27,Ъ28), а11 = (Ъ29,Ъ30,Ъ31), а12 = (Ъз^. Пусть эти ОЛЦ могут быть разбиты на I = 5 классов, где В1 = {аь а 2, аз>, В2 = {а4, а5, аб>, В3 = {а 7, а8, а9>, В4 = {
а10, а11>, В5 = {а12>. Пусть выход ОЛЦ а12 е С связан с входом вершины ЪЕ. Как известно, переходы из таких ОЛЦ не рассматриваются, так как их последняя вершина должна включать переменную уЕ [2].
Выполним адресацию микрокоманд так, чтобы выполнялось условие (2) и максимально возможное число классов представлялось одним обобщенным интервалом Я-мерного булевого пространства. В рассматриваемом
примере М = 32, то есть Я = 5 и Т = {Т1,...,Т5>. Один из возможных вариантов оптимальной адресации микрокоманд приведен на рис. 3. Этот рисунок содержит видоизмененную карту Карно, которая достаточна для получения обобщенных интервалов. По рис. 3 имеем: класс В1 соответствует интервалу 00***, класс В2 - 01***, класс В3 соответствует двум интервалам: 10*** и 1100*, класс В4 соответствует двум интервалам: 11011 и 11110. Интервал для класса В5 не имеет значения. Символ и4(Г) означает, что КМУУ и4 реализуется по ГСА Г.
Пусть для реализации УП используются встроенные блоки памяти, причем их параметры и число микроопераций N таковы, что = 1. Следовательно, два класса
В; е Пс можно поместить в блок П2. Пусть число входов ЬиТ-элементов 8=4. Тогда разбиение по классам целесообразно выполнить следующим образом: П1 = {В1,В2> и П2 = {В3З4}. Итак, имеем 11 = 12 = 2, Я-1 = Я 2 = 1, т= {т1>,2 = {г1>. Выполним кодирование классов В; еПс. Результат кодирования не влияет на сложность схемы. Пусть К(В1) = 0, К(В2) = 1, К(В3) = 0, К(В4) = 1.
Таблицы переходов для классов В; е Пс строятся по системе обобщенных формул перехода [2, 3]. Пусть в рассматриваемом примере эта система имеет вид:
Bi ^ Xib9 V XiX2bu V Xi Х2Х3Ь13 V Xi X2 ХзЬ15;
B2 ^ X2b5 V X2X5b6 V X2X5X6b17 V X2X5X6b22;
B3 ^ X4X6b21 v X4X6b25 v X4X3b27 v X4X3b29; B4 ^ X1b32 V X1b23•
(16)
Таблицы переходов имеют следующие столбцы В; , К(В;), Ъq, А(ЪЧ), ХЬ, ФЬ, Ь. Здесь ХЬ - набор ЛУ который определяет связь между классом В. и вершиной ^ в формулах перехода вида (16); Ф ь - набор функций возбуждения СТ, равных единице для формирования адреса А(Ъ). Разница между таблицами заключается в том, что для классов В; е П1 код представляется переменными тг е т, а для В; е П2 - переменными Тг е Т. Для КМУУ и4(Г) переходы для классов В; е П1 представлены в табл. 1, а для классов В; е П2 - в табл. 2. Первая таблица имеет Н1 = 6 строк, а вторая - Н2 = 8 строк.
Для табл. 1 и табл. 2 адреса микрокоманд определяются по рис. 3. Из табл. 1 получаем систему (12). Напри-
мер, Б1 = Т1Х2Х5, Б2 = Т1 (после минимизации). Из табл. 2 получаем систему функций (13). Например, Б1 = 1,
D2 = Z1X4X6 v Z1X4 v ziXi (после минимизации). Из этих таблиц получаем также множества
X1 = {X1;X2,X3,X5,X6},X2 = {X1;X3,X4,X6}, ф1 = Ф2 = Ф.
Для формирования таблицы БПА необходимо найти соответствие между кодами классов B; е П1 и адресами выходов ОЛЦ «g е B;. Эти адреса определяются обобщенными интервалами. Таблица включает столбцы ag,
A(ag), B;, K(B;), Tg, g. Здесь A(ag) - адрес выхода ОЛЦ ag е С. Однако в рассматриваемом случае систему (15) можно получить тривиальным образом. Очевидно, что Ti = 1 для K(B2). С другой стороны, K(B2) = 01***. Следовательно, xi = T^.
Синтез схемы МИК сводится к реализации системы (14). Эта задача является тривиальной, а схема включает R-чис-ло LUT элементов, каждый из которых имеет по 3 входа.
Для формирования содержимого УП выполняется преобразование исходной ГСА Г:
1. Если вершина bq е Ei не является выходом ОЛЦ a g е С, то в нее включается переменная y0.
2. Если вершина bq е E1 связана с вершиной bE, то в нее вводится переменная yE.
3. Если вершина bq е Ei является выходом ОЛЦ ag е Bi, где B; е П1, то в нее вводится переменная yM.
Рис. 3. Формирование адресов микрокоманд КМУУ и4(Г)
Таблица 1. Таблица переходов для классов Б; е П^
Bi K(Bi) bq A(bq) Xh Ф h h
Bi 0 b9 01000 x1 D2 1
bii 01010 x1x2 D2D4 2
bi3 01100 x1x2x3 D2D3 3
bl5 01110 x1 x2 x3 D2D3D4 4
B2 1 b5 00100 x2 D3 5
b6 00101 x2x5 D3D5 6
bl7 10000 x2x5x6 D1 7
b22 10101 x2 x5 x6 D1D3D5 8
Таблица 2. Таблица переходов для классов Б; е П2
B; K(Bi) bq A(bq) Xh Ф h h
B3 0 b21 10100 x4x6 D1D3 1
b25 11000 x4x6 D1D2 2
b27 11010 x4x3 D1D2D4 3
B4 1 b32 11111 x1 D1D2D3D4D5 4
b23 10110 x1 D1D3D4 5
Например, в вершину b2 е D1 необходимо ввести y0, в вершину b20 - yM, а в вершину b32 - yE. Далее в ячейки УП с адресом A(bq) записывается набор Y(bq) и необходимые элементы множества {уо,Ум,УЕ }. Этот этап выполняется тривиальным образом и в данной статье не рассматривается.
Реализация схемы КМУУ U4 сводится к реализации систем функций (5)-(8) на LUT элементах и УП на EMB. Для решения этой задачи используются стандартные промышленные пакеты [6, 7].
ЗАКЛЮЧЕНИЕ
Предлагаемый в работе метод оптимизации КМУУ основан на мультиплексировании двух источников кодов классов псевдоэквивалентных ОЛЦ и использовании избыточности встроенных блоков памяти FPGA. Описанный выше способ адресации классов псевдоэквивалентных ОЛЦ ведет к уменьшению числа термов в системе функций возбуждения триггеров, составляющих счетчик адреса микрокоманд, до минимально возможной величины. Кроме того, уменьшается число LUT элементов в схеме преобразователя адреса, так как не все адреса выходов ОЛЦ подлежат преобразованию. Недостатком предложенного подхода является введение мультиплексора, который вносит дополнительную задержку в цикл работы КМУУ. Однако уменьшение числа термов ведет к уменьшению числа уровней в схеме, и таким образом, задержка от введения МИК компенсируется.
Проведенные авторами исследования показали, что предложенный метод позволяет до 48 % уменьшить число LUT элементов по отношению к исходному КМУУ с общей памятью. При этом время цикла КМУУ U4 всегда было меньше, чем у КМУУ Ur Результаты сравнения КМУУ U2 - U4 показали, что каждое из них может иметь минимальные аппаратурные затраты. Это определяется параметрами исходной ГСА. Таким образом, при синтезе КМУУ с общей памятью на FPGA выбор должен производиться между КМУУ U2, U3 и U4.
Научная новизна предложенного метода заключается в использовании структурных особенностей КМУУ с общей памятью (совмещение функций счетчика адреса и регистра памяти, использование классов псевдоэквивалентных ОЛЦ) и особенностей FPGA (конфигурируемость встроенных блоков памяти) для уменьшения числа LUT элементов в схеме КМУУ.
Практическая значимость метода заключается в уменьшении площади кристалла FPGA, занимаемой схемой КМУУ с общей памятью, что позволяет получить схемы, обладающие меньшей стоимостью, чем известные из литературы аналоги.
Дальнейшие направления работы связаны с разработкой метода выбора оптимальной структуры КМУУ с общей памятью при реализации схемы в базисе FPGA.
СПИСОК ЛИТЕРАТУРЫ
1. Barkalov, A. Logic synthesis for compositional microprogram control units / A. Barkalov, L. Titarenko. - Berlin : Springer, 2008. - 272 p.
2. Баркалов, А. А. Синтез микропрограммных автоматов на заказных и программируемых СБИС / А. А. Баркалов, Л. А. Титаренко. - Донецк : УНИТЕХ, 2009. - 336 с.
3. Barkalov, A. Logic synthesis for FSM-based control units / A. Barkalov, L. Titarenko. - Berlin : Springer, 2009. - 233 p.
4. Maxfield, S. The Design Warrior's Guide to FPGAs. -Amsterdam : Elsevier, 2004. - 541 p.
5. Грушвицкий, Р. И. Проектирование систем на микросхемах с программируемой структурой / Р. И. Грушвицкий, А. Х. Мурсаев, Е. П. Угрюмов. - С.-Пб. : БХВ - Петербург, 2006. - 736 с.
6. All Programmable Technologies from Xilinx Inc. [электронный ресурс]: ресурс содержит информацию о семействах
ПЛИС производства Xilinx Inc - Режим доступа: http:// www.xilinx.com - Загл. с экрана.
FPGA CPLD and ASIC from Altera [электронный ресурс]: технические характеристики ПЛИС производства Altera Corporation - Режим доступа: http://www.altera.com. - Загл. с экрана.
Baranov, S. Logic and System Design of Digital Systems / S. Baranov. - Tallinn : TTU, 2008. - 266 p. Баркалов, А. А. Реализация композиционных микропрограммных устройств управления на FPGA-микросхемах / А. А. Баркалов, Л. А. Титаренко, А. Н. Мирошкин // Радиоэлектроника и информатика. - 2011. - № 1. - С. 52-55.
Стаття надшшла до редакцй 03.02.2013.
Баркалов О. О.1, Титаренко Л. О.2, Зеленьова I. Я.3, Цололо С. О.4
1Д-р техн. наук, професор, професор ДонНТУ, профессор, Зеленогурський ушверситет (Польща)
2Д-р техн. наук, професор, професор, Зеленогурський ушверситет (Польща)
3Канд. техн. наук, доцент, ДонНТУ, Украша
4Канд. техн. наук, доцент, ДонНТУ, Украша
ОПТИМ1ЗАЦ1Я СХЕМИ КОМПОЗИЦ1ЙНОГО М1КРОПРОГРАМНОГО ПРИСТРОЮ КЕРУВАННЯ 13 ЗАГАЛЬ-НОЮ ПАМ'ЯТТЮ
Запропоновано метод зменшення апаратурних витрат у схемi композицшного мжропрограмного пристрою керування iз загальною пам'яттю при реалiзацiï на мжросхемах FPGA, iз урахуванням обмеження на число входiв LUT елеменив. Метод засновано на застосуванш двох джерел юадв клаав псевдое^валентних операторних лшшних ланцюпв, а також на використанш надмiрностi, що мае мюце у вбудованих блоках пам'ят FPGA. Такш шдхщ дозволяе зменшити потрiбну юльюсть LUT елеменив у схемi адресацп композицшного пристрою, внаслщок чого зменшуеться площа кристалу FPGA, яку займае схема КМУУ iз загальною пам'яттю, що дозволяе отримати реалiзацiю, якш притаманна менша вартють, шж вщомим з лтератури аналогам. У статп наведено приклад використання методу.
Ключовi слова: композицшний мжропрограмний пристрш керування, операторний лшшний ланцюг, граф-схема алгоритма, FPGA, мультиплексор, лопчна схема.
7
Barkalov A. A.1, Titarenko L. A.2, Zelenyova I. Y.3, Tsololo S. A.4
'Doctor of Science, Professor, DonNTU, professor of University of Zielona G o ra
2Doctor of Science, Professor, KHTURE, professor of University of Zielona Go ra
3Ph.D., associated professor, DonNTU, Ukraine
4Ph.D., associated professor, DonNTU, Ukraine
OPTIMIZATION OF COMPOSITIONAL MICROPROGRAMMING CONTROL UNIT WITH COMMON MEMORY
A method for reducing the hardware amount in the circuit of compositional microprogramming control unit with common memory oriented to FPGA technology is proposed . The restrictions of LUT's input number are taken into account. The method is based on the use of two sources of codes classes of pseudoequivalent operational linear chain and use a multiplexer to choose one of these sources. Also the surplus of FPGA's embedded memory blocks is used. Such an approach would reduce the number of LUT elements in the addressing subcircuit of compositional microprogramming control unit, that leads to reducing of common hardware amount and price of the unit. An example of the proposed method application is given.
Keywords: compositional microprogramming control unit, operational linear chain, flow-chart of algorithm, FPGA, multiplexer, logic circuit.
REFERENCES
1. Barkalov A., Titarenko L. Logic synthesis for compositional microprogram control units, Berlin, Springer, 2008, 272 p.
2. Barkalov A. A., Titarenko L. A. Sintez mikroprogrammnyx avtomatov na zakaznyx i programmiruemyx SBIS, Doneck, UNITEX, 2009, 336 p.
3. Barkalov A., Titarenko L. Logic synthesis for FSM-based control units, Berlin, Springer, 2009, 233 p.
4. Maxfield S. The Design Warrior's Guide to FPGAs, Amsterdam, Elsevier, 2004, 541 p.
5. Grushvickij R. I., Mursaev A. X., Ugryumov E. P. Proektirovanie sistem na mikrosxemax s programmiruemoj strukturoj, S-Pb, BXV, Peterburg, 2006, 736 p.
6. All Programmable Technologies from Xilinx Inc (contains information about Xilinx Inc programmable devices), available at: http://www.xilinx.com.
7. FPGA CPLD and ASIC from Altera, technical features of Altera's devices, available at: http://www.altera.com.
8. Baranov S. Logic and System Design of Digital Systems, Tallinn, TTU, 2008, 266 p.
9. Barkalov A. A., Titarenko L. A., Miroshkin A. N. Realizaciya kompozicionnyx mikroprogrammnyx ustrojstv upravleniya na FPGA-mikrosxemax, Radioe 'lektronika i informatika, 2011, No.1, pp. 52-55.