Микропрограммное устройство управления
Иллюстрации
Показать всеРеферат
1. МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ, содержащее блок памяти микрокоманд, счетчик a tpeca, счетчик линеек микрокоманд, регистр линеек микрокоманд, регистр остатков микрокоманд , дешифратор линеек микрокоманд, коммутатор, триггер пуска, генератор ш пульсов, восемь блоков элементов И, первый и второй блоки элементов ИЛИ, (к+4) элемента И, где к - число полных линеек, занимаемых микрокомандой, первый и второй элементы задержки, одновибратор, причем вход пуска устройства соединен с единичным входомтриггера пуска, выход которого соединен с входом генератора импульсов, первый вьЕсод генератора импульсов соединен с первым входом первого эл ёмента И, выход которого соединен с входом первого элемента задержки, первая информационная группа выходов счетчика адресов соединена с входами старших разрядов группы информационных входов блока памяти микрокоманд, выходы которого соединены с группой информационных входов регистра остат .ков микрокоманд, выходы с первого по к-й группы выходов блока памяти микрокоманд соединены с соответствующими информационными входами регистрй полных линеек микрокоманд, первый, второй, третий и четвертый вьЬсоды группы выходов которого соединены с первыми входами соответственно первого , второго, третьего и четвертого блоков элементов И, первые ю выходов регистра остатков микрокоманд, где 1Т1- число полных остатков микрокоманд , размещаемых в одной линейке, соединены соответственно с первыми т информационными входами коммутатора выход которого соединен с первым ; входом пятого блока элементов И, выходы четвертого и пятого блоков (Л элементов И соединены с соответствующими выходами группы выходов микроопераций устройства, выход счетчика линеек микрокоманд соединен с входом § дешифратора линеек микрокоманд, о тличающееся тем, что, с целью расширения области применения, .в устройство введены блок контроля - о и суммирования, регистр номеров остато ков, дешифратор остатков микрокоманд, 35 SD 4 мультиплексор, первый и второй триггеры управления, причем-вход логических условий устройства и выход первого блока элементов И соединены соответственно с информационным и адресным входами мультиплексора, выход которого соединен с входом первого операнда блока контроля и суммирования , первым входом шестого бло ка элементов И и инверсным входом седьмого блока элементов И, выход iBTOporo блока элементов И соединен с первым входом первого блока элементов ИЛИ, выход которого соединен с
СОЮЗ СОВЕТСНИХ
СОЦНАЛИСТИЧЕСНИХ
РЕСПУБЛИН
„„SU„„1100624
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И 9ТНРЫТИЙ
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 3569844/18-24 (22) 29.03.83 (46) 30.06.84. Бюл. № 24 (72) Г.Н. Тимонькин, В.С. Харченко, В.Г. Литвиненко и С.Н. Ткаченко (53) 681.3(088.8) (56) 1. Авторское свидетельство СССР № 928356, кл. G 01 К 9/22,1980.
2. Авторское свидетельство СССР №. 928357, кл. G 06 Р 9/22,. 1980.
3. Авторское свидетельство СССР по заявке ¹ 3310259/18-24, кл. G 01 F 9/22, 02.07.81 (прототип). (54)(57) 1. МИКРОПРОГРАИИНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ, содержащее блок памяти микрокоманд, счетчик ацреса, счетчик. линеек микрокоманд, регистр линеек микрокоманд, регистр остатков микрокоманд, дешифратор линеек микрокоманд, коммутатор, триггер пуска, генератор импульсов, восемь блоков элементов И, первый и второй блоки элементов ИЛИ, (к+4) элемента И, где к — число полных линеек, занимаемых микрокомандой,. первый и второй элементы задержки, одновибратор, причем вход пуска устройства соединен с единичным входом триггера пуска, выход которого соединен с входом генератора импульсов, первый вьмод генератора импульсов соединен с первым входом первого элемента И, выход которого соединен с входом первого элемента задержки, первая информационная группа выходов счетчика адресов соединена с входами старших разрядов группы информацион-.. ных входов блока памяги микрокоманд, вьмоды которого соединены с группой . информационных входов регистра остат.ков микрокоманд, выходы с первого
3t58 G 0 6 F 9/02 G 06 F 11/00 по к-й группы выходов блока памяти микрокоманд соединены с соответствующими информационными входами регистра полных линеек микрокоманд, первый, второй, третий и четвертый выходы группы выходов которого соединены с первыми входами соответственно первого, второго, третьего и четвертого блоков элементов И, первые тп выходов регистра остатков микрокоманд, где м- число полных остатков микрокоманд, .размещаемых в одной линейке, соединены соответственно с первыми т информационными входами коммутатора, выход которого соединен с первым
1 входом пятого блока элементов И, Я выходы четвертого и пятого блоков . элементов И соединены с соответствующими выходами группы выходов микроопераций устройства, выход счетчика линеек микрокоманд соединен с входом дешифратора линеек микрокоманд, о тл и ч а ю щ е е с я тем, что, с целью расширения области примененитт, .в устройство введены блок контроля и суммирования, регистр номеров остатков, дешифратор остатков микрокоманд, . мультиплексор, первый и второй триггеры управления, причем. вход логических условий устройства и выход первого блока элементов И соединены соответственно с информационным и адресным. входами мультиплексора, выход которого соединен с входом пер- а ваго операнда блока контроля и суммирования, первым входом шестого бло . ка элементов И и инверсным входом седьмого блока элементов И, выход .Второго блока элементов И соединен с первым входом первого блока элементов ИЛИ, выход которого соединен с
1100624 первым информационным входом счетчика адреса, выход третьего блока элементов И соединен со вторь1м входом шестого блока элементов И и прямым входом седьмого блока элементов И, выходы которых соединены соответственно с входом второго операнда блока контроля и суммирования и первым входом второго блока элементов ИЛИ, выход неисправности блока контроля и суммирования является выходом ошибки устройства и соединен через одновибратор с первым входом элемента
ИЛИ, выход которого соединен с нулевым входом триггера пуска, выход
° результата суммирования блока контроля и суммирования соединен с вторым входом второго блока элементов
ИЛИ, выход которого соединен с информационным входом регистра номеров остатков и вторым информационным входом счетчика адреса, первый,второй входы группы входов .кода опера" ций устройства соединены соответственно с вторым входом первого и третьим входом второго блоков элементов ИЛИ, второй выход счетчика адреса соединен с прямым входом восьмого блока элементов И, выход которого соединен с вторым. входом группы входов блока памяти микрокоманд, первый выход генератора импульсов соединен с пефвыми входами второго и третьего элементов И, выходы которых соединены соответственно со счетным входом и входом синхронизации счетчика адреса, выход третьего элемента И соединен с входом синхронизации регистра номеров остатков и единичным входом первого триггера управления, выход которого соединен с инверсным входом восьмого блока элементов И и через второй элемент задержки — с прямым входом второго триггера управления, первые (к+2) выходов дешифратора линеек микрокоманд соединены соответственно с первыми входами элементов И с четвертого до (к+4)-й и нулевым входом второго триггера управления, единичный выход которого соединен с вторым входом второго элемента И, нулевой выход второго триггера управления соединен с вторыми входами первого и третьего элементов И, (к+2)-й выход дешифратора линеек микрокоманд.соединен с вторыми входа.ми первого, второго, третьего, четвертого и пятого блоков элементов И, выход конца работы группы выходов которого соединен с вторым входом элемента ИЛИ, второй выход генератора импульсов соединен с нулевым входом первого триггера управления, счетным входом счетчика линеек микрокоманд и с вторыми входами элементов
И с четвертого до (к+4)-й, выходы которых соединены соответственно с входом синхронизации регистра остат-. ков микрокоманд и входами синхронизации регистра полных линеек микрокоманд, выход регистра номеров остатков соединен с входом дешифратора остатков микрокоманд, выходы которого соединены с соответствующими уп.равляющими входами коммутатора.
2. Устройство по п. 1, о т л ич а ю щ е е с я тем, что блок контроля и суммирования содержит четыре одноразрядных сумматора, дешифратор и элемент ИЛИ, причем вход первого операнда блока соединен с входами первого операнда первого и второго одноразрядных сумматоров, входы второго операнда блока соединены с входами второго операнда первого и второго одноразрядных сумматоров и с входами первого операнда третьего и четвертого одноразрядных сумматоров, входы переноса первого, третьего и четвертого одноразрядных сумматоров соединены С шиной нулевого потенциала, выход переноса первого одноразрядного сумматора соединен с входом переноса второго одноразрядного сумматора, выходы переноса второго, третьего и четвертого одн1эразрядных сумматоров соединены соответственно с входами второго операнда третьего и четвертого одноразрядных сумматоров и с входом элемента
ИЛИ, выход которого является выходом неисправности блока, выходы суммы всех одноражрядных сумматоров соединены с входами дешифратора и образуют выход результата суммирования блока, группы выходов дешифратора соединены с группой входов элемен.та ИЛИ.
1 1100624
Изобретение относится к вычисли- ными входами регистра полных линеек тельной технике и автоматике и может микрокоманд, первый — четвертыи выбыть использовано при построении мик- ходы группы выходов которого соедиропрограммных устройств управления нены с первыми входами первого — четЭВМ и цифровых систем. 5, тертого блоков элементов. И, первый—
1п-й где м — число полных остатком
Известно устройство микропрограм- 1п и гд много управления, содержащее лок пажащее блок па. микРокоманд, Размещаемых в одной линейке, выхбды регистра остатков микмяти микрокоманд, два счетчика, дешифратора, регистр микрокоманд, ге- рокоманд соединены соответственно с
И 1О первым — гп-м информационными входами нератор импульсов, элементы И и
ИЛИ 1 j. коммутатора, вы од которого соединен тва явля- с первым входом пятого блока элеменНедостатком этого устроиства является низкая экономичность лок чность блока памя- тов И, выходы четвертого и пятого в отдель- . блоков элементов И соединены с состти, обусловленная тем, что в отдельных его ячеиках может хранить микроопераций устройства, выход ко целое число микрокоманд. счетчика линеек микрокоманд соединен с
Известно устройство микропрограммного управления, содержащее лок паее блок па- входом дешифратора линеек микрокомяти микрокоманд, два счетчика, два м анд Г 3 ).
Недостатком указанного устройства адержки элементы И является узкая область применения в связи с возможностью реализации тольИЛИ, одновибратор, триггер, генерако линейных последовательностей опетор импульсов 23. рационных микрокоманд без обращения к
Недостатком данного устройства памяти команд системы, большой избыявляется узкая область применения, точностью блока памяти микрокоманд, обусловленная невозможностью реализастоящих из мик . вызванной тем, что в нем допускается ции микропрограмм, состоящих из микрокоманд, разрядность которых ольше ше хранение линейных последовательиостей только с естественной адресацией . длины ячеек блока памяти.
3О микрокоманд, а следовательно большой
Наиболее близким к изобретению по избыточностью запоминающих устройств технической сущности и достигаемому для хранения программ, использукицих эффекту является микропрограммное прототип в качестве управляющего устустройство управления, содержащее ройства,нижнего уровня по той же приблок памяти микрокомайд, счетчик ад- 35 чине система, в которой используетреса, счетчик линеек микрокоманд, ся устройство-прототип, имеет низкое дешифратор линеек микрокоманд, гене- . быстродействие вследствие большого ратор импульсов, триггер пуска, ком- числа обращений к памяти команд при мутатор, элементы И, ИЛИ, одновибра- выполнении микропрограмм с ветвленитор, первый и второй элементы за- 40 ями), низкой достоверностью функцидержки, причем вход пуска устройства онирования, обусловленной отсутствисоединен с единичным входом триггера ем средств контроля правильности вы пуска, выход которого соединен с вхо- полнения микропрограмм. дом генератора импульсов, первый вы- Цель изобретения — расширение обход генератора импульсов соединен с. 45 ласти применения устройства. первым входом первого элемента И, вы- Поставленная цель достигается тем, ход которого соединен с входом пер- что в микропрограммное устроиство упвого элемента задержки, первая груп- равления, содержащее блок памяти па выходов счетчика адресов соеди- микрокоманд, счетчик адреса, счетчик иена с входами старших разрядов 5С линеек микрокоманд, регистр полных группы входов блока памяти микроко- линеек микрокоманд, регистр остатков манд, группа выходов которого сое- микрокоманд, дешифратор линеек микродинена с группой информационных вхо" команд, коммутатор, триггер пуска, дов регистра остатков микрокоманд, генератор импульсов, восемь блоков ,первый - к-й, где к — .число полных 55 элементов И, первый и второй локи линеек, занимаемых одной микрокоман- элементов ИЛИ, (к 4) элемент л мента И дой, выходы группы выходов блока па- где к — чиСло полных линеек, занимамяти микрокоманд соединены соответ- емых .микрокомандой элемента И, ерственно с первым — к-м информациои- вый и второй элементы задержки, од1100624 новибратор, причем вход пуска устройства соединен с единичным входом триггера пуска, выход которого соединен с входом генератора импульсов, первый выход генератора импульсов соединен с первым входом первого элемента И, выход которого соединен с входом первого элемента задержки, первая информационная группа выходов счетчика адресов соединена с входами старших разрядов группы информационных входов блока памяти микрокоманд, выходы которого с!оединены с группой информа;. ционных входов регистра остатков микрокоманд, выходы с первого по к-й группы выходов блока памяти микрокоманд соединены с соответствующими информационными входами регистра полных линеек микрокоманд, первый,вто- рой, третий и четвертый выходы группы выходов которого соединены с первыми входами соответственно первого, второго, третьего и четвертого блоков элементов И, первые:tn выходов регистра остатков микрокоманд (где m — чис- 25 ло полных остатков микрокоманд, размещаемых в одной линейке) соединены соответственно с первыми Ф информационными входами коммутатора, выход которого соединен с первым входом ЗО пятого блока элементов И, выходы четвертого и пятого. блоков эг емен;гов
И соединены с соответствующими выходами группы выходов микроопераций устройства, выход счетчика линеек микрокоманд соединен .с входом дешифратора линеек микрокоманд, дополнительно введены блок контроля и суммирования, регистр номеров остатков, дешифратор остатков микрокоманд, 40 мультиплексор, первый и второй триггеры управления, причем вход логических условий устройства и выход пер-. вого блока элементов И соединены соответственно с информационным и адрес-45 ным входами мультиплексора, выход которого соединен с входом первого операнда блока контроля и суммирова-. ния, первым входом шестого блока элементов И и инверсным, входом седьмо- 5О
ro блока элементов И, выход второго блока элементов И соединен с первым входом первого блока элементов ИЛИ, выход которого соединен с первым информационным входом счетчика адре- 55 са, выход третьего блока элементов И
- соединен со вторым входом шестого блока элементов И и с прямым входом седьмого блока элементов И, выходы которых соединены соответственно с входом второго операнда блока контроля и суммирования и первым входом второго блока элементов ИЛИ, выход неисправности блока контроля и суммирования является выходом ошибки устройства и соединен через одновиб" ,ратор с первым входом элемента ИЛИ, выход которого соединен с нулевым входом триггера пуска, выход результата суммирования блока контроля и суммирования соединен с вторым входом второго блока элементов ИЛИ, выход которого соединен с информационным входом регистра номеров остатков
1и вторым информационным входом счетчика адреса, первый и второй входы группы входов кода операции устройства соединены соответственно с вторым входом первого и третьим входом второго блока элементов ИЛИ, второй выход счетчика адреса соединен с прямым входом восьмого блока элементов И, выход которого соединен с вторым входом группы входов блока памяти микрокоманд, первый выход генератора импульсов соединен с первыми входами второго и третьего элементов
И, выходы которых соединены соответственно со счетным входом и входом синхронизации счетчика адреса, выход третьего элемента И соединен с входом синхронизации регистра номеров остатков и единичным входом первого триггера управления, выход которого соединен с инверсным: входом восьмого блока элементов И и через второй элемент задержки — с прямым входом второго триггера управления, первые (к+2) выходов дешифратора линеек микрокоманд соединены соответственно с первыми входами элементов И с четвертого до (к+4)-й и нулевым входои второго триггера управления, единичный выход которого соединен с вторым входом второго элемента И, нулевый выход второго триггера управления соединен с вторыми входами первого и третьего элементов И, (к -2)-й выход дешифратора линеек микрокоманд соединен с вторыми входами первого, второго, третьего, четвертого и пятого блоков элементов И, выход конца работы группы выходов которого соединен с вторым входом элемента ИЛИ, второй выход генератора импульсов соединен с нулевым входом первого триггера управления, счетным входом счетчика линеек микрокоманд и вторы1100624
:ми входами элементов И, с четвертого до (к+4)-й, выходы кьторых соединены соответственно с входом синхронизации регистра остатков микрокоманд и входами синхронизации регистра полных линеек микрокоманд, выход регистра номеров остатков соединен с входом дешифратора остатков микрокоманд, выходы, которого соединены с соответствующими управляющими входами коммутатора.
Кроме того, блок контроля и суммирования содержит четыре одноразрядных сумматора, дешифратор и элемент
ИЛИФ причем вход первого операнда 15 блока соединен с. входом первого операнда первого и второго одноразрядных сумматоров, выходы второго операнда блока соединены с входами второго операнда первого и второго одноразрядных сумматоров и входами первого операнда третьего и четвертого одноразрядных сумматоров, входы переноса первого, третьего и четвертого одноразрядных сумматоров соединены с ши- 25 ной нулевого потенциала, выход переноса первого одноразрядного сумматора. соединен с входом переноса второго одноразрядного сумматора, выходы переноса второго, третьего и четверто- Зб
ro одноразрядных сумматоров соединены соответственно с входами второго опе" ранда третьего и четвертого одноразрядных сумматоров и с входом элемента ИЛИ, выход которого является выходом неисправности блока, выходы суммы всех одноразрядных сумматоров соединены с. входами дешифратора и образуют выход результата суммирования блока, группы выходов дешифрато- 40 ра соединены с группой входов элемента ИЛИ.
Сущность изобретения состоит s расширении области применения путем. организации условных и бузусловных йереходов в микропрограммах,состоящих из микропрограмм, разрядность которых превышает разрядность линеек блока памяти без использования про-, . 10 граммных средств, а также организаций контроля правильности переходов s микропрограммах на основе проверки соответствия сформированного кода адреса очередной микрокоманды заданным требованиям.
В блоке памяти микрокоманды рас.полагаются поблочно. Каждый блок сос" тоит из (m%+1)-й линейки (где кчисло полных линеек, занимаемых одной микрокомандой, т.е. к = 3nt -„(1), с ь и г — разрядность микрокоманды и линейки блока .памяти соответственно), m — число полных остатков микрокоманд, . раз зщенных в одной линейке, т. е.
Каждый блок микрокоманд имеет следующую структуру: в первой линейке блока располагаются остатки микрохоманд, причем их размещение слева направо по 5 = 3 -12 разрядов соответствует номеру микрокоманды в блоке, во второй - (к+1)-й линейках располагается целая часть первой микрокоманды блока, в (к+2)-й - (2к+1)-й — целая часть второй микрокоманды и т.д. В
$(m-1) к+2) (вМ+1)-й линейках блока располагается целая часть tn-й микрокоманды.
Микрокоманды, размещаемые в бло-. ке памяти, содержат как операционную, так и адресную части, в том числе и поле кода логических условий. Каждый адрес состоит из двух частей: старшие разряды указывают номер блока мнкрокоманд, к которому необходимо перейти, а младшие — задают номер первой линейки в блоке, в которой записана начальная часть очередной микрокоманды.
В мнкрокомандах ветвления в поле кода логических условий задается номер проверяемого логического условия.
При ветвлении происходит модификация только младших разрядов адреса, т.е. микрокоманды, следующие за ветвлением, размещаются в одном блоке. Функция .. модификации определяется внутренней структурой блока контроля и суммирования. В рассмотренном ниже примере конкретного выполнения этого узла модификация младших разрядов осуществляется только при единичном значении проверяемого условия путем суммирования их с константой, равной к.
При таком варианте модификации микрокоманды, следующие за ветвлением, располагаются в соседних группах ли" . неек блока, состоящих из к линеек.
Считывание микрокоманд осуществляется за (к+1) такт. Сначала считывается линейка остатков (при этом младшие разряды адреса маскируются), а затем последовательно считываются
1100624 8
1 ментов И, второй блок 24,элементов
ИЛИ, первый блок 25 элементов ИЛИ, второй элемент 26 И, третий элемент
27 И, первый элемент 28 И, пятый 29, шестой 30 и (к+4)-й 31 элементы И соответственно, четвертый элемент
32 И, элемент 33 ИЛИ, одновибратор
34, первый элемент 35 задержки, второй элемент 36. задержки, вход 37 логических условий устройства, вход 38 кода операции устройства, вход 39 пуска устройства, группу входов 40 микрооперацнй устройства, выход 40.1 микрооперацни "Конец работы", выход
41 ошибки устройства, выход 42 кода разрядов адресной части микрокоманд (адреса,, блока, микрокоманд), выход
44 младших разрядов адресной части микрокоманд (адреса микрокоманды в блоке микрокоманд), выход 45 операционной части микрокоманд регистра 4, информационный выход 46 блока контроля и суммирования, выход 47 мультиплексора, выходы 48.1 — (48. к+2)-й дешифратора линеек мнкрокоманд, выходы 49.1 — 49tn дешифратора остатков микрокоманд, первый 50.1 и второй
50.2 выходы генератора импульсов 11 соответственно, выход 51 блока элемента И.
На фиг. 2 обозначено: первый 52.1
1 второй 52.2, третий 52.3 и четвертый
52.4 одноразрядные комбинационные сумматоры соответственно, дешифратор
53 адреса, блок 54 элементов ИЛИ.
Блок 1 памяти микрокоманд предназначен для хранения микрокоманд. В микрокоманде поля расположены следующим образом: поле логических услорес микрокоманды и блоке, микроопе.- каждая иэ которых занимает к полных мер размещения микрокоманд приведен на фиг. 4 для m= 3, к = 3. части микрокоманд, хранящиеся в линейках с Оk +2)-й по f(i+1) (к+1)1 -ю (i = О, в-1);
Принцип контроля, реализованный в предлагаемом устройстве, основан на том положении, что при ветвлении не может быть сформирован адрес, при котором осуществляется переход к другому блоку микрокоманд, т.е. если число, соответствующее младшим разрядам исполнительного адреса микрокоманды ветвления, превышает величину rn(z-1)+2 -. это означает, что произошел сбой или устойчивый отказ в адресных цепях устройства, включая и соответствующие ячейки блока па- логических условий, выход 43 старших мяти.
Введение блока контроля и суммирования позволяет осуществлять модификацию адреса и проверять правильность функционирования адресных цепей устройства. Регистр номеров остатков и дешифратор остатков микрокоманд управляют выбором разрядов кода остатков, соответствующих счи- 23 тываемой микрокоманде, мультиплексор обеспечивает выбор значения логического условия в соответствии с кодом, задаваемым в формате микрокоманды.
Первый и второй триггеры управления ЗО управляют занесением информации в счетчик адреса и.маскированием младmHx разрядов адреса.
На фиг. 1 представлена функциональная схема микропрограммного З5 устройства,.управления; на фиг. 2блок контроля и суммирования, на фиг. 3 — пример размещения микрокоманд в блоке памяти.
Схема микропрограммного устройства
40 содержит блок l памяти микрокоманд, вий, адресная часть, Разбитая на две счетчик 2 адреса, счетчик 3 линеек . части: адРес блока микрокоманд н адмикрокоманд, регистр 4 полных линеек микрокоманд, регистр 5 номеров
45 остатков, регистр 6 остатков. микрокоманд, блок 7 контроля и суммирования, мультиплексор 8, дешифратор 9 линеек. Таким образом, число линеек в линеек микрокоманд дешифратор 10 остатков микрокоманд, генератор 11 имблоке микрокоманд равно (пФ-1). П ир д равно (пФ 1). Припульсов, триггер 12 пуска, первый триггер 13 управления, второй триггер
14 управления, коммутатор 1,5, шестой Счетчик 2 предназначен для записи блок 16 элементов И, седьмой блок 17 и хранения адреса очередной линейки элементов И, первый блок 18 элемен-. блока 1 памяти микрокоманд. Он иметов И, второй блок 19 элементов И, 51 ет два информационных поля Ð 1 и D 2. третий блок 20 элементов И, четвер- Поле 3 2 предназначено для записи тый блок 21 элементов И, пятый блок адреса микрокоманды в блоке (млад22 элементов И, восьмой блок 23 эле- ших разрядов адреса), D 1 — для за1100624
001
0001
010
0100
0111
100 писи адреса блока микрококанд, т.е. адреса линейки с записанными в нее остатками микрокоманд. Счетчик 3 применяется для управления считывания полных линеек микрокоманды, образую- 5 щнх ее целую часть, регистр 4 — для хранения полных линеек считываемых микрокоманд, регистр 5 — для хранения адреса микрокоманды в блоке, регистр 6 — для записи и хранения остатков всех микрокоманд, входящих в данный блок микрокоманд.
Пример выполнения схемы блока контооля и суммирования 7 представлен на фиг . 2, Он необходим для изменения адреса микрокоманды в блоке, когда на выходе 47 мультиплексора 8 появится единичный сигнал, соответствующий единичному значению логического условия. В этом случае к дан- ® ному адресу микрокоманды прибавляется . константа, равная числу полных линеек микрокоманды. Иикрокоманды, следующие после вЕтвления, расположены рядом в одном блоке, т.е. у них отличаются только младшие разряды адреса ..
Рассмотрим работу блока 7 на при-.: мере. Если на выходе 47 мультиплексора 8 появилась 1, то к младшим . разрядам адреса микрокоманды прибав- 3п ляется константа, равная к, т.е. число полных линеек микрокоманды. Эта операция осуществляется с помощью сумматоров 52.1 — 52.4. Если после пеРвой микрокоманды, которая являет- З> ся микрокомандой ветвления (фиг.3), должен быть осуществлен переход по единичному значению логического условия, к младшим разрядам адресной части этой микрокоманды 0100 необхо".40 димо прибавить код 0011 (к = 3).
Тогда произойдет переход от первой
- микрокоманды к третьей, а не ко второй (переход ко второй осуществляет.ся при нулевом значении логического, 4 условия)-. Если на выходе четвертого сумматора 52.4 появится единичный сигнал, это означает, что в устройстве произошла ошибка. Поскольку для записи младших разрядов адреса ис- . пользуется gtn1с + 1)-я комбинация . двоичных символов, то это приводит .к появлению избыточных комбинаций. Таким образом, все наборы, для которых выполняется равенство д > 0 являются следствием ошибки.
8 данном случае гпk+ 1 = 10, следовательно появление на выходах сумматоров 52.1 — 52.4 двоичных кодов, соответствующих числам 11, 12, 13, 14, 15, свидетельствует об ошибке в. работе устройства. Тогда дешифратор
53 имеет четыре входа и пять выходов, на которых дешифрируются кодовые комбинации 1011,1100, 1.101, 1110 и
1111 соответственно. При их появлении на входе дешифратора.53 или,появлении сигнала переполнения на выходе сумматора 52.4 формируется сигнал ошибки на выходе элемента
Мультиплексор 8 предназначен для выделения значения логического условия, соответствующего заданному току, который поступает с выхода устройства. Мультиплексор 8,.вьптолняет следующую логическую функцию агаЗ . а х,+а„а аз,.. а х2+
+ а1а2 аз 4х + ° ° ° где а;, > = г,k — значение i-ro разряда кода проверяемого логического условия, х.,j=1,г — значение 1-го логи1 ческого условия, поступающего от объекта управления.
Дешифратор 9 линеек микрокоманды единичным сигналом на выходе 48.1 разрешает считывание первой линейки остатков блока микрокоманд, при появлении "единицы" на каждом следующем выходе, кроме 48к + 2, осуществляется последовательное считывание полных линеек микрокоманды.
Дешифратор 10 остатков микрокоманды служит для выбора нужного остатка микрокоманды. Рассмотрим его работу на примере, приведенном на фиг. 4. Если считана вторая микрокоманда по адресу 0100, то из первой линейки необходимо выбрать второй остаток. Работу дешифратора можно описать следующей таблицей:
1 1 1 1006
Генератор 11 предназначен для выдачи двух серий тактовых импульсов, триггер 12 - для разблокировки генератора по команде "Пуск" и блокировки его работы при появлении сигнала 5
"Ошибка" или "Конец работы". Триггеры 13 и 14 осуществляют управление считыванием и формированием адреса.
Кроме того триггер 13 осуществляет управление маскированием младших 10 разрядов адреса при считывании первой линейки блока микрокоманд. Элемент И 27 управляет синхронизацией записи адреса в счетчик 1 и регистр 5.
Триггер 14 разрешает прохождение импульсов на счетный вход счетчика 1 и считывание полных линеек микрокоманды, а также управляет обнулением счетчика 3. Коммутатор 15 предназначен для управления считы- 20 ванием из регистров соответствующего остатка микрокоманды. Блоки элементов
И 16 и И 17 осуществляют управление передачей младших разрядов адреса микрокоманды в счетчик 2, а блоки . элементов И 18 и И 22 управляют выдачей сформировавшейся микрокоманды из регистров 4 и 6.
Блок элементов И 23 осуществляет маскирование младших разрядов микро- 30 команды, преобразуя полный адрес микрокоманды в адрес блока микрокоманд, т.е. в адрес первой лийейки— линейки остатков. Блок элементов
И 24 предназначен для передачи на информационный вход 1) 2 счетчика 2 младших разрядов исходного адреса, младших разрядов адреса следующей микрокоманды, либо преобразованный при ветвлении младших разрядов адре- 40 са. Блок элементов ИЛИ 25 предназначен для передачи старших разрядов исходного адреса, либо адреса следующей микрокоманды.
Элемент И 28 обнуляет счетчик 3 45 по единичному сигналу с инверсного выхода триггера 14 и тактовому импульсу генератора. Элементы И 29, 30 и 31 управляют считыванием полных линеек микрокоманд. Элемент И 32 о ,разрешает считывание первой линейки (линейки остатков) блока микрокоманд.
Элемент ИЛИ 33 выдает сигнал на обнуление триггера пуска 12 при подаче на него сигналов "Ошибки" или
"Конец работы". Одновибратор 34 служит для формирования сигнала "Ошибка" при появлении на выходе 41 единичного потенциала.
12
24
Элемент задержки 35 необходим для обеспечения надежной записи адреса в счетчик 2 причем его время задерж Н з„* определяется выражением
ЭРА и ТИ Т1+ где С„ — длительность синхроимпульса, Т1З время задержки (пеРеклю чения) триггера 13, „ — время задержки триггера 14.
Элемент 36 задержки необходим для того, чтобы обеспечить надежную запись нового адреса, поступающего в счетчик 2. Отсутствие этого элемента может привестИ к тому, что при обнулении счетчика 3 снимается "единица" с выхода (48к + 2) дешифратора 9, и адрес, не успевает записаться в счетчик 2 через блоки элементов И 19 и 20.
Устройство работает следующим образом.
В исходном состоянии все триггеры находятся в нулевом состоянии.
Выходы установки в исходное состояние на чертеже условно не показаны.
На вход 39 подается сигнал "Пуск", триггер 12 разблокирует генератор 11, и первый синхроимпульс, проходя через элемент И 27, разрешает запись начального адреса с входа 38 через элементы ИЛИ 24 и ИЛИ 25 в счетчик 2 и запись младших разрядов в регистр
5. Этим же импульсом триггер 13 переводится в единичное состояние.
Сигнал с прямого выхода триггера 13 поступает на элемент И 23, обеспечивая тем самым маскирование младших разрядов адреса. Следовательно, на вход блока 1 будет поступать адрес первой линейки блока микрокоманд — „ линейки остатков. Этот же сигнал, пройдя. через элемент 35 задержки, переводит триггер 14 в единичное состояние. Сигнал с инверсного выхода триггера 14 блокирует элемент И 27, прекращая тем самым прохождение импульсов на вход синхронизации счетчи" ка 2 и регистра 5.
Счетчик 3 в исходном состоянии находится в нулевом состоянии, на выходе 48.1 дешифратора 9 присутствует единичный сигнал. По первому тактовому импульсу с выхода 50.2 генератора 11 открывается элемент И 32 и производится считывание линейки остатков микрокоманд. По заднему фрон13 1100624 14 ту этого же импульса счетчик 3 пе- ляется триггер 14, тем самым блокиреводится в следующее состояние, а руется счетный вход счетчика 2 с пока выходе 48.2 дешифратора 9 появля- моЩью элемента И 26 и разблокируется ется единичный сигнал. Этим же им- вход синхронизации записи счетчика 2 пульсом обнуляется триггер 13, откры- 5 с помощью элемента И 2?. вается блок элементов И 23 и демас- Если с выхода устройства была счикирует младшие адреса микрокоманды. тана микрокоманда ветвления,,то на .По второму тактовому импульсу, посту- выходе мультиплексора 8 могла пояпающему с выхода 50.1 генератора 11,: виться единица (если считана линейная счетчик 2 изменяет адрес микрокоман- 1о команда, то на выходе мультиплексоды на единицу. При записи микрокоманд .:Ра всегда будет нуль). Если на выв блок 1 памяти адресная часть долж- ходе 47 мультиплексора 8 присутствуна быть на единицу меньше, чем ре- . ет нУль, то блок элементов И 16 заальнъй адрес. Например, если необ- : крыт, а блок элементов И 1,8 открыт ходимо посчитать первую строчку пер- 15 и младшие разряды адреса проходят на вой микрокоманды первого блока микро- вход блока элементов ИЛИ 24. Если же команд (фиг. 4), то следует первона- . Hs выходе 47 мультиплексора 8 появлячально записать не код 0010001, а ется единица, то блок элементов И 17 код 0010000, так как в счетчик 2 закрывйется, а блок элементов И 16
° прибавится недостающая единица и счи-2р открывается, и младшие разряды адретывание начнется с линейки с адресом . са проходят с выхода 51 блока эле0010001, ментов И 16 на информационный вход
По второму тактовому импульсу с блока контроля и суммирования 7. С выхбда 50.2 генератора 11 происходит выхода 46 блока-контроля и суммиросчитывание первой полной строки мик- 25 ванин 7 модифицированные младшие рокоманды, и. она записывается в пер-. Разряды поступают на вход блока элевое поле регистра 4. Следующий такто- ментов ИЛИ 24. По очередному импульвый импульс с выхода 50.1 генератора . су с выхода 50.1, поступающему че11, поступая на счетный вход счетчи- .Рез разблокированный элемент И 27 ка 2, изменяет адрес на единицу. По 3б на вход синхронизации записи счеточередному импульсу с выхода 50.2 чу а 2, очередной адрес записывается генератора 11 происходит считывание в счетчик 2. Этим же импульсом счетвторой полной строки микрокоманды. чик 3 переводится в нулевое положе-.
Этот процесс продолжается до тех пор, Не и на выходе 48.1 дешифратора 9 пока все полные строки микрокоманды появляется единичный сигнал. далее
15 не будут занесены в регистр 4. Устройство работает аналогично.по
Ранее по первому тактовому импуль- описанному алгоритму. При появлении су, поступившему с выхода 50.1 гене- единичного сигнала на выходе 41 блоратора 11, в регистр 5 записываются . ка 7 одновибратор 34 вырабатывает младшие разряды адреса микрокоман- 4О импульс, который, проходя через эледы. Следовательно, на соответствую- мент И 33, обнуляет триггер 12, прощем выходе дешифратора остатков 10. . исходит блокировка генератора 11. ° появится единичный сигн