Серия IBM 700/7000 — это серия крупномасштабных ( мэйнфреймовых ) компьютерных систем, которые производились IBM в 1950-х и начале 1960-х годов. Серия включает в себя несколько различных, несовместимых архитектур процессоров. 700-е используют логику на электронных лампах и устарели с появлением транзисторных 7000-х. 7000-е, в свою очередь, были в конечном итоге заменены System/360 , которая была анонсирована в 1964 году. Однако 360/65, первая 360, достаточно мощная, чтобы заменить 7000-е, не появилась до ноября 1965 года. Ранние проблемы с OS/360 и высокая стоимость конвертации программного обеспечения заставили многие 7000-е работать в течение многих лет после этого.
В серии IBM 700/7000 предусмотрено шесть совершенно разных способов хранения данных и инструкций:
Машины класса 700 используют электронные лампы ; машины класса 7000 — транзисторные . Все машины (как и большинство других компьютеров того времени) используют память на магнитных сердечниках ; за исключением ранних моделей 701 и 702, которые изначально использовали память на ЭЛТ- трубках Уильямса , а затем были преобразованы в память на магнитных сердечниках.
Первые компьютеры продавались без программного обеспечения. С появлением операционных систем наличие четырех различных архитектур мэйнфреймов и архитектур IBM 1400 midline стало серьезной проблемой для IBM, поскольку это означало необходимость как минимум четырех различных программных усилий.
System/360 объединяет лучшие черты архитектур серий 7000 и 1400 в едином дизайне как для коммерческих вычислений, так и для научных и инженерных вычислений. Однако ее архитектура несовместима с архитектурой серий 7000 и 1400, поэтому некоторые модели 360 имеют дополнительные функции, которые позволяют им эмулировать наборы инструкций 1400 и 7000 в микрокоде. Одним из преимуществ System /370 , преемника 360, представленного в середине 1970-х, была улучшенная эмуляция серий 1400/7000, которая могла выполняться под управлением операционной системы, а не выключаться и перезапускаться в режиме эмуляции, как требовалось для эмуляции 7040/44, 7070/72/74, 7080 и 7090/94 на всех 360, за исключением 360/85.
Хотя архитектура различается, машины одного класса используют одни и те же электронные технологии и, как правило, используют одни и те же периферийные устройства. Ленточные накопители обычно [a] используют 7-дорожечный формат , с IBM 727 для ламповых машин и 729 для транзисторных машин. Как ламповые, так и большинство транзисторных моделей используют те же устройства чтения карт, перфораторы и линейные принтеры , которые были введены с 701. Эти устройства, IBM 711 , 721 и 716, основаны на технологии бухгалтерских машин IBM и даже включают панели управления коммутационной панели . Они относительно медленные, и для установок серии 7000 было обычным включать IBM 1401 с его гораздо более быстрыми периферийными устройствами, чтобы выполнять операции с карт на ленту и с ленты на линейный принтер в автономном режиме. Три более поздние машины, 7010, 7040 и 7044, переняли периферийные устройства из средней серии IBM 1400. Некоторые технологии 7030 использовались в каналах данных и периферийных устройствах других компьютеров серии 7000, например, 7340 Hypertape .
Эта машина, известная как « Оборонный калькулятор», разрабатывалась в лаборатории IBM в Покипси и была официально представлена 7 апреля 1953 года как электронная вычислительная машина IBM 701 .
Числа имеют длину либо 36 бит , либо 18 бит , только с фиксированной точкой .
Длина инструкций составляет 18 бит, адрес один.
Чтобы расширить память с 2048 до 4096 слов, была добавлена 33-я инструкция, которая использует старший бит своего адресного поля для выбора банка. (Эта инструкция, вероятно, была создана с использованием инструкции «No OP», которая, по-видимому, была единственной инструкцией с неиспользованными битами, поскольку изначально она игнорировала свое адресное поле. Однако документация по этой новой инструкции в настоящее время недоступна.)
Регистры процессора состояли из:
2048 или 4096 – 36-битные двоичные слова с шестибитными символами
36-битная научная архитектура IBM использовалась для различных приложений с интенсивными вычислениями. Первыми машинами были вакуумные 704 и 709 , за которыми последовали транзисторные 7090 , 7094, 7094-II и более дешевые 7040 и 7044. Конечной моделью была система с прямым сопряжением (DCS), состоящая из 7094, соединенного с 7044, который обрабатывал операции ввода и вывода.
Числа имеют длину 36 бит как для арифметики с фиксированной точкой, так и для арифметики с плавающей точкой .
Базовый формат инструкции — это трехбитный префикс , пятнадцатибитный декремент , трехбитный тег и пятнадцатибитный адрес . Поле префикса определяет класс инструкции. Поле декремента часто содержит непосредственный операнд для изменения результатов операции или используется для дальнейшего определения типа инструкции. Три бита тега определяют три (семь в 7094) индексных регистра , содержимое которых вычитается из адреса для получения эффективного адреса . Поле адреса содержит либо адрес, либо непосредственный операнд.
Регистры процессора состояли из:
Регистры аккумулятора (и множителя-частного) работают в формате знак/величина . Аккумулятор имеет два бита переполнения, обозначенных как Q и P. Логические инструкции очищают или игнорируют S и Q; инструкция Add and Carry Logical (ACL) выполняет круговой перенос из бита P в бит 35.
Индексные регистры работают с использованием формата дополнения до двух и при использовании для изменения адреса инструкции вычитаются из адреса в инструкции. На машинах с тремя индексными регистрами, если тег имеет два или три установленных бита (т. е. выбрано несколько регистров), то их значения объединяются по ИЛИ перед вычитанием. IBM 7094 с семью индексными регистрами включается в режиме множественных тегов для совместимости с более ранними машинами, так что программы, которые использовали этот трюк, могут продолжать использоваться; инструкция Leave Multiple Tag Mode (LMTM) отключает этот режим, так что тег указывает, какой из индексных регистров использовать, а инструкция Enter Multiple Tag Mode (EMTM) включает его снова.
Сенсорные индикаторы позволяют взаимодействовать с оператором посредством переключателей и индикаторов на панели.
Серии 709/7090 используют каналы синхронизации данных для высокоскоростного ввода/вывода, например, ленты и диска. Базовые 7-битные [b] DSC, например, 7607, выполняют собственные простые программы из памяти компьютера, которая управляет передачей данных между памятью и устройствами ввода/вывода; более продвинутые 9-битные [c] 7909 поддерживают более сложные программы каналов. Поскольку оборудование для записи единиц на 709x было настолько медленным, ввод /вывод перфокарт и высокоскоростная печать часто выполнялись путем передачи магнитных лент на и с автономного IBM 1401. Позже каналы данных использовались для подключения 7090 к 7040 или 7094 к 7044 для формирования системы IBM 7094/7044 Direct Coupled System (DCS) . В этой конфигурации 7044, который мог использовать более быстрые периферийные устройства серии 1400, в основном обрабатывал ввод/вывод.
FORTRAN Assembly Program (FAP) — ассемблер для 709, 7090 и 7094, изначально написанный в Western Data Processing Center Дэвидом Э. Фергюсоном и Дональдом П. Муром для 709. [ 1] Он работает под управлением операционных систем Fortran Monitor System (FMS) и IBSYS от IBM . Более ранним ассемблером был SHARE Compiler-Assembler-Translator (SCAT) под управлением SHARE Operating System (SOS). Макросы были добавлены в FAP компанией Bell Laboratories (BE-FAP), а окончательным ассемблером 7090/7094 был Macro Assembly Program (IBMAP) под управлением IBSYS/IBJOB. SCAT, FAP и MAP были взаимно несовместимы.
Его псевдооперация BSS , используемая для резервирования памяти, является источником общего названия « секции BSS », которая до сих пор используется во многих языках ассемблера для обозначения зарезервированных диапазонов адресов памяти , тип которых не требует сохранения в исполняемом образе.
IBM 702 и IBM 705 похожи, и 705 может запускать многие программы 702 без модификации, но они не полностью совместимы.
IBM 7080 — это транзисторная версия 705 с различными улучшениями. Для обратной совместимости он может работать в режиме 705 I [2] , режиме 705 II [3] , режиме 705 III [4] или в полном режиме 7080.
Данные представлены строкой символов переменной длины, заканчивающейся меткой записи .
Пять символов: один символ кода операции и четыре символа адреса – OAAAA
705 и базовый 7080 используют каналы с 7-битным [b] интерфейсом. 7080 может быть оснащен каналами данных 7908 для подключения более быстрых устройств с использованием 9-битного [c] интерфейса.
Коммерческая архитектура 700/7000 вдохновила на создание очень успешной серии компьютеров среднего размера для бизнеса IBM 1400. В свою очередь, IBM позже представила версию IBM 1410 для мэйнфреймов под названием IBM 7010.
Пятнадцать пятисимвольных полей в фиксированных местах в нижней памяти можно рассматривать как индексные регистры, значения которых можно добавлять к адресу, указанному в инструкции. Кроме того, некоторые внутренние регистры, которые сегодня были бы невидимы, такие как адреса символов, обрабатываемых в данный момент, доступны программисту; в частности, регистр адреса B часто используется для связывания подпрограмм.
IBM 7070 , IBM 7072 и IBM 7074 — это десятичные машины с фиксированной длиной слова. Они используют десятизначное слово, как и меньшая и старая IBM 650 , но несовместимы по набору инструкций с 650.
707x использует каналы с 7-битным [b] интерфейсом. 7070 и 7074 могут быть оснащены каналами данных 7907 для подключения более быстрых устройств с использованием 9-битного [c] интерфейса.
IBM 7074 использовался Налоговой службой США в 1962 году. [6]
Система сбора данных IBM 7700 не входит в серию IBM 7000, несмотря на свой номер и дату анонса 2 декабря 1963 года.
Все машины серий 700 и 7000 появились раньше стандартных инструментов измерения производительности, таких как тесты Whetstone (1972), Dhrystone (1984), LINPACK (1979) или Livermore loops (1986).
В таблице ниже измерения Гибсона и Найта указывают скорость, где более высокие значения соответствуют лучшим показателям; измерения TRIDIA указывают время, где более низкие значения соответствуют лучшим показателям.
{{cite book}}
: |work=
проигнорировано ( помощь )