Микропрограммное устройство управления

 

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

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

РЕСПУБЛИК

3(д) G 06 F 9/22

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

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3459922/18-24 (22) 29.06 ° 82 (46) 23.09.83. Вюл. Р 35 (72) С.Н,Ткаченко, В.С.Харченко, Г.Н.Тимонькин и В.И.Ярмонов (53) 681.3(088.8) (56) 1. Патент CEJA Р 3636522, кл. 340-172, 18,01.72.

2. Авторское свидетельство СССР

9 583434, кл. G 06 F 9/22, 1977 (прототип). (54)(57) МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ, содержащее блок счетчиков, блок входных регистров, блок памяти адресов, блок памяти микропрограмм, первый блок элементов

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

„„Я0„„1043653 ожидания, второй и третий блоки элементов И, буферный регистр и блок проверки логических условий, причем адресные выходы и выход ожидания блока проверки логических условий соединены с первыми входами соответственно второго и третьего блоков элементов И, выход которого соединен .с первым входом блока элементов ИЛИ, выход регистра режима соединен с первым управляющим входом блока памяти микропрограмм, .вторым управляющим входом блока памяти адресов, первым управляющим входом блока регистров сдвига, вторыми входами второго и третьего блоков элементов И и вторым управляющим входом блока счетчиков информационный вход которого соединен с информационным вхо- ф/ дом устройства, выход второго блока элементов И соединен с первым инфор- С мационным входом блока памяти адре- сов, второй информационный вход ка-, Я торого подключен к выходу блока регистров сдвига, третий управляющий ®Ы вход блока памяти адресов соединен с выходом окончания микропрограммы блока памяти микропрограмм, вторым . ф управляющим входом блока регистров сдвига, первыми входами второго и третьего элементов ИЛИ, информацион- ф ный вход блока регистров сдвига сое- в - динен с выходом блока входных регистров, выход четвертого элемента ©ф

ИЛИ соединен с вторыми входами второго и третьего элементов ИЛИ, первым входом первого блока элементов

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

104 3653 задержки соединен с вторым входом первого элемента ИЛИ, выход третьего элемента ИЛИ соединен с нулевым входом триггера пуска, первый управляющий выход блока счетчиков через первый одновибратор подключен к третьему входу третьего элемента

ИЛИ, группа управляющих выходов блока счетчиков соединена с входами пятого элемента ИЛИ и группой-входов блока приоритетов, управляющий вход которого соединен с выходом регистра ожидания и входами шестого элемента ИЛИ, выход шестого .элемента

ИЛИ через второй одновибратор соединен с первым входом четвертого эле1

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

Известно устройство программного управления для систем дальней телефонной связи, содержащее блок регист- . ров, дешифраторы микропрограммную память, элементы И и ИЛИ, генератор импульсов и блок развертки (1 ).

Недостатком этого устройства является низкая производительность, обусловленная длительным выбором микропрограмм для выполнения.

Наиболее близким по технической сущности и достигаемому эффекту к изобретению является микропрограммное устройство управления, содержащее блок счетчиков, блок входных регистров, блок развертки, блок ламяти адресов„ блок памяти микропрограмм, блок элементов И, блок элементов

ИЛИ, генератор импульсов, элемент

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

И, второй вход которого соединен с единичным восходом триггера пуска.

Выход элемента И соединен с УпРавляющим входом блока счетчиков, выход блока элементов И с первым входом блока элементов ИЛИ, вход блока входных регистров — с информационным вхсдом устройства Г2 3.

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

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

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

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

Микропрограмм в соответствии с заранее заданными частотами обращения к подпрограммам в течение цикла работы процессора. При этом приоритет микропрограммы также жестко фиксирован и определяется частотой обращения к ней.

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

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

Цель изобретения — повышение быстродействия устройства.

1043653

