Управляющая векторная вычислительная система

 

1. УПРАВЛЯЮЩАЯ ВЕКТОРНАЯ ВЫЧИСЛИТЕЛЬНАЯ СИСТЕМА, содержащая векторное арифметико-логическое устройство , три блока буферных регистров , блок дешифраторов, два блока памяти микропрограмм, блок системных регистров, блок приоритетных прерываний , блок приемопередатчиков, оперативное запоминающее устройство и устройство микропрограммного управления , при этом вход и выход блока дешифраторов соединены соответственно с первым выходом первого блока памяти микропрограмм и входом кода операции векторного арифметико-логического устройства, вход данных и выход данных которого подключены соответственно к выходу и входу пер- . вого блока буферных регистров, вход данных оперативного запоминающего устройства соединен с входами первого , второго и третьего блоков буферных регистров и входом блока приемопередатчиков , выход которого подключен к адресным входам блока системных регистров и оперативного запоминающего устройства, выходам первого, второго и третьего блоков буферньЬс регистров и входу внешних прерываний блока приоритетных прерываний, выход внешнего прерывания и вход текущего прерывания блока приоритетных прерываний соединены соответственно с входом блока приемопередатчиков и выходом прерывания устройства микропрограммного управления, | адресный выход, выход управления (О записью в регистры, выход управления записью команд, вход команды и вход кода операции которого подключены соответственно к адресному входу второго блока памяти микропрограмм, входу данных блока системных регистров , входу второго блока буферных регистров , первому выходу данных илока системных регистров и первому выходу второго блока памяти микропрограмм , а второй выход данных блока системных регистров соединен с входом второго блока буферных регистров, отличающаяся тем, что, с целью повышения производительности, она содержит блок ускоренной обработки прерываний, скалярное арифметико-логическое устройство и блок формирования векторных команд, включающий регистр признаков запросов, четыре дешифратора микроопераций, счетчик длины вектора, приоритетный шифратор, группу элементов И, регистр признаков операции, группу триггеров

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

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

РЕСПУБЛИН (!9) .Э ) (11) С 06 Г 15/20

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

К ABTOPCHOMV СВИДЕТЕЛЬСТВУ

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3512605/24-24 (22) 10.11.82 (46) 23.10.84. Бюл. -39 (72) И.В.Прангишвили, Е.В.Бабичева, В.Д.Малюгин, В.В.Соколов, С.B.Äåíèñåíко, А.В.Вейц, А.И.Иванов, А.И.Шкатулла, Б.С.Зверков, Т.И.Зрелова, Я.А.Левертов, Д.А.Тодуа, О.В.Гоголадзе, А.Н.Вепхвадзе, Г.Ш.Гудушаури, А.П.Голубев, A.È.Áåðåçåíêî и Л.Н,Корягин (71) Ордена Ленина институт проблем управления (53) 681.325(088.8) (56) 1. Вычислительная техника.

Экспресс-информация, 1978, 28, с.3-8.

2 ° Вычислительная техника" Экспрессинформация, 1979, 1132, с.22,23.

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

-525099, кл. G 06 F 15/20, 1976 (прототип) . (54)(57) 1. УПРАВЛЯЮЩАЯ ВЕКТОРНАЯ

