Устройство управления

 

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

СОЮЗ СОВЕТСНИХ

СОЦИАЛИСТИЧЕСКИХ

РЕСПУБЛИН (51)4 G 06 F 9/22 5/00

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

И ABTOPCHOMY СВИДЕТЕЛЬСТВУ

ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 4059051/24-24 (22) 22.04.86 (46} 15.08 ° 88. Бнш. Ф 30 (71) Андроповский авиационный технологический институт (72) М.А.Гладштейн (53) 681.32(088.8) (56) Авторское свидетельство СССР

Ф 1042018, кл. G 06 F 9/22, 1983.

Соботка 3.,Стары Я. Микропроцессорные системы. М., 1981, с, 50-53 ° (54) УСТРОЙСТВО УПРАВЛЕНИЯ (57) Изобретение относится к области вычислительной техники и может быть

„.SU„„1417005 А1 использовано при построении устройств управления универсальных вычислительных машин и микропроцессоров. Целью изобретения является сокращение емкости блока памяти sa счет обеспечения возможности организации вложенных друг в друга подпрограмм. Устройство содержит регистр адреса, блок памяти, регистр команд, группу счетчиков, генератор управляющих сигналов, счетчик уровня программы, дешифратор, мультиплексор. Введение мультиплексора, счетчика уровня программы, дешифратора и группы счетчиков обеспечивает достижение цели. 4 ил.

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

На фиг, 1 изображена функциональная схема предлагаемого устройства; на фиг. 2 и 3 — варианты схемотехнической реализации генератора управляюших сигналов, на фиг, 4 — граф-схе-, 15 ма работы устройства.

Устройство (фиг. 1 ) содержит регистр 1 адреса, блок 2 памяти, регистр 3 команд, нулевой счетчик 4, генератор 5 управляющих сигналов, счетчик 6 уровня программы, первый выход 7 микроопераций генератора управляющих сигналов, группу счетчиков

8, мультиплексор 9, дешифратор 10.

Кроме того, на фиг. 1 позициями обо- 25 значены выходы седьмого 11, восьмого

12, первого !3, второго 14, третьего

15, четвертого 16, пятого 17 и шестого 18 разрядов второго поля микроопераций, вход 19 логических условий устройства.

Генератор 5 управляющих сигналов (первый вариант) содержит (фиг. 2) дешифратор 20, имеющий три группы входов, генератор 2! тактовых сиг налов, кольцевой счетчик ..2 и набор

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

40 является входом сброса генератора 5 управляющих сигналов.

Генератор 5 управляющих сигналов (второй вариант) содержит (см. фиг„3) 45 блок 24 микропрограммного управления, имеющий три группы входов 25, блок

26 постоянной памяти, первая 27 и вторая 28 группы выходов которого об= разуют соответствующие группы выходов генератора 5 управляющих сигналов 50 и генератор 29 тактовых сигналов, При этом вход 30 сброса генератора 5 управляющих сигналов связан с входом установки начального состояния блока

24 микропрограммного управления, Последний может быть реализован на микросхеме К589ИК01, а блок 26 постоянной памяти — на микросхемах серии! 417005 2

К556. На граф-схеме (фиг, 4) помечены микрооперации пс зициями 31-43.

Все блоки предлагаемого устройства являются стандартными и легко реализуются на интегральных микросхемах, например, серии К155.

Устройство обеспечивает управление вычислительным процессом в соответствии с многоуровневой программой, размещаемой в блоке 2 памяти, Такая программа содержит последовательности команд различных уровней. Каждая команда более высокого уровня в процессе исполнения заменяется последовательностью команд (т,е. программой) более низкого уровня и т,д, Наконец, команда первого уровня представляется последовательностью команд традиционного машинного (нулевого) уровня, адреса которых задаются счетчиком 4, Команды с 1 до n-ro уровней также содержат код операций и адресную часть.

В поле кода операции указывается один иэ четырех возможных типов команд: команда безусловного перехода IMP; команда условного перехода TCN; операционная команда ОРС; команда конца

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

Устройство работает в соответствии с граф-схемой (фиг. 4).

После подачи сигнала "Сброс", поступающего на вход установки начального состояния устройства, счетчик уровня программы 6 устанавливается в состояние п,п-й счетчик 8 — в нулевое состояние, Кроме того, устанавливается начальное состояние генератора 5 управляющих сигналов. После снятия сигнала "Сброс" генератор 5 управля1 ющих сигналов в -,а-зряде 14 второй группы выходов формирует импульс.Благодаря этому будет выполнена микрооперация 31 — "Переслать в регистр

11 адреса 1 содержимое 1-го счетчика 8

