English Version Русская версия
ОПИСАНИЕ

Alekseeva Zoya
Концерн "Моринформсистема - Агат", chief@pcweek.ru

Алгоритмическая ЭВМ

Алгоритмическая ЭВМ


В 1987г НПО «Агат» были проведены межведомственные испытания опытного образца разработанной алгоритмической ЭВМ с непосредственной реализацией языка высокого уровня типа Фортран.
Основой являлся язык Фортран-4, который был расширен включением некоторых операторов языка PL-1 и специальных операторов и описаний, позволяющих работать в системах реального времени и в условиях необходимости защиты процесса решения от неисправностей. Для этого введены операторы, позволяющие организовывать защиту программ и файлов, параллельную работу программ, осуществлять блокировку прерываний, задавать реакции на прерывания. Языковые средства позволяют фиксировать интересующие разработчиков ситуации, имитировать возникновение сигналов прерываний, динамически, статически и по предписанию распределять память. Для защиты работы машины от последствий сбоев использовались известные аппаратурные и языковые средства, которые позволяют разбивать программы на участки, позволяющие производить повтор решения в случае сбойных ситуаций. Для обеспечения работе в реальном времени введены операторы работы со счетчиками времени и др.
Разработанный язык на базе языка FORTRAN -1V был назван RTF(real time FORTRAN)
ЭВМ имела следующие характеристики:
-числа, хранящиеся в ЗУ, имели разрядность 32 двоичных разряда;
- объем непосредственно адресуемой памяти составлял до 8192К байт.
В ЭВМ могли использоваться числа следующих типов:
-короткое число с фиксированной точкой (16 разрядов);
-число с фиксированной точкой (32 разряда);
- число с фиксированной точкой двойной длины (64 разряда);
-короткая битовая строка (16 разрядов);
- битовая строка (32 разряда);
- число с плавающей точкой (32 разряда);
Все числа с плавающей и фиксированной точкой представлены в дополнительном коде.
Для представления логических переменных использовался один разряд битовой строки.
Значения TRUE -0,
FALSE -1 используются для осуществления функций управления.

Для преобразования выражений предусмотрены 4 базовых регистра. Алгоритм состоит из различного вида записей. Адрес памяти образуется приформированием номера страницы, который содержится в базовом регистре, и номера полуслова, который содержится в адресной части записей видов 1, 2, 7.
Имеются следующие виды записей:
1.Нулевой вид, состоящий из 16 разрядов с тремя разрядами кода записи и13разрядами номера страницы памяти.
Этот вид устанавливает номер страницы во втором базовом регистре.
2. Первый вид, состоящий из 16 разрядов.
Адресуется простая переменная и константа (номер базового регистра, тип переменной).
3.Второй вид, состоящий из 16 разрядов
Адресуется переменная с индексом.
4.Третий вид, состоящий из 8 разрядов. Запись характеризует код операции.
5.Четвертый вид, состоящий из 16 разрядов, где 3 разряда содержат код записи, 5 разрядов – код операции, 8 разрядов – код сдвига. Запись характеризует операцию сдвига, что связано с уплотнённым расположением информации в памяти и необходимостью выделять определённое количество разрядов для расшифровывания содержащейся информации.
6.Пятый вид, содержащий 8 разрядов. Этот вид записи обозначает коды стандартных функций и управляющих символов.
7.Шестой вид, состоящий из 24 до 40 разрядов, характеризует непосре?ственно операнд.
Записи образуют инструкции, которые поступают в устройство управления и организуют процесс выполнения задачи.

Операции, выполняемые арифметическим процессором

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

Основные особенности устройства управления