ВЫЧИСЛИТЕЛЬНАЯ СИСТЕМА, содержащая векторное арифметико-логическое устройство, три блока буферных регистров, блок дешифраторов, два блока памяти микропрограмм, блок системных регистров, блок приоритетных прерываний, блок приемопередатчиков, оперативное запоминающее устройство и устройство микропрограммного управления, при этом вход и выход блока дешифраторов соединены соответственно с первым выходом первого блока памяти микропрограмм и входом кода операции векторного арифметико-логического устройства, вход данных и выход данных которого подключены соответственно к выходу и входу первого блока буферных регистров, вход данных оперативного запоминающего устройства соединен с входами первого, второго и третьего блоков буферных регистров и входом блока приемопередатчиков, выход которого подключен к адресным входам блока системных регистров и оперативного запоминающего устройства, выходам первого, второго и третьего блоков буферных регистров и входу внешних прерываний блока приоритетных прерываний, выход внешнего прерывания и вход текущего прерывания блока приоритетных прерываний соединены соответственно с входом блока приемопередатчиков и выходом прерывания устройства микропрограммного управления, е адресный выход, выход управления записью в регистры, выход управления записью команд, вход команды и вход кода операции которого подключены соответственно к адресному вхо- р ду второго блока памяти микропрограмм, Imari входу данных блока системных регистров, вхбду второго блока буферных регистров, первому выходу данных 5лока системных регистров и первому выходу второго блока памяти микропрограмм, а второй выход данных блока системных регистров соединен с входом второго блока буферных регистров. отличающаяся тем, что, с целью повышения производительности, она содержит блок ускоренной обработки прерываний, скалярное арифме- ф тико-логическое устройство и блок формирования векторных команд, включающий регистр признаков запросов, четыре дешифратора микроопераций, счетчик длины вектора, приоритетный шифратор, группу элементов И, регистр признаков операции, группу триггеров t120340 готовности, мультиплексор, счетчик циклов, группу элементов задержки регистр команд и узел микропрограммного удавления, вход разрешения считывания, адресный вход, вход команд, вход признаков, выход прерывания, адресный выход и выход признака которого подключены соответственно к выходам элементов задержки группы, второму выходу первого блока памяти микропрограмм, выходу регистра команд, выходу мультиплексора, первому входу приоритетного шифратора, адресному входу первого блока памяти микропрограмм и синхровходу регистра признаков операции, вход данных, синхровход и выход регистра признаков запросов соединены соответственно с выходом признаков запросов устройства микропрограммного управления, выходом первого дешифратора микроопераций и первыми входами элементов И группы, вторые входы и выходы которых подключены соответственно к выходу первого дешифратора микроопераций и входам триггеров готовности группы, выходы которых соединены с входами элементов задержки группы, вход регистра команд подключен к выходу второго блока бу" ферных регистров, входы первого, второго, третьего и четвертого дешифраторов микроопераций соединены с вторым выходом первого блока памяти микропрограмм, вход и выход счетчика длины вектора подключены соответственно к выходу первого блока буферных регистров и первому входу разреше.ния регистра признаков операции, вход данных, второй вход разрешения и выход которого соединены соответственно с выходом признаков операции векторного арифметико-логического устройства, выходом первого дешифра тора микроопераций и входом первого блока буферных регистров, выход второго дешифратора микроопераций подключен к входу счетчика циклов, второй и третий входы и выход приоритетного шифратора соединены соответственно с выходом счетчика длины вектора, выходом третьего дешифратора микроопераций и входом запроса данных устройства микропрограммного управления, а управляющий вход, первый, второй и третий входы данных мультиплексора подключены соответственно к выходу четвертого дешифратора микроопераций, выходу признаков, векторного арифметико-логического устройства, выходу регистра признаков операции и выходу счетчика циклов, вход иикроопераций, вход данных и выход скалярного арифметико-логического устройства соединены соответственно с вторым выходом второго блока памяти микропрограмм, выходом и входом второго блока буферных ре-. гистров, причем блок ускоренной обработки прерываний включает коммутатор, дешифратор микроопераций, регистр признаков, группу системных регистров, мультиплексор, узел сверхоперативной гамяти, узел микропрограммного управления, сумматор и узел постоянной памяти, адресный вход, первый и второй выходы которого подключены соответственно к адресному выходу и адресному входу узла микропрограммного управления и входу дешифратора микрооперацнй, первый, второй, третий и четвертые выходы которого соединены соответственно с синхровходом регистра признаков, входом кода операции сумматора, управляющим входом узла сверхоперативной памяти и синхровходом системных регистров группы, входы данных, первые н вторые выходы которых подключены соответственно к выходу третьего блока буферных регистров, первому входу мультиплексоря и входу третьего блока буферных регистров, управляющий вход, первый и второй входы данных и выход коммутатора соединены соответственно с первым выходом дешифратора микроопераций, выходом состояния устройства микропрограммного управления, выходом узла сверхоперативной памяти и входом данных регистра признаков, выход которого подключен к второму входу мультиплексора, вход данных и выход сумматора соединены соответственно с выходом узла сверхоперативной памяти и входом признаков узла микропрограммного управления, а вход разрешения считывания, вход команд, вход признаков, выход прерывания и выход признаков узла микропрограммного управления подключены соответственно к выходу текущего прерывания блока приоритетных прерываний, выходу мультиплексора, вторым выходам системных регистров группы, входу опроса прерывания блока приоритетных прерываний и входу переключения задач устройства микропрограммного управления.

