Процессор

 

1. ПРОЦЕССОР, содержащий генератор тактовых импульсов, устройство управления, включающее два счетчика , дешифратор сигналов управления, элементы И, И-ИЕ, причем счетный вход первого счетчика соединен с выходом генератора тактовых импульсов, выход первого разряда первого счетчика соединен с йервым информационным входом дешифратора сигналов управления и счетным входом второго счетчика, выход второго разряда первого счетчика подключен к управляющему входу второго счетчика, выходы разрядов первого счетчика, начиная с третьего, соединены соответственно с информационными входами дешифратора сигналов управления , начиная с второго, первый выход дешифратора сигналов управления подключен к управляющему входу регистра команд, второй выход - к управляющему входу регистра операндов, третий выход - к первому входу первого элемента И, чётвертьй выход соединен с первым входом элемента И-НЕ, вторые входы первого элемента И и элемента И-НЕ соединены с выходом переноса второго счетчика, информационные входы которого соединены соответственно с выходами первой группы регистра команд, выход элемента И-НЕ соединен с синхронизирующим входом триггера результата, вход данных регистра команд является входом кода команды процессора, выходы второй группы регистра команд соединены соответственно с входами дешифратора команд, группа выходов которого соединена .соответственно с управляющими входами устройства выполнения логи (П ческих операций, первый информационный вход которого является входом приема данных процессора, выход регистра операндов подключен к второму информационному входу устройства выполнения логических операций и к информационному входу триггера результата , выход которого является выходом процессора, отличающийся тем, что, с целью повышеел ния быстродействия при упрощении про граммирования, в него введены регистр выбора операндов, коммутатор, второй и третий элементы И, элемент НЕ и два триггера, причем первый управляющий вход регистра выбора операндов соединен с пятымвыходом дешифратора сигналов управления, первый выход которого соединен с вторым управляющим входом регистра выбора операндов, информационные входы которого являются входами кода маски процессора, выход первого элемента И подключен к первому адресному входу

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

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

РЕСПУБЛИК

З151 С 0& F 15/00

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

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

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3576290/18-24 (22) 08.04.83 (46) 23.08.84. Бюл. ¹ 31 (72) Л.А.Элькинд, Е.Я.Гандель, М.Б.Баранов, Л.С.Коробков и В.Ф.Щербаков (71) Ленинградское специальное конструкторское бюро тяжелых и уникальных станков (53) 681.323(088.8) (56) 1. Микропроцессорные комплекты интегральных схем. Состав и структура. Справочник. М., "Радио и связь", 1982.

2. Патент США ¹ 4153942, кл. G 06 F 3/00, опублик. !979 (прототип). (54) (57) 1. ПРОЦЕССОР, содержащий генератор тактовых импульсов, устройство управления, включающее два счетчика, дешифратор сигналов управления, элементы И, И-НЕ, причем счетный вход первого счетчика соединен с выходом генератора тактовых импульсов, выход первого разряда первого счетчика соединен с первым информационным входом

Г дешифратора сигналов управления и счетным входом второго счетчика, выход второго разряда первого счетчика подключен к управляющему входу второго счетчика, выходы разрядов первого счетчика, начиная с третьего, соеди-, нены соответственно с информационными входами дешифратора сигналов управления, начиная с второго, первый выход дешифратора сигналов управления подключен к управляющему входу регистра команд, второй выход - к управляющему входу регистра операндов, третий выход — к первому входу первого эле„„Я0„„1 1 О9757 мента И, четвертый выход соединен с первым входом элемента И-НЕ, вторые входы первого элемента И и элемента И-НЕ соединены с выходом переноса второго счетчика, информационные входы которого соединены соответственно с выходами первой группы регистра команд, выход элемента И-НЕ соединен с синхронизирующим входом триггера результата, вход данных регистра команд является входом кода команды процессора, выходы второй группы регистра команд соединены соответственно с входами дешифратора . команд, группа выходов которого соединена,соответственно с управляющими Q входами устройства выполнения логических операций, первый информационный вход которого является входом приема данных процессора, выход регистра операндов подключен к второму Я информационному входу устройства выполнения логических операций и к информационному входу триггера результата, выход которого является выходом процессора, о т л и ч а ю— шийся тем, что, с целью повышения быстродействия при упрощении про- СЛ граммирования, в него введены ре- 3 гистр выбора операндов, коммутатор, второй и третий элементы И, элемент НЕ и два триггера, причем первый управляющий вход регистра выбора опе- . рандов соединен с пятым выходом дешифратора сигналов управления, первый выход которого соединен с вторым управлякщим входом регистра выбора операндов, информационные входы кото-, рого являются входами кода маски процессора, выход первого элемента И подключен к первому адресному входу

1109757 коммутатора, выход которого соединен с информационным входом регистра операндов, выход которого соединен с первым информационным входом коммутатора, с первым входом второго элемента И и с входом элемента НЕ, выход которого подключен к первому входу третьего элемента И, второй и третий информационные входы коммутатора соединены соответственно с выходами пер- . вого и второго триггеров, четвертый информационный вход коммутатора подключен к выходу однобитового логического устройства, второй и третий адресные входы коммутатора соединены соответственно с первым и вторым выходами дешифратора команд, третий выход которого подключен к третьему входу элемента И-НЕ, выход регистра выбора операндов соединен с его последним входом и с вторыми входами второго и третьего элементов И, выходы второго и третьего элементов И соединены соответственно с единичными и нулевыми входами второго и первого триггеров, установочный вход первого триггера является входом логичес-кой "1" процессора, установочный вход второго триггера является входом логического "0" процессора, входы синхронизации первого. и второго триггеров соединены с первым выходом дешифратора сигналов управления.

2. Процессор по п. 1, о т л ич а ю шийся тем, что устройство выполнения логических операций содержит элемент НЕ, десять элементов И, три элемента ИЛИ и два элемента

ИСКЛЮЧАЮЩЕЕ ИЛИ, причем первый инфор1

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

Известны микропроцессоры, которые представляют собой программно-управляемые устройства, осуществляющие прием, обработку и выдачу цифровой информации, построенные на одной или мационный вход устройства соединен с входом элемента НЕ, с первыми входами первых элементов ИЛИ, И, ИСКЛЮЧАЮЩЕЕ ИЛИ, с .первым входом второго элемента И, второй информационный вход устройства соединен с вторыми входами первого элемента ИЛИ, второго элемента И, первого элемента

ИСКЛЮЧАЮЩЕЕ ИЛИ и с первыми входами второго элемента ИЛИ, третьего элемента И, второго элемента ИСКЛЮЧАЮ1

ЩЕЕ ИЛИ, выход элемента НЕ подключен к вторым входам второго элемента ИЛИ, третьего элемента И, второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ и к первому входу четвертого элемента И, выход пер- вого элемента ИЛИ соединен с первым входом пятого элемента И, выход второго элемента ИЛИ соединен с первым входом шестого элемента-И, выход второго элемента И соединен с первым входом седьмого элемента И, выход третьего элемента И соединен с первым входом восьмого элемента И, выход первого элеменга ИСКЛЮЧАЮЩЕЕ ИЛИ соединен с первым входом девятого элемента И, выход второго элемента

ИСКЛЮЧАЮЩЕЕ ИЛИ соединен с первым входом десятого элемента И, вторые входы первого, четвертого, пятого, шестого, седьмого, восьмого, девятого и десятого элементов И подключены соответственно к управляющим входам устройства, выходы первого, четвертого, пятого, шестого, седьмого, восьмого, девятого и десятого элементов И подключены к соответствующим входам третьего элемента ИЛИ, выход которого является выходом устройства.

2 . нескольких интегральных микросхемах (1 3. . Программирование микропроцессоров производится на так называемых "машинных языках" и доступно только специалистам о программированию. В условиях эксплуатации систем управления, использующих микропроцессоры, возникает необходимость изменять алгоритм работы объекта управления при отладке и модернизациях оборудования, з 1 l09 а также осуществлять поиск неисправностей при отказах. Эта работа связана с необходимостью изменять программы управления, что недоступно для специалистов, далеких от программирования, таких, как электрики, 5 технологи и т.п. Для того, чтобы дать возможность производственному персоналу осуществлять программиро- вание, разрабатываются специальные проблемно-ориентированные языки, Они являются языками высокого уровня по отношению к."машинным языкам", которые используются непосредственно в микро-ЭВМ или микропроцессорах.

Преобразование программ на языках высокого уровня в программы на "машинных языках" осуществляется специальными программами-трансляторами.

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

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

Сложность программирования на проблемно-ориентированных языках является также недостатком систем логического управления на микропроцессорах и микро-3SN.

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

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

Генератор выдает тактовые импульсы в устройство управления, которое обеспечивает синхронизацию работы всего процессора. Код команды из регистра команд поступает в логическое утройство, которое обеспечивает непосредственное выполнение следующих инструкций (команд): прием данных, 757 .4 логическое И и логическое ИЛИ над двумя операндами, инверсию операндов в перечисленных действиях, sanoминание операндов, выдачу операнда.

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

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

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

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

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

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

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

Кроме того, устройство выполнения логических операций содержит элемент НЕ, десять элементов И, три элемента ИЛИ и два элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, причем первый информационный вход устройства соединен с вхо— дом элемента НЕ, с первыми входами первых элементов ИЛИ, И, ИСКЛЮЧАЮЩЕЕ ИЛИ, с первым входом второго элемента И, второй информационный вход устройства соединен с вторыми входами первого элемента ИЛИ, второго элемента И, первого элемента ИСКЛЮЧйОЩЕЕ ИЛИ и с первыми входами второго элемента ИЛИ, третьего элемента И, второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, выход элемента НЕ подключен к вторым входам второго элемента ИЛИ, третьего элемента И, второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ ц к первому входу четвертого, элемента И, выход первого элемента ИЛИ соединен с первым входом пятого элемента И, выход второго элемента ИЛИ соединен с первым входом шестого элемента И, выход втоS 1109757 б во управления, включающее два счетчика, дешифратор сигналов управления, элементы И, И-НЕ, причем счетный вход первого счетчика соединен с выходом генератора тактовых импульсов, выход первого разряда первого счетчика соединен с первым информационным входом дешифратора сигналов управления и счетным входом второго. счетчика, выход второго разряда первого счетчика подключен к управляющему входу второго счетчика, выходы разрядов первого счетчика, начиная с третье о, соединены соответственно с информационными входами дешифратора сигна15 лов управления, начиная с второго, первый выход дешифратора сигналов управления подключен к управляющему входу регистра команд, второй выход — к управляющему входу регистра операндов, третий выход — к первому входу первого элемента И, четвертый выход соединен с первым входом элемента И-НЕ, вторые входы первого элемента И и элемента И-НЕ соединены с выходом переноса второго счетчика, информационные входы которого соединены соответственно с выходами первой группы регистра команд, выход элемента И-НЕ соединен с синхронизи30 рующим входом триггера результата, вход данных регистра команд является входом кода команды процессора, выходы второй группы регистра команд соединены соответственно с входами дешифратора команд, группа выходов которого соединена соответственно с управляющими входами устройства выполнения логических операций, первый информационный вход которого является входом приема данных процес40 сора, выход регистра операндов подключен к второму информационному входу устройства выполнения логических операций и к информационному входу триггера результата, выход которого

45 является выходом процессора, введены регистр выбора операндов, коммутатор, второй и третий элементы И,элемент НЕ и два триггера, причем первый управля1ощий вход регистра выбора операндов соединен с пятым выходом дешифратора сигналов управления, первый вы" ход которого соединен с вторым управляющим входом регистра выбора операндов, информационные входы которого являются входами кода маски процессора, выход первого элемента И подключен к первому адресному входу ком757 8

7 1 109 рого элемента И соединен с первым входом седьмого элемента И, выход третьего элемента И соединен с первым входом восьмого элемента И, выход1 первого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ сое5 динен с первым входом девятого элемента 4, выход второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соединен с первым входом десятого элемента И вторые входы первого, четвертого, пятого, шес- 10 того, седьмого, восьмого, денятого и десятого элементов И подключены соответственно к управляющим входам устройства, выходы первого, четвер.того, пятого, шестого, седьмого, восьмого, девятого и десятого элемен тов И подключены к соответствующим входам третьего элемента ИЛИ, выход которого является выходом устройства.

На фиг. 1 приведена схема процессора; на фиг. 2 — пример функциональной схемы устройства выполнения логических операций; на фиг. 3 временная диаграмма сигналов управления; на фиг. 4 - временная диаграмма р работы при записи результата выполнения команды LD 5 в регистр операндов для процессора, имеющего восьмиразрядный регистр операндов; на фиг. 5 — временная диаграмма работы при выполнении команды логического сложения над операндами в 3,4 и 5-м разрядах регистра операндов для процессора, имеющего восьмираэрядный регистр операндов; на фиг. 6 - временная диаграмма работы при выполнении команды логического умножения над операндами в 1, 2 и 3-м разрядах регистра операндов для процессора, имеющего восьмиразрядный регистр one"40 рандов; на фиг. 7 — пример структурной схемы программируемого контроллера (ПК).

Устройство содержит генератор 1

45 тактовых. импульсов, устройство 2 управления, состоящее из счетчика 3, дешифратора 4 сигналов управления, счетчика 5, элемента И 6, элемента И-НЕ 7, регистр 8 команд, дешифратор 9 команд, устройство 10 выполнения логических операций, регистр 11 выбора операндов, однобитовое логичес. кое устройство 12, содержащее элемент НЕ 13, элементы И 14 и 15, триггеры 16 и 17, коммутатор 18, регистр 19 операндов, триггер 20 результата, элемент НЕ 21; элементы ИЛИ 22 и 23, элементы И 24 и 25, элементы ИСКЛЮЧАЮЩЕЕ ИЛИ 26..и 27, элементы И 28-35, элемент ИЛИ 36 °

Процессор реализует три типа команд.

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

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

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

Процессор работает следующим образома

Генератор 1 вырабатывает импульсы, которые накапливаются счетчиком 3

Дешифратор 4 формирует сигналы, управляющие работой процессора.

При включении в разрядах счетчиков 3 и 5 устанавливаются логические

"0" сигналом "Начальная установка".

Выполнение любой команды начинается с записи в регистр. 8 команд кода команды и в регистр 11 выбора операнда кода "маски" задним фронтом отрицательного импульса с первого выхода дешифратора 4 (фиг. 3).

Одна часть разрядов кода, занесенного в регистр 8 команд, с выходов (поле "1") поступает на входы дешифратора 9 команд. В .зависимости от типа выполняемой команды дешифратор 9 формирует на выходах код, управляющий состоянием коммутатора 18 в соответствии с табл. 1. Коммутатор 18 постоянно находится в одном из четырех состояний, приведенных в табл. 1, и обеспечиваемом сигналами на его адресных входах.

Вторая часть разрядов кода, занесенного в регистр 8 команд, с его выходов (поле "2") поступает на входы данных счетчика 5. В поле "2" регистра команд находится код, обозначакиций номер разряда п-разрядного

1109757

10 регистра 19 операндов, который в случае выполнения команды первого типа обозначает. номер. разряда в регистре 19 операндов, над содержимым кото рого в качестве операнда осуществляется действие, предписанное Командой, и в который заносится результат выполнения команды; при выполнении команды второго типа обозначает номер разряда в регистре 19 операндов, 10 в который заносится результат выполнения команды, и при выполнении команды третьего типа обозначает номер разряда в регистре 19 операндов, из которого значение операнда записыва»

15 ется в триггер 20 результата.

Весь цикл выполнения любой, команды рассматривается по четвертям (фиг. 3).

Счетчик 5 по время выполнения любой команды функционирует в двух режимах: "Запись номера операнда" и

".Счет". В первую и третью четверти команды в счетчике 5 осуществляется запись У операнда, установленного на

25 входах данных; во вторую и четвертую четверти происходит счет импульса.

Переключение режимов работы счетчика 5 обеспечивается подачей на его вход сигнала с выхода счетчика 3, ло-ЗО

- гическое значение которого сменяется четыре раза за время выполнения одной команды. При счете импульсов происходит суммирование кода, записан.ного в счетчик 5, с единицей, в ре- З5 зультате после каждого пришедшего импульса код в счетчике увеличивается на единицу до тех пор, пока счетчик 5 не заполнится единицами во всех разрядах. При этом на выходе переноса счетчика 5 появится импульс. Например, если счетчик 5 трехразрядный и в него записан номер операнда пять (101), то после прохождения двух импульсов в нем будет код(111) и появится им- 4 пульс на. выходе переноса. В течение каждой четверти выполнения команды на регистр 19 операндов с второго выхода дешифратора 4 сигналов управления поступает и импульсов сдвига. 5О

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

0-й операнд, в первом разряде — 1-й операнд и в (n-1)-м разряде - (и-1)-й операнд.

Далее работа процессора рассматривается при выполнении им каждого типа команд отдельно.

Выполнение команд первого типа.

Код на выходах дешифратора 9 обес-. печивает настройку устройства 10 на выполнение одной иэ команд первого типа в соответствии с кодом команды, находящимся в регистре 8 команд.

Устройство 10 выполняет эту команду над двумя операндами, поступающими на его входы. Первый операнд поступает по входу приема данных, а второй - c выхода регистра 19 операндов.

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

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

Поступающие на вход регистра 19 импульсы с выхода дешифратора 4 обеспечивают непрерывный сдвиг содержимого регистра 19. В первой, второй и третьей четвертях цикла выполнения команды с выхода а дешифратора 4 на вход элемента И 6 поступает сигнал логического "0", который проходит на выход элемента 6 и далее на адресный вход коммутатора 18. В результате обеспечивается соединение входа коммутатора 18 с его выходом. При этом происходит подключение выхода регистра 19 к его входу для сдвига, чем обеспечивается неизменность содержимого регистра 19 в процессе сдвига.

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

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

Выход дешифратора ф переключается в состояние логической "1" и при появлении на выходе счетчика 5 импульса (фиг. 3) обеспечивается переключение коммутатора Т8 в соответствии с табл. 1, при котором на вход устройства 10, соединенный с выходом регистра 19 операндов, поступает операнд, содержащийся в выбираемом разряде регистра 19>, а на вход данных

11 110975 регистра 19 поступает операнд с выхода устройства 10, который представляет собой результат выполнения команды. Во время действия импульса на выходе переноса счетчика 5 импуль-.

5 сом сдвига на управляющем входе регистра 19 обеспечивается запись в него результата выполнения команды

s устройстве 10 (фиг. 2).

После окончания импульса на выхо- !р де переноса счетчика 5 коммутатор 18 вновь соединяет через свой вход выход регистра 19 с входом для сдвига °

И следующий операнд, который записывается на вход регистра 19, повторит операнд, появившийся на выходе ре.гистра 19. В результате в разряд регистра 19 операндов, укаэанный в коде команды и хранящийся в поле"2" регистра 8 команд, заносится результат логической операции, код которой хранится в поле "1," регистра 8 команд. Остальные операнды переписыI ваются в ходе выполнения команды с выхода регистра 19 на его вход и не меняют своих значений.

Выполнение .команд второго типа.

В начале цикла выполнения команды (фиг. 3) обеспечивается запись кода команды в регистр 8 и кода "маски" в регистр 11 выбора операнда сигналом с выхода дешифратора 4. Этим же сигналом в триггеры 16 и 17 заносятся логический "О" и логическая" 1" соответственно. Сигналом на входе счетчика 5 осуществляется запись номера регистра результата в счетчик 5.

В первой четверти цикла выполнения команды с выхода дешифратора 4 на вход элемента 6 поступает логи1 ° 11

40 ческий . О, который передается на вход коммутатора 18. Коммутатор 18 обеспечивает соединение своего входа с выходом (см. табл . 1) . На вход регистра 19 операндов с выхода дешифратора 4 поступает г1 импульсов сдви45 га (фиг. 3). В результате операнды в течение первой четверти выполнения команды в регистре 19 непрерывно сдвигаются, не изменяясь.

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

В процессе сдвига логические сигналы с выходов регистров 11 и 19 поступают

7 12 на входы устройства 12, где и осуществляется выполнейие мндгобитовых команд.

Выполнение многобитовых команд логическое И и логическое ИЛИ может осуществляться как над всей группой операндов, так и над меньшим количеством операндов. Конкретные операнды, над которыми обеспечивается выполнение логической операции, находятся . в регистре 19 операндов и определяются кодом "маски". Код, находящийся в регистре 11 выбора операндов, обеспечивает "маскирование" тех операндов, которые должны игнорироваться при выполнении многобитовых команд следующим образом. Логическая "1" в определенном разряде кода "маски" обозначает необходимость выполнения логической операции над операндом, хранящимся в соответствующем разряде регистра 19; Логический "О" в оп-ределенном разряде кода "маски" обозначает исключение операнда, хранящегося в соответствующем разряде регистра 19, из состава операндов, над которыми осуществляется логическая операция. Например, при восьми разрядах и коде 01101001 в региетре 11 логическая операция выполняется над операндами, хранящимися. в О-м, З-м, 5-м, 6-м разрядах регистра 19.

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

Выполнение команды ИЛИ над операндами обеспечивается при последовательном поступлении этих операндов на вход устройства 12, соединенный с входом элемента 14, и через элемент 14 на вход триггера 16. Триггер !6 устанавливается в состояние логической "1" при поступлении на его вход логической "1" с выхода элемента 14.

На вход элемента 14 синхронно поступает сигнал из регистра 11, определякиций,должна выполниться или нет команда ЙЛИ над операндом, поступившим на вход устроиства 12, соединенный с входом элемента 14. В случае наличия .на входе элемента 14 сигнала логического "О" этот сигнал проходит через элемент 14 на вход триггера 16, при этом триггер 16 не меняет своего начального состояния при любом значении операнда на другом входе элемента 14. При наличии на одном

13 1109 входе элемента 14 сигнала логичес" кой "1" сигнал на выходе элемента 14 повторяет сигнал на его другом входе.

В процессе выполнения команды операнды один за другим последователь5 но поступают на вход устройства 12..

Синхронно на вход устройства 12 поступает код "маски", в котором логическая "1" разрешает выполнение логического ИЛИ над поступившим операндом, а логический "О" исключает синхронно с ним поступивший операнд из числа операндов, над которыми выполняется команда многобитового ИЛИ, т.е. обеспечивается "маскирование" операндов. В результате, если хотя бы один из "незамаскированных" операндов имеет значение логичесКой "1", то она проходит через элемент И 14 и в триггер 16 будет записана логическая "1". В противном случае в триггере 16 сохранится значение логического "0", установленного в начале цикла выполнения команды. После прохождения через элемент 14 всех операндов логический сигнал на выходе триггера 16 представляет собой результат выполнения операции ИЛИ над операндами.

Выполнение команды И над операндами обеспечивается при последовательном поступлении этих операндов на вход устройства 12, соединенный через элемент НЕ 13 с входом элемента 15..Аналогично элементу 14 в команде ИЛИ элемент 15 в команде И реализует "маскирование" операнда синхронно поступающим сигналом логического "О" или "1" с регистра 11 выбора операндов. При наличии на входе устройства t2 сигнала отсутст40 вия "маскирования", т.е. логической "1", элемент 15 пропускает на вход триггера инвертированный операнд. Если хотя бы один из группы

45 операндов, поступивших последовательно на вход элемента НЕ 13 и ™незамаскированных" сигналом на входе устрой.— ства 12, имеет логическое значение "О", то в триггер 17 записывается логический "О". В противном случае", т.е. при логическом значении всех операндов "1", в триггере 17 сохраняется логическая "1"; установленная вначале, чем реализуется логическое И над операндами.

После поступления последнего импульса сдвига на вход регистра 11 выбора операндов (фиг. 3) результат вы757 14 полнения команды хранится в триггере 16 при выполнении команды ИЛИ и в триггере 17 при зыполнении команды И.

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

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

В результате дешифрации многоопе-. рандных команд ИЛИ и И на первом и втором выходах дешифратора 9 команд устанавливается код 10 и 01 соответственно.

Выход ot дешифратора 4 переключается в состояние логической "1" и при появлении на выходе счетчика 5 импульса (фиг. 3) обеспечивается переключение коммутатора 18 в соответствии с табл . 1, при котором на вход данных регистра 19 поступает операнд с входа коммутатора 18, соединенный с выходом триггеров 17 или 1б соответственно.

Во время действия на выходе счетчика 5 импульсом сдвига на входе регистра 19 обеспечивается запись в него результата выполнения команды устройством 12 (фиг. 3). После окончания импульса на выходе переноса счетчика 5 коммутатор 18 вновь соединяет выход регистра 19 с входом для сдвига и следующий операнд, который записывается на вход регистра 19, повторяет операнд, появившийся на выходе регистра 19. В результате в разряд . регистра 19 операндов, указанный в коде команды и хранящийся в поле регистра 8 команд, заносится результат выполнения многобитовой операции., Выполнение команд третьего типа.

При выполнении команд третьего типа результаты выполнения команд первого и второго типов переписываются о в триггер 20 результата и с его выхо" да выводятся из процессора.

В первой четверти цикла выполнения команды обеспечивается запись кода команды в регистр 8 команд и запись

15 11097 кода номерка разряда регистра !9 операндов в счетчик 5.

Во второй четверти цикла выполнения команды на выходе 6 дешифратора 4 присутствует логическая "1"

5 (фиг. 3). При поступлении каждого счетного импульса на счетчик 5 содержимое его увеличивается на единицу.

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

При появлении на выходе счетчика 5 импульса он проходит через элемент И-НЕ 7 и, инвертируясь, поступа-1 ет на вход триггера 20 результата.

В момент действия заднего фронта импульса на входе триггера 20 в него происходит запись операнда, поступивmего на вход с выхода регистра 19 ро операндов (фиг. 3).

Появление импульса на выходе счетчика 5 происходит синхронно с появлением на выходе регистра 19 операнда, номер которого записан в счетчик 5 из регистра 8, н обеспечивает запись в триггер 20 результата значения операнда ("0" или "1"), номер которого указан в коде команды трет».его типа.

При указании в коде команды третьего типа определенного номера операнда в триггер 20 записывается значе.— ние операнда ("1" или "0"), полученное при выполнении последней команды первого или второго типа, имеющей в коде команды тот же номер операнда.

Пример. Пусть в команде первого ипи второго типа указан код числа 5. В процессе выполнения коман40 ды в счетчик 5 заносится число 5. Им. пульс на выходе счетчика 5 появляется на третьем импульсе счета, содержимое регистра 19 сдвигается также три раза. Во время действия импульса

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

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

57 16 1 входит регистр 19 операндов, содержащий восемь разрядов и предназначен,ный для хранения восьми операндов в номерами 0,1,2,3,4,5 6 7.

Выполнение команд первого типа.

Выполнение команды "Прием операнда" ,с входа данных и запись его в регистр 19 с йрисвоением этому операн:ду номера 5 (табл. 2).

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

Дешифратор 9 выставляет на соот ветствующий вход устройства 10 логическую "1". Элемент И 28 (фиг. 2) открывается и операнд проходит через элемент 28 и через элемент ИЛИ 36 на зыход устройства 10. В каждой четверти цикла выполнения команды на регистр поступают восемь импульсов сдвига.

Выполнение команды происходит в третьей н четвертой четвертях цикла выполнения команды и представлено на фиГе 4

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

В третьей четверти счетчик 5 находится в режиме "Запись номера, присваемого операнду" и в него с выходов регистра 18 записывается число 5 (фиг. 1 и 4).

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

Задним фронтом каждого отрицательного импульса сдвига в регистре 19 операндов обеспечивается внутренняя перезапись в разрядах и на выходе регистра 19 устанавливается новый операнд (фиг. 4, временная диаграмма

"Номер операнда на выходе 7-ro разряда регистра 19") .

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

17 1109757 18

Четвертая четверь цикла выполнения ходе 7-го разряда регистра 19"), а команды начинается по фронту импуль- на первый вход устройства l0 — one са на выходе счетчика, 5. ранд с входа приема данных. Поэтому

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

1 У время деиствия импульса появляется на выходе регистра 19. логическая "1" (фиг. 4), когда во Выполнение команд второго типа. всех его трех разрядах устанавливают-10 Выполнение команды "Логическое сложеУ14 1! ся "1 . Коммутатор 18 переключается ние операндов с номерами 5 4 3 .и заУ положительным импульсом на выходе пись результата в регистр 19 с приэлемента 6 в соответствии с табл. 1, своением этому операнду номера 5". и на вход регистра 19, соединенный В начале цикла выполнения команды с выходом коммутатора 18, поступает 15 в регистры 19 операндов и 11 выбора, операнд с входа приема данных через операндов записывается код команды элементы 28 и 36 (фиг. 2) и коммута- и восьмиразрядный код "маски" 5,4,3 .тор 18 (фиг. 4 временная диаграмма (00111000) соответственно в счет>

"Выход коммутатора 18") . чик 5 обеспечивается запись числа "5"

Передним фронтом третьего отри- о и триггер 16 устанавливается в "0". цательного импульса в регистр 19 про- Дешифратор 9 команд в течение всего исходит запись операнда с входа при- цикла выполнения команды выставляет ема данных (фиг. 4). По окончании . на своих выходах, подключенных к вхоположительного импульса на выходе дам коммутатора, логическую "1 и лоэлемента 6 коммутатор 18 снова пере- g5 гический "0" соответственно. Во втоключается и коммутирует между собой рой четверти цикла выполнения коман-. выход и вход регистра 19 операндов. ды в триггере 16 формируется резульПроцесс сдвига в регистре 19 продол- тат логической операции ИЛИ над опежается так же, как он осуществлялся рандами N - 5,4,3, .при этом содержимое до появления логической "1" на выхо- регистра 19 не меняется.

30 . де элемента 6. Рассмотрим это на примере, предВыполнение остальных команд перво- ставленном на временной диаграмме го типа отличается от описанного вы- "Выход Р019" (фиг. 5), когда в регистполнения команды лишь тем, что деши- ре 19 операнды имеют следующие значефратор 9 устанавливает логическую "1" ния: операнд Р 7 — логическую "1"; на входе, соответствующем выполняемойЗ5 операнд Р 6 - "0" операн Р 5 — "0"; команде. При этом эти команды реали- операнд Р 4 - "0"; операнд Р 3 — "1"; зуются в устройстве lO и операнды- операнд N- 2 — "1"; операнд Р- 1 — "0"; результаты проходят не через эле- операнд Р 0 — "0". мент И 28, а через тот элемент И, на С начала второй четверти цикла вывход которого поступает логическая" 1" полнения команды и до окончания имПри выполнении команд, в которых пульса сдвига на выходе регистра l9 указан другой номер операнда-резуль- присутствует сигнал логического "0" тата, импульс. на выходе элемента 6 (фиг. 5, временная диаграмма "Выход появляется в момент прохождения друго- Р019"). В это время на выходе регистг о по счету. импульса сдвига. Напри- ра i i выбора операндов присутствует

45 мер, при выполнении команды OD 7 сигнал логического "0" (фиг. 5, вреимпульс на выходе элемента 6 появля- менная диаграмма "Выход РВ 011") . ется при прохождении импульса, обо- В результате на обоих входах элемензначенного единицей, и в регистр 19 та И 14 присутствует сигнал логичесзаносится операнд-результат с номе- кого 0", который с его выхода перером 7 (фиг. 4, временные диаграммы дается на вход триггера 16 которь" п

Э орый

Выход переноса счетчика 5"и"Номер не меняет своего состояния. Между операнда, вдвигаемого в 0-й разряд концами второго и пустого импульсов регистра 19). В момент действия им- сдвига на выходе регистра 11 присутпульса на выходе элемента 6 на вто- ствует логическая "1" которая отк рой вход устройства 10 поступает вает элемент И l4 по одному входу. операнд с номером 7 (фиг. 4, времен- На второй вход элемента И 14 с выхоная диаграмма "Номер операнда на вы- да регистра 19 логическая "1" посту19 11097 пает между концами 4-ro и 5-ro импульсов сдвига. В это время на выходе элемента И 14 формируется логическая

1) 1) i которая поступая на вход триггера 16, записывает в него логическую

