Арифметическое устройство с микропрограммным управлением Советский патент 1990 года по МПК G06F7/38 

Описание патента на изобретение SU1559340A1

Изобретение относится к области вычислительной техники и может быть использовано при проектировании арифметических устройств вычислительных машин.

Целью изобретения является повышение быстродействия операции умножения при одновременном сокращении оборудования.

На Лиг. 1 и 2 представлено арифметическое устройство с микропрограммным управлением; на фиг. 3 - схема первого узла выбора операндов; на фиг. 4 - формат микрокоманды; на

фиг. 5 - структурная схема организации микрокомандного управления; на фиг.6 - временная диаграмма организации микропрограммного управления; на фиг. 7 алгоритм умножения.

Устройство содержит арифметико-логический блок 1, выполняющий арифметические и логические -операции над операндами, блок 2 микропрограммного ю управления, управляющий работой блока 1.

Блок 1 содержит арифметико-логический узел 3 (АЛУ), состоящий из вычислительных ячеек 4 - 1 (больших J интегральных схем, например, БИС 1804 ВС1), узел 8 ускоренного переноса (БИС 180 ВР1), контроллер 9 состояний, шинный Формирователь 10, регистр 11 адреса памяти, первый узел 12 выбо-2 ра операндов, второй узел 13 выбора операндов.