1120340

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

3. Система по п.1, о т л и ч аю щ а я с я тем, что устройство

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

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

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

Нецостатками известной системы являются большая величина времени реакции на прерывание и малое быстродействие при обработке скалярных величин, низкйй коэффициент использования оборудования, Цель изобретения — повышение производительности управляющей векторной вычислительной системы.

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

3 11?0340 4

Известны вычислительные системы, содержащие векторные процессоры и использующие конвейерный принцип обработки данных (7) и n ), Недостатком одной из них (1 ) яв5 ляется большая величина времени реакции на прерывание относительно времени выполнения команды. При работе второй системы (2.1 также имеет место снижение быстродействия ввиду невозможности совмещения процессов выборки информации из памяти и ее обработки.

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

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

1120

340

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

35 соответственно с выходом признаков запросов устройства микропрограммного управления, выходом первого дешифратора микроопераций и первыми входами элементов И группы, вторые

40 входы и выходы которых подключены соответственно к выходу первого дешифратора микроопераций и входам триггеров готовности группы, выходы

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

50 с вторым выходом первого блока памяти микропрограмм, вход и выход счетчика длины вектора подключены соответственно к выходу первого блока буферных регистров и первому входу разрешения регистра: признаков операции, вход данных, второй вход разрешения и выход которого соединены соответственно с выходом признаков операции векторного арифметико-логического устройства, выходом первого дешифратора микроопераций и входом первого блока буферных регистров, выход второго дешифратора микроопераций подключен к входу счетчика циклов, второй и третий входы и выход приоритетного шифратора соединены соответственно с выходом счетчика длины вектора, выходом третьего дешифратора микроопераций и входом запроса данных устройства микропрограммного управления, а управляющий вход, первый, второй, и третий входы данных мультиплексора подключены соответственно к выходу четвертого дешифратора микроопераций, выходу признаков векторного арифметико-логического устройства, выходу регистра признаков операции и выходу счетчика циклов, вход микроопераций, вход данных и выход скалярного арифметико-логического устройства соединены соответственно с вторым выходом второго блока памяти микропрограмм, выходом и входом второго блока буферных регистров, причем блок ускоренной обработки прерываний включает коммутатор, дешифратор микроопераций, регистр признаков, группу системных регистров, мультиплексор, узел сверхоперативной памяти, узел микропрограммного управления, сумматор и узел постоянной памяти, адресный вход, первый и второй выходы которого подключены соответственно к адресному выходу и адресному входу узла микропрограммного управления и входу дешифратора микроопераций, первый,второй1 третий и четвертый выходы которого соединены соответственно с синхровходом регистра признаков, входом кода операции сумматора, управляющим входом узла сверхоперативной памяти и синхровходом системных регистров группы, входы данных, первые и вторые выходы которых подключены соответственно к выходу третьего блока буферных регистров, первому входу мультиплексора и входу третьего блока буферных регистров, управляющий вход, первый и второй входы данных и выход коммутатора соединены соответственно с первым выходом дешифратора микроопераций, выходом состояния устройства микропрограммного управления, выходом узла сверхопера.7 11203 тивной памяти и входом данных регист-, ра признаков, выход которого подключен к второму входу мультиплексора, вход Данных и выход сумматора соединены соответственно с выходом узла сверхоперативной памяти и входом признаков узла микропрограммного уп" равления, а вход разрешения считыва" ния, вход команд, вход признаков, выход прерывания и выход признаков 10 узла микропрограммного управления подключены соответственно к выходу текущего прерывания блока приоритетных прерываний, выходу мультиплексора, вторым выходам системных регист- 1S ров группы, входу опроса прерывания блока приоритетных прерываний и входу переключения задач устройства микропрограммного управления.

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

40 узла, вход и выход триггера подключены соответственно к входу признаков узла и входам данных триггеров группы, синхровходы которых соединены с входом признаков узла, а вход дан45 ных, синхровход и выход регистра признаков подключены соответственно к выходам триггеров группы, входу признаков узла и выходу признака узла.

Причем устройство микропрограммно-, 50 го управления содержит четыре дешифратора микроопераций, два блока триггеров, три мультиплексора, выходйой дешифратор, узел микропрограммного управления и коммутатор, вход данных и первый выход которого соединены соответственно с выходом признака узла микропрограммного уп4g 8 равления и выходом состояния устройства, вход данных и синхровход первого блока триггеров подключены соответственно к входу запроса данных устройства и первому выходу первого дешифратора микроопераций, вход и второй выход которого соединены соответственно с входом кода операции устройства и синхровходом второго блока триггеров, вход данных которого подключен к второму выходу коммутатора, входы второго и третьего дешифраторов микроопераций соединены с входом кода операции устройства, первый, второй, и третий входы данных, управляющий вход и выход первого мультиплексора подключены соответственно к входу переключения задач устройства, выходу первого блока триггеров, выходу второго блока триггеров, первому выходу четвертого дешифратора микроопераций и входу признаков узла микропрограммного управления, вход разрешения считывания и адресный вход которого соединены с входом кода операции устройства, вход команд, выход прерывания и адресный выход узла микропрограммного управления подключены соответственно к входу команд, выходу прерывания и адресно 1 му выходу устройства, вход и второй выход четвертого дешифратора микроопераций соединены соответственно с входом кода операции устройства и управляющим входом коммутатора, входы данных второго и третьего мультиплексоров подключены к входу команд устройства, а управляющие входы второго и третьего мультиплексоров соединены с выходами соответственно второго и третьего дешифраторов микрооперации, а первый и второй входы, первый и второи выходы дешифратора подключены соответственно к выходам второго и третьего мультиплексоров, выходу управления записью в регистры и выходу управления записью команд устройства, а выход второго блока триггеров подключен к выходу признаков запросов устройства.

На фиг. 1 изображена струк гурная схема управляющей векторной вычислительной системы, на фиг.2 — схема блока формирования векторных команд; на фиг.З - схема узла микропрограммного управления, на фиг.4 — схема устройства микропрограммного управ1120340

Узел 30 микропрограммного управления (фиг.3) содержит триггер 39, регистр 40 команд, группу 4 1 триггеров, мультиплексор 42 адреса, регистр 43

50 адреса микрокоманде, .регистр 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 — скалярный процессор (CII). ВП и СП вместе взятые составляют центральный процессор (ЦП), блоки 11-13 образуют управляющий процессор (УП) .

Блок 3 формирования векторных команд (фиг.2) содержит регистр

16 признаков запроса, первый дешифратор 17 микроопераций, счетчик 18 длины вектора, приоритетный шифратор 19, группу 20 элементов И, регистр 21 признаков операций, второй дешифратор 22 микроопераций, тре-.-" тий дешифратор 23 микроопераций, группу 24 триггеров готовности, муль-: типлексор 25, счетчик 26 циклов, 40 группу 27 элементов задержки, регистр 28 команд, четвертый дешифратор

29 микроопераций,узел 30 микропрограммного управления. Входы блока 3 обозначены через 31-35, а его выходы-. 45

36-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) микропрограммного управления (фиг.3) определяет последовательность управляющих сигналов (микрокоманд) и предназначен для выполнения двух функций: определение адреса очередной микрокоманды под управлением кода микрооперации и