Цель достигается тем, что в устройство управления, содержащее блок счетчиков, блок входных регистров, блок памяти адресов, блок памяти микропрограмм, блок элементов И, блок элементов ИЛИ, генератор импуль- 5, сов, элемент И, триггер пуска и первый элемент ИЛИ, причем выход пуска устройства соединен с первым управляющим входом блока памяти адресов и первым входом первого элемента ИЛИ, выход которого подключен к единичному входу триггера пуска, выход блока памяти адресов соединен с адресным входом блока памяти мик-пропрограмм, выход микроопераций ко - 15 торого является выходом устройства, выход генератора импульсов соединен с первым входом первого элемента И, второй вход которого соединен с едииичным выходом триггера пуска, выход элемента И соединен с первым управляющим входом блока счетчиков, выход первого блока элементов И соединен с входами блока элементов

ИЛИ, информационный вход устРойства соединен с входом блока входных регистров, введены второй, третий, четвертый и пятый элементы ИЛИ, первый, второй и третий элементы задержки, первый, второй и третий одновибраторы,блок приоритетов, регистр режима, блок регистров сдвига, регистр ожидания, второй и третий блоки элементов И, буферный регистр, блок проверки логических условий, причем адресные выходы и выход ожидания блока проверки логических условий соединены с первыми входами соответственно второго и третьего блоков элементов И., выход которого соединен с первым входом блока 40 элементов ИЛИ, выход регистра режима соединен с первым управляющим входом блока памяти микропрограмм,. вторым управляющим входом блока памяти: адресов, первым управляющим входом 45 блока регистров сдвига, вторыми входами второго и третьего блоков элементов И и вторым управляющим входом блока счетчиков, информационный вход которого соединен с информационным входом устройства, выход .второго блока элементов И соединен с первым

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

|входных регистров, выход четвертого1 элемента ИЛИ соединен с вторыми вход 5 дами второго и третьего элементов

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

ИЛИ, группа управляющих выходов бло-.. ка счетчиков соединена с входами пятого элемента ИЛИ и группой входов блока приоритетов, управляющий вход которого соединен с выходом регистра ожидания и входами шестого элемента

ИЛИ, выход шестого элемента ИЛИ через второй одновибратор соединен с первым входом четвертого элемента

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

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

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

В предлагаемом устройстве коды длины микроподпрограмм, составляющих микропрограмму данного приорите1043653 та, заносятся в соответствующий счет,чик числа,микрокоманд блока счетчиков. При этом приоритет микропрограммы определяется положением кода, ее длины в блоке счетчиков.: наивысшему приоритету микропрограммы соответствует счетчик числа микрокоманд с наименьшим (первым ) номером в блоке счетчиков.

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

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

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

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

Во время выполнения текущей мик-.

Ропрограммы могут произойти следую- 45 щие три события: закончиться текущая микропрограмма; закончиться одна из микроподпрограмм текущей микропрограммы; начаться режим ожида текущей микропрограммыi

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

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

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

При этом блок приоритетов выбирает на обслуживание микропрограмму с ближайшим высшим приоритетом (она становится текущей ) и устройство реализует ее аналоги по описанному, В процессе выполнения этой микропрограммы также может возникнуть ожидание (вложение ожиданий). При этом выбор на обслуживание очередной по приоритету микропрограммы осуществляется аналогично рассмотренному Ф

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

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

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

На фиг. 1 представлена функциональная схема предлагаемого устройства; на фиг. 2 — схема блока счетчиков; на фиг, 3 — схема блока регистров,сдвига; на фиг. 4 †схема блока памяти адресов; на фиг. 5 схема блока памяти микропрограмм; на фиг.6 — схема блока проверкй логических условий;на фиг. 7-9 — схема алгоритма функционирования устройства; на фиг. 10 — функциональная схема блока приоритетов.

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

11 счетчиков, второй 12 и первый 13 управляющие выходы блока 11, третий элемент 14 задержки, пятый элемент

1043653

