Burroughs B1000 Series — серия мэйнфреймовых компьютеров , созданная Burroughs Corporation и первоначально представленная в 1970-х годах с непрерывной разработкой программного обеспечения до 1987 года. Серия состояла из трех основных поколений, которые были машинами серий B1700, B1800 и B1900. Они также были известны как Burroughs Small Systems , в отличие от Burroughs Large Systems (B5000, B6000, B7000, B8000) и Burroughs Medium Systems (B2000, B3000, B4000).
Большая часть первоначальных исследований для B1700, изначально имевшего кодовое название PLP («Proper Language Processor» или «Program Language Processor»), была проведена на заводе Burroughs в Пасадене . [1]
Производство B1700 началось в середине 1970-х годов и осуществлялось на заводах в Санта-Барбаре и Льеже, Бельгия . Большая часть проектных работ была выполнена в Санта-Барбаре, за исключением B1830, разработанного в Льеже.
B1000 отличается от других машин тем, что имеет записываемое хранилище управления , позволяющее машине эмулировать любую другую машину. Программа Burroughs MCP (Master Control Program) планирует выполнение определенной задачи . MCP предварительно загружает интерпретатор для любого требуемого языка. Эти интерпретаторы представляют различные виртуальные машины для COBOL , Fortran и т. д.
Известная идея « семантического разрыва » между идеальным выражением решения конкретной проблемы программирования и реальным физическим оборудованием иллюстрировала неэффективность современных реализаций машин. Три архитектуры Burroughs представляют решение этой проблемы путем создания оборудования, соответствующего языкам высокого уровня, так называемого языково-ориентированного проектирования (современный термин; сегодня чаще называемого «архитектурой компьютеров на языке высокого уровня»). Большие системы были стековыми машинами и очень эффективно исполняли ALGOL . Средние системы (B2000, 3000 и B4000) были нацелены на деловой мир и исполняли COBOL (таким образом, все делалось с BCD , включая адресацию памяти). Серия B1000 была, пожалуй, единственным «универсальным» решением с этой точки зрения, поскольку она использовала идеализированные виртуальные машины для любого языка.
Фактическое оборудование было создано для улучшения этой возможности. Возможно, наиболее очевидными примерами были память с адресацией битов, арифметико-логическое устройство переменного размера (ALU) и возможность OR-индексации данных из регистра в регистр инструкций, что позволяло очень эффективно выполнять синтаксический анализ инструкций. Другой особенностью машинного языка было появление выходных данных ALU в виде различных адресуемых регистров. X+Y и XY — два регистра только для чтения в машинном языке.
Одной из уступок тому факту, что Burroughs в первую очередь был поставщиком для бизнеса (и, следовательно, использовал COBOL), была доступность арифметики BCD в АЛУ .
Внутри машины использовали 16-битные инструкции и 24-битный путь данных. Побитно адресуемая память поддерживала микс довольно эффективно. Внутри более поздние поколения памяти хранили данные на 32-битных границах, но были способны читать через эту границу и предоставлять объединенный результат.
Первоначальные аппаратные реализации были построены на основе семейства комплементарных транзисторных схем (CTL), изначально созданного Fairchild Semiconductor, но с появлением B1955 в 1979 году серия использовала более популярное (и более легкодоступное) семейство схем TTL . Вплоть до B1955 логика управления была реализована с помощью PROM , мультиплексоров и т. п.
B1965, последний из серии, был реализован с парой микрокодовых секвенсоров, которые оставались в синхронном режиме друг с другом. Большинство инструкций выполнялось за один цикл. Этот первый цикл был декодирован FPLA с использованием 16 входов (идеальный размер для 16-битного командного слова) и 48 мин-термов . Последовательные циклы из многоцикловой инструкции были получены из PROM. FPLA и выходы PROM были соединены вместе. FPLA управлял выходом в первом цикле, затем становился трехстадийным. PROM управляли линиями управления до завершения инструкции.
Система ввода-вывода для серии B1000 состояла из 24-битного пути данных и управляющих стробов к периферийным устройствам и от них. ЦП помещал данные на путь данных, а затем информировал периферийное устройство о наличии данных. Многие из периферийных адаптеров были довольно простыми, и ЦП фактически управлял конечными автоматами адаптеров через их операции с последовательными доступами.
Более поздние модели машин серий 1800 и 1900 могли быть сконфигурированы как одно- или двухпроцессорные. Это были тесно связанные машины, конкурирующие за доступ к основной памяти. B1955 и B1965 могли вмещать до четырех процессоров на шине памяти, но по крайней мере один из них был назначен адаптеру Multi-Line, который обеспечивал последовательный ввод-вывод в систему. Фактически продавались только конфигурации с двумя процессорами.
Multi-Line был способен управлять несколькими последовательными линиями RS485 19,2 Кбит в многоточечной конфигурации. Последовательный ввод-вывод опрашивался. Определенный терминал ждал, пока к нему не будут применены команды, захватывал линию и отправлял любые данные, которые у него были в ожидании.
Многолинейный адаптер пересылал данные в основную память в формате связанного списка . Следовательно, процессорам не приходилось иметь дело с проблемами прерываний последовательного ввода-вывода. Это решалось тем фактом, что единственным поддерживаемым типом были терминалы блочного режима.
Серия B1000 могла адресовать максимум 2 мегабайта памяти. В наши дни нескольких гигабайт это звучит довольно ограниченно, но большинство коммерческих установок обходились сотнями килобайт памяти.