1120340

11 прием, хранение и выдача информации, определяющей некоторые внешние условия Обычно такими внешними условиями являются сигналы переноса, Ячейка памяти, в которой помещается информация о признаке, также определяется в соответствии с кодом соответствующей микрооперации, поступающей из первого блока 5 памяти микрокоманд. Особенностью узла 30 микро- 10 программного управления является наличие двух систем микроапераций, коды которых поступают по двум пространственно разделенным магистралям. Набор микраопераций состав- 15 ляет две системы: система микраапераций определения очередного адреса микрокоманды и система микроопераций, обеспечивающая прием, хранение и выдачу информации а признаках. Со- 2О держимое первой системы микроопераций определяется адресным входом

47, второй — состоянием входа 49 признаков.

Узел 30 микропрограммного управления (фиг.3) работает следующим образом.

Через некоторое время после прихода импульса синхронизации на адресном входе 47 устанавливается код микрооперации перехода, поступающий из первого блока 5 памяти микропрограмм. Далее в мультиплексоре 42 адреса микрокоманд происходит выборка кода необходимого адреса.

Указанный код загружается в регистр

43 адреса микракоманд. Если в результате работы мультиплексора 42 ад.реса микрокоманд установлен адрес, 4О являющийся элементам матрицы первого блока 5 памяти микропрограмм, находящимся на пересечении нулевой строки и 15-й колонки, то на выход 50 прерывания выдается стробирующий импульс45 разрешения прерывания. Аналогично происходит выполнение микраопераций по записи информации а признаках в триггер 39 и группу 41 триггеров.