"1" (фиг. 5). В результате выполнения команды над операндами с N - 5,4,3 при значениях этих операндов логические "0", "0", "1" соответственно в триггере 16 получается результат логическая "1", что соответствует правилам булевой алгебры.

В третьей четверти цикла выполнения команды содержимое регистра 19 не меняется.

В четвертой четверти цикла выполнения команды осуществляется присвоение операнду N - 5 значения логической

"1" (запись содержимого триггера 16 в 5-й разряд регистра 19) аналогично тому, как это происходит в команде LD 5. Отличие заключается в том, что в момент появления импульса (логической "1") на выходе счетчика 5 коммутатор 18 при выполнении команды LD 5 соединяет выход устройства 10 с входом регистра 19, а при выполнении команды OR* R 5, 4, 3 коммута- . тор 18 соединяет выход триггера 16 с входом регистра 19 (см. табл. 1).

Происходяший при этом процесс записи

/ в регистр 19 операнда с выхода коммутатора 18 изложен в описании команды LD 5. В результате выполнения команды OR*5*5,4,3 при значениях в операнде N - 5 — логический "0", N) 4 — "0"

N 1 — "1" в регистре 19 операнду Р 5 присваивается значение логической "1".

Выполнение команды AR*5*3,2,1 логическое умножение операндов с N-- 3, 2,1 и запись результата в регистр 19

