Есть еще 10 страниц.

Смотреть все страницы или скачать ZIP архив

Текст

СОЮЗ СОВЕТСНИХСОЦИАЛИСТИЧЕСНИХРЕСПУБЛИН И 9) 8 О И 3 50 С 06 Г 1 э/0 ОПИСАНИЕ ИЗОБРЕТЕНИЯН АВТОРСНОМУ СВИДЕТЕЛЬСТВУ ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССРПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ(72) И.В.Прангишвили, Е,В.Бябичева 9В.Д.Малюгин, В.В.Соколов, С.В.Денисенко, А.В.Вейц, А.И.Иванов, А.И.Шкатулла,Б.С.Зверков, Т.И.Зрелова, Я.А.Левертов, Д.А.Тодуа, О.В.Гоголадзе,А.Н.Вепхвадзе, Г.Ш,Гудушаури, А.П.Голубев, А.И.Березенко и Л.Н,Корягин71) Ордена Ленина институт проблемуправления(54)(57) 1. УПРАВЛЯЮЩАЯ ВЕКТОРНАЯВЫЧИСЛИТЕЛЬНАЯ СИСТЕМА, содержащаявекторное арифметико-логическое устройство, три блока буферных регистров, блок дешифраторов, два блокапамяти микропрограмм, блок системныхрегистров, блок приоритетных прерываний, блок приемопередатчиков, оперативное запоминающее устройство и устройство микропрограммного управления, при этом вход и выход блокадешифраторов соединены соответственно с первым выходом первого блокапамяти микропрограмм и входом кодаоперации векторного арифметико-логического устройства, вход данныхи выход данных которого подключенысоответственно к выходу и входу первого блока буферных регистров, входданных оперативного запоминающего устройства соединен с входами первого, второго и третьего блоков буферных регистров и входом блока приемо- передатчиков, выход которого подключен к адресным входам блока системных регистров и оперативного запоминающего устройства, выходам первого, второго и третьего блоков буферных регистров и входу внешних прерываний блока приоритетных прерываний, выход внешнего прерывания и вход текущего прерывания блока приоритетных прерываний соединены соответственно с входом блока приемопередатчиков и выходом прерывания устройства микропрограммного управления, е адресный выход, выход управления записью в регистры, выход управления записью команд, вход команды и вход кода операции которого подключены соответственно к адресному вхо- р ду второго блока памяти микропрограмм,)9)Е 9 Ь входу данных блока системных регистров, входу второго блока буферных регистров, первому выходу данных 1 лока системных регистров и первому выходу второго блока памяти микропрограмм, а второй выход данных блока системных регистров соединен с входом второго блока буферных регистров. о т л и ч а ю щ а я с я тем, что, с целью повышения производительности, она содержит блок ускоренной обработки прерываний, скалярное арифме- )р тико-логическое устройство и блок формирования векторных команд, включающий регистр признаков запросов, четыре дешифратора микроопераций, счетчик длины вектора, приоритетный шифратор, группу элементов И, регистр признаков операции, группу триггеровных и используется аппаратурой привыполнении векторных команд для выборки элементов структуры данныхна обработку,Определены типы данных; массив,фвектор; матрица и обменник (очередь),Структура данных состоит из набора(возможно пустого) скалярных данныходного элементарного типа. Лдресомэлемента данных структурного типа 1 Оявляется адрес дескриптора, описывающего параметры структуры данных,в частности адрес первого элементаструктуры данных (адрес начала структуры данных). 15Массив - непрерывная областьпамяти (не превышающая одного сегмента), описываемая дескриптором массива, Дескриптор массива содержит начальный адрес массива (адрес первого 20элемента) и число элементов (длинамассива). Над массивом можно определить несколько регулярных структурданных (векторов или матриц), но всеэлементы этих структур должны принадлежать одному массиву, Регулярнаяструктура данных - отношение порядка над массивом, спужит для определения порядка выборки на обработкуэлементов массива. Сам массив счит ается вектором с длиной, равной длинемассива, и шагом, равным единице.Вектор. в . последовательность элементов, каждому из которых ставитсяв соответствие индекс (от 1 до М,где М - длина вектора). Элементамивектора являются элементы одногомассива, отстоящие друг от друга нафиксированное для этого вектора расстояние - шаг. Вектор описываетсяинформацией в дескрипторе - начальным адресом, числом элементов, шагомвыборки, конечным адресом,Матрица - двухмерная регулярнаяЯ структура данных, последовательность векторов одинаковой длины и шага, Матрица размещается в памяти по строкам. Матрица описывается информаци. ей в дескрипторе, числом столбцов, конечным адресом. На уровне машин",50 ных команд для обработки можно выбрать массив (регулярную структуру данных) целиком, выбрать произвольный его элемент или последовательность элементов (подвектор) из векто- ра, Из матрицы можно выбрать произвольный столбец. Параметры вектора ,или матрицы могут динамически изменяться в пределах области памяти,описываемой массивом,Тип данных - очередь (обменник)задает жесткий порядок элементовв виде очереди типа "первым пришел -первым ушел", Элемент, заносимыйв очередь, автоматически считаетсяпоследним, выбирается из очередивсегда первый элемент. Доступ кпроизвольному элементу очереди неразрешается,Очередь характеризуется максимальной длиной (максимально возможным числом элементов в очереди) итекущей длиной (числом элементовв очереди в момент обращения). Вдескрипторе очереди содержатся;:начальный адрес области памяти,отведенной под очередь, индекс первого (логически) элемента в очереди,индекс последнего элемента и конечный адрес области памяти. И дескриптор и адресуемая через него структура данных размещаются в одном сегменте данных.Система команд управляющей векторной вычислительной системы делится на два пересекающихся, но не перекрывающихся подмножества - системакоманд УП (блоки 11-13) и системакоманд ЦП (блоки 1-10).Команды ввода-вывода, только дляУП управляют физическим обменоминформацией между ОЗУ 15 и приемопередающим блоком 14. Возможен какпословный (программный) обмен, так иобмен массивом данных без вмешательства УП.Команды управления, одинаковыедля ЦП и УП делятся на команды управления процессором, задающие и снимающие маски прерываний, устанавливающие режимы работы соответствующегопроцесс.ора на команды передачи управления, меняющие последовательностьвыполнения команд (в эту группу входят и команды возврата управления)и на команды обращения к управляющейсистеме (УС) формируют и ставятв очередь в УС реального времени(УСРВ) заявки для выполнения функцийУСРВ. Эти команды допустимы толькона цП и почти всегда сопровождаютсяпереключением задач на ЦП.Команды обмена и синхронизации(ЦП и УП), служат для обеспеченияправильного взаимодействия и синхронизации задач, выполняющихся наразных процессорах или разделяющих вовремени один процессор. В эту группувходят команды работы с семафорамии с очередью (обменники),Команды преобразования Форматов,выполняющиеся только на ЦП, преобразуют числовые данные из формата целых в формат с плавающей точкой инаоборот.Команды пересылок, выполняются 10и на ЦП и на УП, задают обмены информацией между блоками регистров 2,10 и 12 и ОЗУ 15,или между различными областями памяти, Команды пересылок могут пересылать как отдельные 15слова, так и массивы данных.Скалярные команды обработки выполняются и на УП и на ЦП, и описывают логические, арифметические операции над скалярами, а также операции 20сдвигов.Векторные команды поэлементнойобработки описывают арифметические,логические и операции сдвигов надскалярами и распределяют их на масси вы (векторы и матрицы), В эту группувходят команды с плавающей точкой.Команды обработки массивов описы 1вают операции преобразования структуры массивов, поисков массивов и слож-З 0ные арифметические операции, учитывающие структуру массивов (составныеоперации).При описании форматов команд использованы: КОП - код операции; П -признак обработки плавающих чисел;КВ - код выборки, который определяетструктуру операндов (скаляр, вектор,матрица); А - относительный адресоперандов), К - признак косвенной 40адресации, Б - признак базы; Х - неиспользуется.Комбинации признаков: при П=1,Б=1 - косвенная 1 адресация - относительный адрес данного и данные в основном сегменте данных, при П=1;ФБ=О - косвенная П адресация - относительный адрес этого данного в нулевом сегменте.На фиг.б представлени форматы команд.формат ПП память-память (а), формат ППВ память-память - векторные (б), формат ПППБ память-память-память-векторные (в) и формат ПНПВ память- йепосредственное-памятЬ-векторные (г) .Список команд обработки управляю-щей векторной вычислительной системы следующий: скалярные команды обработки; сдвиги (логические, циклические,ариФметические), логические операции над словами (логическое умножение, сложение, сравнение, отрицание), логические операции над байтами (такие же логические операции,как над словами), над правыми и левымибайтами, арифметические операциинад целыми числами; векторные команды поэлементной обработки: арифметические операции нал числами с плавающей точкой (бинарные операцииоперации сравнения, унарные операции)команды обработки массивов: поисковые операции(поиск значения в векторе плавающих чисел, определение индекса элемента), составные операциинад векторами (свертка, т.е.-суммавсех элементов вектора, скалярноепроизведение векторов, вычислениеполинома), операции индексации (выборка элемента из вектора плавающихчисел в скаляр по индексу - скалярувыборка подвектора элементов из вектора плавающих чисел по вектору индексов, занесение скаляра в векторпо индексу-скаляру, занесение векторав вектор плавающих по вектору индексов) .Форматы векторных команд обработки:векторные команды поэлементной обработки - формат ПЛПВ; поисковые операции и свертка - формат ПЛВ; скалярное произведение векторов и вычисление полинома - формат ЛПЛВ; операции индексации - формат ПППВ И ПНПВ,Синхронизация работы ВП и СП поясняется фиг.7,где представлены фазыобслуживания запроса с обозначениямификсация запроса в СП (ФЗСП), выдачаадреса 1 -го элемента в ОЗУ 15 (А-ОЗУвычисление адреса (1+ 1) элемента(А=А+Ш), фиксация запроса в ПВ вблоке 24 триггеров готовности (ФЗВП)еобмен между ОЗУ 15 и первым блоком2 буферных регистров ВП (блоки 1-5)(ОЗУ (А) - ВП) и ожидание запросаот ВП (блоки 1-5) (ОЗВП).Выполнение команды управляющейвекторной вычислительной системыосуществляется следующим образом.Команда считывается из ОЗУ 15 вблок 7 системных регистров, дешифрируется в устройстве 6 микропрограммного управления и выполняется илина САЛУ .9 (скалярные команды),или на скалярном 9 и на векторном19 112 ОЗ 4 1 арифметико-логическом устройствах одновременно (векторные команды), В последнем случае САЛУ 9 на основании параметров векторов данных вычисляет поток адресов очередных 5 элементов векторов. Этот поток подается на ОЗУ 15 для выборки даннь 1 х, образующих поток на ВАЛУ, 1, которое, обработав их, подает поток данных на ОЗУ 15 одновременно с 10 потоком адресов результатов, формируемых САЛУ 9. Устройство 6 микропрограммного управления по асинхронНым сигналам, вырабатываемым арифметика-логическими устройствами 15и 9 и ОЗУ 15, согласует потоки данных и адресовПри возникновении внешнего прерывания от блока 14 приемо- передатчиков, требующего обработки, этот процесс происходит в два этапа. Сначала информация независимо от устройства 6 микропрограммного управления считывается с блока 14 приемопередатчиков и через блок 13 при оритетных прерываний с помощью блока 11 ускоренной обработки прерываний заносится в ОЗУ 15. Далее блок 11 ускоренной обработки прерываний сравнивает приоритет прерываний с маской внешних прерываний, если данное прерывание разрешено, то сравнивается приоритет текущей задачи с приоритетом задач обработки полученного прерывания. Если последний35 вьпне, то на устройство 6 микропро". граммного управления подается сигнал внутреннего прерывания, Получив его, устройство 6 микропрограммного управления определяет номер соответ 40 ствующей задачи обработки и к концу текущей команды останавливает выполнение текущей задачи, сохраняя ее состояние, и запускает задачу обработки возникающего внешнего преры 45 вания. Далее работа происходит обычным порядком.Управляющая векторная вычислительная система может работать в многозадачном режиме в реальном масштабе времени. Максимальное количество50 задач 256. Задачи подразделяются на две группы: прикладные задачи и задачи обработки прерывания (обслуживание), которые могут выполняться параллельно.На УП реализуется управляющая система реального времени, состоящая из диспетчера, программ обработки О 20прерываний. внутренних и внешних (драйверы) и загрузчика. На ЦП выполняются прикладные (задачи и процедуры) программы. УП Формирует приоритетные очереди готовых задач (шестнадцать уровней приоритета), из которой ЦП загружает задачу высшего приоритета на исполнение. Драйверы выполняются на УП, запускаются по требованию прикладных задач или по прерыванию. Программы обработки внутренних прерываний ЦП запускаются управляющей системой на УП при получении соответствующего запроса от ЦП. На УП имеется восемь уровней прерываний, и появление сигнала высшего приоритета вызывает сохранение состояния текущей программы в ее локальной области сохранения и сохранение номера программы. Дескриптор обработки запросов от прикладных задач имеет низший приоритет.В зависимости от характера обмена различаются драйверы пассивного устройства, драйверы инициативного устройства и драйвер пассивно" инициативного устройства (основной тип). Драйвер является двухсекционным, т,е. состоит из секции запуска, из секции продолжения и оформляется как одна задача с двумя входами.В любой момент времени каждая задача пользователя находится в одном иэ состояний: пассивном, готовом, активном, блокированном (ожидание некоторого события), Задачи порождаются (переходят в готовое состояние и из пассивного): при загрузке в систему (инициативные задачи), по требованию других исполняющихся задач. Приоритет присваивается задаче при планировании основного ресурса задачи центрального процессора ЦП,Дисциплина планирования;. процессор получает готовую задачу с высшим приоритетом - задачу с наибольшим временем ожидания процессора, В активном состоянии задача переходит в блокированное состояние, если выдан запрос на ввод-вывод - задача переходит в состояние ожидания конца операции ввода-вывода если задано время приостанова выполняемой задачи - задача переходит в состоя,ние ожидания заданного интервала времени, в случае обработки особых ситуаций при выработке активной за,дачей внутреннего прерывания, если активная задача, обращаясь к стан 11203402221дартной программе обнаружила, что семафор закрыт, и в состояние готовности и ставит, себя в конец очереди своего приоритета, если в очереди готовых задач появляется задача высшего приоритета по сравнению с задачей, которая находится в активном состоянии.В случае блокировки блокированная задача формирует запрос к управляющей 10 системе о причине прерывания, ставит его в системный обменник и переходит в состояние ожидания обработки этой ситуации, соответствующей программой обработки. 15 ЦП после сохранения состояния блокированной задачи сразу же загружает очередную задачу из очереди готовых задач наивысшего приоритета. 20 Предлагаемая управляющая векторная вычислительная система по срав нению с известными имеет большеебыстродействие и более высокийкоэффициент использования оборудования. Высокое быстродействиеобеспечивается путем уменьшениявремени на реализацию прерыванийи ускорения обработки векторной информации, В предлагаемой системеэто достигается эа счет разделенияобработки на восприятие сигнала прерывания и сохранение всей связаннойс ней информации в буферах, расположенных в ОЗУ и обработка этой информации задачами обработки. Повышениекоэффициента использования оборудования достигается путем вычисления адресов операндов элементов данных,выбираемых для обработки в ВАЛУ. Этодостигается за счет введения САЛУ,которое не только выполняет операциинад скалярными величинами, но и участвует в выполнении векторных команд.готовности, мультиплексор, счетчик циклов, группу элементов задержки регистр команд и узел микропрограммного удавления, вход разрешения считывания, адресный вход, вход команд, вход признаков, выход прерывания, адресный выход и выход признака которого подключены соответственно к выходам элементов задержки группы, вто" рому выходу первого блока памяти микропрограмм, выходу регистра команд, выходу мультиплексора, первому входу приоритетного шифратора, адресному входу первого блока памяти микропрограмм и синхровходу регистра признаков операции, вход данных, синхровход и выход регистра признаков запросов соединены соответственно с выходом признаков запросов устройства микропрограммного управления, выходом первого дешифратора микроопераций и первыми входами элементов И группы, вторые входы и выходы которых подключены соответственно к выходу первого дешифратора микроопераций и входам триггеров готовности группы, выходы которых соединены с входами элементов задержки группы, вход регистра команд подключен к выходу второго блока бу" Ферных регистров, входы первого, вто" рого, третьего и четвертого дешифраторов микроопераций соединены с вто. рым выходом первого блока памяти микропрограмм, вход и выход счетчика длины вектора подключены соответственно к выходу первого блока буферных регистров и первому входу разрешения регистра признаков операции, вход данных, второй вход разрешения и выход которого соединены соответственно с выходом признаков операции векторного арифметико-логического устройства, выходом первого дешифра тора микроопераций и входом первогоблока буферных регистров, выход второго деширатора микроопераций подключен к входу счетчика циклов, второй и третий входы и выход при" оритетного шифратора соединены соответственно с выходом счетчика длины вектора, выходом третьего дешифратора микроопераций и входом запроса данных устройства микропрограммного управления, а управляющий вход, первый, второй и третий входы данных мультиплексора подключены соответственно к выходу четвертого дешифратора микроопераций, выходу признаков, векторного арифметико-логическогоустройства, выходу регистра признаков операции и выходу счетчика циклов, вход иикроопераций, вход данныхи выход скалярного арифметико-логического устройства соединены соответственно с вторым выходом второгоблока памяти микропрограмм, выходоми входом второго блока буферных регистров, причем блок ускореннойобработки прерываний включает коммутатор, дешифратор микроопераций,регистр признаков, группу системныхрегистров, мультиплексор, узел сверх"оперативной памяти, узел микропрограммного управления, сумматор и узелпостоянной памяти, адресный вход,первый и второй выходы которого подключены соответственно к адресномувыходу и адресному входу узла микропрограммного управления и входу дешифратора микрооперацнй, первый, второй, третий и четвертые выходы которого соединены соответственно с синхровходом регистра признаков, входомкода операции сумматора, управляющимвходом узла сверхоперативной памятии синхровходом системных регистровгруппы, входы данных, первые н вторыевыходы которых подключены соответственно к выходу третьего блока буферныхрегистров, первому входу мультиплексора и входу третьего блока буферныхрегистров, управляющий вход, первыйи второй входы данных и выход коммутатора соединены соответственно спервым выходом дешифратора микроопераций, выходом состояния устройствамикропрограммного управления, выходомузла сверхоперативной памяти и входом данных регистра признаков, выход которого подключен к второмувходу мультиплексора, вход данныхи выход сумматора соединены соответственно с выходом узла сверхоперативной памяти и входом признаков узламикропрограммного управления, а входразрешения считывания, вход команд,вход признаков, выход прерыванияи выход признаков узла микропрограммного управления подключены соответственно к выходу текущего прерыванияблока приоритетных прерываний, выходу мультиплексора, вторым выходамсистемных регистров группы, входуопроса прерывания блока приоритетныхпрерываний и входу переключения задач устройства микропрограммного управления,1120340 2, Система по п,1, о т л и ч а ющ а я с я тем, что, узел микропрограммного управления содержит триггер, регистр команд, группу триггеров, мультиплексор адреса, регистр адреса микрокоманды, регистр признаков и выходной регистр адреса, вход данных, синхровход и выход которого соединены соответственно с выходом регистра адреса микрокоманды, входом разрешения считывания узла и адресным выходом узла, первый, второй, третий, четвертый и пятый входы данных, управляющий вход, первый и второй выходы мультиплексора адреса подключены соответственно к адресному входу узла, выходу регистра команд, входу команд узла, выходу триггера, выходам триггеров группы, выходу и входу регистра адреса микрокоманды и выходу прерывания узла, вход регистра команд соединен с входом команд узла, вход и выход триггера подключены соответственно к входу признаков узла и входам данных триггеров группы, синхровходы которых соединены с входом признаков узла, а вход данных, синхровход и выход регистра признаков подключены соответственно к выходам триггеров группы, входу признаков узла и выходу признака узла.3, Система по п.1, о т л и ч аю щ а я с я тем, что устройство Микропрограммного управления содержит четыре дешифратора микро" операций, два блока триггеров, три мультиплексора, выходной дешифратор, узел микропрограммного управления и коммутатор, вход данных и первый выход которого соединены:соответственно с выходом признака узла микропрограммного управления и выходом состояния устройства, вход данных и синхровход первого блока триггеров подключены соответственно к входу запроса данных уст 1Изобретение относится к вычислительной технике и касается архитектуры вычислительных систем, предназройства и первому выходу первогодешифратора микроопераций, входи второй выход которого соединенысоответственно с входом кода операции устройства и синхровходом второго блока триггеров, вход данныхкоторого подключен к второму выходукоммутатора, входы второго и третьего дешифраторов микрооперацийсоединены с входом кода операцииустройства, первый, второй и третийвходы данных, управляющий вход и выход.первого мультиплексора подключены соответственно к входу переключения задач устройства, выходу первого блока триггеров, выходу второгоблока триггеров, первому выходу четвертого дешифратора микрооперацийи входу признаков узла микропрограммного управления, вход разрешениясчитывания и адресный вход которогосоединены с входом кода операцииустройства, вход команд, выход прерывания и адресный выход узла микропрограммного управления подключенысоответственно к входу команд, выходу прерывания и адресному выходуустройства, вход и второй выход четвертого дешифратора микрооперацийсоединены соответственно с входомкода операции устройства и управляющим входом коммутатора, входыданных второго и третьего мультиплексоров подключены к входу командустройства, а управляющие входы второго и третьего мультиплексоровсоединены с выходами соответственно второго и третьего дешифраторовмикроопераций, а первый и второйвходы, первый и второй выходы дешифратора подключены соответственнок выходам второго и третьего муюьтиплексоров, выходу управления записьюв регистры и выходу управления записью команд устройства, а выходвторого блока триггеров подключенк выходу признаков запросов устройства. 2наченных для решения задач управления в реальном масштабе времени и различного рода вычислительных задач.данных блока системных регистрови первому выходу второго блока памяти микропрограмм а второй выход данных блока системных регист",ров соединен с входом второго блокабуферных регистров 3.Нецостатками известной системыявляются большая величина времениреакции на прерывание и малое быстродействие при обработке скалярныхвеличин, низкйй коэффициент использования оборудования,Цель изобретения - повышение производительности управляющей векторной вычислительной системы.Укаэанная цель достигается тем, что управляющая векторная вычислительная система, содержащая векторное арифметико"логическое устройство, три блока буферных регистров, блок дешифраторов, два блока памяти микропрограмм, блок системных регистров, блок приоритетных прерываний, блок приемопередатчиков, оперативное запоминающее устройство и устройство микропрограммного управления, при этом вход и выход блока дешифраторов соединены соответственно с первым выходом первого блока памяти микропрограмм и входом кода операции векторного арифметикологического устройства, вход данных и выход данных которого подключены соответственно к выходу и входу первого блока буферных регистров, вход данных оперативного запоминающего устройства соединен с входами первого, второго и третьего блоков буферных регистров и входом блока приемопередатчиков, выход которого подключен к адресным входам блока системных регистров и оперативного запоминающего устройства, выходом первого, второго и третьего блоков буферных регистров и входу внешних прерываний блока приоритетных прерываний, выход внешнего прерывания и вход текущего прерывания блока йриоритетных прерываний соединены соответственно с входом блока приемопередатчика и выходом прерывания устройства микропрограммного управления, адресный выход, выход управления записью в регистры, выход управления записью команд, вход команды и вход кода операции которого подключены соответственно к адресному входу второго блока памяти 3 11203404Известны вычислительные системы,содержащие векторные процессорыи использующие конвейерный принципобработки данных 7 и Г 2 3.Недостатком одной из них 1яв 5ляется большая величина времени реакции на прерывание относительно времени выполнения команды. При работевторой системы 1.2 3 также имеет место снижение быстродействия ввиду невозможности совмещения процессоввыборки информации из памяти и ееобработки.Наиболее близкой к предлагаемойсистеме является малая управляющаявычислительная система, содержащаявекторное арифметико-логическоеустройство, три блока буферных регистров, блок дешифраторов, два блокапамяти микропрограмм, блок системных регистров, блок приоритетныхпрерываний, блок приемопередатчиков,оперативное запоминающее устройство,и устройство микропрограммного управления, при этом вход и выход блока дешифраторов соединены соответственно с первым выходом первого блокапамяти микропрограмм:и входом кодаоперации векторного арифметикологического устройства, вход данныхЗОи выход данных которого подключенысоответственно к выходу и входу первого блока буферных регистров, выход данных оперативного запоминающего устройства соединен с входамипервого, второго и третьего блоковбуферных регистров и входом блокаприемопередатчиков, выход которогоподключен к адресным входам блокасистемных регистров и оперативногозапоминающего устройства, выходомпервого, второго и третьего блоковбуферных регистров и входу внешнихпрерываний блока приоритетных прерываний, выход внешнего прерыванияи вход текущего прерывания блокаприоритетных прерываний соединенысоответственно с входом блока приемопередатчиков и выходом прерыванияустройства микропрограммного управления, адресный выход, выход управле-ония записью в регистры, выход управления записью команд, вход. командыи вход кода операции которого подключены соответственно к адресномувходу второго блока памяти микропрограмму входу данных блока системных регистров, входу второго блокабуферных регистров, первому выходу1120 340 5микропрограмм, входу данных блокасистемных регистров, входу второгоблока буферных регистров, первомувыходу данных блока системных регистров и первому выходу второго блокапамяти микропрограмм, а второй выходданных блока системных регистровсоединен с входом второго блока бу,ферных регистров, дополнительно содержит блок ускоренной обработки 10прерываний, скалярное арифметикологическое устройство и блок формирования векторных команд, включающий регистр признаков запросов,четыре дешифратора микроопераций,счетчик длины вектора, приоритетныйшифратор, группу элементов И, регистр признаков операции, группу триггеров готовности, мультиплексор,счетчик циклов группу элементов задержки, регистр команд и узел микропрограммного управления, вход разрешения считывания, адресный вход,вход команд, вход признаков, выходпрерывания, адресный выход и выходпризнака которого подключены соответственно к выходам элементов задержки группы, вторрму выходу первоГоблока памяти микропрограмм, выходурегистра команд, выходу мультиплексора, первому входу приоритетногошифратора, адресному входу первогоблока памяти микропрограмм и синхровходу регистра признаков операции,вход данных, синхровход и выход регистра признаков запросов соединены35соответственно с выходом признаковзапросов устройства микропрограммного управления, выходом первого дешифратора микроопераций и первымивходами элементов И группы, вторые40входы и выходы которых подключенысоответственно к выходу первогодешифратора микроопераций и входамтриггеров готовности группы, выходы45которых соеденены с входами элементовзадержки группы, вход регистра командподключен к выходу второго блока буферных регистров, входы первого,второго, третьего и четвертого дешифраторов микроопераций соединены50с вторым выходом первого блока памяти микропрограмм, вход и выход счетчика длины вектора подключены соот"ветственно к выходу первого блокабуферных регистров и первому входуразрешения регистра признаков операции, вход данных, второй вход разрешения и выход которого соединены соответственно с выходом признаковоперации векторного арифметико-логического устройства, выходом первогодешифратора микроопераций и входомпервого блока буферных регистров,выход второго дешифратора микроопераций подключен к входу счетчикациклов, второй и третий входы и выход приоритетного шифратора соединены соответственно с выходом счетчика длины вектора, выходом третьегодешифратора микроопераций и входомзапроса данных устройства микропрограммного управления, а управляющийвход, первый, второй, и третийвходы данных мультиплексора подключены соответственно к выходу четвертого дешифратора микроопераций, выходу признаков векторного арифметико-логического устройства, выходурегистра признаков операции и выходусчетчика циклов, вход микроопераций,вход данных и выход скалярного арифметико-логического устройства соединены соответственно с вторымвыходом второго блока памяти микропрограмм, выходом и входом второгоблока буферных регистров, причемблок ускоренной обработки прерываний включает коммутатор, дешифратормикроопераций, регистр признаков,группу системных регистров, мультиплексор, узел сверхоперативнойпамяти, узел микропрограммного управления, сумматор и узел постояннойпамяти, адресный вход, первый и второй выходы которого подключены соответственно к адресному выходу и адресному входу узла микропрограммного управления и входу дешифраторамикроопераций, первый,второй 1 третийи четвертый выходы которого соединенысоответственно с синхровходом регистра признаков, входом кода операциисумматора, управляющим входом узласверхоперативной памяти и синхровходом системных регистров группы,входы данных, первые и вторые выходы которых подключены соответственно к выходу третьего блока буферных регистров, первому входу мультиплексора и входу третьего блокабуферных регистров, управляющийвход, первый и второй входы данныхи выход коммутатора соединены соответственно с первым выходом дешифратора микроопераций, выходом состояния устройства микропрограммногоуправления, выходом узла сверхопера 11203 тивной памяти и входом данных регист-, ра признаков, выход которого подклю" чен к второму входу мультиплексора, вход Данных и выход сумматора соединены соответственно с выходом узла сверхоперативной памяти и входом признаков узла микропрограммного уп" равления, а вход разрешения считыва" ния, вход команд, вход признаков, выход прерывания и выход признаков 10 узла микропрограммного управления подключены соответственно к выходу текущего прерывания блока приоритетных прерываний, выходу мультиплексора, вторым выходам системных регист ров группы, входу опроса прерывания блока приоритетных прерываний и входу переключения задач устройства микропрограммного управления.При этом узел микропрограммного 20 управления содержит триггер, регистр команд, группу триггеров, мультиплексор адреса, регистр адреса микрокоманды, регистр признаков и выходной регистр адреса, вход данных, синхровход и выход которого соединены соответственно с выходом регистра адреса микрокоманды, входом регистра считывания узла и адресным выходом узла, первый, второй, третий, четвертый и пятый входы данных, управляющий вход, первый и второй выходы мультиплексора адреса подключены соответственно к адресному входу узла, выходу регистра команд, входу команд узла, выходу триггера, выходам триггеров группы, выходу и входу регистра адреса микрокоманды и выходу прерывания узла, вход регистра команд соединен с входом команд40 узла, вход и выход триггера подключены соответственно к входу признаков узла и входам данных триггеров группы, синхровходы которых соединены с входом признаков узла, а вход дан 45 ных, синхровход и выход регистра признаков подключены соответственно к выходам триггеров группы, входу признаков узла и выходу признака узла.Причем устройство микропрограммно-,50 го управления содержит четыре дешифратора микроопераций, два блока триггеров, три мультиплексора, выходйой дешифратор, узел микропрограммного управления и коммутатор, вход данных и первый выход которого соединены соответственно с выходом признака узла микропрограммного уп 4 р 8равления и выходом состояния устройства, вход данных и синхровход первого блока триггеров подключены соответственно к входу запроса данных устройства и первому выходу первого дешифратора микроопераций, вход и второй выход которого соединены соответственно с входом кода операции устройства и синхровходом второго блока триггеров, вход данных которого подключен к второму выходу коммутатора, входы второго и третьего дешифраторов микроопераций соединены с входом кода операции устройства, первый, второй, и третий входы данных, управляющий вход и выход первого мультиплексора подключены соответственно к входу переключения задач устройства, выходу первого блока триггеров, выходу второго блока триггеров, первому выходу четвертого дешифратора микро- операций и входу признаков узла микропрограммного управления, вход разрешения считывания и адресный вход которого соединены с входом кода операции устройства, вход команд, выход прерывания и адресный выход узла микропрограммного управления подключены соответственно к входу команд, выходу прерывания и адресному выходу устройства, вход и второй выход четвертого дешифратора микро- операций соединены соответственно с входом кода операции устройства и управляющим входом коммутатора, входы данных второго и третьего мультиплексоров подключены к входу команд устройства, а управляющие входы второго и третьего мультиплексоров соединены с выходами соответственно второго и третьего дешифраторов микрооперации, а первый и второй входы, первый и второй выходы дешифратора подключены соответственно к выходам второго и третьего мультиплексоров, выходу управления записью в регистры и выходу управления записью команд устройства, а выход второго блока триггеров подключен к выходу признаков запросов устройства.На фиг. 1 изображена струкгурная схема управляющей векторной вычислительной системы, на фиг,2 - схема блока формирования векторных команд; на фиг.З - схема узла микропрограммного управления, на фиг.4 - схема устройства микропрограммного управ 1120340 1030 Узел 30 микропрограммного управления (Фиг.З) содержит триггер 39, регистр 40 команд, группу 4 1 триггеров, мультиплексор 42 адреса, регистр 4350 адреса микрокоманде, .регистр 44 признаков, выходной регистр 45 адреса, Входы блока 30 обозначены через 46-49, а его выходы - 50-52.Устройство 6 микропрограммного управления (фиг.4) содержит первый дешифратор 53 микроопераций, первый блок 54 триггеров, второй блок 55 ления, на фиг,5 - схема блока ускоренной обработки прерываний, наФиг,6 - форматы команд; на фиг.7временная диаграмма обслуживаниязапросов, 5Управляющая векторная вычислительная система (фиг,1) содержит векторное арифметико-логическое устройство(ВАЛУ) 1, первый блок 2 буферныхрегистров, блок 3 Формирования векторных команд, блок 4 дешифраторов,первый блок 5 памяти микропрограмм,устройство 6 микропрограммного управления, блок 7 системных регистров,второй блок 8 памяти микропрограмм, 15скалярное арифметико-логическоеустройство (САЛУ) 9, второй блок 10буферных регистров, блок 11 ускоренной обработки прерываний, третийблок 12 буферных регистров, блок13 приоритетного прерывания, блок14 приемопередатчиков, оперативноезапоминающее устройство (ОЗУ) 15,Блоки 1-5 образуют векторный процессор (ВП), блоки 6-10 - скалярный процессор (СП). ВП и СП вместевзятые составляют центральный процессор (ЦП), блоки 11-13 образуютуправляющий процессор (УП) .Блок 3 Формирования векторныхкоманд (фиг.2) содержит регистр16 признаков запроса, первый дешифратор 17 микроопераций, счетчик 18длины вектора, приоритетный шифратор 19, группу 20 элементов И, регистр 21 признаков операций, второйдешифратор 22 микроопераций, тре-тий дешифратор 23 микроопераций,группу 24 триггеров готовности, муль":типлексор 25, счетчик 26 циклов, 40группу 27 элементов задержки, регистр 28 команд, четвертый дешифратор29 микрооперацийузел 30 микропрограммного управления. Входы блока 3обозначены через 31-35, а его выходы-. 4536-38,триггеров, второй дешифратор 56 мнкоопераций, третий дешифратор 57 микроопераций. первый мультиплексор 58, четвертый дешифратор 59 микро- операций, второй мультиплексор 60, третий мультиплексор 6 1, узел 62 микропрограммного управления, выходной дешифратор 63, коммутатор 64. Входы устройства управления 6 обозначены 65-68, а его выходы - 69-74.Блок 11 ускоренной обработки прерываний (фиг.5) содержит коммутатор 75, дешифратор 76 микроопераций, регистр 77 признаков, группу 78 системных регистров, мультиплексор 79, узел 80 сверхоперативной памяти, узел 81 микропрограммного управления, сумматор 82, узел 83 постоянной памяти. Входы блока 11 обозначены через 84-86, а его выходы - 87-89,Блок 3 Формирования векторных команд (Фиг.2) предназначен для управления ВАЛУ 1 с помощью микропрограмм, которые хранятся в первом блоке 5 памяти микропрограмм. На вход 3 1 поступают параметры векторной команды, которые заносятся в регистр 28 команд. Микрокоманды из первого блока 5 памяти микропрограмм поступают на вход 32 и далее на дешифраторы 17, 22, 23 и 29 микро- операций. На вход 33 подаются признаки выполнения запросов, а на вход 34 - признаки из ВАЛУ 1, причем последние заносятся в регистр 21 признаков операций и через мультиплексор 25 поступают на узел 30 микропрограммного управления, Данные из первого блока 2 буферных ре-, гистров через вход 35 блока 3 формирования векторных команд поступают на счетчик 18 длины вектора. С узла 30 микропрограммного управления через выход 36 адреса поступают в первый блок 5 памяти микропрограммы. С выхода 37 блока 3 формирования векторных команд информация поступает в первый блок 2 буферных регистров, а с выхода 38 запросы данных передаются в устройство 6 микропрограммного управления.Узел 30 (62) микропрограммного управления (фиг.З) определяет последовательность управляющих сигналов (микрокоманд) и предназначен для выполнения двух Функций: определение адреса очередной микрокоманды под управлением кода микрооперации и1120340 11прием, хранение и выдача информации, определяющей некоторые внешние условия, Обычно такими внешними условия" ми являются сигналы переноса, Ячейка памяти, в которой помещается информация о признаке, также определяется в соответствии с кодом соответствующей микрооперации, поступающей из первого блока 5 памяти микро- команд. Особенностью узла 30 микро программного управления является наличие двух систем микроопераций, коды которых поступают по двум пространственно разделенным магистралям. Набор микроопераций состав ляет две системы: система микроопераций определения очередного адреса микрокоманды и система микроопераций, обеспечивающая прием, хранение и выдачу инФормации о признаках. Со держимое первой системы микроопераций определяется адресным входом 47, второй - состоянием входа 49 признаков. 25Узел 30 микропрограммного управления (фиг.3) работает следующим образом. Через некоторое время послеприхода импульса синхронизациина адресном входе 47 устанавливается код микрооперации перехода,поступающий из первого блока 5 памятимикропрограмм. Далее в мультиплексоре 42 адреса микрокоманд происходит З 5выборка кода необходимого адреса,Указанный код загружается в регистр43 адреса микрокоманд. Если в результате работы мультиплексора 42 ад.реса микрокоманд установлен адрес, 40являющийся элементом матрицы первогоблока 5 памяти микропрограмм, находящимся на пересечении нулевой строкии 15-й колонки, то на выход 50 прерывания выдается стробирующий импульс"5разрешения прерывания. Аналогичнопроисходит выполнение микрооперацийпо записи информации о признакахв триггер 39 и группу 41 триггеров.Ийформация записывается в триггер39, далее в соответствии с кодоммикроопераций на входе группы 4 1триггеров происходит загрузка содержимого триггера 39 в группу 41 триггеров. Выдача содержимого группы 5541 триггеров определяется кодом операции, устанавливаемым на входерегистра 44 признаков.,12Устройство 6 микропррграммного управления фиг.4) предназначено для управления САЛУ 9.при выполнении скалярных команд, а также при работе с дескрипторами при выполнении векторных команд для Формирования инструкций для ВАЛУ 1 ускоренной обработки прерываний. На вход 65 переключения задач устройства 6 микропрограммного управления поступает информация от блока 11 ускоренной обработки прерываний, на вход 66 команд - из блока 7 системных регистров, на вход 68 кода операции микрокоманды - из второго блока 8 памяти микропрограмм, Запрос данных от блока 3 формирования векторных команд поступает на вход 67 запроса данных, выходы 69 и 71 прерываний и адресов соединены соответственно с блоком 13 приоритетного прерывания и блоком 11 ускоренной обработки прерываний. Сигнал о выполнении запроса поступает с выхода 72 на блок 3 формирования векторных команд, адрес с адресного выхода 70 поступает на второй блок 8 памяти микропрограмм, а выходы 73 и 74 соединены соответственно с блоком 7 системных регистров и вторым блоком 10 буферных регистров.Блок 11 ускоренной обработки прерываний (Фиг.5) предназначен для обработки прерываний без приостановки выполнения прикладной программы и для диспетчирования прикладных программ. Вход 84 соединен с блоком 13 приоритетного прерывания, вход 85 - с устройством 6 микропрограммного управления, вход 86 - с выходом третьего блока 12 буферных регистров. Выход 87 блока 11 ускоренной обработки прерываний соединен с блоком 13 приоритетного прерывания, выход 88 - с устройством 6 микропрограммного управления, информация с выхода 89 поступает на третий блок 12 буферных регистров. Микропрограммы обработки прерываний хранятся в узле 83 постоянной памяти,САЛУ 9 предназначено для обработки скалярных операндов и вычисления адресов. Блок 13 приоритетного прерывания предназначен для приема сигналов запроса прерываний от блока 11 уско. ренной обработки прерываний и блока 14 приемопередатчиков и выработки25 при определенных условиях сигнала о необходимости перехода к подпрограмме обработки прерывания и выполняет асинхронный прием и хранение сигналов запроса на прерывание, выдачу 5 кода уровня принятого сигнала запроса на прерывание, прием и хранение кода уровня обрабатываемого прерывания и выдачу сигнала о наличии запроса на прерывание более высокого прио ритета по сравнению с обрабатываемым.ОЗУ 15 предназначено для хранения программ, промежуточных результатов и констант.Основная единица адресации - слово 15 (шестнадцать разрядов)Возможна выборка по одному адресу двойного слова, расположенного в смежных ячейках памяти.Адресация программы и данных 20 относительная, с разделением на сегменты переменной длины (от шестидесяти четырех до шестнадцати К слов) соответствующие естественным структурным единицам программы.Абсолютные адреса начал сегментов кратны 64, при сохранении их в шестнадцатиразрядных ячейках памяти младшие шесть разрядов отбрасываются, так как они равны нулю. При формировании исполнительного адреса эти младшие разряды заполняются нулями.Исполнительный адрес (длина тридцать два разряда) данного или коман 35 ды формируется сложением б аз овог о адреса начала сегмента данных (абсолютного адреса) с относительным адресом (длиной четырнадцать разрядов) содержащимся В команде (прямая адре 40 сация) или в ячейке памяти (косвенная адресация). Одновременно относительный адрес сравнивается с длиной сегмента, и если этот адрес вьжодит за границы сегмента, то выборка/запись в память не происходит и генерируется сигнал нарушения защиты памяти,Единицей разработки и выполнения системных и прикладных программ яв 50 ляется модуль, Программа и локальные данные каждого модуля аппаратно защищены от всех остальных модулей, они делятся на задачи, подпрограммы и драйверы, Модуль состоитиз сегмента кода и основного сегмента данных, адресация команд и данныхпроизводится относительно началасегмента. Таким образом, программа и локальнье данные модуля являются перемещаемыми, Модуль может также адресовать общие данные, расположенные в нулевом сегменте (адрес начала которого равен нулю), а также (по косвенной адресации через нулевой сегмент) данные в любом другом сегменте данных.Обращение к модулю происходит по номеру модуля, представляющему собой номер входа в таблицу зацач, длиной двести пятьдесят шесть слов, расположенную в нулевом сегменте. Этатаблица содержит базовые (абсолютные) адреса всех модулей, содержащихся в ОЗУ 15, Базовым адресом модуля является абсолютный адрес основного сегмента данньж этого модуля. В начале основного сегмента данных находится блок задачи, содержащий информацию о состоянии модуля и о его связях с другими модулями. Там находится область сохранения, содержащая абсолютные адреса сегмента кода и дополнительного сегмента данных этого модуля. В ОЗУ 15 используется непосредственная, регистровая, прямая и косвенная адресация данных. Единицей обработки на уровне машинных команд может быть как элементарное данное (скаляр), так и структура данных. Тип данных объединяет две характеристики данных: тип элемента (скалярный тип) и тип структуры. Скалярный ти определяет семантику и Формат элементарного данного. Структурный тип описывает связи между элементами в рамках одной структуры. Определены скалярные (элементарные) типы: логические данные (шестнадцать разрядов слова); символьный (байт-полуслово), целое число (слово); семафор (слово) и число с плавающей точкой (два смежных слова)С каждым скалярным типом связан определенный диапазон значений. Если при обработке данных значение выходит за пределы этого диапазона, инициируется сигнал прерывания. Кроме явно определенньж типов, используется неявно определенные, выход за пределы допустимого диапазона которых аппаратурой не контролируется. К ним относятся: относительный адрес (слово), абсолютный адрес (слово), индекс (слово) и дескриптор (четыре смежных слова).Последний содержит структуры дан