Информация записывается в триггер

39, далее в соответствии с кодом микроопераций на входе группы 4 1 триггеров происходит загрузка содержимого триггера 39 в группу 41 триггеров. Выдача содержимого группы

41 триггеров определяется кодом операции, устанавливаемым на входе регистра 44 признаков., l2

Устройство 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 — с устройством б микрапрограммного управления, вход 86 — с выходом третьего блока 12 буферных регистров. Выход 87 блока 11 ускоренной .обработки прерываний соединен с блоком l3 приоритетного прерывания, выход 88 - с устройством 6 микропрограммного управления, информация с выхода 89 поступает на третий блок 12 буферных регистров. Микропрограммы обработки прерываний хранятся в узле 83 постоянной памяти.

САЛУ 9 предназначено для обработки скалярных операндов и вычисления адресов.

Блок 13 приоритетного прерывания предназначен для приема сигналов запроса прерываний от блока 1.1 ускоренной обработки прерываний и блока

14 приемопередатчиков и выработки

1120340 !4

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

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

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

Адресация программы и данных 20 относительная, с разделением на сегменты переменной длины (от шестидесяти четырех до шестнадцати К слов) соответствующие естественным структурным единицам программы.

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

При формировании исполнительного адреса эти младшие разряды заполняются нулями.

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

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

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

Эта таблица содержит базовые (абсолютные) адреса всех модулей, содержащихся в ОЗУ 15. Базовым адресом модуля является абсолютный адрес основного сегмента данных этого модуля. В начале основного сегмента данных находится блок задачи, содержащий информацию о состоянии модуля и о его связях с другими модулями.

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

С каждым скалярным типом связан определенный диапазон значений.

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

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

Последний содержит структуры дан1 120340

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

Определены типы данных: массив; вектор; матрица и обменник (очередь).