ИЛИ 15, третий одновибратор 16, управляющий 17 и информационный 18 входы блока 19 приоритетов, регистр 20 режима, второй 21 и первый 22 управляющие и информационный 23 входы блока 24 памяти микропрограмм, выход

«25 микроопераций, первый 26, второй:27 и третий 28 адресные выходы и выход 29 окончания микропрограмм этого блока, управляющий вход 30 устройства, управляющий выход 31 устройства, первый 32, второй 33, третий 34 адресные входы и вход 35 логических условий блока 36 проверки логических условий, выходы 37 начала ожидания и адресный выход 38 15 этого,блока, третий блок 39 эле ментов И, второй блок 40 элементов

И, блок 41 элементов ИЛИ, регистр

42 ожидания, шестой элемент ИЛИ 43, второй одновибратор 44, четвертый элемент ИЛИ .45, первый одновибратор

46, второй элемент HJIH 47, информационный вход 48 устройства, блок 49 входных регистров, первый управляю» щий 50, информационный 51 и второй управляющий 52 входы блока 53 регистров сдвига, первый информационный 54, второй 55 и первый 56 управляющие, второй информационный 57 и третий управляющий 58 входы блока 59 памяти адресов, первый элемент 60 задержки, буферный регистр 61 и первый блок 62 элементов И.

Блок 11 счетчиков (фиг. 2 ) содержит второй блок 63 элементов И, счетчики 64 и первый блок 65 элементов И.35

Блок 53 регистров сдвига (фиг. 3), содержит блок 65 элементов И, регистры 67 сдвига, группу 68 блоков элементов И и группу 69 блоков элементов ИЛИ. 40

Блок 59 памяти адресов (фиг. 4) содержит первую 70 и вторую 71 группы блоков элементов И 71, группу 72 блоков элементов и регистры 73.

Блок 24 памяти микРопРограмм 45 (фиг. 5) содержит первый блок 74 элементов И, блок 75 элементов за-. держки, микропрограммную память 76, первый 77, второй 78 и третий 79 адресные выходы, выход:80 микроопераций, выходы 81 окончания микропрог:- рамм, первую 82, вторую 83 и третью

84 группы блоков элементов И, пер- . вый 85, второй.86 и третий 87 блоки элементов ИЛИ и элемент HJIH 88.

Блок 36 проверки логических ус- ловий (фиг. 6) содержит блок 89 элементов суммирования по модулю два, блок 90 элементов И и дешифратор,91.

На схемах алгоритма (фиг. 7-9)

