Устройство для обмена информацией
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Номер патента: 1070536
Авторы: Бондаренко, Вероцкий, Лосев, Орлова, Погребинский, Пуляткина, Скурихин
Текст
СООЗ СОВЕТСНИХСОЦИАЛИСТИЧЕСКИХРЕСПУБЛИН 09) (И) ЗСЮ 0 06 Г 3 04 ОПИСАНИЕ ИЗОБРЕТЕНИЙК АВТОРСКОМУ СВИДЕТЕЛЬСТВУ ститут киберне ьство СССР1980.во СССР1978 ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССРПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИИ(71) Ордена Ленина интики АН УССР(54)(57) УСТРОЙСТВО ДЛЯ ОБМЕНА ИНФОРМАЦИЕЙ, содержащее процессор,элемент ИЛИ-НЕ, выход которого соединен через Формирователь синхроимпульсов с синхронизирующим входомпроцессора, задающий генератор, блокпамяти программ, блок памяти данных,блок хранения запросов, включающийпервый и второй элементы И и первый триггер, причем вход-выход блока памяти программ соединен черезпервую магистраль с первым входомвыходом процессора, второй вход-выход которого соединен через вторуюмагистраль с входом-выходом блока па.мяти данных и входом-выходом устройства, в блоке хранения запросов выход первого элемента И соединен снулевым входом первого триггера, апервый вход второго элемента И соединен с Выходом задающего генератораи первым входом элемента ИЛИ-НЕ,о т л и ч а ю щ е е с я тем, что,с целью повышения быстродействияустройства, в него введен блок приостанова, содержащий два элемента И,и элемент ИЛИ, а в блок хранения запросов введен второй триггер, причемв блоке приостанова выход первогоэлемента ИЛИ соединен с вторым входом элемента ИЛИ-НЕ, а первый ивторой входы - соответственно с выходами первого и второго элементов И, первые входы которых подключены соответственно к первому и второму контролирующим выходам процессора, а вторые входы - соответственно к единичным выходам первого и второго триггеров и шинам запроса первой и второй магистралей, единичные входы первого и второго триггеров соединены соответственно с первым и вторым выходами запросов процессора, первый вход первого элемента И соединен с выходом задающего генератора, а второй вход - с шиной готовности первой магистрали, второй вход и выход второго элемента И подключены соответственно к шине готовности вто-р рой магистрали и чулевому входу второго триггера, причем проиессор со" держит регистр адреса текущей инструкции, первый сумматор, дешифратор микрооперацнй, два регистра адреса перехода, два регистра кода операций обмена, семь элементов И, два триггера, два элемента ИЛИ, буферный регистр инструкций, два узла шинных Формирователей, два коммута- . тора, два переключаельнык;элемента, регистр хранения текущей инструкции и память микропрограмм, буферный регистр данных, арифметико-логический узел и узел регистров оперативной информации, причем первые информационные входы первого и второго сумматоров .соединены соответственно с выходом регистра адреса текущей инструкции и выходом узла регистров оперативной информации, выходы - соответственно с информационными входами первого и второго регистров адреса перехода, информационный вход-выход арифметикологического узла соединен через внутреннюю магистраль процессора с инФормационным входом-выходом узла регистров оперативной информации, с выходами регистра хранения теку 1070536второй магистрали 10. Далее по синхроимпульсу СИЗ на выходе элементаИ 53 вырабатывается сигнал запроса(ЗПР 2), устанавливающий в единичноесостояние триггер 12, с вь 1 хода которого на шину запроса второй магистрали 10 передается сигнал запросаЗАПРОС 2, инициирующий операцию загрузки в блоке 8 или во внешнемустройстве, подключенном к второймагистрали 10 и распознавшем свой 10адрес,Рассмотрим работу предлагаемогоустройства при выполнении процессором1 инструкции перемещения слова изодного участка блока 8 в другой. 1Вьполнение этой инструкции, являющейся типичной для программного окружения, в котором работает устройствообмена информацией, иллюстрирует .совмещение времени выполнения инструкции с обработкой запросов ведомыми устройствами.Исходное состояние устройства перед началом выполнения инструкциихарактеризуется следующим состояниемблоков; адрес выполняемой (текущей)инструкции, полученный в результатевыполнения предыдущей инструкции,хранится в регистрах 21 и 24, адреспервой микрокоманды текущей инструкции установлен в адресном регистре39 путем передачи содержимого соответствующего поля буферного регистра 31 в процессе завершения выполнения предыдущей инструкции, управ"ляющие и информационные поля текущей 35инструкции записань 1 в регистр 35 путем передачи содержимого соответствующих полей буферного регистра 31в процессе завершения выполнения предыдущей инструкции; на входы А сумматора 44 поступает код базового адреса, формирователь 3 находится в состоянии, предшествующем выработкесинхроимпульса СИ 1.Каждая вершина блок-схемы микропрограммы, реализующей рассматриваемую инструкцию (фиг.8),соответствует микрокоманде микропрограммы. Ни-же приведен алгоритм,в соответствиис которым выполняется инструкция, суказанием позиций микрокоманд, сост- )ветствующих номерам на блок-схеме,действий, производимых микрокомандами, а также микроопераций, требуемыхдля реализации алгоритма.61. Выборка слова иэ блока 8 по 55адресу, определяемому с помощью первого регистра узла 43 (В 02, ТА:ОБМ 2,ОП 2=0).62. Пересылка сравниваемого кодаиз поля инструкции в арифметико-логи ческий узел 42 (В 01, В 02): под управлением микроопераций внутреннего обмена содержимое требуемого поля регистра 35 посредством внутренней магистрали 20 передается арифметико логический узел 42 для последующего сравнения.6.3. Вь 1 дача слова, прочитанного из блока 8, на внутреннюю магистраль 10 (ВМ:=Д), сравнение с кодом в арифметико-логическом узле 42 (АЛ).64, Переход к 65 в случае несравнения, иначе переход к 8 (посредством сигналов изменения адреса микро- операции, передаваемых на входы адресного регистра 39 с выходов дешифратора 23).65. Запись слова в блок 8 по адресу, определяемому с помощью второго регистра узла 43 (В 02, ТА, ОБМ 2, ОП 2=1); формирование адреса инструкции, к которой следует переходить в случае несравнения (ФАИ), выборка инструкции по сформированному адресу (ОБМ 1, ОП 1=0);66. Первая модификация адреса в первом регистре узла 43: под управлением микроопераций внутреннего обМена содержимое требуемого регистра посредством внутренней магистрали 20 передается в арифметико-логический узел 42, где модифицируется в соответствии с кодом микроопераций АЛ, затем возвращается в тот же регистр,67. Первая модификация адреса во втором регистре узла 43 (аналогично 66); конец инструкции (КОНИ): путем переписи из буФерного регистра 31 устанавливаются коды в адресном регистре 39 и регистре 35, необходимые для выполнения очередной инструкции.68, Формирование адреса инструкции, к которой следует цереходить в случае сравнения (ВО 2, ФАИ), выборка инструкции по полученному адресу (ОБМ 1, ОП 1=0).69. Вторая модификация адреса в первом регистре блока регистров 43 (ВО 2, В 01, АЛ) - аналогично 66.70, Вторая модификация адреса во втором регистре узла 43 (В 02, В 01, АЛ), конец инструкции (КОНИ) - аналогично 67. На Фиг.9 представлена временная диаграмма работы устройства при выполнении инструкции перемещения слова в блоке 8. На эпюре А прямоугольниками обозначены периоды активности блока 7 памяти программ. Эпюра В определяет время активности процессора 1 в ходе выполнения двух инструкций данного типа, причем при выполнении первой инструкции работает ветвь 65-: 67, при выполнении второй инструкции ветвь 68-70 (фиг.8). На, этой эпюре цифры указывают номера выполняемых микрокоманд. На эпюре С прямоугольниками обозначены периоды активности блока 8. Заштрихованная часть каждого прямоугольника эпюр А и С соответствует времени обработки запроса от момента обращенияк устройству до момента выработки сЪгнала готовности. Стрелки, направленные в сторону эпюры А, отмечают моменты выработки сигнала на первом контролирующем выходе процессора 1 . (КТ 1), моменты выработки сигнала на втором контролирующем выходе процессора 1 (КТ 2) отмечены стрелками, направленными в сторону эпюры С. Возле каждой стрелки указана микрооперация, инициирующая данный сигнал (КТ 1 или О КТ 2). В рассмотренном примере время цикла обращения к ведомым устройствам составляет не более трех тактов, время доступа при операции выборки не более двух тактов. Как показано 15 на фиг.9, при таком соотношении быст родействий ведомых устройств и процессора 1 в хсще выполнения .рассмотренной инструкции приостановы процес сора 1 отсутствуют, т.е. достигает- ;щ ся полное совмещение времени доступа к ведомым устройствам с временем,необходимым процессору 1 для выполнения микропрограммы. Ррактически приостановы все же происходят, в частности, при использовании в качестве блока 7 и блока 8 динамических запоминающих устройств, требующих периодическую регенерацию хранящейся вних информации. Таким образом, устройство реализует асинхронный обмен информацией между процессором н ведомыми устроЯ- ствами, подключенными к процессору посредством двух магистралей, и обеспечивают совмещение во времени операций, выполняемых .пРоцессором и ведомыми устройствами. Оно позволяет процЕссору инициировать обмен одновременно по обеим подключенным к нему магистралям, после чего, не дожидаясь завершения инициированных обменов, некоторое время продолжать выполнение микропрограммы, пользуясь информацией, содержащейся во внутренних регистрах процессора. Функции контроля готовности ведомого устройства осуществляются процессором беэ потери времени, одновременно с выполнением микроопераций, указанных в микрокоманде, при этом не требуется введение дополнительных микрокоманд либо микроопераций в микропрограммы, реализующие набор инструкций.1070536 СИ Фиг 7 свое ВНИИ Проект Иирасперацци МЯ,0682 тА Рви, рпююгай ж -д Фиг аказ 11682/4 Т1070536 щей инструкции и буферного регистра данных, с вторыми информационными входами первого и второго сумматоров, первый вход первого элемента И соединен с выходом первого элемента. ИЛИ, а выход - с единичным входом первого триггера, выход которого является первым контролирующим выходом процессора, первый вход первого элемента ИЛИ соединен с первым выходом дешифратора микроопераций и первыми входами второго и третьего элементов И, выход которого является первым .вь 1 ходом запросов процессора, второй вход первого элемента ИЛИ соединен с вторым выходом дешифратора микрооперапий и управляющим входом регистра адреса текущей инструкции, информаци онный вход которого подключен к выхо ду первого регистра адреса перехода, управляющим входом соединенного с выходом второго элемента И, управляющим входом первого регистра кода операции обмена и первым информационным входом первого переключательного элемента, управляющий вход которого соединен с выходом первого регистра кода операции обмена и управляющими входами первого узла шинных формирователей и перного коммутатора, первые информационные входы первого и второго коммутаторов соединены с инФормационным входом-выходом узла регистров оперативной информации, вторые информационные входы - соответственно с выходами первого и нторого узлов шинных Формирователей, информационные входы которых подключены соответственно к вь 1 ходам буферного регистра инструкций и буферного регистра данных, информационные входы которых соединены соответстнен. но с выходами первого и второго коммутаторов, а управляющие входы - соответстненно с выходами первого и второго переключательных элементов, информационные входы первого и второго регистров кода операции обмена соединены соответственно с первой и второй группой выходов дешифратора микроопераций, второй выход которого соединен с первым входом четвер-того элемента И, третий и четвертый выходы - соответстненно с первым и вторым входами второго элемента ИЛИ и первыми входами пятого и шестого элементов И, выход которого соединен с управляющими входами второго реИзобретение относится к вычислительной технике и может быть исполь гистра адреса перехода, регистракода операции обмена и первым информационным входом второго переключательного элемента, управляющим входом подключенного к управляющим вхо дам второго коммутатора и второго узла шинных Формирователей, выходвторого элемента ИЛИ соединен с первым входом седьмого элемента И, выходом подключенного к единичномувходу второго триггера, выход кото,рого и выход пятого элемента И являются соответственно вторым контролирующим выходом и выходом запросонпроцессора, выходы второго регистраадреса перехода и второго регистракода операции обмена, информационный нход-вь 1 ход второго узла шинныхФормирователей и нторой информационный вход второго переключательногоэлемента образуют второй вход-выходпроцессора, управляющие входы узларегистров оперативной инФормации,второго сумматора, арифметика-логического узла, группа управляющихнходон и группа выходов арифметикологического узла соединены соответственно с пятым-седьмым выходами,третьей группой выходов и первойгруппой входов дешиФратора микроопераций, седьмой выход которого подключен к управляющему входу первогосумматора, а четвертая группа выходов и вторая группа входов - соответственно к первому адресному входу памяти микропрограмм и нь 1 ходу регистра хранения текущей инструкции,управляющий вход которого соединенс выходом четвертого элемента И, аинформационный вход - с вторым адреснь 1 м входом памяти микропрограмм и выходом буФерного регистра инструкций, выходы первых регистра адресаперехода и регистра кода операции обмена, информационный вход-выход первого узла шиннь 1 х Формирователей ивторой информационный вход первого:переключательного элемента образуют первый вход-выход процессора,вторые входы первого-седьмого элементовИ, нулевые входы первого и второготриггеров, синхронизирующие входыпамяти программ и дешифратора микроопераций соединены с синхронизирующим входам процессора, выход памятимикропрограмм соединен с третьейгруппой входов дешиФратора микроопераций. зовано в вычислительных системах с асинхронным обменоминформации между комплексамиси степы.Известны устройства для обмена информации, содержащие шифратор, блоксинхронизации обмена, регистр информации, элемент ИЛИ и группу каналовобмена, каждый из которых состоитиз блока подготовки канала, блокаобработки запросов, счетчика текущего адреса и блока управления 113,Недостатками данных устройств являются большие аппаратурные затратБи низкая производительность.Наиболее близким по техническойсущности к предлагаемому является устройство обмена информацией, содержащее процессор, вход-выход которого соединен через магистраль с входом-выходом устройства и входом-выходом блока памяти,формирователь синхроимнульсов, первым входом 20соединенный с выходом коммутатора,а первым выходом - с входом процессора, задающий генератор, подключенный первым выходом к первому входу коммутатора, и блок управления, 5 состоящий из триггера, двух элементон И и элемента ИЛИ, причем первый вход первого элемента И соединен с выходом процессора, второй вход и выход - соответственно с вторыми выходом и входом Формирователя синхроимпульсов и первым входом триггера, выходом подключенного к второму входу коммутатора, а вторым вхо- дом - к выходу второго элемента И, первый вход которого соединен с вторим выходом задающего генератора, а второй вход - с выходом элемента ИЛИ, первый и второй нходь 1 которого соединены соответственно с выходом блока памяти н входом готовйости устрой ства Г 22Цель изобретения - повышение быстродействия устройства.Поставленная пель достигается тем, что в устройство, содержащее эле мент ИЛИ-НЕ, выход которого соединен через Формирователь синкроимпульсон с синхрониэирующим входом прооессора, задающий генератор, блок памяти программ, блок памяти данных, блок хранения запросов, включающий первый и второй элементы И и первый триггер, причем вход-выход блока памяти программ соединен через первую магистраль с первым .входом-выходом процессора, второй вход-выход которого соединен через вторую магистраль с входом-выходом блока памяти данных и входом-выходом устройства, н блоке хранения запросов выход первого элемента И соединен с нулевым 60 входом первого триггера, а первый вход второго элемента И соединен с выходом задающего генератора .и первым нходом элемента ИЛИ-НЕ, введенблок приостанова, содержащий дна элемента И и элемент ИЛИ, а в блокхранения запросон введен второй триггер, причем в блоке приостанова выход первого элемента ИЛИ соединен свторым входом элемента ИЛИ-НЕ, апервый и второй входы - соответственно с выходами первого и второго элементон И, первые входи которых подключены соответственно к первому ивторому контролирующим выходам процессора, а вторые входы - соответственно к единичным выходам первого ивторого триггеров и шинам запроса.,первой и второй магистралей, в,единичные входы первого и второго триг-.геров соединены соответственно спервым и вторим выходами запросовпроцессора, первый вход первого элемента И,соединен с выходом задающего генератора, а второй вход - с шиной готовности первой магистрали,второй вход и выход второго элемента И подключены соответственно кшине готовности второй магистралии нулевому входу второго триггера,причем процессор содержит регистрадреса текущей инструкции, первыйсумматор, дешиФратор микрооперапий,два регистра адреса перехода, дварегистра кода операции обмена, семь,элементов И, два триггера,два элемента ИЛИ, буферный регистр инструкций, два узла шинных формировЬтелей,два коммутатора, два переключательных элемента, регистр хранения текущей инструкции, память микропрограмм, буферный регистр данных,арифметико-логический узел и узелрегистров оперативной информации,причем первые информационные входыпервого и второго сумматоров соединены соответственно с выходом регистра адреса текущей инструкции и выходом узла регистров оперативной инФормации, выходи - соответственно синформационными входами первого ивторого регистров адреса перехода,информационный нход-выход арифметико-логического узла соединен черезвнутреннюю магистраль процессора синформационным входом-ниходом узларегистров оперативной информации, свыходами регистра хранения текущейинструкции и буферного регистра данных,. с вторыми информационными входами первого и второго сумматоров,первый вход первого элемента И соединен с выходом первого элемента ИЛИ,а выход - с единичным входом первого триггера, выход которого является первым контролирующим выходомпроцессора, первый вход первого элемента ИЛИ соединен с первым выходомдешифратора микроопераций и первымивходами второго н третьего элементовИ, выход которого является первымвыходом запросов процессора, второйвход первого элемента ИЛИ соединенс вторым выходом дешифратора микрооперапий и управляющим входом регистра адреса текущей инструкции, инФормационный вход которого подключен к выходу первого регистра адреса перехода, управляющий входом соединенного с выходом второго элемента И, управляющим входом первого регистра кода операций обмена и первым информационным входом первого переключательного элемента, управляющий 10 вход которого соединен с выходом первого регистра кода операций обмена и управляющими входами первого узла шинных формирователей и первого коммутатора, первые информацион ные входы первого и второго коммутаторов соединены с информационным входом-выходом узла регистров оперативной информации, вторые информационные входы - соответственно с выходами первого и второго узлов шинных формирователей, информационные входи которь 1 х подключены соответственно к выходам буферного регистра инструкций и буферного Регистра данных, информационные входы которых соединены соответственно с выходами первого и второго коммутаторов, а управляющие входы соответственно с выходами первого и второго переключательных элементов, инФормационные входы первого и второго регистров кода операгии обмена соединены соответственно с первой и второй группой выходов дешифратора микроопераций, второй выход которого З 5 соединен с первь 1 м входом четвертого элемента И, третий и четвертый выходы - соответственно с первым и вторим входами второго элемента ИЛИ и первыми входами пятого и шестого 40 элементов И, выход которого соединен с управляющими входами второго регис тра адреса перехода, регистра кода операций обмена и первым информационным входом второго переключатель ного элемента, управляющим входом подключенного к управляющим входам второго коммутатора и второго узла шинных формирователей, выход второгоэлемента ИЛЙ соединен с первым входом седьмого элемента И, выходом подключенного к единичному входу второго триггера, выход которого и выход пятого элемента И являются соответственно вторым контролирующим выходом и выходом запросов процессора, выходы второго регистра адреса перехода и второго регистра кода операции обмена, информационный вход-выход второго узла шинных фор мирователей и второй информационный 60 вход второго переключательного элемента образуют второй вход-вь 1 ход процессора, управляющие входы узла регистров оперативной информации, второго сумматора, арифметико-логи 65 ческого узла, группа управляющихвходов и группа выходов арифметикологического узла соединень 1 соответственно с пятым-седьмым выходами,третьей группой выходов и первойгруппой входов дешифратора микроопераций, седьмой выход которогоподключен к управляющему входу первого сумматора, а четверта, группавыходов и вторая группа входовсоответственно к первому адресномувходу памяти микропрограмм и выходу регистра хранения текущей инструкции, управляющий вход которогосоединен с выходом четвертого элемента И, а информационный входс вторым адресным входом памяти микропрограмм и выходом буФерного регистра инструкции, выходы первыхрегистра адреса перехода и регистракода операции обмена, информационный вход-выход первого узла шинныхФормирователей и второй информационный вход первого переключательногоэлемента образуют первый вход-выходпроцессора, вторые входы первогоседьмого элементов И, нулевь 1 е входыпервого и второго триггеров, синхронизирующие входи памяти программ идешифратора микроопераций соединеныс синхрониэирующим входом процессора,выход памяти микропрограмм соединенс третьей группой входов дешифраторамикроопераций.На фиг.1 представлена структурнаяблок-схема устройства; на Фиг.2Функциональная схема регистра хранения запросови блока приостанова;на фиг.3 - структурная схема процессора; на Фиг.4 - функциональная схема блока обработки инструкций процессора; на фиг.5 - функциональнаясхема блока обработки данных процессора, на Фиг,б - функциональнаясхема формирователя синхроимпульсов;на фиг.7 - временная диаграмма работы устройства, на Фиг,8 - блок-схемаалгоритма выполнения инструкции, нафиг.9 - временная диаграмма работыустройства при выполнении инструкции,Устройство содержит (Фиг,1) процессор 1, предназначенный для обработки данных в соответствии с загруженной в память программой (процессор 1 является ведущим в устройстве); задающий генератор 2, обеспечивающий выработку импульсов высокой частоты, определяемой быстродействием элементной базы; Формирователь 3 синхроимпульсов, осуществляющий Формирование синхроимпульсов, необходимых для тактирования работы процессора 1, элемент ИЛИ-НЕ 4, позволяющий блокировать прохождение импульсов высокой частоты на вход формирователя 3 синхроимпульсов, блок 5 хранения запросов, необходимых для хранения запросов в течение времени их выполнения, блок б приостанова, осуществляющий блокировку подачи импульсов высокой частоты в Формирователь 3 на время завершения ведомым устройством операции обмена; блок 7 памяти программ, предназначенный для хранения программ, записанных на языке инструкций процессора 1; блок 8 памяти данных, необходимых для при. ема программ пользователя, хранения 10 промежуточных результатов обработки, а также, служебной инФормации, требуемой для работы операционной системь 1.Первая магистраль 9 обеспечивает 15 связь процессора 1 с блоком 7 памяти программ, вторая магистраль 10 с блоком 8 памяти данных. Кроме того по второй магистрали 10 осуществляется связь процессора 1 с внешними устройствами (накопителями на магнитных дисках, лентах, дисплеями, электромеханическими устройствами ввода-вывода), комплект которых выбирается пользователем. Все внешние устройства подключены параллельно блоку 8.Блоки и устройства, подключенные к магистралям 9 и 10, являются ведомыми. Каждая из магистралей 9 и 10 включает в себя адресные шины, обес- ЗО печивающие передачу адреса ведомому устройству, двунаправленные шины данных для передачи ведомому устройству записываемого слова и для передачи в процессор 1 запрошенного сло ва, шину запросов для передачи запросов ведомому устройству, шину готовности для передачи пропессору 1 сигнала готовности, шину операции для указания ведомому устройству ти р па выполняемой операции(чтение или запись) и шину начального сброса для приведения ведомого устройства в исходное состояние. Блок 5 за росов содержит (Фиг.2) триггеры 11 и 12 элементы И 13 и 14. Блок б приостанова состоит из элементов И 15 и 16 и. элемента ИЛИ 17 (Фиг.2).Процессор 1 содержит два структурных блока (Фиг.3): блок 18 обработки инструкций и блок 19 обработки данных, внутреннюю магистраль 20, причем регистр 21 адреса текущей инструкции, первый сумматор 22, дешифратор 23 мнкроопераций, первые регистр 24 адреса перехода и регистр 55 25 кода операции обмена, первый эЛемент И 26, первый триггер 27, вто-, рой элемент И 28, первый элемент ИЛИ 29, третий элемент И 30, буферный регистр 31 инструкций, первые узел 60 32 шинных формирователей, коммутатор 33, переключательный элемент 34, регистр 35 хранения текущей инструкции, четвертый элемент И 36, память 37 микропрограмм, состоящая из како пителя 38, адресного регистра 39 ирегистра 40 микроопераций, шины 41выхода памяти 37 микропрограмм, образуют блок 18 обработки инструкцийпроцессора (Фиг.4 ). Арифметико-логический узел 42, узел 43 регистровоперативной информации, вторые сумматор 44 и регистр 45 адреса перехода, шестой элемент И 46, вторые регистр 47 кода операции обмена, узел48 шинных Формирователей, коммутатор49 и переключательный элемент 50,буферный регистр 51 данных, второйэлемент ИЛИ 52, пятый элемент И 53,второй триггер 54 и седьмой элементИ 55 образуют блок 19 обработки данных процессора 1 (фиг.5).формирователь 3 синхроимпульсовсодержит (фиг.б) сдвиговый регистр56 и элементы И 57-59.Регистр 21 обеспечивает хранениеадреса текущей инструкции в течениевремени ее выполнения. Для Формирования адреса очередной инструкции,используется сумматор 22, которыйподключен первым информационным входом (А ) к выходу регистра 21, вторыминформационным входом (В) - к внутренней магистрали 20, а управляющимвходом - к восьмому выходу дешифратора 23 шинами сигналов Формированияадреса инструкции (ФАИ), обеспечивающих выполнение сумматором 22Функций приращения адреса установленного на входе А, на +1 либо иавеличину, переданную на вход В, присвоения адресу значения, равного одной из входных величин. Регистр 24служит для хранения адреса инструкции в процессе обращения к блоку 7памяти программ. Регистр 25 обеспечивает хранение кода операции обмена(выборка, загрузка) и подключен информационным входом к выходу дешифрато"ра 23 шиной сигнала ОП 1, устанавливающего тип операции обмена с блоком7. Элемент И 26 обеспечивает формирование сигнала приема кодов в регистры 24 и 25. Выход регистра 24подключен к адресным шинам:первоймагистрали 9 и информационному входу регистра 21,Первым выходом запросов процессора 1 является выход элемента И 30(ЗПР 1), обеспечивающего формированиесигнала запроса на обмен по магистрали 9, для инициирования которого предусмотрен выход дешифратора 23ОБМ 1.Для хранения инструкции в процессе ее выполнения предназначенрегистр 35, который подключен информационным входом к выходу буферного регистра 31, а управляющим входом - к выходу элемента И 36, соединенного первым входом с шиной КОНИподключены к входам второй группыдешифратора 23 для управления егоработой, и к внутренней магистрали20 для выдачи части разрядов инструкции на входы других блоков процессора 1, в частности на входы В сумматора 22.Микропрограммы, реализующие наборинструкций процессора 1, хранятся впамяти 37, состоящей из накопителя38,адресного регистра 39 и регистра 1040 микрокоманды, подключенного выходами третьей группы к входам дешифратора 23, а информационными входами - к выходам накопителя 39, соединенного адресными входами с выходами адресного регистра 39, входы которого подключены шинами начальныхадресов для доступа к микрокоманде,с которой начинается выполнение очередной инструкции, к выходам буФерного регистра 31, а шинами сигналовизменения адреса микрокоманды - квыходам четвертой группы дешифратора 23,Арифметико-логический узел 4225обеспечивает преобразование цифровойи буквенной информации и подключен квнутренней магистрали 20 входными ивыходными шинами данных, а выходнымишинами условий ветвления (УВ) - квходам первой группы дешифратора 23,третья группа выходов и седьмой выход. которого соединен шинами сигналоварифметико-логических микроопераций(АЛ) и шинами микроопераций внутреннего обмена (В 01) с группой управляющих входов и управляющим входомарифметико-логического узла 42.Узел 43 предусмотрен для хранения в процессоре 1 оперативной информации, соединен входными и выход Оными шинами данных с внутренней магистралью 20, выходными шинами дан ных (ДАН) - с входом коммутатора 23,управляющими входами - с пятым выходом дешифратора 23 шинами сигналов внутреннего обмена В 02, а выходными шинами базового адреса - с входом сумматора 44, который подключенвходом В к внутренней магистрали 20,а управляющим входом - к шестому выхо.,ду дешифратора 23 посредством шинсигналов ТА, определяющих тип адресации (абсолютная, относительная). Сумматор 44 обеспечивает Формированиеисполнительного адреса при операциях обмена по второй магистрали 10.Для хранения адреса при обмене поэтой магистрали предусмотрен регистр45, который подключен информационнымвходом к выходу сумматора 44, выхо. дом - к адресным шинам второй магис- .60трали 10, а управляющим входом в ,квыходу элемента И 46, соединенного сУправляющим входом регистра 47,предназначенного для хранения кодаопераций обмена и подключенного ин Формационным входом к второму выхо-ду дешифратора 23 шиной сигнала ОП 2 (код операции обмена по второй магистрали 10 - прием или выдача), й выходом - к шине операции второймагистрали 10 и к управляющим входам шинных формирователей узла 48, коммутатора 49 и переключающего элемента 50. Шинные формирователи узла 48 подключены к двунаправленным шинам данных второй магистрали 10.Буферный регистр 51 обеспечивает хранение данных в процессе обмена информацией по второй магистрали 10. Выходом запроса на обмен по второй магистрали 10 является выход элемента И 53. Для инициирования запросов предусмотрен четвертый выход дешифратора (ОБМ 2), соединенный свходами элементов И 53 и 46 и элемента ИЛИ 52.Вторым контролирующим выходом процессора 1 (КТ 2) является выход триггера 54, на единичный вход которого через элементы И 55 и ИЛИ 52 поступает сигнал с третьего выхода дешифратора 23 по шине сигнала микрооперации выдачи содержимого буферного регистра 51 на внутреннюю магистраль 20 (ВМ:=Р)Для тактирования процессора 1 синхронизирующие входы дешифратора 23 подключены к выходам формирователя 3 синхроимпульсов шинами синхроимпульсов СИ 1, СИ 2, СИЗ, входы элементов И 28 и 55 шинами синхроймпульсов СИ 1, нулевые входы триггеров 27 и 54, а также выходы элементов И 26, 36 и 46 - шинами синхроимпульсов СИ 2,управляющий вход регистра 40 и входы элементов И 30 и 53 - шинами синхроИмпульсов СИЗ.Формирователь 3 синхроимпульсов (Фиг.б) состоит из сдвигового регистра 56 на три разряда и элементов И57-59, выходы которых являются выхода.ми формирователя 3 (СИ 1, СИ 2, СИЗ), Входы элементов И 57-59, соединенныемежду собой и с входом сдвига вправо С 1 сдвигового регистра 56, являются входом 60 Формирователя 3, Для циклического сдвига вход ДО, являющийся входом последовательного занесения информации в сдвиговый регистр 56,подключен к выходу его третьего разряда. Вход первого разряда сдвигового регистра 56 Д 1, а также вход сдвигавлево С 2 соединены с шиной логическойециницы, входы остальных разрядов г 2, 03, в 4 подключены к шине логического нуля, а вход параллельного занесения служит для приведения сдвигового регистра 56 в исходное состояние, равное двоичному коду 100.Позициями 67-70 (фиг.8 и 9) обозначены элементы блок-схемы алгоритма.Устройство работает следующим образом.Задающий генератор 2 постоянно вырабатывает импульсы высокой частоты СИО,йоступающие на импульсный вход элемента ИЛИ-НЕ 4 и на входы элементов Й 13 и 14, При выполнении процессором 1 микрокоманд, не требующих об ращения к ведомым устройствам, импульсы высокой частоты с выхода элемента ИЛИ-НЕ 4 поступают на вход фор. мирователя 3, которнй обеспечивает деление частоты и выработку серий сиихроимпульсов СИ 1, СИ 2, СИЗ (фиг.9), требуемых для функционирования процессора 1. Работа процессора 1 состоит в последовательной выборке инструкции из блока 7 и их выпол-5 ненни в соответствии с микропрограммами, каждая из которых представляет собой последовательность микро- команд, реализующих соответствующую инструкцию. Требуемая микропрограм О ма вызывается из памяти 37 заданием кода начального адреса, поступающего в адресный регистр 39 с выходов буферного регистра 31. Микрокоманда выполняется в течение одного такта, 25 показанного на Фиг.9. Выполнение микрокоманды состоит в том, что в момент выработки синхроимпульса СИ 1 в соответствии с кодом, считанным в регистр 40, на определенных шинах микроопераций формируются сигналы, которые поступают на входы соответствующих элементов и узлов процессора 1. В течение всего такта процессор 1 выполняет предписанные микрокомандой действия. Поступление 35 синхроимпульса СИ 1 на вход дешифратора 23 инициирует выдачу адреса очередной микрокоманды на вход адресного регистра 39. Код очередной микро- команды считывается из накопителя 38 40 и с окончанием синхроимпульса СИЗ ,поступает в регистр 40. Выборка очередной инструкции инициируется в процессе выполнения текущей инструкции посредством микро- команды, в которой, помимо микроопераций, требуемых для выполнения текущей инструкции, указываются микрооперации ОБМ 1, ОП 1 и ФАИ. При выполнении такой микрокоманды сигнал ОБМ 1 посредством элемента ИЛИ 29 передается на вход элемента И 28 и по синхроимпульсу СИ 1 устанавливает триггер 27, в результате чего вход элемента И 15 поступает уровень логической единицы. Обычно к этому моменту предыдущий зайрос на обращение к блоку 7 выполнен, следовательно, триггер 11 сброшен и блокирует прохождение сигнала логической единицы 60 на выход элемента И 15. Одновременно сигналы ФАИ обеспечивают формирование адреса запрашиваемой инструкции на выходах сумматора 22. По синхроимпульсу СИ 2 триггер 27 сбрасывается 65 в регистр 24 переписывается адрес с выходов сумматора 22, а в регистр 25 код "0", соответствующий операции выборки (ОП 1 = О). Таким образом, на адресные шины первой магистрали 9 выставляется адрес запрашиваемой инструкции, а на шину операции этой магистрали - код операции выборки.Через интервал времени, достаточный для дешифрирования выставленного адреса, по синхроимпульсу СИЗ элемент И 30 формирует сигнал запроса ЗПР 1, в результате чего триггер 11 устанавливается в единицу Й с его выхода в блок 7 по шине запросов первой магистрали 9 поступает сигнал запроса ЗАПРОС 1. С этого момента процессор 1 и блок 7 работают параллельно: инициировав выборку очередной инструкции, процессор 1 продолжает выполнять текущую инструкцию, хранящуюся в регистре 35. После завершения выборки инструкции по двунаправленной шине данных первой магистрали 9 в процессор 1 из блока 7 поступат считанная инструкция, которая посредством шинных формирователей узла 32 и коммутатора 33 под управлением кода "0" в регистре 25 передается в буферный регистр 31. Одновременно на вход переключатель- ного элемента 34 от блока 7 поступит сигнал готовности (ГОТ 1); который обеспечивает прием в этот регистр считанной инструкции. Сигнал готов" ности поступает также на элемент И 13 и по синхроимпульсу СИО, вырабатываемому задающим генератором 2, сбрасывает триггер 11. Выполнение текущей инструкции, протекающее параллельно выборке очередной инструкции, заканчивается микрокомандой, подготавливающей процессор 1 к выполнению очередной инструкции. Эта подготовка производится сигналом микрооперации (КОНИ), который по синхроимпульсу СИ 1 посредством элементов ИЛИ 29 и И 28 передается на единичный вхбд тригге-ра 27, что приводит к выработке уровня логической единицы на входе элемента И 15. Если к этому моменту выборка инструкции завершена и триггер 11 сброшен, тб сигнал пристанова не вырабатывается и по синхросигналу СИ 2 очередная инструкция посредством элемента И 36 переписывается иэ буферного регистра 31 в регистр 35.Кроме того, адрес данной инструкции поступает из регистра 24 в регистр 21, начальный адрес микропрограммы, реализующей данную инструкцию, передается из буферного регистра 31 в адресный регистр 39, после чего процессор 1 переходит к выполнению первой микрокоманды текущей инструкции.Если к моменту окончания работы инструкции выборка очередной инструкции не завершена, уровень логической единицы с выхода триггера 27 посредством элементов И 15 и ИЛИ 17 передается на управляющий вход элемента ИЛИ-НЕ 4, который блокирует прохождение импульсов СИО с выхода задающего генератора 2 на вход Формирователя 3, и дальнейшее формирование синхроимпульсов СИ 1, СИ 2, СИЗ прекращается, что приводит к приостанову процессора 1. Формирование синхроимпульсов возобновляется после сброса триггера 11 сигналом готовности ГОТ 1, стробированным импульсами СИО, 15 поступающими на вход элемента И 13.Первым Формируется синхроимпульс СИ 2,который проходит через элемент И Збобеспечивает прием считанного кода в регистр 35. Далее начальный адрес микропрограммы, реализующий данную инструкцию, передается в адресный регистр 39 и процессор 1 переходит к выполнению первой микрокоманды инструкции. 25Приостанов происходит также в случае, если к моменту выполнения микрокоманды, инициирующей выборку инструкции, блок 7 не выработал сигнал готовности ГОТ 1 в ответ на предыдущий запрос. Такая ситуация возникает, если при выполнении разветвляющейся микропрограммы произведен упреждающий запрос инструкции, переходк которой не последовал, а время ее выборки превысило время движения по микропрограмме до момента обращенияза инструкцией, требуемой для выходапо данной ветви микропрограммы. Загрузка блока 7 производится специальной инструкцией, работающей сле-Ц)дующим образом. В буферный регистр51 из второй магистрали 10 принимается код, который необходимо загрузить, в блок 7, и посредством внутренней магистрали 20 передается в узел 43. 45 Затем выполняется микрокоманда, в которой указаны микрооперации ОБМ 1, ФЛИ и ОП 1, причем микрооперации ФАИ задают функцию присвоения выходам сумматора 22 величины, поступающей на его входы В. Как и при выборке инструкции, по синхроимпульсу СИ 1 производитсяконтроль готовности блока 7, и, еслйГпредыдущий запрос выполнен, по синхроимпульсу СИ 2 в регистр 24 с внутренней магистрали 20 из суммато ра 22 переписывается адрес записываемой инструкции, а в регистре 24 устанавливается код 11 ф, соответствующий операции загрузки, тем самым адрес и код операции выставляются на 60адресные шины и шины операции первоймагистрали 9. Одновременно с помощью микроопераций ВО 2 код записываемой инструкции поступает на выходные шины данных регистров узла 43 и под 65 управлением регистра 25 посредствомкоммутатора 33 передается на информационные вход буферного регистра 31,по сигналу ОБМ 1, передаваемому ПОсинхроимпулъсу СИ 2 через элемент И 2 би переключающий элемент 34,инструкциязаписывается в этот регистр и с помощью шинных формирователей узла 32выставляется на двунаправленные шиныданных первой магистрали 9. Затем посинхроимпульсу СИЗ на выходе элементаИ 30 вырабатывается сигнал запросаЗПР 1, который устанавливает в единицутриггер 11, обеспечивающий передачу ссигнала запроса ЗАПРОС 1 в блок 7. После этого выполнение инструкции загрузки продолжается - проверяется,нужно ли продолжать загрузку, и принеобходимости продолжения в буферномрегистре 51 подготавливается следующий загружаемый код .Одновременно блок7 выполняет инициированную операциюзагрузки.Если к моменту обращения блок 7 ещене ответил сигналом готовности ГОТ 1на предыдущий запрос, то выработкасинхроимпульсов СИ 1, СИ 2, СИЗ приостанавливается до тех пор,пока на выходеблока 6 не выработается уровень логи-ческого нуля. После завершения переда.чи всей последовательности инструкцийв блок 7 работа инструкции загрузкизаканчивается выборкой Очередной ин-струкции и подготовкой процессора1 к ее выполнению,Запрос обращения к блоку 8, атакже к внешним устройствам, подключенным к второй магистрали 10, задается микрооперацией ОБМ 2, при этомспособ определения исполнительногоадреса указывается управляющим кодомТА (тип адресации), а регистр узла43, используемый при определении исполнительного адреса, указываетсямикрооперациями внутрипроцессорногообмена ВО 2.При операции загрузки микрооперации ВО 2 указывает также регистр, содержащий передаваемые процессором 1данные. Микрооперация ОП 2, определяющая направление передачи данных, призагрузке имеет значение логическойединицы. Предварительно в регистрыузла 43 записывается базовый адрес,в результате чего на входах А сумматора 44 в течение времени выполнениязначительного участка программы поддерживается его значение.Выборка слова нз блока 8, а такжеиэ другого устройства, подключенногок второй магистрали 10, происходитследующим образом.в процессе выполнения инструкциииз памяти 37 считывается микрокоманда, задающая микрооперации ТА, ВО 2,которые совместно с базовым адресом,установленным в регистрах узла 43,обеспечивают Формирование исполнибатывается микрооперация ВИ: =Р, обес печивающая передачу содержимого буферного регистра 51 на внутреннюю магистраль 20. Этот сигнал поступает также на вход элемента ИЛИ 62 и приводит к установке в единичное состоя" ние триггера 54 по синхроимпульсу СИ 1. В том случае, если ведомое устройство не выполнило запрос, происходит выработка сигнала приостанова, и процессор 1 прекращает работу до завершения обработки запроса. К моменту возобновления работы процессора 1 запрошенное слово принято в буферный регистр 51 и поступает на внутреннюю магистраль 20, а по синхроимпульсу СИ 2 и микрооперации внутреннего обмена (ВО 1 или ВО 2) передается в арифметико-логический узел 42 либо в регистр узла 43.Если к моменту выполнения микро" команды, использующей запрошенное слово, запрос завершен, то триггер 12,сброшен и приостанов не происходит.Загрузка слова в блок 8, а также во внешние устройства, подключенные к второй магистрали 10, выполняется следующим образом. Микрокоманда, ииициирующая загрузку, помимо источника адреса и типа адресации указывает микрооперацию загрузки ОП 2 и источник данных - регистр узла 43. При выполнении этой микрокоманды по синхроимпульсу СИ 1 на внутреннюю магистраль 20 из регистров узла 43 передается код, который совместно с базовым адресом, поступающим на вход А сумматора 44, и управляющим кодом ТА (тип адресации) определяет исполнительный адрес, поступающий на регистр 45. Одновременно записываемое слово выставляется на выходные шины данных входа-выхода узла 43 и устанавливается триггер 54, что обеспечивает контроль выполнения предыдущего запроса и приводит к приОстанову формирования синхроимпульсов СИ 1, СИ 2, СИЗ, если запрос не завершен. Затем по синхро. импульсу СИ 2 в регистр 45 принимается адрес, в регистр 47 - код операции записи, равный единице, которые поступают соответственно на адресные шины и шины операции второй магистрали 10, Уровень логической единицы с выхода регистра 47 посту-. пает тактике на управляющий вход коммутатора 49, обеспечивающего прохождение данных с внутренней магистрали 20 на входы буферного регистра 51. По сигналу ОБМ 2, передаваемому по синхроимпульсу СИ 2 с выхода элемента И 46 и переключающего элемента 50 под управлением регистра 47, записываемое слово принимается в буферный регистр 51, с выходов которого посредством шинных формирователей узла 48, также управляемых регистром 47, выставляется на шины данных тельного адреса на выходах сумматора 44 к моменту окончания синхроимпульса СИ 1. Микрокоманда задаеттакже микрооперацию обмена ОБМ 2, обеспечивающую уровень логической единицы на выходе элемента ИЛИ 52, чтоприводит к прохождению синхроимпульса СИ 1 через элемент И 55 и установке триггера 54, уровень логическойединицы с выхода которого поступаетна второй контролирующий вход элемента И 16. Если триггер 12 в этотмомент находится в единичном состоянии, что свидетельствует о незавершенности предыдущего обращения, тона вход Формирователя 3 через элементы И 16 и ИЛИ 17 поступает сигналлогической единицы, который приводитк нриостанову Формирования синхроимпульсов Формирователем 3.По истечении времени, необходимого для завершения предыдущего обращения, ведомое устройство вырабатывает сигнал готовности ГОТ 2, которыйпо синхроимпульсу, вырабатываемомузадающим генератором 2, сбрасываетсятриггер 12, что приводит к установлению уровня логического нуля на выходеблока 6 и продолжению формированиясинхроимпульсов СИ 1, СИ 2, СИЗ, причем первым вырабатывается синхроимпульс СИ 2. По этому синхроимпульсупроисходит сброс триггера 54 и формирование сигнала на выходе элементаИ 46, обеспечивающего прием исполнительного адреса с выходом сумматора 44 в регистр 45 и кода операции 35выборки, равного нулю, в регистр 47,Код с выходов регистров 45 и 47 поступает соответственно на адресныешины и шину операции второй магистрали 10. По синхроимпульсу СИЗ навыходе элемента И 53 вырабатываетсяимпульс запроса обмена (ЗПР 2), устанавливающий триггер 12, что обеспечивает передачу сигнала запроса ЗАПРОС2 по шине запросов второй магистрали 10. Далее процессор 1 переходит квыполнению следующей микрокоманды,а ведомое устройство выполняет запрос.Если к моменту обращения предыдущее обращение завершено, то триггер12 сброшен и при установке триггера54 сигнал приостанова не вырабатывается.После завершения выборки ведомоеустройство выставляет запрошенное 55слово на,двунаправленные шины данных второй магистрали 10, по которымоно поступает на шинные формирователи узла 48. Под управлением регистра47 считанный код поступает через шии ные формирователи узла 48 и коммутатор 49 на информационный вход буферного регистра 51,При выполнении микрокоманды, использующей запрошенное слово, выра
СмотретьЗаявка
3405315, 09.03.1982
ОРДЕНА ЛЕНИНА ИНСТИТУТ КИБЕРНЕТИКИ АН УССР
БОНДАРЕНКО ЕВГЕНИЙ АЛЕКСАНДРОВИЧ, ВЕРОЦКИЙ ВАЛЕНТИН ДИОНИСИЕВИЧ, ЛОСЕВ ВИКТОР ДМИТРИЕВИЧ, ОРЛОВА ИРИНА АЛЕКСАНДРОВНА, ПОГРЕБИНСКИЙ СОЛОМОН БЕНИАМИНОВИЧ, ПУЛЯТКИНА ЛЮДМИЛА ВАСИЛЬЕВНА, СКУРИХИН АНДРЕЙ ВЛАДИМИРОВИЧ
МПК / Метки
МПК: G06F 3/04
Метки: информацией, обмена
Опубликовано: 30.01.1984
Код ссылки
<a href="https://patents.su/15-1070536-ustrojjstvo-dlya-obmena-informaciejj.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для обмена информацией</a>
Предыдущий патент: Двухканальное устройство для сопряжения
Следующий патент: Устройство для ввода информации
Случайный патент: Тракторный навесной агрегат