40 с присвоением этому операнду N 5.

Функционирование процессора проис.хоДит аналогично описанному в команде ОК"5 5,4,3 и представлено временной диаграммой (фиг. 6) .

Отличия состоят в следующем.

В течение всего цикла выполнения команды дешифратор 9 команд выставляет на своих выходах, подключенных к входам А2 и АЗ, логический "0" и логическую "1" соответственно. Во второй четверти выполнения логического умножения над З-м, 2-м и 1-м операндами, имеющими значения "1", "0" и "1" соответственно; в триггер 17 записывается логический "0" (фиг. 6), что соответствует правИлу дизъюнкции в булевой алгебре. В четвертой чет57

20 верти выполнения команды при появлении импульса логической "1" коммутатор 8 соединяет выход триггера 17 с входом регистра 19 и, таким образом, результат выполнения команды логический "0" присвоится операнду N -5.

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

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

Данные: на вход процессора поступают с многочисленных (более 1000) терминалов ввода данных, подключенных к объекту управления. Выбор определенного терминала обеспечивается кодом адреса данных (фиг. 7), который выдается из ЗУ одновременно с кодом команды, Терминалы могут быть удалены на большие расстояния. В результате данные на вход процессора поступают с задержкой относительно начала выполнения команды, определяемой временем распространения сигнала. Поэтому в процессоре реализация команд 1-й группы, в которых операнд поступает с шины приема данных, осуществляется в четвертой четверти цикла выполнения команды, а за время выполнения первых трех четвертей команды операнд успевает распространиться по шине приема данных.

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

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