Смотреть

Заявка

3512605, 10.11.1982

ОРДЕНА ЛЕНИНА ИНСТИТУТ ПРОБЛЕМ УПРАВЛЕНИЯ

ПРАНГИШВИЛИ ИВЕРИ ВАРЛАМОВИЧ, БАБИЧЕВА ЕЛЕНА ВЛАДИМИРОВНА, МАЛЮГИН ВЛАДИМИР ДМИТРИЕВИЧ, СОКОЛОВ ВЛАДИМИР ВЛАДИМИРОВИЧ, ДЕНИСЕНКО СЕРГЕЙ ВАСИЛЬЕВИЧ, ВЕЙЦ АЛЕКСАНДР ВЕНИАМИНОВИЧ, ИВАНОВ АЛЕКСАНДР ИВАНОВИЧ, ШКАТУЛЛА АНАТОЛИЙ ИВАНОВИЧ, ЗВЕРКОВ БОРИС СЕМЕНОВИЧ, ЗРЕЛОВА ТАТЬЯНА ИВАНОВНА, ЛЕВЕРТОВ ЯКОВ АНАТОЛЬЕВИЧ, ТОДУА ДЖОНДО АЛЬПЕЗОВИЧ, ГОГОЛАДЗЕ ОМАР ВАСИЛЬЕВИЧ, ВЕПХВАДЗЕ АНЗОР НИКОЛАЕВИЧ, ГУДУШАУРИ ГМАИ ШАЛВОВИЧ, ГОЛУБЕВ АЛЕКСАНДР ПАВЛОВИЧ, БЕРЕЗЕНКО АЛЕКСАНДР ИВАНОВИЧ, КОРЯГИН ЛЕВ НИКОЛАЕВИЧ

МПК / Метки

МПК: G06F 15/177

Метки: векторная, вычислительная, управляющая

Опубликовано: 23.10.1984

Код ссылки

<a href="https://patents.su/18-1120340-upravlyayushhaya-vektornaya-vychislitelnaya-sistema.html" target="_blank" rel="follow" title="База патентов СССР">Управляющая векторная вычислительная система</a>

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