Структура данных состоит из набора (возможно пустого) скалярных данных одного элементарного типа. Лдресом элемента данных структурного типа 1н является адрес дескриптора, описывающего параметры структуры данных, в частности адрес первого элемента структуры данных (адрес начала структуры данных). 15

Массив — непрерывная область памяти (не превышающая одного сегмента), описываемая дескриптором массива. Дескриптор массива содержит начальный адрес массива (адрес первого 20 элемента) и число элементов (длина массива). Над массивом можно определить несколько регулярных структур данных (векторов или матриц), но все элементы этих структур должны принадлежать одному массиву. Регулярная структура данных — отношение порядка над массивом, спужит для определения порядка выборки на обработку элементов массива. Сам массив счит ает- 30 ся вектором с длиной, равной длине массива, и шагом, равным единице.

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

Матрица — двухмерная регулярная ф структура данных, последовательность векторов одинаковой длины и шага.

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

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

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

Система команд управляющей векторной вычислительной системы делится на два пересекающихся, но не перекрывающихся подмножества — система команд УП (блоки 11-13) и система команд ЦП (блоки 1-10).

Команды ввода-вывода, только для

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

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

УСРВ. Эти команды допустимы только на ПП и почти всегда сопровождаются переключением задач на ЦП.

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

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

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

Команды пересылок, выполняются 10 и на ЦП и на УП, задают обмены информацией между блоками регистров 2, 10 и 12 и ОЗУ 15,или между различными областями памяти. Команды пересылок могут пересылать как отдельные 15 слова, так и массивы данных.

Скалярные команды обработки выполняются и на УП и на ЦП, и описывают логические, арифметические операции над скалярами, а также операции 20 сдвигов.

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

Команды обработки массивов описы1 вают операции преобразования структуры массивов, поисков массивов и слож-ЗО ные арифметические операции, учитывающие структуру массивов (составные операции).

При описании форматов команд использованы: КОП вЂ” код операции; П— признак обработки плавающих чисел;

К — код выборки, который определяет структуру операндов (скаляр, вектор, матрица); А - относительный адрес операндов), К вЂ” признак косвенной 4О адресации, Б — признак базы; Х вЂ” не используется.

Комбинации признаков: при П=1, Б=1 — косвенная 1 адресация — относительный адрес данного и данные в ос- 45 новном сегменте данных, при П=1

Б=Π— косвенная П адресация — относительный адрес этого данного в нулевом сегменте.

На фиг.б представлени форматы команд. формат ПП память-память (a) формат ППВ память-память — векторные . (б), формат ПППБ память-память-память-векторные (в) и формат ПНПВ память- йепосредственное-память-векторные (г) .

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

Форматы векторных команд обработки: векторные команды поэлементной обработки — формат ПЛПВ; поисковые операции и свертка — формат IIIIR; скалярное произведение векторов и вычисление полинома — формат ЛПЛВ; операции индексации — формат ПППВ И ПНПВ.