1109757

22

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

Количество команд для реализации одного и того же алгоритма сокращает- ся в 1,5-3 раза. Соответственно во столько же раз сокращается и время выполнения всей программы..

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

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

Таблица 1

Вход данных, соединяемый с выходом коммутатора 18

Устройство, соединенное с входом данных манд

3 А2 А1

Выход регистра 19

1, П, Ш-я X*

Х* 0

Выход устройства 10

0.1-я

Выход тригге.ра 16

П-я

Ш-я

Выход триггера 17

Выполняемая Логический сигнал группа ко- на адресном входе

*Состояние не имеет значения.

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

Предлагаемый процессор наиболее эффективно может быть применен в ПК.

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

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

1109757

I у

Ц о

k(I х

t(kf о х

Гб

v цЯ о Ф х х х х е и о

О х

III Х х Р х и

Е х

М и х

Ф Я

Й о е

Е х е Ф х о

О» х

Сб

Е о

С A х х сб

v х

И

g

Ы

Сб

Е

Сб

A» о со сб

Р х

cd е Р е о х и о ф

»б

Ц о

И и х х х

Гб Сб о р.

g Ф е о о

X о о х л

1 ь

II х

t(Е о

A

Ю и а

A < о

5 1 сб I

Е.l о

Х 1

1 х 1

lO I

»cI о

1 о » I

CsI

5 l й1

I л

cd I

Р I й) и I

5 I

Сб

Е о

Ф о и 1

Js

1

I !

I 1 l

I ,1

» I ь

Ф Ч

l 1

СЧ

Г !!

I 1

1 1

1

3 и

1 I

1 — -4

I uD ! l

Г л 3

I

I л

I I о

I kf I ь

1 о

1 I

I I

Сб 1

В(dl о о

Х N

m. v х

Й

v аЯ и у бЯ г

М»б коц х х Х cs) х у 3, Я д сбхЕ х х Q оех

М С:Г Х

Ц х о х

cd

4 Ц

4 и

1 х

Сб О

Г Х о и м х х Р»

И

Й и

cd о

Ж О

Е Г»

И х О E" х»б х

k х c»I Ф

Я,с» Ф ахи

Ф

Х Сб Е

1- Е

Й о х

О I. х е ь

И х х

О Сб х

Г» Ц о о

«б v

g е и

М о сб

Х Сб

aA,IЯ ход ъ 1

Г:(Х

O m

Е УФ о х ! б х Е

Ф I=L Х е сто

X OIcl х х v сб х х

ove

t( х

Ф 1 о ц и 1

О Гх е

И х х

О cd

Х Г:Г

Ж Сб

Г» Ц о о х 1 х

1109757

26 ж и а ф !!! М о ь цо ж

Щ а м

Э о ю о и

g а

)! ! ! ! ! !

Ф.C о

М ЙЬ

Ф ) в

re !

» Й о о

h4 3С

cv I ) щ) щ !

) Э