Каждая микрооперация граф-схемы (фиг. 4) для большей наглядности помечена номерами соответствующих разрядов второй группы выходов генератора 5 управляющих сигналов.Микрооперация 31 обеспечивается тем, что выходы одного из счетчиков 8 через мультиплексор 9 оказываются подключенными к входам второй группы информационных входов регистра 1 адре3 141 са, причем номер i счетчика 8 определяется состоянием счетчика уровня программы ll. Следовательно, в начальный момент в регистр 1 адреса будет записано начальное состояние и-го счетчика 8, Затем генератор управляющих сигналов сделает следующий шаг: 32 — "Читать код из блока 2 памяти в регистр 3 команд". При этом генерируются импульсы в 15 и 16 разряды генератора 5 управляющих сигналов. Первый поступает на вход стробирования блока 2 памяти, а второй " на вход разрешения записи регистра 3 команд. Этим обеспечивается выборка кода команды из блока 2 памяти и saпись его в регистр 3 команд. При первом проходе после сброса, в регистре команд будет записана первая команда п-го уровня. Затем выполняется микрооперация 33 — "Инкрементировать i-ый счетчик 8". Это действие обеспечивается импульсом в разряде

11 второй группы выходов генератора

5 управляющих сигналов, который поступает на входы инкрементирования всех счетчиков 8 и счетчика 4 команд.

Однако дешифратор IO обеспечивает выборку только одного счетчика, но- . мер которого соответствует текущему состоянию счетчика 6 уровня программы (счетчик 4 выбран при нулевом состоянии счетчика 6 уровня программы).

При первом проходе после сброса выбирается и-й счетчик 8, поэтому только он будет инкрементирован. Дальнейшие операции зависят от типа команды.

Вначале производится проверка 34"Команда IMP?". Эта проверка реализуется логикой генератора 5 управляющих сигналов путем сравнения кода операции команды, поступающего с второй группы выходов регистра 3 команд на вторую группу входов генератора 5 управляющих сигналов с известным кот, дом команды IMP. Если сравнение дает положительный результат, то выполняется микрооперация 35 — "Занести в . i-й счетчик 8 адрес иэ регистра 3 команд", Для выполнения этого действия генератор 5 управляющих сигналов формирует импульс в разряде 12 второй группы выходов, который-поступает на входы разрешения записи всех счетчиков 8 и счетчика 4. Однако за счет действия входов выборки, управляемых с выходов дешифратора 10, запись будет реализована только в

4 равляющих сигналов обеспечивает по10 вторение микроопераций, начиная с блока 31. Если же код операции не совпадает с кодом команды IMP то выполняется проверка 36 — "Команда ICNT".

Она выполняется аналогично микрооперации 34. Если результат проверки положительный, то выполняется проверка условия 37 — "CN=I?". Эта проверка также реализуется логикой генератора

5 управляющих сигналов путем сравнения заданного кода условия CN с истинным значением, поступающим по входам 19 сигналов-условий. Если же результат сравнения положительный, то

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

Если код операции не совпадает с

30 кодом команды ICN то выполняется микрооперация 37 - "Команда OPC?". Эта микрооперация выполняется аналогично

34 и 36. Если команда действительно операционная, то генератор 5 управля35 ющих сигналов выполняет микрооперацию 39 - "i=0?". Эта микрооперация выполняется логикой генератора 5 управляющих сигналов путем сравнения кода текущего уровня, поступающего с

40 выходов счетчика 6 уровня программы на входы второй группы входов кода операции генератора 5 управляющих сигналов с нулевым кодом. Если результат сравнения отрицательный, т.е ° уровень программы не нулевой, реализуется понижение уровня программы, Это обеспечивается микрооперацией 40—

"Декрементировать счетчик 6 уровня программы". При этом генератор 5 управляющих сигналов формирует импульс на линии 17 второй группы выходов, поступающий на вход декрементирования счетчика 6 уровня программы. После этого выполняется описанная микрооперация 35,,благодаря которой адресная часть операционной команды заносится в программный счетчик подчиненного уровня, чем подготавливается счетчике 8, соответствующем текущему уровню. Этими действиями адрес перехода иэ адресной части команды через первую группу выходов регистра 3 ко5 манд будет передан в счетчик 8 текущего уровня, чем и обеслечивается предписанный командой безусловный переход. После этого генератор 5 уп5 14 очередной цикл управления. Если же результат сравнения положительный, т.е. i=0, и очередная команда адресо-,ана счетчиком 4 команд, то она подлежит выполнению, Это обеспечива= ется блоком 41 — "Исполнить команду". При этом генератор 5 управляющих сигналов генерирует здесь импульс в разряде 13 второй группы выходов, чем обеспечивается запись адреса из адресной части регистра 3 команд через первую группу выходов в регистр 1 адреса через первую группу входов.

Этим подготавливается выборка из блока 2 памяти операнда, адресованного командой. Кроме того, генератор 5 управляющих сигналов на первой группе выходов формирует серию управляющих импульсов, поступающих в операционное устройство через линии выхода 7 управляющих сигналов устройства. Все это обеспечивает исполнение команды нулевого уровня. Затем возобновляется очередной цикл управления. Если же проверки 34, 36 и 38 дали отрицательный результат, значит в регистре