Синхронизация работы RII и СП поясняется фиг.7,где представлены фазы обслуживания запроса с обозначениями фиксация запроса в СП (ФЗСП), выдача адреса 1 --го элемента в ОЗУ 15 (А-ОЗУ вычисление адреса (1+ 1) элемента (А=А+Ш), фиксация запроса в ПВ в блоке 24 триггеров готовности (ФЗВП) ° обмен между ОЗУ 15 и первым блоком

2 буферных регистров ВП (блоки 1-5) (ОЗУ (А) — ВП) и ожидание запроса от ВП (блоки 1-5) (ОЗВП).

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

Команда считывается из ОЗУ 15 в блок 7 системных регистров, дешифрируется в устройстве 6 микропрограммного управления и выполняется или на САЛУ .9 (скалярные команды), или на скалярном 9 и на векторном.19 112034

1 арифметико-логическом устройствах одновременно (векторные команды), В последнем случае САЛУ 9 на ос.новании параметров векторов данных вычисляет поток адресов очередных 5 элементов векторов. Этот поток подается на ОЗУ 15 для выборки данных, образующих поток на ВАЛУ, 1, которое, обработав их, подает поток данных на ОЗУ 15 одновременно с I0 потоком адресов результатов, формируемых САЛУ 9. Устройство 6 микропрограммного управления по асинхронным сигналам, вырабатываемым арифметика-логическими устройствами 15 и 9 и ОЗУ 15 согласует потоки данных и адресов °

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

Сначала информация независимо от устройства 6 микропрограммного управления считывается с блока 14 приемопередатчиков и через блок 13 при- 25 оритетных прерываний с помощью блока

11 ускоренной обработки прерываний заносится в ОЗУ t5. Далее блок 11 ускоренной обработки прерываний сравнивает приоритет прерываний с маской внешних прерываний, если данное прерывание разрешено, то сравнивается приоритет текущей задачи с приоритетом задач обработки полученного прерывания. Если последний

35 вьпне, то на устройство 6 микропро". граммного управления подается сигнал внутреннего прерывания. Получив его, устройство 6 микропрограммного управления определяет номер соответ40 ствующей задачи обработки и к концу текущей команды останавливает выполнение текущей задачи, сохраняя ее состояние, и запускает задачу обработки возникающего внешнего преры45 вания. Далее работа происходит обычным порядком.

Управляющая векторная вычислительная система может работать в многозадачном режиме в реальном масштабе времени. Максимальное количество

50 задач 256. Задачи подразделяются на две группы: прикладные задачи и задачи обработки прерывания (обслуживание), которые могут выполняться параллельно.

На УП реализуется управляющая система реального времени, состоящая. из диспетчера, программ обработки

О 20 прерываний. внутренних и внешних (драйверы)„ и загрузчика. На ЦП выполняются прикладные (задачи и процедуры) программы. УП формирует приоритетные очереди готовых задач

{шестнадцать уровней приоритета), из которой ЦП загружает задачу высmего приоритета на исполнение. Драйверы выполняются на УП, запускаются по требованию прикладных задач или по прерыванию. Программы обработки внутренних прерываний ЦП запускаются управляющей системой на УП при получении соответствующего запроса от ЦП. На УП имеется восемь уровней прерываний, и появление сигнала высmего приоритета вызывает сохранение состояния текущей программы в ее локальной области сохранения и сохранение номера программы. Дескриптор обработки запросов от прикладных задач имеет низший приоритет.

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

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

Приоритет присваивается задаче при планировании основного ресурса задачи центрального процессора ЦП.

Дисциплина планирования;. процессор получает готовую задачу с высшим приоритетом - задачу с наибольшим временем ожидания процессора, В активном состоянии задача переходит в блокированное состояние, если выдан запрос на ввод-вывод — задача переходит в состояние ожидания конца операции ввода-вывода„ если задано время приостанова выполняемой задачи — задача переходит в состоя,ние ожидания заданного интервала времени, в случае обработки особых ситуаций при выработке активной за.дачей внутреннего прерывания, если активная задача, обращаясь к стан21

1120340

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

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

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

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

1120340

1120340

1120340

1120340

11 14

11, 14

14 11 М 11 14

7 .871 Ю 1

7 711 Х 11 14 кап

7 211 1

808

7 2 11 S л, Фиг. Х г

Qoa I

11 14

11 14

11 14

1 120340

ВНИИПИ Заказ 7744/37 ТИРаж 698 - Подписное

Филиал ППП "Педант", r.Óèèîðîä, ул.Проектная, 4

Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система Управляющая векторная вычислительная система 

 

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

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

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

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

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

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

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

Изобретение относится к системе и способу динамического конфигурирования порта сетевого оборудования (20) для связи в широкополосной сети (10)

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

Изобретение относится к области управления компьютерными сетями, а более конкретно к системам управления компьютерными сетями с использованием алгоритмов искусственного интеллекта
Наверх