l обозначены микропрограмма (MII), мик- 60 роподпрограмма (МПП ), блок счетчиков (БСУ), блок входных регистров (БВР}, максимальный (МАХ), начальный адрес (АН), блок развертки (БР),и приори- тет (приор1

На фиг. 10 обозначены первый 92, второй 93 и третий 94 элементы И блока 19.

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

Блок 49 входных регистров пред- назначен для хранения кодов операций, определяющих начальные адреса микропрограмм, в соответствии с приоритетами микропрограмм. При этом микропрограмме с максимальным приоритетом соответствует резистор с мини-. мальным номером блока входных регистров 49. Кроме того, каждый регистр в блоке 49 состоит из секций, каждая из которых предназначена для хранения кодов операций микроподпрограмм, составляющих микропрограмму. Начальные адреса микроподпрог-. рамм заносятся в регистр в порядке необходимого их выполнения.

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

Блок 59 памяти адресов (фиг. 4) предназначен для осуществления развертки последовательностей микрокоманд выполняемых микропрограмм во времени. В случае перехода микропрограммы в режим ожидания хранимый в блоке 59 адрес микропрограммы оп- ределяет точку возобновления микро:программы при окончании режима ожи;дания.

Блок 24 памяти микропрограмм (фиг. 5 ) предназначен для хранения

:всех микрокоманд выполняемых устрой ством микропрограмм, а также форми-!

Рование микроопераций, сигналов KQH» ца микропрограмм и кодов косвенного адреса очередной микрокоманды текущей микропрограммы. /

Блок 36 проверки логических условий (фиг. 6) предназначен для формирования адреса очередной микрокоманды текущей микропрограммы, а также для обнаружения микрокоманд ожидания, при этом на выходе блока формируется сигнал начала ожидания.

Блок 11 счетчиков предназначен для хранения кодов длины выполняемых устройством микропрограмм. Кроме

1043653

Р к/к

Информационные входы

Управляющие входы

Выходы

1 2 3 1 2, 3

0

0 0 0

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

Блок 19 приоритетов предназначен для реализации. дисциплины обслуживания микропрограмм по относительным 5 приоритетам. Приоритет микропрограмм определяется порядком записи кодов длины. микропрограмм в блоке 11 счетчиков, при этом микропрограмме с . максимальным приоритетом соответству-!О ет счетчик с минимальным номером.

Регистр 20 режима предназначен для хранения информации о..номере текущей микропрограммы. На,выходе регистра для каждой текущей микропрограммы формируется единичный сигнал.

Буферный регистр 61 предназначен для хранения информации об изменени. ях состояния микропрограмм.во время их выполнения.

Регистр 42 ожидания предназначен для хранения информации о номере микропрограммы, перешедшей в ожидание.

Устройство. работает следующим образом.

В исходном состоянии все элементы памяти .находятся в нулевом состоянии. На информационный вход устройства

48 (фиг. 1 ) поступают сигналы от 30 операционной системы, которые опреде.ляют код длины и коды операций каждой микропрограммы (микроподпрограммы ); Код длины микропрограммы поступает на вход 9 блока 11 счетчиков и 35 записывается в соответствующий счетчик 64 (фиг. 2 ). .Структура кода длины микропрограммы представляет собой последовательность кодов длины микроподпрограмм, составляющих микропрограмму. Код операции микропрограммы записывается в соответствующий входной регистр блока 49 входных регистров (фиг. 1 ). Порядок записи кодов длины в блок 11 счетчиков и кодов операций в блок 49 входных регистров определяется..приоритетом микропрограьюи, а порядок записи кодов длины и кодов операций микроподпрограмм определяется необходимой последовательностью их выполнения (фиг. 9 )..

Эапись кодов длины и кодов операций микропрограмм (микроподпрограмм ) осуществляется под управлением операционной системы.

По окончании записи информации в блоки 11 и 49 блок 19 приоритетов выбирает на обслуживание микропрограмму с максимальным приоритетом.

Наличие .заявки данного приоритета определяется путем анализа выходных сигналов элементов И 65 (фиг. 2 ), которые поступают с выхода 12 блока 11 на вход 18. блока 19.

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

104 3653

Продолжение таблицы

112 1

Управляющие входы

Информационные входы

К/К

Вы1оды

1 1

1 2

0 1

0 0

1 0

1 1 0.0

111 0

0

0

1У.0 1

0

0

0

0: . 0

1 0

У1

0: 1

0 0

0- "

У11

0 0

0 0

Сигнал с выхода блока. 19 приоритетов устанавливает в единичное сос-. тояние соответствующий выбранной на обслуживание микропрограмме триггер в регистре 20 режима.

Единичный сигнал с выхода регист-: ра 20 поступает на вход 22 блока .

24, вход 10 блока 11, вход 50 блока 53, вход 55 блока 59 и разрешает прохождение информации в канале, соответствующем выбранной на обслуживание микропрограмме. 60

По сигналу пуска, поступающему с входа 1 устройства, начальные адреса микропрограмм, записанных в блоке входных регистров, через блок 53 регистров сдвига поступают 65

I на вход 57 блока 59 и через элементы И 71 и ИЛИ 72 записываются в регистры 73 (фиг. 4 ).

Одновременно по сигналу пуска производится установка в единичное состояние триггера 5 пуска через элемент ИЛИ 4. Сигналом с единичного выхода триггера 5 открывается элемент И 7 и разрешается прохождение тактовых импульсов с генератора 6 на вход 8 блока счетчиков и через элемент 14 задержки на вход 21 блока памяти микропрограмм (фиг. 1 ).

После этого устройство начйнает реализацию выбранной на обслуживание (текущей )микропрограммы.

1043653

Адрес микрокоманды текущей мик" ропрограммы с выхода блока 59 поступает на вход 23 блока 24 памяти микропрограмм (фиг. 5 ).

С выхода 25 блока 24 на выход ,устройства 31 поступают сигналы микпоопераций. С адресных выходов 2628 блока 24 памяти микропрограмм 24 на входы 32-34 блока.36 проверки логических условий поступают соответственно коды логических условий, 10 коды неизменяемдй и модифицируемой логическими условиями части адреса микрокоманды текущей микропрограммы (фиг. 1 ) .

С адресного выхода 38 блока 36 15 код адреса очередной микрокоманды текущей микропрограммы через коммутатор 40 поступает на вход 54 блока

59 памяти адресов и записывается в соответствующий регистр 73 через элементы ИЛИ блока 72 (фиг, 4).

В процессе выполнения текущей микропрограммы возможны следующие ситуации (фиг, 7 ): закончилась текущая микропрограмма", закончилась микроподпрограмма в текущей микропрограмме; начался режим ожидания текущей микропрограммы;

В первом случае (фиг. 1)по сигналу с выхода 12 блока 11, поступающему через элемент ИЛИ 15 на одновибратор 16, формируется сигнал перепланирования, который через элемент ИЛИ 47 устанавливает в нулевое состояние триггер 5 пуска на время, необходимое блоку 11 для 35 выбора очередной готовой микропрограммы на обслуживание (фиг. 11) .

Этим же сигналом через элемент ИЛИ 2 элемент 3 задержки и элемент ИЛИ 4 триггер 5 пуска устанавливается в .единичное состояние и устройство переходит к реализации очередной микропрограммы аналогично описанному. Если закончившаяся микропрограмма оказалась последней в совокупности микропрограмм, по сигналу с выхода 13 блока 11 через одновибратор 46 триггер 5 пуска устанавливается в нулевое состояние и устройство готово к приему новой совокупности микропрограмм,.

В случае окончания микроподпрограммы текущей микропрограммы с выхода 29 .блока 24 снимается сигнал окончания микроподпрограмм, который поступает на вход 52 блока 53 и вход

58 блока 59 для реализации процедуры выбора очередной микроподпрограммы текущей микропрограммы на выпол нение {фиг. 7) . Ha время выбора микроподпрограммы запрещается прохож-60 дение тактовых импульсов с генератора б аналогично описанному.

В блоке 53 (фиг. 3 ) сигнал окон,чания микроподпрограммы с входа 52 через элемент И бб поступает на 65 вход сдвигающего регистра 67, который перемещает записанную в нем единицу на один разряд. Сигнал с выхода регистра 67 открывает соответствующий блок элементов И 68 и начальный адрес очередной микроподпрограммы через блок элементов ИЛИ 69 поступает на вход 53 сдвига.

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

59 (фиг. 4 ). На входе 58: блока 59 подается сигнал окончания микроподпрограммы, который открывает соответствующий блок 70 элементов И и разрешает прохождение кода начального адреса очередной микроподпрограммы на запись в соответствующий регистр 73 через элементы И 71 и

ИЛИ 72. По окончании процесса выборки очередной микроцодпрограммы и записи ее начального адреса в регистр

73 блока 59 (фиг. 1) триггер 5 пуска задержанным в цепи элемент ИЛИ 2 элемент 3 задержки - элемент ИЛИ 4 сигналом окончания микроподпрограммы с выхода 29 блока 24 устанавливается в единичное состояние и разрешает прохождение тактовых импульсов с генератора 6 через элемент И 7 в соответствующие блоки устройства.

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

Если закончившаяся микроподпрограмма оказалась последней в текущей микропрограмме (фиг. 7! устройство выбирает на обслуживание очередную по приоритету микропрограмму аналогично описанному.

В случае начала режима ожидания текущей микропрограммы (фиг. 7 и 8) устройство функционирует следующим образом. Сигнал начала ожидания с выхода 37 блока 36 поступает на вход блока 39 элементов И .и далее через элемент ИЛИ 41 устанавливает в еди-." ничное состояние соответствующий разряд в регистре 42 ожидания.Единичный сигнал с выхода регистра 42 поступает на вход 17 блока приоритетов 19 и маскирует заявку микропрограммы, перешедшей в режим ожидания.

По этому же сигналу с регистра 42 через элемент ИЛИ 43 одновибратор 44 формирует сигнал перепланирования, который позволяет выбрать на обслуживание очередную по приоритету. микропрограмму аналогично рассмотренному. Выбранная таким рбразом микропрограмма на обслуживание становится текущей и выполняется устройством аналогично рассмотренному.

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

Если возникает ситуация, когда все микропрограммы (или последняя) 16

10436

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

В случае окончания режима ожидания микропрограммы с приоритетом стар.5 шим, чем у текущей, ее возобновление возможно только в следующих случаях (фиг. 8 ): начался режим ожидания текущей микропрограммы; завершилось выполнение текущей микропрог- !О раммы.

Сигнал окончания ожидания микропрограммы с входа 30 устройства (фиг, 1 ) поступает на вход регистра

61 и устанавливает в единичное сос- д тояние соответствующий разряд этого регистра. Состояние этого регистра не изменяется до возникновения ситуации перепланирования, т.е. завершения выполнения или начала режима ожидания текущей микропрограммы. . По сигналу перепланирования с элемента ИЛИ 45 открываются элементы И 62 и единичный сигнал с регистра 61 через элементы И 62 и ИЛИ 41 устанавливает в нулевое состояние соответствующий разряд в регистре

42. При этом снимается маскирующий сигнал с блока 19 приоритетов (фиг. 10) и эта микропрограмма вновь выбирается на обслуживание. Задер- ЗО жанным на. элементе 60 задержки сигналом перепланирования регистр 61 устанавливается в нулевое состояние.

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

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

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

При этом дообслуживание микропрограмм по окончании их режимов ожидания производится с точки их последнего прерывания без потери информации.

Применение предлагаемого устройс-.. тва при построении современных вычислительных систем позволит повы» сить их производительность.

104 3653.1 О4 3653 фиг.Ф

1043653

"043б53

Фиг. Х

104 3653

Заказ 7339/52

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

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

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

Филиал ППП "Патент", г. Ужгород, ул. Проектная, 4

Составитель И,Сигалов

Редактор Г.Безвершенко Техред C,Èèãóíîâà Корректорл Бокшан

Микропрограммное устройство управления Микропрограммное устройство управления Микропрограммное устройство управления Микропрограммное устройство управления Микропрограммное устройство управления Микропрограммное устройство управления Микропрограммное устройство управления Микропрограммное устройство управления Микропрограммное устройство управления Микропрограммное устройство управления Микропрограммное устройство управления Микропрограммное устройство управления Микропрограммное устройство управления Микропрограммное устройство управления 

 

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

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

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

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

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

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

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

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

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

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

Изобретение относится к автоматике и вычислительной технике, предназначено для выполнения требуемых функций программного управления с автоматическим перезапуском при «зависании» прикладной программы и автоматическим переходом в режим сохранения оперативной информации с помощью резервного источника напряжения питания при отключении или аварии основного источника напряжения питания и может быть использовано, например, в качестве ядра микроконтроллерной или микропроцессорной системы (М-системы) обработки информации и управления в реальном времени с поддержкой режима аппаратного сторожевого таймера для перезапуска при «зависании» прикладной программы М-системы, проектируемой с учетом следующих основных принципов [1]: программного управления, магистрального обмена информацией, модульного построения и наращивания вычислительной мощности
Наверх