Блок 2 микропрограммного управления содержит регистр 14 команд, дешифратор 15 прерываний (БИС 550РТ7 2 (2Кх8), дешифратор 16 команд, узел 17 микропрограммного управления (БИС 1804ВУ4), регистр 18 формирования адреса, узел 19 памяти микрокоманд (четыре восьмиразрядные секции БИС3 556РТ16 (8«х8), первый регистр 20 микрокоманд, второй регистр 21 микрокоманд, узел 22 обработки прерываний (БИС 585ИК14), дешифратор 23 битовых управляющих сигналов, шину 24 данных, 3 шину 25 адреса, источник 26 постоянного тока, вход 27 тактовых прямых

сигналов, вход 28 тактовых инверсных сигналов, вход 29 Установка.

Схема узла выбора операндов (фиг.3)4 содержит мультиплексор 30 адреса, дешифратор 31 адреса и буферный регистр 32.

Прием информации в регистрах 20 и 21 осуществляется синхронно тактам (Т) и (Т).

Для синхронизации временных процессов информации об адресе микрокоманды на регистре 32 должна быть синхронна с работой узла 3- С этой целью при-5 ем адреса по третьему входу регистра 32 стробирован синхроимпульсом Т, стробирующим и работу узла 3. , Дешифратор 31 нулевого разряда адреса узла 22 эмулирует нулевой раз- 5 ряд адреса d в зависимости от входных сигналов С1, С2, СЗ по формуле

d (С1 н- С2) СЗ,

4

где С1, С2, СЗ - входы дешифратора 31} d - выход дешифратора 31 В табл. 1 представлена истинность

состояний входных и выходных сигналов

дешифратора 31.

Таблица 1

С1

С2

СЗ

X соответствует любому значении (О или 1)„

В каждой микрокоманде Умножение (фиг. 7) под управлением значения младшего разряда регистра-сдвигателя О, содержащего значение множителя, эмулируется нечетное (исходное) значение адреса регистра общего назначения в четное согласно табл. 2.

Таблица 2

Эмулируемое нечетное значение адреса регистра общего назначения

О 1

Четное (14) Нечетное (15)

0

0

Примечание. За неметный адрес выбран 15 за чет- ный -14.

Слово микрокоманды содержится в регистрах 20 и 21 (0-31 и 32-63 разряды микрокоманды соответственно)..

Разряды в регистрах объединяются 5 в поля управления устройства (всего 9 полей).

Количество полей микрокоманды (0-63) соответствует разрядности выходов блоков регистров 20 и 21.

Поля управления регистра 20 (0-31 разряды микрокоманды):

первое поле управления ( раз- рядыУ - управление функциями узла 3

второе поле управления (20-22 разряды) - управление загрузкой начальных адресов микропрограмм команд (дешифратор 16), векторов микропрограмм обработки прерываний (дешифратор 15)

155

обратных адресов микрокоманд {регистр 20);

третье поле управления (12-15 раз- ря°ды) - управление приемом данных формирователя 10 данных с шины 24 данных,

четвертое поле управления (16-19 разряды) - управление функциями формирования адреса микрокоманды узла 17$

пятое поле управления участвует в формировании микрокоманды 3-х параллельных форматов:

первый формат (0-Н разряды) Ад

рес

|| формирование константы адреса

узла 17;

второй формат (0-8 разряды) Константа - формирование константы, как операнда АЛУ 3;

третий формат (0- разряды) Сдвиг - формирование функций сдвигов контроллера 9.

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

25 по нечетному, а затем по четном ресу. Считанная информация из у 19 записывается на первые групп дов регистров 20 и 21 в момент него фронта сигналов Т и Т, пос

микрокоманды сокращается на 15 разря- 30 ющих на первые входы регистров.

В структурной схеме организации микропрограммного управления (фиг. 5} показаны взаимосвязи основных потоков информации блоков t и 2 между узлами 17 - 21, 12, 13, 3 и 9.

С выхода узла 17 по 12-разрядной шине адрес микрокоманды поступает на первую группу входов регистра 18. Код

адреса микрокоманды фиксируется пе- - редним фронтом строба Т по синхровхо- ду регистра 18.

Временный строб Т - сигнал с периодом 0,5 мкс, скважностью 2. Времен5 ной, сигнал Т - инверсный сигнал Т. С выхода регистра 18 двенадцать старших разрядов адреса с микрокоманды поступают на вход узла 19 Туда же подсоединен сигнал Т, являющийся в

0 этом случае нулевым (младшим) разрядом адреса.

Поэтому за период прохождения сигнала Т дважды будет выбираться из узла 19 информация по 32-разрядной шине

5 по нечетному, а затем по четному адресу. Считанная информация из узла 19 записывается на первые группы входов регистров 20 и 21 в момент перед- него фронта сигналов Т и Т, поступа0 ющих на первые входы регистров.

Похожие патенты SU1559340A1

название год авторы номер документа
Арифметическое устройство с микропрограммным управлением 1988
  • Коротков Валерий Анатольевич
  • Шек-Иовсепянц Рубен Ашотович
  • Горохов Лев Петрович
  • Малахов Юрий Васильевич
  • Смирнов Евгений Владимирович
SU1541594A1
Арифметическое устройство с микропрограммным управлением 1988
  • Коротков Валерий Анатольевич
  • Шек-Иовсепянц Рубен Ашотович
  • Горохов Лев Петрович
  • Малахов Юрий Васильевич
  • Смирнов Евгений Владимирович
SU1559341A1
МИКРОПРОЦЕССОР ВВОДА-ВЫВОДА ИНФОРМАЦИИ 1992
  • Селезнев И.П.
  • Аксенов Г.М.
RU2042182C1
Микропрограммный процессор 1982
  • Супрун Василий Петрович
  • Кривоносов Анатолий Иванович
  • Корниенко Иван Иосифович
  • Тимонькин Григорий Николаевич
  • Ткаченко Сергей Николаевич
  • Харченко Вячеслав Сергеевич
SU1070557A1
Устройство для сопряжения ЦВМ с накопителями на магнитной ленте 1985
  • Давыдов Виктор Александрович
  • Попов Владимир Григорьевич
  • Козлов Вячеслав Максимович
  • Чесалин Лев Сергеевич
SU1288708A1
Микропрограммный процессор 1980
  • Елисеев Александр Александрович
  • Крупин Владимир Александрович
  • Ленкова Валентина Мироновна
  • Петушков Александр Николаевич
SU868766A1
Устройство для обучения 1988
  • Соловьев Георгий Николаевич
  • Ковригин Борис Николаевич
  • Тышкевич Владимир Георгиевич
  • Сидуков Владимир Михайлович
  • Мифтахов Рустам Канафиевич
  • Иванов Михаил Александрович
SU1663618A1
Процессор с микропрограммным управлением 1983
  • Соловьев Алексей Алексеевич
  • Курбатов Борис Юрьевич
  • Барашко Виктор Сергеевич
  • Еремин Алексей Тимофеевич
  • Власов Феликс Сергеевич
  • Румянцев Владимир Ильич
SU1149273A1
Микропрограммный процессор 1987
  • Дрель Леонид Исаакович
  • Мугинштейн Израил Семенович
  • Шварц Эммануил Ехезкелевич
SU1553984A1
ВЫЧИСЛИТЕЛЬНАЯ СИСТЕМА 1991
  • Булавенко Олег Николаевич[Ua]
  • Коваль Валерий Николаевич[Ua]
  • Палагин Александр Васильевич[Ua]
  • Рабинович Зиновий Львович[Ua]
  • Авербух Анатолий Базильевич[Ua]
  • Балабанов Александр Степанович[Ua]
  • Дидык Петр Иванович[Ua]
  • Любарский Валерий Федорович[Ua]
  • Мушка Вера Михайловна[Ua]
RU2042193C1

Иллюстрации к изобретению SU 1 559 340 A1

Реферат патента 1990 года Арифметическое устройство с микропрограммным управлением

Изобретение относится к вычислительной технике и может быть использовано при проектировании арифметических устройств вычислительных машин. Цель изобретения - повышение быстродействия операции умножения при одновременном сокращении оборудования. Устройство содержит арифметический блок, выполненный из N вычислительных ячеек и узла ускоренного переноса, шинный формирователь интерфейса, контроллер состояний, регистр адреса памяти, два узла выбора операндов, каждый из которых содержит соединенные мультиплексор адреса и буферный регистр, и блок микропрограммного управления, состоящий из регистра команд, дешифратора команд, дешифратора прерываний, узла микропрограммного управления, узла памяти микрокоманд, первого регистра микрокоманд и блока обработки прерываний, а также источник постоянного тока, шину данных, шину адреса, вход тактовых прямых сигналов и связи между указанными блоками согласно чертежам. Новым является введение регистра формирования адреса, второго регистра микрокоманд, дешифратора битовых управляющих сигналов, в первый узел выборки операндов введен дешифратор адреса, включенный между выходом мультиплексора адреса и вторым входом буферного регистра адреса, а также введены входы "Установка" и тактовых инверсных сигналов и связи между введенными и известными блоками устройства согласно чертежам. 7 ил. 2 табл.

Формула изобретения SU 1 559 340 A1

дов.

Поля управления регистра 21 микрокоманд:

первое поле управления - управление операндами портов А и В узла 3 (48 - 59 разряды) разделяется на управление узла 12 ( разряды) и на управление узла 13 ( разряды);

35

Сигналы управления работой узла 3 с первой группы выходов регистра 20 поступают на входы секций k - 7 уз- ла 3«

Информация с первой группы выходов регистра 21 о выборе источников операндов, сдвинутая на полтакта вперед относительно такта работы узла 3 поступает на входы узлов 12 и 13 и

50-53 и 56-59 разряды первого поля 4д синхронизируется стробом Т. участвуют в выборе номера регистра че-С выбранными узлами 12 и 13 по сорез порты А и В узла 3 и 48, 9 и 5,

ответствующим входам ячеек Ц - 7 операндом производятся арифметические или логические операции в АЛУ 3.

55 разряды в выборе источника операнда в АЛУ 3;

второе поле управления - управление дешифратора 23 (60-63 разряды), служащее для формирования шестнадцати битов признаков управления микрокоманды;

третье поле управления - управле- ние записью признаков состояния и формирования флага контроллера 9 (32 kk разряды);

четвертое поле управления - формирование признаков интерфейса, служащих сигналами сопровождения информации интерфейса и управления работой формирователя 10 и регистра 11 (k$ - kj разряды).

Сигналы управления работой узла 3 с первой группы выходов регистра 20 поступают на входы секций k - 7 уз- ла 3«

Информация с первой группы выходов регистра 21 о выборе источников операндов, сдвинутая на полтакта вперед относительно такта работы узла 3 поступает на входы узлов 12 и 13 и

синхронизируется стробом Т. С выбранными узлами 12 и 13 по со45

0

5

ответствующим входам ячеек Ц - 7 операндом производятся арифметические или логические операции в АЛУ 3.

Результатом операций является выборка признаков состояния с выходов ячейки kt поступающих на соответствующие входы контроллера 9 Для хранения и модификации.

Результатом после обработки сигналов состояния на 13-разрядной шине, поступающих на вход контроллера 9 является выработка сигнал F, поступающего в узел 17.

При выработке сигнала F с выхода контроллера 9 информация по 12-разрядной шине с выходов регистра 20 проходит по входам узла 17 как информация следующего адреса МК.

715

В случае отсутствия сигнал F от контроллера 12-разрядный адрес из узла 17 формируется в зависимости от кодовой комбинации на 4-разрядной ши- не входов узла 17.

Рассмотрим сущность взаимодействия блоков 1 и 2 совместно

Начало работы инициируется сигналом Установка, поступающим на вто- рой вход регистра 20, по которому Адрес микрокоманды с пятого выхода регистра 20 записывается синхронно с сигналом Т за два такта через узел 17 в регистр 18. Это и является ис- ходным состоянием для начала работы устройства.

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

Тогда в регистре 20 (циклограммы и 4) существует информация, управляющая работой А-й микрокоманды, а в регистре 21 в течение первого полупериода существует информация для Амикрокоманды, а в течение второй поИнформация, выбранная по нечетному 25 ловины периода - для А+1 микрокоманадресу, записывается в регистр 21 по сигналу Т, а по четному - в регистр 20 по сигналу Т.

Информация, хранящаяся в регистре 20, управляет работой узла 3.

Номер регистра общего назначения (РОН) узла 3 вырабатывается узлами 12 и 13 синхронно сигналу Т.

Пунктирами на фиг. 5 показано прохождение информации одновременно для трех последовательных значений следующего адреса микрокоманд (А, А - 1, А + 2).

В момент интервала времени х происходят следующие действия:

под управлением регистров 20 и 21 выполняются арифметические или логические операции в узле 3 формируются признаки слова состояния процесса

ды.

В то же время под управлением регистра 18, содержащего информацию о номере микрокоманды А+1 (циклограмма 30 9) выбирается из узла 19 (циклограм ма 7) нечетный, а затем четный адрес А + 1 микрокоманды, из узла 19 по не четному адресу записывается в регист 21 (циклограмма 4) и по четному адр су в регистр 20 (циклограмма 3)

Номер регистра общего назначения узла 3, содержащий операнд, необходи мый для выполнения операции, хранитс в узле 12 или 13 синхронно с работой узла 3 (циклограмма 10).

Из временной диаграммы (фиг. 6) и структурной схемы организации управления (фиг. 5) видно, что в предложенной схеме реализован конвейер н

35

40

и записываются по концу интервала вре-д 2-е выработки следующего адреса микро- мени в контроллер 9;команды, т,е., когда выполняются дейпод управлением регистра 18 и признака Т дважды выбирается (нечетный, затем четный адрес МК А - 1) информация из узла 19 и по окончании интер- ,. вала времени х записывается, соответственно в регистр 21 (нечетный адрес) и регистр 20 (четный адрес);

под управлением 4-разрядной шины с группой выходов регистра 20 в узле 17 формируется следующий адрес выборки , микрокоманды А - 2 и по окончании интервала времени х записывается в регистр 18.

55

ствия под управлением микрокоманды А, в узле 3 под управлением регистра 18 выбирается из узла 19 инфомрация А+1 микрокоманды, а в узле 17 вырабатывается адрес А + 2 микрокоманды.

Совмещение процесса выработки следующего адреса для микрокоманд А, А + 1, А + 2 создает возможность значительного сокращения времени его выполнения .

Оператор 1 подготавливает операнды умножения, т.е. размещает множимое и множитель в устройствах 3« Множитель

8

Q 5

0

Динамику формирования следующего адреса микрокоманды, работу узлов 3 и 9 поясняет временная диаграмма, представленная на фиг. 6, на которой по вертикали обозначены сверху вниз номера циклограмм, по горизонтали - длительности и виды циклограмм с выделением интервала времени х..

На циклограммах 1 и 2 показана последовательность синхроимпульсов Т и Т, синхронизирующих работу устройства.

На циклограммах 1-10 рассмотрена работа последовательности микрокоманд от А-1 до А+5.

Предположим, что момент времени х соответствует выполнению микрокоманды А по циклограмме 5 в узле 3

Тогда в регистре 20 (циклограммы 3 и 4) существует информация, управляющая работой А-й микрокоманды, а в регистре 21 в течение первого полупериода существует информация для Ай микрокоманды, а в течение второй по5 ловины периода - для А+1 микрокоманды.

В то же время под управлением регистра 18, содержащего информацию о номере микрокоманды А+1 (циклограмма 0 9) выбирается из узла 19 (циклограмма 7) нечетный, а затем четный адрес А + 1 микрокоманды, из узла 19 по нечетному адресу записывается в регистр 21 (циклограмма 4) и по четному адресу в регистр 20 (циклограмма 3)

Номер регистра общего назначения узла 3, содержащий операнд, необходимый для выполнения операции, хранится в узле 12 или 13 синхронно с работой узла 3 (циклограмма 10).

Из временной диаграммы (фиг. 6) и структурной схемы организации управления (фиг. 5) видно, что в предложенной схеме реализован конвейер на

5

0

ствия под управлением микрокоманды А, в узле 3 под управлением регистра 18 выбирается из узла 19 инфомрация А+1 микрокоманды, а в узле 17 вырабатывается адрес А + 2 микрокоманды.

Совмещение процесса выработки следующего адреса для микрокоманд А, А + 1, А + 2 создает возможность значительного сокращения времени его выполнения .

Оператор 1 подготавливает операнды умножения, т.е. размещает множимое и множитель в устройствах 3« Множитель

засылается в регистр-сдвигатель, множимое-- в регистр общего назначения по нечетному адресу (например, 15), в регистре общего назначения, отличаю- щемся по адресу на единицу младшего разряда (Е нашем примере с адресом 14), размещается перед процедурой умножения информация с кодом 0...0, а в дальнейшем - сумма частичных произве- JQ дений„ ,

Оператор 2 загружает в счетчик циклов, размещенный в узеп 17 информацию, равную количеству циклов умножения (при 16- разрядном множителе 16). $

При выполнении цикла умножения оператор 3 вычитает единицу из содержимого счетчика Циклов в узле 17 и передает управление:

на оператор 4 в случае информации 20 з счетчике циклов, не равной нулю;

на оператор 7 в случае информации в счетчике циклов, равной нулю, т.е. по окончании цикла умножения.

Оператор Ц анализирует в каждом 25 цикле значение младшего разряда ре- гистра-сдвигателя Q узла 3, передает управление на оператор 5 в случае Q6 0, на оператор 6 в случае Q0 1, .

Оператор 5 выполняет суммирование 30 регистра общегс назначения накопителя суммы частичных произведений с регистром 14 общего назначения, содержащим информацию, равную нулю, и перепись полученной суммы частичных произведе- ,5 ний в регистр 9 общего назначения. Этот же оператор сдвигает содержимое регистров 9 и Q общего назначения (суммы частичных произведений и множителя на разряд вправо), причем млад-до шие разряды содержимого регистра 9 общего назначения (хвост) перетекают в старшие разряды регистра Q.

Младший разряд регистра Q выталкивается из регистра и пропадает. 45

Оператор 6 выполняет суммирование регистра общего назначения 9 (накопителя суммы частичных произведений) с регистром 15 общего назначения, содержащим множимое, и перепись получен- ной суммы частичных произведений в регистр 9 общего назначения. Оба оператора осуществляют безусловную передачу управления оператору 3« Цикл повторяется .55

По окончании цикла оператор 7 осуществляет формирование признаков ело- ва состояния по результату умножения

и производит выборку следующей команг ды.

Выполнение операторов 3 - 5 ветви А и 3, 4 и 6 ветви В совмещается в одной микрокоманде (1 микротакт). При длительности микротакта 250 не время выполнения цикла умножения составит 250 не.

При умножении двух 16-разрядных чисел -Тц 250 не х 16 4000 не.

Выполнение всех операторов цикла умножения одной микрокомандой осуществляется с помощью узла 12 (фиг 3)

В микрокоманде цикла Умножение выполняются одновременно следующие действия:

декремент содержимого счетчика циклов узла 17;

суммирование содержимых регистров общего назначения с нечетным номером, например 15, где предварительно зафиксировано значение множимого, и с любым номером в диапазоне 0-13, в котором накапливается значение суммы частичных произведений, например 9

посылка результата суммирования в выбранный в диапазоне 0-13 регистра общего назначения, например 9;

эмуляция нулевого разряда адреса под управлением сигналов С1, С2 (при С2 0, d 0, т.е. адрес из исходного нечетного становится четным при значении младшего разряда множителя (С2) равным нулю и, наоборот, при С2 1, d 1, т.е. при значении младшего разряда множителя (С2) равным единице остается нечетным;

сдвиг на один разряд вправо регист ра-сдвигателя Q узла 3, содержащего значение множителя и регистра 9 общего назначения частичных произведений (младший разряд множителя в каждый такт присутствует на входе узла 12 как управляющий сигнал С2);

анализ содержимого счетчика циклов узла 17 и формирование адреса передачи управления (при (/К.ц/) 0 передается управление на повторение микрокоманды Умножение, при /Rc4iU(/ 0 на выполнение микрокоманд оператора 7 (фиг. 6) Причем в регистр 14 общего назначения засылается предварительно информация Оо..О.

Основные действия в операции умножения выполняются в блоке 1 между секциями 4 - 7 и контроллера 9 как сдвиговые операции над регистрами множителя. и регистром частичных произведений, являющиеся сдвиговыми регистра10

15

D-входы ячеек 4 - 7 в качестве операнда следующей операции или через входы - выходы формирователя 10 на шину 2k данных для запоминания во внешних носителях информации.

В случае запоминания результата вычислений во внешнем ОЗУ микрокоманды генерируют адрес ячейки внешнего ОЗУ с первых выходов регистра 11 на шину 25, обеспечивают работу интерфейса по приему адреса с регистра 11 и данных с формирователя 10 по шине 2k во внешние ОЗУ.

За счет свертки временных процессов, происходящих в блоке 2 во время выборки адреса следующей микрокоманды, достигается при сокращении оборудования блока 2 более короткий такт

ми Q и S узла 3

Работа по выполнению арифметических и логических операций над операндами в узле 3 производится под управлением полей микрокоманды с первых групп выходов регистра 21 (12-разрядная шина) и регистра 20 (9-разрядная ши на),

Под управлением сигналов на группе выходов регистра 21 производится выбор узлов 12 и 13 источников адресов операндов внутреннего оперативного запоминающего устройства узла 3 (источник 1-й - регистр 14, источник 2-й - регистр 21).

С выходов регистра 20 производится

управление арифметическими или логи- 20 обработки информации (250 не), ческими операциями в узле 3 над операндами.

Операнды могут быть использованы в зависимости от значений функций управления узла 3 поступающих с 25 включения, рядной шины и 5-разрядной шины регист-Сигнал 11Установка по шине 29, сиг

ра 20, из внутреннего оперативного запоминающего устройства узла 3 или с шины данных через формирователь 10 на D-входы узла 3.30

По результатам выполнения операций над операндами в АЛУ 3 вырабатываются признаки (Z,C,V,N-Bxoflbi контроллера 9) слова состояния узлов.

По сигналам управления с 13-разряд- лающего с группы выходов по 4-разрядной шины выходов регистра 21 в конт- ной шине на группу входов узла Т, роллер 9 запоминаются и обрабатываются признаки слова состояния и в зависимости от их комбинаций вырабатывается сигнал F для организации процес- 40 са ветвлений микропрограммы. Процесс . - обмена информацией с внешними устройствами производится по интерфейсным ,

Рассмотрим работу АУ, начиная с мс мента включения, т,е„ инициализации начального адреса микропрограммы

нализирующий об отсутствии вторичных напряжений питания или наличии переходных процессов при их установлении, поступает на второй вход регистра 20, В регистре 20 под управлением CHI- нала Установка полем 4 (фиг. 4) вырабатывается функция управления узла 17 для выработки адреса О..О, постуУзел 17 вырабатывает 12-разрядный адрес (0...0) и выставляет его на выходе

Регистр 18 по синхросигналу Т записывает указанный 0...0 (четный) адрес и начинается выборка содержимого нулевой ячейки узла 19 (старшие разряды, 32-63) с записью информации 45 по синхросигналу Т в регистр 21.

шинам адреса 25 и данных 24.

При необходимости перехода обмен информацией с внешними носителями информации по интерфейсу типа Узкая шина шины Адрес и Данные объединяются

С первых выходов регистра 11 в ши CQ ну 25 адреса поступает 16-разрядный код адреса и признаки для его сопровождения .

Результат операций над операндами

Регистр 18 по синхросигналу Т записывает указанный 0...0 (четный) адрес и начинается выборка содержимо го нулевой ячейки узла 19 (старшие разряды, 32-63) с записью информации 45 по синхросигналу Т в регистр 21.

Синхроимпульс Т подключает младший разряд адреса на входе узла 19 Адрес 00...01 (нечетный) выбирает из узла 19 содержимое первой ячейки и записывает по синхросигналу Т в регистр 20 (младшие разряды 0-31). Так заканчивается процесс инициализации

.начального адреса микропрограммы Ин циализация, в процессе выполнения

которой загружаются,, устанавливаются

с первых выходов ячеек k - 7 поступав 5 значения различных счетчиков и узлов на входы формирователя 10 для заломи- блоков 1 и 2 в исходное состояние. нания в буферном регистре и трансляции через выходы формирователя 10 на

Программа инициализации заканчивается загрузкой в регистр 4 первой команды

D-входы ячеек 4 - 7 в качестве операнда следующей операции или через входы - выходы формирователя 10 на шину 2k данных для запоминания во внешних носителях информации.

В случае запоминания результата вычислений во внешнем ОЗУ микрокоманды генерируют адрес ячейки внешнего ОЗУ с первых выходов регистра 11 на шину 25, обеспечивают работу интерфейса по приему адреса с регистра 11 и данных с формирователя 10 по шине 2k во внешние ОЗУ.

За счет свертки временных процессов, происходящих в блоке 2 во время выборки адреса следующей микрокоманды, достигается при сокращении оборудования блока 2 более короткий такт

обработки информации (250 не),

включения, Сигнал 11Установка по шине 29, сиг

Рассмотрим работу АУ, начиная с мс мента включения, т,е„ инициализации начального адреса микропрограммы

лающего с группы выходов по 4-разрядной шине на группу входов узла Т,

нализирующий об отсутствии вторичных напряжений питания или наличии переходных процессов при их установлении, поступает на второй вход регистра 20, В регистре 20 под управлением CHI- нала Установка полем 4 (фиг. 4) выабатывается функция управления узла 17 для выработки адреса О..О, постулающего с группы выходов по 4-разрядной шине на группу входов узла Т,

Узел 17 вырабатывает 12-разрядный адрес (0...0) и выставляет его на выходе

Регистр 18 по синхросигналу Т записывает указанный 0...0 (четный) адрес и начинается выборка содержимого нулевой ячейки узла 19 (старшие разряды, 32-63) с записью информации по синхросигналу Т в регистр 21.

Синхроимпульс Т подключает младший разряд адреса на входе узла 19 Адрес 00...01 (нечетный) выбирает из , узла 19 содержимое первой ячейки и записывает по синхросигналу Т в регистр 20 (младшие разряды 0-31). Так заканчивается процесс инициализации

.начального адреса микропрограммы Инициализация, в процессе выполнения

которой загружаются,, устанавливаются

значения различных счетчиков и узлов блоков 1 и 2 в исходное состояние.

значения различных счетчиков и узлов блоков 1 и 2 в исходное состояние.

Программа инициализации заканчивается загрузкой в регистр 4 первой команды

по сигна лу из дешифратора 23, поступившей из Запоминающего устройства. Разряды команды с второй группы дов по 16-разрядной шине поступают на дешифрацию в дешифратор 16. Данные на второй группе входов дешифратора управляют выходами дешифратора, пере- ключая выходы из состояния высокого импеданса в активный режим. В то же время сигналы на выходе дешифратора 15 и на пятой группе выходов регистра 20 (обратный адрес) находятся в состоянии высокого импеданса, т.е. отключены., .J5

С выхода дешифратора 16 по 12-разрядной шине начальный адрес микропрограммы команды поступает в узел 17, транслируется им, эмулируется в зави10

мером, указанным в 0 - 2 разрядах к манды. Третья микрокоманда выставля содержимое указанного регистра обще назначения из узла 3 с выхода на вх регистра 11, фиксируется в нем и вы тавляется, как адрес операнда на маг страль 25. Выбранный из внешней пам ти операнда (множимое) с магистрали 2k поступает в формирователь 10 и с него на D-вход ячеек 4-7.

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

симости от функции управления переда- 2Q регистр общего назначения (в -нашем

примере) узла 3. Двумя последующими микрокомандами производится посылка константы с пятой группы выходов по 9-разрядной шине (в нашем случае 0...0). Через формирователь 10 в ре гистр 14 общего назначения (в нашем примере) и регистр 9 общего назначе ния. С помощью формирователя 10 мож путем размножения старшего разряда (девятого) константы и обмена байт между собой скомбинировать любую ко станту во всем диапазоне 16-разрядн го числа.

чи адреса, поступающего с четвертой группы выходов регистра 20. Эмулированный адрес поступает с выхода узла 17 на группу входов регистра 18 и в случае выборки адреса инициализации выбирается дважды в течение такта из узла памяти микрокоманд и записывается в регистры 21 и 20.

Предположим, что очередная выбран- ная из внешнего накопителя по шине 24 данных команда - команда Умножение. Из условия,что в регистрах 20 и 21 выставлен код первой микрокоманды умножения, начинается выполнение микропрограммы умножения согласно ал- горитму (фиг. 7).

Выполнение оператора 1 заключается в действиях по выборке информации множителя и множимого из регистров общего назначения или ячеек внешней памяти. Местоположение исходное операндов и методы адресации памяти определяются системой команд. Предположим что реализованная система команд типа СМ-4. В этом случае содержимое номе- ра регистра общего назначения, указанного в 6-8 разрядах слова к&манды, есть множитель. Первая микрокоманда выбирает содержимое регистра общего назначения (множитель) и переписывает его внутри узла 3 в регистр Q.

Множимое, в зависимости от системы адресации, указанной в 0-5 разрядах команды, выбирается по сформированному адресу из внешней памяти.

Предположим, что используется метод адресации, когда адрес размещается в регистре общего назначения с но

0

мером, указанным в 0 - 2 разрядах кот манды. Третья микрокоманда выставляет содержимое указанного регистра общего назначения из узла 3 с выхода на вход регистра 11, фиксируется в нем и выставляется, как адрес операнда на магистраль 25. Выбранный из внешней памяти операнда (множимое) с магистрали 2k поступает в формирователь 10 и с него на D-вход ячеек 4-7.

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

регистр общего назначения (в -нашем

Q регистр общего назначения (в -нашем

25

30 $$

о 45 0

5

примере) узла 3. Двумя последующими микрокомандами производится посылка константы с пятой группы выходов по 9-разрядной шине (в нашем случае 0...0). Через формирователь 10 в регистр 14 общего назначения (в нашем примере) и регистр 9 общего назначения. С помощью формирователя 10 можно путем размножения старшего разряда (девятого) константы и обмена байт между собой скомбинировать любую константу во всем диапазоне 16-разрядного числа.

Выполнив действия оператора 1 , выполняем оператор 2 по алгоритму умножения фиг. 7. Следующая микрокоманда осуществляет посылку информации по 12-разрядной шине с1 группы выходов регистра 20 константы Адрес в узле 17, где информация запоминается в специальном счетчике циклов.

Выработка следующего адреса микрокоманды при переходе от первой микрокоманды ко второй и т.д. осуществляется с выходов регистра 20 по 4-разрядной шине. Причем каждая микрокоманда под номером N указывает адрес выборки из ЗУМК N+2 микрокоманды.

Выполнив действия операторов 1 и 2 (фиг. 7) выполняем операторы 3 - 5 цикла умножения. Эти операторы выполняются во время выполнения одной микрокоманды Умножение. Для пояснения рассмотрим все поля микрокоманды Умножения (фиг. 4). В поле 5 регистра 20 применяется формат 3 Сдвиг, выполняется управление функциями сдвига контроллера 9: сдвиг вправо регистров 9 и Q общего назначения.

151559340

В поле 4 выставляется информация, управляющая узлом 17 таким образом, чтобы производился декреметр регистра-счетчика циклов и анализ его состояния с переходом по состоянию (Rt4 ) 0 на повторение микрокоманды

16

умножения, а по состоянию (/Нсц/ )

0 - на выполнение дейсУвий операто ра 17.

Первым полем регистра 20 управляется узел 3 - производятся операция суммирования и пересылка полученной суммы частичных произведений по адресу, указанному в первом поле узла 13. В первом поле узла 12 указывается ад рее (номер РОН), информация в котором - множимое (адрес в нашем примере 15). Разряды нерассмотренных полей

11. Считанная из внешней памяти информация (команда) записывается в регистр 14 и начинает выполняться следующая команда.

Необходимо дать разъяснения принципа приема и обработки сигналов пре рываний узла 22. Узел 22 в течение выполнения текущей микропрограммы ко

JQ манды принимает, запоминает сигналы прерываний от ЦВМ и осуществляет обработку прерываний согласно присваиваемым им приоритетам. Наивысший из принятых сигнал прерываний преобразу

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

микрокоманды устанавливаются таким следующей из дешифратора 16. С выхо

дов регистра 20 поступает управление выбора и загрузки адреса и микрокоманды из трех возможных источников с выходов узлов 20, 15 и 16.

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

Узел 12 эмулирует с помощью дешифратора 31 нулевой разряд адреса ре- 25 гистра общего назначения под управлением младшего разряда регистра-сдвига- теля Q.

При Qo 0 адрес с выхода узла 12

дов регистра 20 поступает управление выбора и загрузки адреса и микро команды из трех возможных источников: с выходов узлов 20, 15 и 16.

Состояние выходов этих истбчникое в любой момент времени таково, что активным может быть только один, а остальные должны находиться в состоянии высокого импеданса (отключены),

четный (14), При Q0 1 адрес с выхо-30 возможно отключение и всех трех источ да узла 12 нечетный (15).

В регистре 15 общего назначения содержится информация - множимое.

В регистре 14 общего назначения содержится информация 0...0.д5

Поэтому выполняются действия операторов 4,5 или 4,6, а именно:

РОН + РОН - РОН, при 0 ш 1; РОН, - РОН, при 0 0, и последующий сдвиг вправо на один

40

разряд содержимого регистров-РОНд и Q. В качестве управления на вх. 4 уз- ла 12 поступит следующий разряд множителя и все действия повторятся столько раз, сколько разрядов во мно-45 жителе,

НИКОВ.

Если с выходов узла 22 вырабатывается по 3-разрядной шине сигнал Прер., свидетельствующий о наличии требования хоть одного прерывания, происходит определенная коммутация выходов тристабильных источников адреса микрокоманды узлов 15 16 и 20, а именно активным становится выход дешифратора 15.

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

По окончании цикла умножения последовательностью микрокоманд выполняются действия оператора 7, формирующего по результатам умножения призна-f ки слова состояния контроллера 9 (1-2 микрокоманды),

Далее производится формирование адреса выборки следующей микрокоманды в регистр 11, т.е. информация одного из регистров общего назначения узла 3 (счетчик команд) с информационных выходов узла 3, поступает в регистр

J

16

11. Считанная из внешней памяти информация (команда) записывается в регистр 14 и начинает выполняться следующая команда.

Необходимо дать разъяснения принципа приема и обработки сигналов прерываний узла 22. Узел 22 в течение выполнения текущей микропрограммы команды принимает, запоминает сигналы прерываний от ЦВМ и осуществляет обработку прерываний согласно присваиваемым им приоритетам. Наивысший из принятых сигнал прерываний преобразую

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

следующей из дешифратора 16. С выхо

дов регистра 20 поступает управление выбора и загрузки адреса и микро команды из трех возможных источников: с выходов узлов 20, 15 и 16.

Состояние выходов этих истбчникое в любой момент времени таково, что активным может быть только один, а остальные должны находиться в состоянии высокого импеданса (отключены),

возможно отключение и всех трех источ

НИКОВ.

Если с выходов узла 22 вырабатывается по 3-разрядной шине сигнал Прер., свидетельствующий о наличии требования хоть одного прерывания, происходит определенная коммутация выходов тристабильных источников адреса микрокоманды узлов 15 16 и 20, а именно активным становится выход дешифратора 15.

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

Концом выполнения микропрограммы обработки прерывания является вновь микрокоманда загрузки начального адреса микрокоманды из дешифратора 16. Ее- ли прерывания отсутствуют,то происходит переход на выполнение следующей команды, поступающей из регистра 14 команд.

Формула изобретения . Арифметическое устройство с микропрограммным управлением, содержащее

арифметико-логический блок, в состав которого входит N вычислительных ячеек, узел ускоренного переноса, шинный формирователь, контроллер состо- яний, регистр адреса памяти, два узла выбора операндов, каждый из которых содержит мультиплексор адреса и буферный регистр, и блок микропрограммного управления, содержащий регистр JQ команд, дешифратор команд, дешифратор Прерываний, узел микропрограммного управления, узел памяти микрокоманд, первый регистр микрокоманд и узел обработки прерываний, причем шина дан- J5 ных соединена с первой группой входов шинного формирователя и информационными входами регистра команд, выходы разрядов первой группы регистра ко- манд соединены с управляющими входами 20 мультиплексора адреса первого узла выбора операндов, выходы разрядов второй группы регистра команд соединены с управляющими входами мультиплексора адреса второго узла выбора 25 операндов, выходы разрядов третьей группы соединены с информационными входами дешифратора команд, выходы дешифратора команд и дешифратора прерываний соединены с первой и второй группами адресных входов узла микропрограммного управления, выход сигнала вектора прерываний узла обработки прерываний соединен с информационным входом дешифратора прерываний, выход шинного формирователя соединен с информационными входами N вычислительных ячеек, группа информационных выходов которых соединена с информаци- онными входами регистра адреса памяти, выходы которого являются шиной адреса устройства, первый, второй и третий выходы признака состояний первой вычислительной ячейки соединены с входами знака переполнения и переноса соответственно контроллера состояний, первый и второй выходы двунаправленной цепи сдвига i-й (где i 1,2,,.., N-1) вычислительной ячейки соединены с одноименными уходами (1+1)-й вычислительной ячейки, первый и второй вы ходы распространения сдвига контроллера состояний соединены с первым и вторым входами двунаправленной цепи сдвига соответственно первой вычислительной ячейки, третий и четвертый выходы распространения сдвига контроллера состояний соединены с первым и вторым выходами двунаправленной цепи

40

.,-50

нJQ J520 25 , , 40

50

сдвига N-й вычислительной ячейки, выходы распространения и разрешения переноса (1+1)-й вычислительной ячейки соединены с входами-выходами узла ускоренного переноса и с входами последовательного переноса i-й вычислительной ячейки, выход условия перехода контроллера состояний соединен с входом разрешения выборки адреса узла микропрограммного управления, выход переноса контроллера состояний соединен с входами последовательного переноса N-й вычислительной ячейки и узла ускоренного переноса, прямой тактовый вход устройства соединен с син- хровходами контроллера состояний, узла микропрограммного управления, регистров адреса первого и второго узлов выбора операндов, выходы которых соединены с первым и вторым входами адреса соответственно всех вычислительных ячеек, отличающее-- с я тем, что, с целью повышения быстродействия операции умножения при од- повременном сокращении оборудования, в блок микропрограммного управления введены регистр формирования адреса, второй регистр микрокоманд, дешифратор битовых управляющих сигналов, в первый узел выбора операндов введен

дешифратор адреса, выход которого соединен с входом разрешения записи буферного регистра первого узла выбора операндов, нулевой разряд выхода мультиплексора адреса первого узла выбора операндов соединен с первым

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

микрокоманды узла микропрограммного управления соединены с информационными входами регистра формирования адреса, выходы которого соединены с адресными входами узла памяти микрокоманд, выходы которого соединены с информационными входами первого и второго регистров микрокоманд, первая группа выходов первого регистра микрокоманд соединена с входом микрокоманд сдвига контроллера состояний, вторая группа выходов первого регистра микрокоманд соединена с второй труппой входов шинного формирователя, третья группа вы19

ходов первого регистра микрокоманд соединена с третьей группой адресных входов узла микропрограммного управления, четвертая группа выходов первого регистра микрокоманд соединена с входами управления приемом-выдачей данных шинного формирователя, пятая группа выходов первого .регистра микрокоманд соединена с входом микрокоманд узла микропрограммного управления, шестая группа выходов первого

1

регистра микрокоманд соединена с входом узла обработки прерываний, седьмая группа выходов первого регистра микро- команд соединена с входами микроко-.- манд всех вычислительных ячеек, первая группа выходов второго регистра микрокоманд соединена с входами микрокоманд контроллера состояний,вторая 20 группа выходов второго регистра микрокоманд соединена с управляющими входами формирования адреса регистра адреса памяти и входом управления формирования признаков сопро- 15 вождения адреса и адреса шинного i формирователя, третья и четвертая группы выходов второго регист- ра микрокоманд соединены с информаци- онными входами мультиплексоров адре/га 30

. 20

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

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

Фие.1

MUL

Qo

Cl

сг 2:

CJ. Т,

37

IIP Ь

4

W

ЪР

5х.Ъ

ч т

; et

П

/ V

Вых

-

Z3f-tzz -tzzt- с 4

&П(#

OfeS&Vftf

С

Начало

}

L-L

Подготовка операндов S регистрах МУЗ

Загрузка счетчика циклов умножения 8 узле 17

РОН„+РОН9- РОНд

и±

Тело умножения

I

Формирование признаков состояния

С коней j

15593 0

Нет

Документы, цитированные в отчете о поиске Патент 1990 года SU1559340A1

Самофалов К.Г
Электроника цифровых вычислительных машин
Киев: Ви- ща школа, 1976, с
РАССЕИВАЮЩИЙ ТОПЛИВО МЕХАНИЗМ 1920
  • Палько Г.И.
SU298A1
Мик, Дж
Брик
Проектирование микропроцессорных устройств с разряд- номодульной организацией
М.: Мир, 1984, с
Способ образования азокрасителей на волокнах 1918
  • Порай-Кошиц А.Е.
SU152A1
Прибор для наглядного представления свойств кривых 2 порядка (механические подвижные чертежи) 1921
  • Яцыно В.П.
SU323A1
( АРИФМЕТИЧЕСКОЕ УСТРОЙСТВО С МИКРОПРОГРАММНЫМ УПРАВЛЕНИЕМ

SU 1 559 340 A1

Авторы

Коротков Валерий Анатольевич

Шек-Иовсепянц Рубен Ашотович

Горохов Лев Петрович

Малахов Юрий Васильевич

Смирнов Евгений Владимирович

Даты

1990-04-23Публикация

1988-07-08Подача