Выполнение инструкций в машине при таком внутреннем языке требует дополнительного объема аппаратуры. Поэтому наряду с обычными элементами устройства управления в алгоритмической машине присутствует ряд дополнительных регистров, управляющих триггеров, счетчиков. Все эти дополнительные элементы представляют собой устройство выборки и предварительной обработки инструкций.
Инструкции имеют различную длину, располагаясь в памяти без промежутков..
Для выборки инструкций предусмотрены два 32-х разрядных регистра.
Наличие двух регистров вызвано необходимостью формирования в целом виде символов, входящих в состав инструкции. В качестве символов могут быть использованы следующие виды данных:
- константы 8-ми, 16–ти, 24-х, 32-х разрядные;
- идентификаторы, размещаемые в ОЗУ – 8-ми разрядные (переменные);
- идентификаторы, находящиеся в ДЗУ (метки, имена) – 16-ти разрядные;
- операции, разделители (скобки, запятые и т.д.) – 8-ми разрядные

Структура инструкции

Инструкция представляет собой команду, полученную после претрансляции предложения, записанного на языке высокого уровня. Претрансляция – перевод стандартно записанной информации в операторах, расположенных построчно, в содержание ячеек памяти. Длина инструкции может быть произвольной величины, кратной полубайтам. Каждая следующая инструкция начинается с полубайта, следующего за конечным полубайтом предыдущей инструкции. Исключение составляет первая инструкция программы и инструкции, на которые при выполнении программы передается управление. Их запись всегда начинается с новой ячейки, независимо от заполнения предыдущей.
Первая инструкция имеет следующую структуру:
Первый байт инструкции содержит в 2-х своих старших разрядах признак начала инструкции, а в остальных – код оператора;
Второй байт инструкции включает в себя код числа символов в инструкции и признак первого символа. Значения символов следующие:
00 – идентификатор ОЗУ;
01 – идентификатор ДЗУ;
10 – операция или разделитель;
11 – константа.
Константа, как было сказано выше, может иметь длину от 1 до 4 байт. Для экономии памяти использовали признаки длины, хотя они усложняли анализ инструкции. При этом если в первом признаке символа был признак константы, то вместо второго признака ставился признак длины константы, затем следовал символ константы, а не признак второго символа. Если признак константы появлялся на месте второго признака, то код типа константы располагался во втором полубайте признаков на месте первого признака. В этом случае дальше прочитывался только один символ. Для символов, отличных от константы, порядок следования был общим. Значения признаков длины константы следующие:
-00 – 1 байт,
-01 – 2 байта,
-10 – 3байта,
-11 – 4байта.
Конец инструкции о?ределяется как аппаратурным путём как (по обнулению Сч количества символов), так и по выделению кода конца инструкции.

Система элементов

Опытный образец ЭВМ выполнен на 133 серии.
Арифметический процессор (без схемы контроля) состоял из 412 корпусов, из них на устройство управления приходится 138 корпусов.
Время выполнения операции сложения для первого и второго типа данных составляло 0,3мкс, для типа 6 – от 0,7 до 9,6 мкс. Операция умножения выполнялась для 1 и 2 типа за 4,9 – 9.7 мкс, а для 6-го типа за 5,2 – 10,1мкс. Логические операции выполнялись за 0,3мкс для 1,2, 3 типов и за 0,6 – 6,8 мкс для 6 типа.
Логические операции типа «лог. НЕ» за 0,1 мкс для 4 и 5 типов.

Оценка алгоритмической ЭВМ

Межведомственной комиссией по приёмке машины на основании работы опытного образца при решении как вычислительных, так и системных задач, были сделаны следующие выводы:
1.Программирование на языке RTL повысило производительность кодирования программы относительно кодирования на машинном языке в 5 раз;
2. Программы, написанные на языке RTL, сократились по объёму по сравнению с программами, на машинном языке в среднем в 3,3 раза;
3. Объем памяти, занятый программой, написанной на RTL, примерно равен объёму памяти, занятому этой же программой, написанной на машинном языке, в 3-5 раз меньший, чем программа, написанная на ЯВУ и оттранслированная на машинный язык.
4. Объем, занимаемый аппаратурой, составил 120л в бескорпусном исполнении;
5.Быстродействие ЭВМ составило около 2 млн. коротких операций в сек.


Главный конструктор Алексеева З.Д.
Научный руководитель Хетагуров Я.А.
Основные раз разработчики:
Кузнецов Г.И.
Рихтер Г.Г.
Полтавец Г.Н.

©2006 PetrSU | Copyright
information
sponsors:
 
sponsors: