HP 2100 представляет собой серию из 16-битных миникомпьютеров , которые были произведены компанией Hewlett-Packard (HP) с середины 1960-х до начала 1990 - х годов. Десятки тысяч машин этой серии были проданы в течение двадцати пяти лет, что сделало HP четвертым по величине поставщиком миникомпьютеров в 1970-е годы.
Разработка началась в Data Systems Inc (DSI) и первоначально была известна как DSI-1000. HP приобрела компанию в 1964 году и объединила ее в свое подразделение Dymec. Первоначальная модель, 2116A, построенная с использованием интегральных схем и памяти на магнитном сердечнике , была выпущена в 1966 году. В течение следующих четырех лет были выпущены модели от A до C с различными типами памяти и расширения, а также более дешевыми 2115 и 2114 моделей. Все эти модели были заменены серией HP 2100 в 1971 году [1], а затем снова серией 21MX в 1974 году, когда память с магнитным сердечником была заменена полупроводниковой памятью. [2]
Все эти модели также были упакованы как серия HP 2000 , объединяющая машину серии 2100 с дополнительными компонентами для того, чтобы запускать язык программирования BASIC в режиме многопользовательского разделения времени . HP Time-Shared BASIC был популярен в 1970-х годах, и многие ранние программы BASIC были написаны на платформе или для нее, в первую очередь оригинальная Star Trek, которая была популярна в раннюю эпоху домашних компьютеров . Компания " Народный компьютер" издала свои программы в формате HP 2000.
Выпуск HP 3000 в 1974 году обеспечил высококлассную конкуренцию серии 2100; вся линейка была переименована в HP 1000 в 1977 году и позиционировалась как компьютеры реального времени . Сильно переработанная версия была представлена в 1979 году как серия 1000 L , в которой использовались крупномасштабные интеграционные микросхемы CMOS и представлена настольная модель корпуса Tower . Это была первая версия, которая нарушила обратную совместимость с предыдущими картами расширения серии 2100. Последним обновлением стала серия A с новыми процессорами, способными обеспечить производительность более 1 MIPS , [3] с последним A990.выпущен в 1990 году. [4]
История [ править ]
Истоки [ править ]
HP основала Dynac в 1956 году, чтобы действовать в качестве центра разработки проектов, за которые основная компания обычно не бралась. Их первоначальный логотип был просто перевернутым логотипом HP, образующим что-то похожее на «dy» и, таким образом, вдохновляло название. Узнав, что Westinghouse владеет товарным знаком на это имя, в 1958 году они изменили его на Dymec. В 1959 году компания была преобразована в подразделение Dymec, а в ноябре 1967 года было переименовано в подразделение Palo Alto. [5]
Первоначально Dymec производила множество продуктов для семейства HP, но со временем превратилась в основном в интегратора, создавая испытательное оборудование и аналогичные системы, которые использовались HP. В 1964 году Кей Маглеби и Пол Стофт начали экспериментировать с использованием компьютеров PDP-5 и PDP-8 в качестве контроллеров для своих сложных тестовых систем, но они чувствовали, что машины потребуют изменений, чтобы действительно удовлетворить их потребности. В то время Digital Equipment Corporation (DEC) все еще была небольшой компанией и объектом поглощения. Дэвид Паккард считал Кена Олсена слишком сложным, и такие планы ни к чему не привели. [5]
В поисках другого дизайна, который они могли бы купить, Packard обратились в компанию Data Systems, Inc. (DSI), состоящую из пяти человек, в Детройте. DSI принадлежала Union Carbide , и когда Packard спросил, как случилось, что Union Carbide стала владельцем компьютерной компании, менеджер HP Labs Барни Оливер ответил: «Мы не требовали ответа на этот вопрос». Билл Хьюлетт изначально отказался рассматривать разработку «миникомпьютера», но когда Packard изменил его форму как «контроллер приборов», сделка была одобрена. [5]
DSI была приобретена в 1964 году и первоначально была создана в Dymec с четырьмя из первоначальных пяти сотрудников DSI и рядом других сотрудников, приходящих из приборных подразделений HP. [5] [6] Компьютерная группа позже переехала в свой собственный офис в Купертино, Калифорния , в здании, купленном у Varian Associates , став подразделением Купертино. [5]
Первые модели [ править ]
Новое подразделение под руководством Маглби завершило разработку модели 2116A, которая была продемонстрирована 7–10 ноября 1966 года на Объединенной компьютерной конференции в Сан-Франциско. [7] [8] Это был один из первых 16-битных мини-компьютеров, появившихся на рынке, но в то время он был более заметным как «необычный новый инструментальный компьютер» с широкими возможностями расширения и поддержкой в реальном времени . Система имела увеличенный корпус, вмещавший до 16 карт расширения, или его можно было расширить до 48 карт с помощью внешнего каркаса расширения.
Система была запущена с 20 различными инструментальными платами, включая «счетчики, ядерные скейлеры, электронные термометры , цифровые вольтметры , преобразователи переменного / омического напряжения, усилители данных и входные сканеры». Дополнительный набор добавлен устройство ввода / вывод , как ленточные накопители , принтеры, перфокарты и бумажная лента и другие периферийные устройства. [9] Сервис в реальном времени был обеспечен тем, что каждому слоту карты был назначен фиксированный вектор прерывания, который вызывал соответствующий драйвер устройства . [5]
Когда машина вышла на рынок, быстро стало ясно, что она продается намного быстрее на рынке обработки бизнес- данных, чем первоначально нацеленный рынок контрольно-измерительных приборов. Это привело к появлению 2115A в 1967 году, в котором была удалена большая часть возможностей расширения, чтобы сделать предложение более дешевым для коммерческих пользователей. Еще одна упрощенная версия, поставляемая как 2114A в 1968 году [5], имела только восемь слотов, оставляя место для источника питания, который можно было встроить в основное шасси. [10] 2115 и 2114 также не обладали обширным контролем прямого доступа к памяти, чем 2116, убрали некоторые математические операции и работали на несколько более медленных скоростях.
Это оригинальные модели с использованием основной памяти и встроенного ЦП.
- 2116A, тактовая частота 10 МГц, время цикла 1,6 микросекунды (мкс). Обычно поставляется с 4К словами, расширяемыми до 8К внутренне или 16К с внешней системой памяти. Шасси включает в себя 16 слотов ввода / вывода, которые также могут быть расширены. Вес 230 фунтов (104 кг). [11] Представлен в ноябре 1966 года. Он ознаменовал собой первое использование компанией HP интегральных схем. [7]
- 2116B, поддерживает новую опцию расширения памяти до 32 КБ. Вес такой же, как указано выше. [12] Представлен в сентябре 1968 года.
- 2116C использовало ядро меньшего размера, поэтому в основное шасси могло поместиться полные 32 КБ. Представлен в октябре 1970 г.
- 2115A, недолговечная версия с уменьшенной стоимостью, которая удаляла DMA и некоторые математические функции, имела только 8 слотов ввода-вывода и работала с тактовой частотой 8 МГц и временем цикла 2,0 мкс. Весил 65 фунтов (29,5 кг), требовался громоздкий внешний источник питания - общий вес: 160 фунтов (72,6 кг). [12] Представлен в ноябре 1967 года.
- 2114A, еще более упрощенный 2115 с новой передней панелью и внутренним блоком питания. Немеханические сенсорные переключатели на передней панели. Вес 95 фунтов (43,1 кг). [12] Представлен в октябре 1968 года.
- 2114B, 2114A с одним каналом прямого доступа к памяти и новой передней панелью с кнопками с подсветкой. Представлен в ноябре 1969 года.
- 2114C, как 2114B с максимальной памятью 16 КБ. Представлен в октябре 1970 г.
HP 2000 [ править ]
В ноябре 1968 года [13] компания выпустила систему таймшеров 2000A, [13] позже известную как HP 2000 / Access. Это было основано на 2116B (2116A с расширенной памятью ядра 8k) с HP Time-Shared BASIC и использовало отдельный 2114 в качестве терминального сервера . TS BASIC позволял создавать несколько учетных записей пользователей [14] с одновременным входом в систему до 16 пользователей.
Более поздние модели 2000 года, от B до F, использовали более новые версии базового процессора по мере их появления. В некоторых моделях использовались младшие версии того же процессора, что и в терминальном сервере; Например, 2000F использовал 2100S в качестве основного ЦП и контроллера памяти, а 2100A действовал как терминальный сервер. [15] Модели B, C и F были двухпроцессорными. В последней версии использовались ЦП 2000F, 2100S и 2100A, при этом 2100A был подключен к 32 последовательным терминалам через интерфейсы последовательного мультиплексора. [15]
Несмотря на относительно высокую стоимость - 2000F стоил 105 000 долларов в 1974 году [15] или около 544 342 доллара в 2019 году - это был первый миникомпьютер, предлагавший BASIC с разделением времени [16], что сделало его очень популярным в первые годы своего существования. середина 1970-х.
2100 [ править ]
В течение 1970-х годов модельный ряд постоянно улучшался за счет новых моделей, которые оставались совместимыми по программному обеспечению и расширению с оригинальной 2116.
В начале 1970 года Фреду Алларду, бывшему сотруднику подразделения Ampex по ядрам памяти, было предложено разработать новую систему памяти с магнитным сердечником для этих систем, а не продолжать закупать их у Ampex. Используя новые ядра на 18 мил , вместо 22 мил, и используя одну линию считывания / запрета, они смогли разместить память 8 кВт на одной карте расширения. Это использовалось, начиная с моделей 2116C. [18]
В 1971 году обновленный 2100A заменил всю существующую линейку 211x. В целом система была похожа на предыдущие модели и продолжала основываться на основной памяти. Физически он больше всего напоминал 2114, так как блок питания был встроенным и имел ограниченное внутреннее расширение. Однако ЦП был перестроен с использованием микрокода, который мог быть запрограммирован пользователем, добавлены аппаратные средства умножения и деления, а также добавлена простая система защиты памяти , которая вызвала высокоприоритетное прерывание при срабатывании. Двухканальный контроллер DMA обеспечивал более высокую пропускную способность. Также был доступен дополнительный модуль с плавающей запятой . Кнопки на передней панели подсвечивались небольшими лампочками накаливания, которые перегорали при использовании. Использование импульсного источника питания[a] позволил шасси быть значительно меньше, чем у более ранних моделей.
К 1972 году HP поставила 4500 миниатюрных устройств, что сделало ее одной из крупнейших компаний на рынке. В том же году они объединили подразделение Mountain View, производившее магнитные ленточные накопители, с подразделением Купертино, чтобы создать подразделение Data Systems Division (DSD). К этому времени у проекта HP 3000 возникли серьезные проблемы, и в феврале 1973 года Packard отправил Пола Эли взять на себя управление подразделением. Продажи серии 2100 остались высокими; 6000-й отправлен в августе 1973 года, 8000-й - в феврале 1974 года, а его 10-тысячный - в феврале 1975 года. [20] Они были объявлены устаревшими в 1978 году. [1]
- 2100A, обычно мощностью 4 кВт, но с возможностью расширения до 32 кВт, 14 слотов ввода / вывода с возможностью расширения до 45. Представлен в 1971 году.
- 2100S, 2100A в комплекте с опцией с плавающей запятой, генератором временной развертки для взаимодействия с аппаратным обеспечением, зависящим от времени, и интерфейсной картой телетайпа. Представлен в 1973 году.
21MX [ править ]
В 1972 году подразделение решило перейти на микросхемы памяти SRAM объемом 4 Кбит вместо ядра. Они были примерно в два раза быстрее, чем современные недорогие ядра, и были намного меньше, что позволяло создавать машины на 32kword в форм-факторе, подобном 2114. В то время, когда они приняли это решение, 4-битные SRAM фактически не были доступны, поэтому сначала использовались экспериментальные машины, использующие ядро из серии 2100, замененное 1-килобитным SRAM. Сначала казалось, что 4k деталей не будут доступны к тому времени, когда остальная часть машины будет модернизирована, поэтому компания провела опрос различных производителей и обнаружила, что некоторые из них активно разрабатывают 4k детали. В частности, Intel , Mostek , Motorola и Texas Instruments.все предполагали, что такие детали будут доступны в большом количестве к концу 1974 г. [21]
Использование такой памяти в шасси расширения, таком как более ранние системы, означало, что было место для гораздо большего объема памяти в мегапиксельном диапазоне. Однако использование ЦП 15-битных адресов ограничивало размер до 32 тыс. Слов. Чтобы удовлетворить потребность в более крупных системах, HP разработала «Систему динамического сопоставления» или DMS. DMS расширила формат адреса с 15 до 20 бит, допустив до 1 048 576 слов, что значительно расширило исходную систему. [22]
Эти изменения привели к выпуску в 1974 г. первых машин серии 21MX. Это означало процессор «21-M» и память «21-X», поскольку системы управления памятью были отделены от ЦП, чтобы обеспечить гибкость в случае изменения выбранных частей 4k во время производства. Это оказалось полезным на практике, поскольку машины поставлялись с памятью, использующей детали Motorola или Texas Instruments, и их можно было смешивать в одной машине, в то время как система с более высокой плотностью, основанная на 16-контактных деталях Mostek, могла поддерживаться заменой обычных 21 -X / 2 с контроллером 21-X / 1. [21]
Вся серия 2100 была заменена в 1974 году первой из этих машин серии 21MX. Используя детали с самой высокой плотностью, новые машины могут поддерживать до 1,2 МБ в самых больших моделях. Когда в 1976 году ЦП был модернизирован, новые модели стали «21MX E-Series», а оригинальные модели задним числом стали «21MX M-Series». Основное различие между M и E заключалось в том, что в E использовалась умная синхронизация, чтобы увеличить скорость примерно вдвое по сравнению с M. [23] В рамках серии 21MX было выпущено более широкое разнообразие машинных стилей, в том числе меньшие системы с четырьмя слоты и более крупные с 9 или 14 слотами. [24]
Серия 21MX оснащена блоком управления памятью и полупроводниковой памятью с возможностью расширения до 1 048 576 слов (один мегазорд ). В битовых дисплеях на кнопках передней панели использовались маленькие красные светодиоды (светодиоды) вместо перегорающих ламп накаливания, используемых в более ранних версиях.
- M-серия - 2105A, 2108A, 2112A (синяя линия на передней панели)
- Серия E - 2109A, 2113A (желтая линия на передней панели; E для Extended)
- Серия F - 2111F, 2117F (красная линия на передней панели; F для процессора с плавающей запятой в отдельном шасси 2U)
21MX работал под управлением операционной системы (ОС) HP RTE (Real Time). Они начинали как 19-дюймовые стоечные системы размером с холодильник с подсветкой и переключателями на передних панелях. В последних моделях будет использоваться однокристальный процессор, и они будут помещаться под столом с использованием консольного терминала, а не передней панели.
Новые модели серий L и A имели интерфейс HP-IB , но, как и во всех системах HP того времени, мигающие светодиодные индикаторы были удалены с передней панели. Несмотря на требования заказчиков к возможностям реального времени и усилия HP по исследованиям и разработкам с использованием устанавливаемой карты реального времени, ОС RTE-A не так хорошо справлялась с операциями в реальном времени, как RTE на 21MX. Это была важная причина, по которой этот компьютер было трудно убить. Многие компании используют операции в реальном времени для измерения и управления процессами - включения или выключения насоса, нагревателя, клапана, ускорения или замедления двигателя и т. Д.
1000 серий [ править ]
В конце 1977 года вся линейка была переименована в «HP 1000», став «HP 1000 M-Series» и «HP 1000 E-Series». В следующем году была представлена «HP 1000 F-Series», представлявшая собой E-серию с добавленным блоком операций с плавающей запятой. [25] К 1978 году успех этой линейки позволил HP стать четвертым по величине производителем в области миникомпьютеров, уступая только DEC, IBM и Data General . [5]
В 1980 году была представлена «серия HP 1000 L». Здесь использовался новый процессор, основанный на крупномасштабном интеграционном кремнии HP на сапфире . Кроме того, карты расширения были оснащены собственными процессорами, которые позволяли им получать доступ к основной памяти и выполнять ввод / вывод, не беспокоя ЦП. Хотя это впервые сделало карты расширения несовместимыми с более ранними моделями, это также значительно улучшило общую производительность. В этих моделях отсутствовал блок управления памятью. [26]
- Кремний HP1000L на сапфировом (SOS) ЦП и процессорах ввода-вывода
В свою очередь, L-серия была заменена в 1982 году на «HP 1000 A-Series», которая включала в себя новый процессор «Lightning», достигающий 1 MIPS , и еще более быстрый процессор «Magic» со скоростью 3 MIPS. Было произведено большое количество различных моделей, в том числе настольные башни и различные системы для монтажа в стойку. [26] Младшая модель A400 была представлена в 1986 году [27], а последняя high-end модель A990 была выпущена в 1990 году. [28] Каждая адресуемая до 32 МБ ОЗУ.
- 1981:
- A600 - на базе процессора битовых срезов Am2900 , 1 MIPS, 53k FLOPS Кодовое имя: LIGHTNING
- A600 + - основан на бит-срезовом процессоре Am2900, поддерживает разделение кода и данных, опциональную память с коррекцией ошибок (ECC).
- 1982 ??:
- A700 - на основе процессора битовых фрагментов AMD AM2903, дополнительный аппаратный процессор с плавающей запятой, 1MIPS, 204kFLOPS, микропрограммирование, дополнительная память ECC . Кодовое имя: PHOENIX
- 1984:
- A900 - обеспечивает конвейерный путь данных, 3MIPS, 500kFLOPS, память ECC. Кодовое имя MAGIC
- 1986:
- A400 - первый одноплатный процессор с 4 последовательными линиями; ЦП изготовлен по технологии VLSI с их процессом CMOS-40, 512 КБ оперативной памяти на борту. Кодовое имя Йеллоустон
- 1992:
- A990 - ЦП, реализованный с двумя 208-контактными КМОП - зависимыми интегральными схемами (ASIC), 298 инструкциями, поддерживает до 512 МБ памяти.
Год | Машина | Размер микроворда | Размер микрокода | Типы микровордов | ALU | Перенести генератор | Микро- секвенсор | |
---|---|---|---|---|---|---|---|---|
1973 | 2100S | 24 | 1K | 3 | 4 × 74181 | 74182 | Дискретный | |
1974 г. | 1000 M-серия | 24 | 4K | 4 | 4 × 74181 | 74182 | Дискретный | |
1976 г. | 1000 E-серии | 24 | 16K | 4 | 4 × 74С181 | 74С182 | Дискретный | |
1978 г. | 1000 F-серия | 24 | 16K | 4 | 4 × 74С181 | 74С182 | Дискретный | |
19 ?? | FPP серии F | ? | ? | ? | 4 × 74С181 | 74С182 | Дискретный | |
1980 г. | 1000 L-серия | ? | ? | ? | Пользовательский CMOS / SOS | |||
1981 г. | 1000 A600 | 56 | 4K | 5 | 4 × 2901B | 74С182 | 2910 + 2904 | |
1982 г. | 1000 A700 | 32 | 16K | 11 | 4 × 2903 | 74С182 | 2911 | |
1984 | 1000 A900 | 48 | 32K | 4 | 4 × 74С381 | 74С182 | Дискретный | |
1986 г. | 1000 A400 | 32 | 16K | 11 | Пользовательский CMOS / SOS | |||
1975 г. | 13037 Контроллер [30] | 24 | 4K | 7 | 4 × 74С181 | 74С182 | Дискретный | |
1980 г. | 13365 Контроллер | 24 | 3К | ? | 2 × 2901 | ? | ||
1977 г. | 3000 серии I | 32 | 4K | 5 | 4 × 74181 | 74182 | Дискретный | |
1978 г. | 3000 серии III | 32 | 64 КБ | 5 | 4 × 74С181 | 74С182 | Дискретный | |
1978 г. | 3000 Серии 33 | 32 | 6K | ? | Пользовательский CMOS / SOS | |||
198? | 3000 Серии 48 | 48 | 12K | 2 | 4 × 74С181 | 74С182 | Дискретный | |
1982 г. | 3000 серии 64 | 64 | 8K | ? | 4 × 100181 | 100179 | Дискретный | |
1985 г. | 3000 серии 37 | 64 | 10 тыс. | ? | Пользовательская матрица ворот CMOS |
Наследие [ править ]
Серия HP 2000 была представлена в 1969 году, продавалась до июня 1978 года и поддерживалась до 1985 года. [31]
Версии многих оригинальных игр BASIC были написаны на платформе или портированы на нее. Среди них выделялся « Звездный путь» Майка Мэйфилда 1971 года. [32] [33] [b] Благодаря своей популярности диалект BASIC стал lingua franca, и многие списки BASIC обычно предоставлялись в этом формате; Компания « Народный компьютер» издала свои программы в формате HP 2000. [34] [35]
21 век [ править ]
Обозначения 2000 и 2100 были использованы повторно:
- HP 2000 относится к портативному компьютеру [36]
- HP 2100 означает принтер LaserJet [37]
Архитектура [ править ]
Организация памяти [ править ]
HP 2100 был разработан в эпоху, когда объем оперативной памяти в виде памяти с магнитным сердечником падал с долларов до пенни за бит [38], в то время как реализация регистров процессора с использованием транзисторов или мелкомасштабная интеграция оставались очень дорогими. Это благоприятствовало проектам с небольшим количеством регистров и большей частью памяти в ОЗУ, что, в свою очередь, повлияло на архитектуру набора команд (ISA) для использования конструкции память-память или память- аккумулятор . Эта базовая концепция была впервые широко представлена в 12-битной PDP-8, которая породила множество подобных конструкций, таких как 2100.
В 2100 адреса имеют длину 15 бит, что позволяет использовать в общей сложности 32 КБ 16-разрядных слов памяти (64 КБ в современных терминах). [39] Наименьшая адресуемая единица памяти - это 16-битное слово, нет инструкций, которые выбирают один 8-битный байт. Адрес разбит на две части: 5 старших битов относятся к одной из 32 «страниц», а 10 младших битов - это «смещение», указывающее на одно слово на странице размером 1024 слова. В системе DMS серии 21MX верхние 5 бит вместо этого используются для выбора одного из 32 регистров, каждый из которых содержит 12 бит. Затем 10 младших битов регистра помещаются перед исходным 10-битным смещением для получения 20-битного адреса.[22] Два старших бита используются для защиты памяти.. [22]
Большая часть обработки выполняется в двух регистрах A и B, каждый по 16 бит. Регистры также доступны в ячейках памяти 0 и 1 соответственно. Это означает, что можно загрузить значение в аккумулятор, используя обычную операцию сохранения регистра, например, LDA 1
загрузит значение регистра A в ячейку памяти 1, тем самым скопировав значение A в B. [40]
Помимо регистров A и B, ЦП также включает регистр M, в котором хранится текущий адрес памяти, и регистр T, в котором хранится значение по этому адресу. [41] Регистр P используется в качестве программного счетчика и автоматически увеличивается с каждой инструкцией, но он также используется в качестве базового адреса для некоторых обращений к памяти (см. Ниже), которые вычисляются и помещаются в M. Также есть два одно- битовые регистры, переполнение и расширение, [39] в современных терминах, эти биты будут считаться регистром состояния . Кроме того, имеется 16-битный регистр S / D (переключатель / отображение), который используется для ввода и вывода с передней панели. [42] [43]
Определенные области памяти зарезервированы для специальных целей, например ячейки 0 и 1, используемые аккумуляторами. Дополнительные слова в нижних 64 ячейках памяти используются для прямого доступа к памяти (DMA) и векторных прерываний (см. Ниже). В более поздних моделях 64 слова максимальной доступной памяти зарезервированы для загрузчика . [44]
Инструкции [ править ]
Исходный набор команд содержал 68 [5] или 70 команд. [45]
- Арифметика - сложение, приращение и, или, исключающее, или
- Управление программой - пропуск, переход, переход к подпрограмме
- Сдвиг и поворот - арифметические и логические сдвиги, 16- и 17-битное вращение
- Необязательно - умножение, деление, 32-битная загрузка и сохранение, 32-битные сдвиги
Все 68 инструкций в стандартном наборе команд имеют длину 16 бит. Большинство из них выполняется за один цикл памяти или 16 тактов [46], хотя косвенная адресация и ISZ
может использовать до 36 циклов. [42] Условное ветвление выполняется с помощью условной инструкции пропуска через одну, которая обычно является инструкцией перехода . Для подпрограмм нет стека ; вместо этого первая ячейка памяти подпрограммы резервируется, и в эту ячейку записывается адрес возврата JSB
инструкцией. [47] Это означает, что для реентерабельного кода нет внутренней поддержки ; поддержка этого должна быть добавлена через реализованный пользователем стек.
В ISA есть три основных стиля инструкций; ссылки на память, ссылки на регистры и ввод / вывод. Некоторые модели расширяли ISA дополнительным оборудованием, добавляя, например, инструкции с плавающей запятой или дополнительные целочисленные математические инструкции и инструкции памяти, но они попадали бы в те же три основные категории. [40]
Команды памяти используют четыре бита для инструкции и еще два для специальных флагов, всего шесть битов 16-битного слова. Это оставляет место для 10-битного адреса в инструкции, хранящегося в младших разрядах (LSB), от 0 до 9. Если бит 15 установлен, это указывает на «косвенную» адресацию вместо «прямой». В прямом режиме адрес в инструкции - это адрес операнда, в то время как в косвенном режиме адрес был указателем на другую ячейку памяти, которая содержала адрес операнда. Можно также установить бит 15 в этом месте, позволяя косвенному обращению иметь любую требуемую глубину, заканчиваясь, когда одно из местоположений имеет 0 в бите 15. [39] [48]
В дополнение к прямому / косвенному режиму бит 10 инструкции управляет флагом Z / C. Если установлено значение 0, это означает, что старшие пять бит адреса были равны нулю, а младшие 10 были значением в инструкции. Это обеспечивает быстрый доступ к странице Z (ero), первым 1024 словам памяти. Если установлено значение 1, адрес создается путем объединения 10 битов в инструкции с верхними 5 битами регистра P, C (текущей) страницы памяти, что позволяет обращаться к памяти как к 32 страницам из 1024 слов. [49] Таким образом, в любой момент времени можно адресовать 2048 слов; 1024 из них на нулевой странице и еще 1024 на той же странице, что и инструкция, выполняющая ссылку. [48]
Инструкции регистров не требуют адреса и, следовательно, имеют больше свободных битов для работы. Это используется для упаковки четырех или восьми инструкций в одно слово памяти [50], которое при правильном использовании может значительно ускорить выполнение операций. Всего включено 39 операций с регистром, которые разбиты на инструкции сдвига и поворота, и инструкции изменения и пропуска, обозначенные битом 10, [51], в то время как бит 11 указывает, применяется ли это к регистру A. или Б. [52]
Существует два основных класса команд регистров: группа сдвига и поворота и команда изменения и пропуска. Первый используется для базовой побитовой обработки значений в регистре и может иметь до четырех инструкций на слово, хотя две инструкции в середине всегда являются a CLE,SLA/B
(очистить E, пропустить, если A / B равно нулю). Вторая группа состоит из восьми инструкций, которые выполняют приращения регистров, а затем условный переход. Обычно они используются для реализации циклов. [51]
Ввод / вывод и прерывания [ править ]
Команды ввода / вывода обычно передаются через аккумуляторы. Формат команды начинается с битов «1000» в наиболее значимых битах, за которыми следует один бит, указывающий, какой регистр использовать (A = 0, B = 1), за которым следует «1», бит флага H / C, а затем три бита для инструкции и оставшиеся шесть битов для идентификатора устройства ввода-вывода [53] или канала, что позволяет использовать до 64 устройств. Некоторые номера устройств используются самой системой. [54]
Ввод / вывод инициируется очистка флаг бит с , STF
а затем установив С помощью бит STC
. Оборудование замечает этот шаблон и начинает свою работу. Когда операция завершена, устройство устанавливает бит флага, а затем программа загружает полученные данные с карты с помощью LI*
инструкции или отправляет их на карту с помощью OT*
. [53]
Фактическая передача данных обычно осуществляется с использованием системы прерываний. Ячейки памяти с 4 по 63 (десятичные) содержат адреса подпрограмм, к которым нужно перейти при срабатывании прерывания, обеспечивая 60 уровней прерывания. [55] Ячейки с 4 по 7 жестко привязаны к сбоям питания, ошибкам проверки четности и ошибкам защиты памяти в более поздних моделях. Ячейки 8 и выше - это доступные пользователю векторы прерываний, отображаемые на канал ввода-вывода и упорядоченные в порядке приоритета. [56] Таким образом, если устройство ввода-вывода 13 сгенерировало прерывание, ЦП переходит в ячейку памяти 13, но только если это не замаскировано прерыванием с более высоким приоритетом, с 1 по 12. [55]
Другой ключевой особенностью серии 2100 является отдельный контроллер прямого доступа к памяти, который использует кражу циклов для доступа к памяти, когда ЦП ее не использует, например, в то время, когда он выполняет внутренние вычисления. Используя эту функцию, можно выполнять длительные процессы ввода-вывода, в то время как ЦП работает над другими проблемами. Система настраивается путем отправки инструкции контроллеру DMA с помощью команд ввода / вывода; Контроллер DMA является каналом 6, и первоначально ему отправляется инструкция, содержащая номер устройства ввода-вывода, которое хочет использовать DMA, будь то ввод (запись в память из устройства) или вывод (чтение из памяти в устройство), начальное место в памяти для данных и количество слов. Этот установочный код часто устанавливается в один из векторов прерывания, автоматизируя процесс.[54] DMS имеет отдельные таблицы для ЦП и системы DMA, поэтому DMA может загружать данные в отдельные части расширенной памяти. [22]
Программирование [ править ]
HP предоставила трехпроходный ассемблер для машины [57], использующий формат с разделителями столбцов. Первая область слева от строки кода - это метка, которая должна начинаться в столбце 1, если таковой имеется. Далее идет мнемоника инструкций, затем параметры. Остальную часть строки можно использовать для комментария. Ассемблер позволяет писать основные математические выражения напрямую, вместо использования мнемоники, а также включает ряд псевдо-инструкций, таких как ORG
установка базового адреса программы. [53]
Помимо ассемблера и связанного с ним компоновщика , машины изначально поставлялись с компилятором FORTRAN 66 , операционной системой и драйверами ввода-вывода. Со временем были добавлены дополнительные языки, включая BASIC, ALGOL , FORTRAN IV [58] и FORTRAN 77 . [59]
HP перенесла реализации AGL на платформу, которая добавила в свой BASIC команды для создания графики на своих графических терминалах и плоттерах . Аналогичное расширение в их ФОРТРАНЕ называлось GRAPHICS / 1000.
Операционные системы [ править ]
2100-е обычно использовались с операционной системой Real Time Executive, сокращенно RTE. [60] Было выпущено несколько версий RTE для разных версий машины; RTE-II для 2114-2116, RTE-III для 2100-х, RTE-IV для серии 21MX и RTE-A для серии "A".
Оболочка операционной системы даже в конце 1970-х была очень примитивной, с одноуровневой файловой системой , файловым менеджером или FMGR. Например, команда для запуска компилятора FORTRAN будет следующей: [59]
ru, f77, & test, 'test,% test
это означает запуск программы f77, используя специальные символы, чтобы различать исходный файл, объект и исполняемые файлы.
HP 1000 также был одним из немногих миникомпьютеров, которые ограничивали имена файлов только пятью символами, а не шестью обычными в то время, что затрудняло перенос и даже написание программ. Более поздний RTE-A для HP 1000 обеспечивал обычную структуру каталогов с именами файлов 16.4 и делал команду ru необязательной.
TODS (Test Oriented Disk System) была разработана техническим специалистом центра ремонта плат HP для сокращения времени обслуживания в центре. Он использовался для загрузки диагностических данных из центрального хранилища, а не для загрузки отдельных бумажных лент. TODS также использовался в сериях HP с 2116 по 21MX-F для испытательных систем для ракет, таких как Phoenix (9206B), Harpoon (9500D-354), Tomahawk и многих других. Ранними тестовыми наборами были 9500A, эволюционировавший до 9500D, за которым последовала ATS (автоматизированная тестовая система); специальные тестовые системы HP, такие как набор для тестирования компонентов запуска 9500D-A46 Minuteman и набор для тестирования компонентов запуска ATS-E35 Peacekeeper / Minuteman; СВЧ-анализатор HP 8580/8542 ANA / ASA (автоматический сетевой анализатор / автоматический анализатор спектра) работал на TODS; и TDRSS Набор для тестирования микроволнового транспондера использовал TODS и представлял собой очень большую систему.
Также существовала MTOS (операционная система с магнитной лентой), аналогичная TODS.
Потомки и варианты [ править ]
В этом разделе не процитировать любые источники . Декабрь 2013 г. ) ( Узнайте, как и когда удалить этот шаблон сообщения ) ( |
Фактическая точность этого раздела оспаривается . Декабрь 2013 г. ) ( Узнайте, как и когда удалить этот шаблон сообщения ) ( |
Настольные компьютеры HP 9810, 9820 и 9830 используют медленную сериализованную TTL- версию ЦП 2116, хотя в конечном итоге они не использовали какую-либо операционную систему или прикладное программное обеспечение, вместо этого полагаясь на удобные для пользователя интерпретаторы на основе ПЗУ , такие как BASIC , которые работают при включении питания и встроенных клавиатурах и дисплеях, а не диски или стандартные терминалы . В 1975 году HP представила BPC, один из первых в мире 16-разрядных микропроцессоров , использующий процесс HP NMOS- II. [61] [62] BPC обычно упаковывался в керамический гибридный модуль с микросхемами EMC и IOC, которые добавляли расширенные математические инструкции и инструкции ввода-вывода. Гибрид был разработан как сердце нового настольного компьютера 9825. [63] Более поздняя рабочая станция 9845 добавила микросхему MMU . Это были предшественники персональных компьютеров и технических рабочих станций.
Основные различия между исходной архитектурой 2116 и микропроцессором BPC - это полностью переработанная структура ввода-вывода, удаление нескольких уровней косвенной адресации и предоставление стека для вызова и возврата подпрограмм. Устранение множественной косвенной адресации сделало доступным дополнительный бит в слове памяти, содержащем косвенный адрес, что позволило увеличить максимальный объем памяти с 32K 16-битных слов до 64K. BPC также добавил вход, позволяющий «текущей странице» быть относительно местоположения текущей инструкции, а не страницы, выровненной по степени двойки.
BPC использовался в широком спектре компьютеров HP, периферийных устройств и испытательного оборудования, пока не был снят с производства в конце 1980-х годов.
Польша производила клон HP 2114B с 1973 года. Польские клоны назывались MKJ-28 (прототип, 1973), SMC-3 (опытное производство, 17 машин, 1975-1977) и PRS-4 (производство серийно более 150 машин, 1978. -1987).
Чехословакия произвела собственные клоны, совместимые с HP 1000, получившие обозначение ADT4000 (4300, 4500, 4700, 4900). Более 1000 единиц было поставлено поставщиками Aritma Prague (разработка), ZPA Čakovice и ZPA Trutnov в период с 1973 по 1990 год. Эти компьютеры служили на электростанциях, в том числе атомных, других промышленных, военных, университетах и т.д. надежность и функции реального времени. Операционные системы были DOS / ADT (несколько версий) и Unix. Самый старый гибридный ADT7000 (1974 г.) состоял из цифровой части ADT4000 и аналоговой части ADT3000, но только цифровая часть интересовала потребителей. ADT4316 (1976 г.) имел память на ферритовом сердечнике на 16 КБ, а ADT4500 (1978 г.) - до 4 МБ ОЗУ для полупроводников. ADT 4900 разрабатывался как одноплатный компьютер., но его серийное производство так и не началось. Чехословацкая народная армия использовала мобильные миникомпьютеры MOMI 1 и MOMI 2 на базе ADT, встроенные в контейнер, перевозимый грузовиком Tatra 148.
Заметки [ править ]
- ^ Утверждается, что это первый такой пример на компьютере. [19]
- ^ Первоначальная версия Star Trek была написана в том же году длямэйнфрейма SDS Sigma 7 , но исходный код был утерян, когда он потерял доступ к этой машине. Он был переписан с нуля на HP 2000, который остается самой ранней общедоступной версией.
Ссылки [ править ]
Цитаты [ править ]
- ^ а б «2100А» .
- ^ "21-MX" .
- ^ "1000, серия L / A" .
- ^ "1000 A990" .
- ^ Б с д е е г ч я Лейбсон 2017 года .
- ^ "Dymec" .
- ^ a b «История цифрового компьютера 2116A» . HP .
- ^ "50 лет первому компьютеру HP" .
- ↑ HP 1967 , стр. 2-16.
- ^ "2114" .
- ↑ HP 1967 , стр. 2-2 (9).
- ^ a b c «Компьютерная перепись Hewlett-Packard первого поколения - Ассоциация винтажных технологий» . www.decadecounter.com . Брошюры по компьютерам HP, Дифференциальные характеристики HP 2116/15/14 . Проверено 6 февраля 2019 .
- ^ a b "Компьютеры Hewlett / Packard" .
2000A была первой системой HP 2000 с таймшерингом на рынке ок.
1969 г.
- ^ Идентификатор пользователя представляет собой букву, за которой следуют 3 цифры, что позволяет использовать до 26 000 учетных записей пользователей.
- ^ a b c "Система таймшеров 2000" .
- ^ «Прохождение 10-летнего рубежа» . Журнал MEASURE . Фирма Хьюлет-Паккард. Октябрь 1976 г.
- ^ «Вычислительная техника в ESO через века - удивительный прогресс технологий» . Изображение недели ESO . Проверено 4 июня 2012 года .
- ^ "2116" .
- ^ Пойнор, Тодд (август 1991). «25 лет вычислений в реальном времени» (PDF) . Интерфейс РЕАЛЬНОГО ВРЕМЕНИ . HP-Interex.
- ^ "Маунтин-Вью" .
- ^ a b Франкенберг 1974 , стр. 16.
- ^ а б в г Франкенберг 1974 , стр. 19.
- ^ "21MX E-Series" .
- ^ "21MX M-Series" .
- ^ "21MX F-Series" .
- ^ a b "1000, серия L / A" .
- ^ "1000 А400" .
- ^ "1000 A990" .
- ^ Брайан, Дж. Дэвид. «Особенности HP». Цитировать журнал требует
|journal=
( помощь ) - ^ "13037-60023 Интерфейс контроллера диска" . 1000 - 21МХ . Музей компьютеров HP.
- ^ "2000 Таймшер Система" .
- ^ Лучшее из творческих вычислений, Том 1 . Творческие вычисления. 1976. с. 275.
- ^ «STTR1: STAR TREK, БИБЛИОТЕКА БАЗОВЫХ ПРОГРАММ HP» . Архивировано из оригинала на 2015-02-15.
- ^ Что делать после нажатия Return . Народная компьютерная компания. 1975. с. vii.
- ^ Альбрехт, Боб (1972). Мой компьютер любит меня, когда я говорю на БЕЙСИКЕ . Dymax.
- ^ Джон Р. Делани. «Обзор и рейтинг HP 2000-2b19wm» . Журнал ПК .
HP 2000-2b19wm .. 15-дюймовый ноутбук менее чем за 300 долларов
- ^ «Купите картриджи с тонером для лазерных принтеров HP 2100 LaserJet» .
Картриджи с тонером HP 2100 LaserJet ...
- ^ «Цены на память (1957-2017)» . Джон К. Маккаллум .
- ^ a b c Peterson 2014 , стр. 371.
- ^ a b Peterson 2014 , стр. 370.
- ↑ HP 1967 , стр. 2-4.
- ^ a b HP 1967 , стр. 2-5.
- ^ 2100 1972 , стр 2-7, 2-8.
- ^ 2100 1972 , стр. 2-6.
- ^ "Обложка брошюры HP 2114/15/16" . Музей истории компьютеров .
- ↑ HP 1967 , стр. 2-2.
- Перейти ↑ Peterson 2014 , p. 372.
- ^ а б HP 1967 , стр. 2-3.
- Перейти ↑ Peterson 2014 , pp. 371-372.
- ↑ HP 1967 , стр. 2-9.
- ^ a b HP 1967 , стр. 2-11.
- Перейти ↑ HP 1967 , pp. 2-10, 2-11.
- ^ a b c Peterson 2014 , стр. 375.
- ^ a b Peterson 2014 , стр. 377.
- ^ a b HP 1967 , стр. 2-12.
- ↑ HP 1967 , стр. 2-6.
- Перейти ↑ Peterson 2014 , p. 374.
- ↑ HP 1967 , стр. 1-7.
- ^ a b Руководство по Fortran 77
- ^ Weisenberg, Майкл (28 июня 1982). «Системы с питанием от мэйнфреймов бывают микро-размеров» . InfoWorld . п. 25.
- ^ Идс, Уильям Д .; Мейтленд, Дэвид С. (июнь 1976 г.). «Высокопроизводительный процессор NMOS LSI» (PDF) . Журнал HP . 27 (10): 15–18.
- ^ Лейбсон, Стив. «Гибридный микропроцессор» . HP9825.COM . Проверено 15 июня 2008 .
- ^ США 4075679 , "программируемый калькулятор", опубликованный 1978-02-21, присваивается компании Hewlett-Packard
Библиография [ править ]
- Лейбсон, Стив (2017). «HP: случайно созданная компьютерная компания» . HP9825.COM .
- Компания Hewlett Packard. Домашняя страница HP1000 / RTE.
- Hewlett-Packard (март 1967 г.). «Раздел 2-26, Прямой / Косвенный». Компьютер HP 2116A: Технические характеристики и основные операции, Том 1 (PDF) . С. 2–3.
- Петерсон, Джеймс (2014). «Раздел 2-26, Прямой / Косвенный». Компьютерная организация и программирование на языке ассемблера . Академическая пресса. С. 369–378. ISBN 9781483268590.
- Путеводитель по компьютеру 2100 . Фирма Хьюлет-Паккард. Сентябрь 1972 г.
- Франкенберг, Роберт (октябрь 1974). «Вся полупроводниковая память выбрана для новой серии мини-компьютеров» (PDF) . Журнал Hewlett-Packard . 26 (2): 15–20.
Внешние ссылки [ править ]
- Архив Джеффа Моффата HP2100, программное обеспечение и руководства
- Симулятор с исполняемыми двоичными файлами и исходным кодом на C
- Брошюра HP 2100 1972 г.
- смонтированная в стойке система HP2100 Изображение сайта Гильерме Биттенкура сверху вниз слева: компьютер 21MX серии E, компьютер 2100A, блок питания 2100 (PS), дисковод 7905, контроллер привода 13037; справа: считыватель бумажной ленты, перфоратор для бумажной ленты, дисковод 7900, 7900 PS.
- Музей компьютеров HP: серии 1000-L и A
- Музей истории компьютеров: Путь HP , HP 2116 , 1966 год .