элемента И соединен с управляющим входом коммутатора адреса и первым входом четвертого элемента ИЛИ, второй вход которого соединен с прямым выходом первого элемента И, выход четвертого элемента ИЛИ соединен с вторым входом девятого элемента И, выход которого соединен с входом записи счетчика адреса, второй выход дешифратора микрокоманд, выходы блока памяти микропрограмм и регистра возврата соединены соответственно с вторым управляющим входом, вторым и третьим информационными входами коммутатора адреса, информационный выход которого соединен с информационным входом счетчика адреса, информационный выход счетчика адреса соединен с вторым входом блока сравнения, выход которого соединен с вторым входом десятого элемента И, выход которого соединен с единичным входом триггера конца отладки, прямой выход триггера конца отладки соединен с вторым входом восьмого элемента И, выход которого соединен с вторым входом второго элемента ИЛИ, выход которого соединен с единичным входом триггера конца отладки, прямой выход которого соединен с вторым входом седьмого элемента И, выход шестого элемента И соединен с тактовым входом счетного триггера, прямой выход которого соединен с вторым входом четвертого элемента И и счегным входом счетчика циклов, выход переполнения которого соединен с вторым входом пятого элемента И, выход которого соединен с инверсным входом четвертого элемента И, выход которого соединен с вторым входом третьего элемента ИЛИ, выход которого соединен с нулевым входом триггера конца отладки.
название | год | авторы | номер документа |
---|---|---|---|
Микропрограммное устройство управления | 1987 |
|
SU1522203A1 |
Устройство для отладки программ | 1986 |
|
SU1410038A1 |
Микропрограммное устройство управления | 1982 |
|
SU1019450A1 |
Устройство для интерпретации выражений языков программирования | 1982 |
|
SU1078432A1 |
Микропрограммное устройство управления и отладки микропрограмм процессора | 1984 |
|
SU1168937A1 |
Нанопрограммное устройство управления | 1983 |
|
SU1136160A1 |
Микропрограммное устройство управления | 1980 |
|
SU955055A1 |
Многотактное микропрограммное устройство управления | 1986 |
|
SU1332318A1 |
Устройство управления | 1989 |
|
SU1654820A1 |
Микропрограммное устройство управления | 1983 |
|
SU1109751A1 |
УСТРОЙСТВО ДЛЯ МИКРОПРОГРАММНОГО УПРАВЛЕНИЯ, содержащее дешифратор признака услойного перехода, первый и второй элементы И, счетчик адреса, коммутатор условий, блок памяти микропрограмм, регистр микрокоманд, регистр возврата и дешифратор микрокоманд, причем выход счетчика адреса соединен с информационным входом регистра возврата, адресным входом блока памяти микропрограмм, выход которого соединен с информационным входом регистра микрокоманд, управляющим входом коммутатора условий, входом дешифратора признака условного перехода, первый и второй выходы дешифратора микрокоманд соединены соответственно с входом записи регистра возврата и выходом микроопераций устройства, вход задания условий устройства соединен с информационным входом коммутатора условий, выход которого соединен с первым входом первого элемента И, выход дешифратора признака условного перехода соединен с вторым входом первого элемента И, инверсный выход которого соединен с первым входом второго элемента И, выход второго элемента И соединен со счетным входом счетчика адреса, отличающееся тем, что, с целью повышения быстродействия, в него введены блок задания режимов коммутатор адреса, кольцевой регистр сдвига, блок сравнения, счетчик циклов, триггер начала отладки, триггер конца отладки, счетный триггер, элемент НЕ, четыре элемента ИЛИ и восемь элементов И, причем выходы начала и конца программы микропрограммы блока задания режимов соединены соответственно с первым информационным входом коммутатора адреса и первым входом блока сравнения, выходы числа циклов, задания режима отладки, начальной установки, пуска, задания циклического режима, ограничения циклов и тактовый выход блока задания режимов соединены соответственно с информационным входом счетчика циклов первым входом третьего элемента И, первым входом первого элемента ИЛИ, входом записи счетчика циклов, первым входом четвертого элемента И, первым входом пятого эле.мента И и первым входом шестого элемента И, i выходы задания режима отладки, начальной установки, пуска циклического режима и так(Л товый выход блока задания режимов соединены соответственно с первым входом седьмого элемента И, первым входом второго элемента ИЛИ, первым входом третьего элемента ИЛИ и входом синхронизации кольцевого регистра сдвига, выход седьмого элемента И соединен с вторым входом первого элемента ИЛИ, выход которого соединен с входом начальной установки кольцевого регистра сдвига, вторым входом шестоОС го элемента И нулевым входом триггера 00 конца отладки, единичным входом триггера начала отладки, входом установки нуля счет4;ib чика адреса и через элемент НЕ с входом установки нуля счетного триггера, первый, Ю второй, третий и четвертый выходы кольцевого регистра сдвига соединены соответственно с первым входом восьмого элемента И, первым входом девятого элемента И, первым входом десятого элемента И и нулевым входом триггера начала отладки, единичный выход которого соединен с вторым входом третьего элемента И, первый и второй выходы кольцевого распределителя импульсов соединены соответственно с входом записи регистра микрокоманд и с вторым входом второго элемента И, выход третьего
1
Изобретение относится к автоматике и вычислительной технике и может быть использовано в специализированных процессорах.
Цель изобретения - повышение быстродействия путем исполнения микропрограммы по частям с произвольным заданием адреса начала части микропрограммы, адреса конца части микропрограмм и количества циклов повторения этой части.
На чертеже представлена структурная схема устройства.
Устройство содержит блок 1 задания режимов, выполненный в виде набора тумблерных регистров и генераторов тактовых и одиночных импульсов, трехпозиционный многоразрядный коммутатор 2 адреса, счетчик 3 адреса, блок 4 памяти микропрограмм, регистр 5 микрокоманд, дешифратор 6 микрокоманд, выход которого является выходом устройства, регистр 7 возврата, дешифратор 8 признака условного перехода, многопозиционный одноразрядный коммутатор 9 условий, вход которого является входом устройства, кольцевой сдвиговый регистр 10, блок 11 сравнения , счетчик 12 циклов, триггер 13 начала отладки, триггер 14 конца отладки, триггер 15 останова отладки, счетный триггер 16, элементы И 17- 24 с двумя входами каждый, элемент И 25 с прямым и инверсным выходом, элемент И 26 с двумя прямыми и одним инверсным входом, элементы ИЛИ 27-30 и элемент НЕ 31.
Принцип действия устройства заключается в следующем.
В рабочем режиме на выходе режима отладки блока 1 задания режимов формируется нулевой сигнал. В этом режиме при поступлении импульсного положительного сигнала с выхода начальной установки блока 1 этот сигнал через элемент 28 ИЛИ поступает на входы начальной установки счетчика 3 адреса и кольцевого сдвигового регистра 10, устанавливая один из его разрядов в единичное состояние,
в остальные - в нулевое. Воздействие этого сигнала на другие элементы устройства в указанном режиме не имеет существенного Значения. После окончания сигнала начальной установки единичный сигнал передвигается в кольцевом сдвиговом регистре 10 под воздействием импульсов, поступающих с тактового выхода блока 1 задания режимов. При этом на четырех выходах регистра 10 формируется гребенка импульсов, сдвинутых друг относительно друга и образующих соответственно четыре рабочие фазы в пределах одного интервала повторения, являющегося микротакто.м работы устройства.
В течение указанного микротакта происходит формирование очередной микрокоманды на выходе дешифратора 6 микрокоманд, являющегося выходом устройства в целом, следующим образом.
Содержимое счетчика 3 адреса поступает на вход блока 4 памяти микропрограммы, с выхода которого код очередной
0 микрокоманды записывается в регистр 5 микрокоманд сигналом первой фазы кольцевого регистра 10. Сигнал регистра 5 микрокоманд поступает на дешифратор 6 микрокоманд, а с его выхода управляющие сигналы поступают на выход устройства. Сигналом третьей фазы кольцевого регистра 10, проходящим через один из элементов И 17 или 18, изменяется содержимое счетчика 3 адреса и на выходе блока 4 памяти микропрограммы формируется код микрокоманды для следующего микротакта работы устройства. Формирование адреса в счетчике 3 для следующего микротакта зависит от типа микрокоманды, сформированной в текущем микротакте. В устройстве может быть сформировано два типа микрокоманд: простая микрокоманда и условный переход, отличаю щиеся признаком условного перехода в коде микрокоманды. Если в текущем микротакте из блока 4 памяти микропрограммы выбрана простая микрокоманда, то на выходе дешифратора 8 признака условного перехода формируется нулевой сигнал, обусловливающий появление единичного сигнала на ийверсном выходе элемента И 25, который разрешает прохождение через элемент И 17 сигнала третьей фазы кольцевого регистра 10 на счетный вход счетчика 3 адреса, в результате чего к содержимому счетчика прибавляется единица. В следующем микротакте устройство формирует микрокоманду, адрес которой отличается на единицу от адреса текущей простой микрокоманды. Если в текущем микротакте из блока 4 памяти микропрограммы выбрана команда условного перехода, то на выходе дещифратора 8 признака условного перехода формируется единичный сигнал, поступающий на элемент И 25. Одновременно на управляющий вход коммутатора 9 поступает из блока 4 памяти микропрограммы код номера условия. При этом коммутатор 9 пропускает на второй вход элемента И 25 сигнал одного из условий со своего входа, номер которого закодирован в микрокоманде. Если это условие выполнено, то на элемент И 25 поступает единичный сигнал условия, а на его выходе формируется единичный сигнал, который проходит через элемент ИЛИ 27 на элемент И 18, обеспечивая прохождение сигнала третьей фазы кольцевого регистра 10 на вход записи счетчика 3 адреса. При этом в счетчик 3 адреса записывается адрес, поступающий на его информационный вход из блока 4 памяти микропрограммы через коммутатор 2, что и обеспечивает переход устройства в адрес микропрограммы, указанный в текущей микрокоманде условного перехода. В случае, если условие, проверяемое в текущей микрокоманде, оказывается невыполненным, то к содержимому счетчика 3 прибавляется единица аналогично изложенному выше при простой команде. При переходе из основной микропрограммы к стандартной микроподпрограмме формируется команда фиксации адреса, по которой управляющим сигналом третьего выхода дешифратора 6 в регистр 7 возврата записывается текущее значение адреса из счетчика 3. В следующем микротакте формируется команда условного перехода-и выполняется переход к стандартной микропрограмме, в конце которой выполняется переход к микрокоманде возврата. При исполнении микрокоманды возврата дешифратор 6 микрокоманд формирует сигнал на своем втором выходе, поступающий на управляющий вход коммутатора 2 и переводящий его в режим пропускания сигнала от регистра 7 возврата. Затем выполняется безусловный переход по адресу, хранящемуся в регистре 7 возврата. После возврата в указанный адрес происходит формирование последующих микрокоманд до конца микропрограммы. В режиме отладки на выходе отладки блока 1 задания режимов устанавливается единичный сигнал. В этом режиме при поступлении импульсного положительного сигнала с выхода начальной установки блока 1 этот сигнал поступает через элемент ИЛИ 29 на вход триггера 15 и устанавливает его в единичное состояние. Сигнал триггера 15 через элемент И 21 и элемент ИЛИ 28 поступает на вход начальной установки кольцевого сдвигового регистра 10 и удерживает его в исходном состоянии в течение любого времени по желанию оператора. При этом устройство не работает и находится в режиме ожидания до формирования единичного импульсного сигнала на выходе пуска блока 1. Одновременно сигнал начальной установки устанавливает в единичное состояние триггер 13 начала микропрограммы, в нулевое состояние триггер 14 конца микропрограммы. При этом выходной сигнал триггера 13 через открытый элемент 19 И поступает на коммутатор 2 и переключает его в режим пропускания кода с выхода начала микропрограммы блока 1 задания режимов. Кроме того, выходной сигнал триггера 13 через элементы И 19 и ИЛИ 27 поступает на элемент И 18, подготавливая его к пропусканию сигнала на вход записи счетчика 3. При формировании единичного импульсного сигнала на выходе пуска блока 1 сигнал, поступая на вход записи счетчика 12 циклов, записывает в него число циклов, поступающее с соответствующего выхода блока 1. Одновременно сигнал пуска через элемент ИЛИ 30 устанавливает триггер 16 в нулевое состояние, что приводит в действие кольцевой сдвиговый регистр 10, который под воздействием тактового сигнала блока 1 начинает действовать аналогично изложенному выше. В первом микротакте сигналом первой фазы кольцевого регистра 10 в регистр 5 микрокоманд записывается пустая микрокоманда из нулевой ячейки блока 4 памяти микропрограммы, соответствующая нулевому состоянию счетчика 3 адреса. Сигналом третьей фазы регистра 10 через элемент И 18 записывается в счетчик 3 адреса через коммутатор 2 адреса начала микропрограммы с соответствующего выхода блока 1 задания режимов. Сигнал четвертой фазы кольцевого регистра 10сбрасывает триггер 13 начала микропрограммы в нулевое состояние и переводит коммутатор 2 и элемент 27 ИЛИ в рабочий режим, обеспечивая замыкание цепей для выполнения условных переходов устройством аналогично изложенному выше. Во втором и последующих микротактах устройство формирует микрокоманды анало гично рабочему режиму, изложенному выще, однако начиная с микрокоманды, установленной на выходе начала микропрограммы блока 1. При этом адрес исполняемой микрокоманды со счетчика 3 поступает на блок 11сравнения, на второй вход которого поступает конечный адрес микропрограммы, ус тановленный на соответствующем выходе блока 1 задания режимов. Когда микропрограмма, формируемая устройством, достигает адреса, равного конечному адресу, на выходе блока 11 сравнения формируется единичный сигнал, поступающий на элемент И 20. При этом сигнал второй фазы кольцевого регистра 10, в котором выполняется последняя микрокоманда, через элемент И 20 поступает на триггер 14 конца микропрограммы и устанавливает его в единичное состояние. Выходной сигнал триггера 14 открывает элемент И 22. После выполнения конечной микрокоманды в следующем микротакте сигнал первой фазы кольцевого регистра 10 проходит через элементы И 22 и ИЛИ 29 и устанавливает триггер 15 в единичное состояние. Выходной сигнал триггера 15, проходя через элементы И 21 и ИЛИ 28 устанавливает устройство в исходное состояние аналогично сигналу начальной установки блока 1. Если на выходе циклического режима блока 1 не установлен единичный сигнал, то чередование микрокоманд на выходе устройства на этом заканчивается, после чего работа устройства может быть повторена аналогично изложенному выше, однако с другими значениями начала и конца микропрограммы, устанавливаемыми в блоке 1. Если на выходе циклического режима блока 1 установлен единичный сигнал, то после первого цикла исполнения микропрограммы от начального до конечного адреса, как изложено выще, сигнал с выхода элемента ИЛИ 28 открывает элемент И 24, через который тактовый сигнал блока 1 поступает на счетный вход триггера 16 и переводит его в единичное состояние. Выходной сигнал триггера 16 через элемент И 16 и элемент ИЛИ 30 сбрасывает триггер 15 в нулевое состояние. После чего работа устройства повторяется от начального адреса до конечного аналогично изложенному выще циклу работы. Нулевой сигнал с выхода элемента ИЛИ 28 через инвертор 31 устанавливает счетный триггер 16 в нулевое состояние. Таким образом, на выходе триггера 16 формируется в конце каждого цикла работы микропрограммы положительный импульс, поступающий, кроме элемента И 16, также на счетный вход счетчика 12 циклов, который работает в режиме обратного счета и после каждого цикла уменьшает свое содержимое на единицу. Повторение циклов формирования отлаживаемой части микропрограммы от начального адреса до конечного происходит до тех пор, пока содержимое счетчика 12 не достигнет нуля. В этом случае сигнал с его выхода поступает на элемент И 23 и при наличии единичного сигнала на выходе ограничения циклов блока 1 проходит через элемент И 23 и запрещает прохождение сигналов через элемент И 23 и запрещает прохождение сигналов через элемент И 26, встедствие чего новый цикл не начинается и работа устройства заканчивается. Далее работа устройства может быть повторена с другими значениями адресов микропрограммы и числа циклов, установленных на выходах блока 1, аналогично изложенному выше. Если на выходе ограничения циклов блока 1 установлен нулевой сигнал, то сигнал с выхода счетчика 12 циклов никогда не пройдет через элемент И 23, вследствие чего циклы повторения отлаживаемой части микропрограммы выполняются беспредельно.
Папернов А | |||
А | |||
Логические основы цифровой вычислительной техники | |||
М.: Сов | |||
радио, 1972, с | |||
УСТРОЙСТВО ПАРОПЕРЕГРЕВАТЕЛЯ | 1920 |
|
SU295A1 |
Микропрограммное устройство управления | 1982 |
|
SU1019450A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Авторы
Даты
1985-10-30—Публикация
1983-10-10—Подача