3 команд зафиксирована команда КРП).

Тогда выполняется проверка 42 — "i=

=n7". Если результат отрицательный, то это означает, что закончилась последовательность команд -го уровня и необходимо перейти на более высокий программный уровень. В этом случае выполняется микрокоманда 43—

"Инкрементировать счетчик 6 уровня программы", Генератор 5 управляющих сигналов в этом случае генерирует импульс в разряде 18, который поступает на вход инкрементирования счетчика б уровня програюлы и увеличивает его содержимое на единицу, обеспечивая переход устройства на более вы= сокий уровень. Если же проверка 42 дает положительный результат, то это означает, что закончена программа наивысшего уровня п. В этом случае в генераторе 5 управляющих сигналов происходит блокирование всех выходных импульсов и устройство переходит в состояние иОстанов". Рассматривая циклическую граф-схему работы устройства (фиг. 4), легко убедиться в том, что запущенная с уровня и программа последовательно понижает свой уровень, пока не дойдет до уровня О, где начнет исполняться последовательность команд, обеспечивающая выполнение одной команды 1-го уровня, 17005 6

По окончании этой последовательности происходит возврат к 1-му программному уровню, очередная команда которого вызывает следующую последовательность команд нулевого уровня и т,д. до тех пор пока, не будет обнаружена команда КИВ 1-го уровня. Здесь происходит обращение к 2-му уровню и т.д, IIpoцесс продолжается до тех пор, пока не будет полностью исполнена вся последовательность команд и-го уровня.

Таким образом„. предлагаемое устройство обеспечивает управление вычислительным процессом в соответствии с и-уровневой программой.

Формула из о брет ения

Устройство управления, содержащее регистр адреса, блок памяти, регистр команд, генератор управляющих сигналов, причем выходы поля адреса регистра команд соединены с первой группой информационных входов регистра адреса, выход которого соединен с входом адреса блока памяти, выход которого соединен с информационным входом регистра команд, выход поля кода операции которого соединен с первым входом кода операции генератора управляющих сигналов, вход логических условий устройства соединен с входом логических условий генератора управ- ляющих сигналов, выход первого поля микроопераций которого является выходом микроопераций устройства, выходы с первого по четвертый второго поля микроопераций генератора управляющих сигналов соединены соответственно с первым и вторым входами синхронизации регистра адреса, с входом разрешения блока памяти, с входом синхронизации регистра команд, вход начальной установки устройства соединен с входом сброса генератора управляющих сигналов, о т л и ч а ю щ е е с я чем, что, с целью сокращения емкости блока памяти за счет обеспечения возможности органиэации п вложенных од на в другую подпрограмм, дополнительно содержит n+1 счетчиков, где п —количество вложенных подпрограмм, счетчик уровня программы, дешифратор, мультиплексор, причем вход начальной установки устройства соединен с вхо дом установки в 0" и-го счетчика и с входом установки в "!1 счетчика уровня программь|, выход которого соедин

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

5 по (и+1)-й дешифратора соединены соот- RHKG уровня пРогРаммы, седьмой выход ветственно с входами разрешения с второго поля микроопераций генератопервого по (n+I)-й счетчиков, инфор- ра управляющих сигналов соединен с мационные выходы которых соединены входами прибавления единицы, с персоответственно с первого по (и+1)-й 10 вого по (n+1)-й счетчиков, восьмой информационными входами мультиплек- выход второго поля микроопераций гесора, группа выходов которого соеди-, нератора управляющих сигналов соенена с второй группой информационных динен с входами синхронизации с первходов регистра адреса, пятый и щес- вого по (n+))-й счетчиков.

1417005

1417005

Составитель А.Сошкин

Редактор Е.Копча Техред Л.Сердюкова Корректор Л.Патай

Тираж 704 Подписное

ВНИИПИ Государственного комитета СССР по делам изобретений и открытий

113035, Москва, Ж-35, Раушская наб., д. 4/5

Заказ 4066/47

Производственно-полиграфическое предприятие, r. Ужгород, ул. Проектная, 4

Устройство управления Устройство управления Устройство управления Устройство управления Устройство управления Устройство управления Устройство управления 

 

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

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

Изобретение относится к вычислительной технике и автоматике и может использоваться при построении управляющих автоматов микропрограммных микропроцессоров

Изобретение относится к вычислительной технике и может быть применено в центральных процессорах в качестве управляющего блока

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

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

Изобретение относится к цифровой автоматике и вычислительной технике и может быть использовано для прст1)оения микропрограммных управляюпщх устройств ЭВМ и контроллеров АСУ ТП

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

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

Изобретение относится к вычислительной; технике

Изобретение относится к цифровой вычислительной технике

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

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

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

Изобретение относится к построению сетей связи для передачи информации по вычислительным сетям
Наверх