5) о о х, ) !! g

5 ! о

В

5 о

В

М и и Р о е

° 3 lc

Й to

1109757

i 109757

1109757

Гене бьид сиги

6 Й В

И077

Выход Я gcyy сиги а

Р80

Оых сиг

par

Рею раб

Ны

Вяа оь! х суг

КОИ оых сиг

ЯЫЛ

Г ц — Цикл 5ыполненни комаиды

Фиг.3

1109757

1109757

Сигн сдВи

Сиг сдди

Оых

Оых

Оыхо

8am

Фиг.5

Сигналы сддига P0I9

Сигнал сддиг бых

Оых оых

8ых

Фиг.б

1109757

Вина приема йнныд

Naca 8wdaw

АуиФьЮ

Заказ 6085/34 Тирам 699 Подписное

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

113035, Иосква, й-35, Рауаская иаб., д. 4/5

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

Составитель А.Жеренов

Редактор А.Мотыль Техред C.öäðóöîâà Корректор Е.Сирохман

Процессор Процессор Процессор Процессор Процессор Процессор Процессор Процессор Процессор Процессор Процессор Процессор Процессор Процессор Процессор Процессор Процессор Процессор Процессор Процессор 

 

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

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

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

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

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

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

Изобретение относится к электронным играм

Микроэвм // 2108619
Изобретение относится к области микропроцессорной техники, в частности, может применяться для реализации обмена информацией

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