Введение
Компьютерная шина Micro Channel, или микроканальная шина, — это запатентованная 16- или 32-битная параллельная компьютерная шина, представленная компанией IBM в 1987 году и использовавшаяся в компьютерах PS/2 и других до середины 1990-х годов. Её название обычно сокращают как "MCA", хотя IBM этого не делает. В продукции IBM она пришла на смену шине ISA и впоследствии сама была заменена архитектурой шины PCI.
Micro Channel architecture, or the Micro Channel bus, is a proprietary 16 or 32 bit parallel computer bus introduced by IBM in 1987 which was used on PS/2 and other computers until the mid 1990s. Its name is commonly abbreviated as "MCA", although not by IBM. In IBM products, it superseded the ISA bus and was itself subsequently superseded by the PCI bus architecture.
Предыстория
Развитие Micro Channel было вызвано как техническими, так и бизнес-факторами.
Доля рынка
Считалось, что, создав новый стандарт, IBM вновь получит контроль над стандартизацией посредством обязательного лицензирования. Однако, поскольку получение патентов может занять три года и более, к моменту анонса Micro Channel лицензироваться могли только патенты, связанные с ISA. Патенты на важные функции Micro Channel, такие как автоматическая конфигурация Plug and Play, были выданы IBM лишь после того, как PCI вытеснил Micro Channel с рынка. Общая реакция была сдержанной, а влияние Micro Channel на мировом рынке персональных компьютеров оказалось незначительным.
Дизайн
Архитектура Micro Channel была разработана инженером Четом Хитом. Многие из разработанных карт Micro Channel использовали контроллер интерфейса CHIPS P82C612 MCA, что значительно облегчило создание реализаций MCA.
Обзор
Micro Channel был в основном 32-битной шиной, но система также поддерживала 16-битный режим, разработанный для снижения стоимости разъемов и логики в машинах на базе Intel, таких как IBM PS/2. Однако ситуация была не столь простой: как 32-битные, так и 16-битные версии изначально имели ряд дополнительных разъемов для карт памяти, что привело к огромному количеству физически несовместимых карт памяти, подключаемых к шине. Со временем память перешла на локальную шину процессора, что устранило эту проблему. С положительной стороны, качество сигнала значительно улучшилось, поскольку Micro Channel добавил контакты заземления и питания и расположил их таким образом, чтобы минимизировать помехи: заземление или питание находились в пределах трех контактов от каждого сигнала. Также было добавлено расширение разъема для видеокарт. Это расширение использовалось для аналогового сигнала с видеокарты, который затем направлялся через системную плату на собственный выход монитора системы. Преимущество заключалось в том, что на системных платах Micro Channel могла быть установлена базовая графическая система VGA или MCGA, а графические карты более высокого уровня (XGA или другие ускорители) могли использовать тот же порт. Дополнительные карты могли обходиться без устаревших VGA-режимов, используя встроенную графическую систему при необходимости, и позволяли использовать один разъем системной платы для графики, который можно было модернизировать. Карты Micro Channel также имели уникальный 16-битный программно-читаемый идентификатор, который стал основой ранней системы Plug and Play. BIOS и/или ОС могли считывать идентификаторы, сравнивать их со списком известных карт и выполнять автоматическую настройку системы. Это приводило к сбоям при загрузке, когда более старая версия BIOS не распознавала новую карту, вызывая ошибку при запуске. В свою очередь, это вынудило IBM регулярно выпускать обновленные загрузочные диски (The CMOS Setup Utility). Достаточно полный список известных идентификаторов доступен (см. раздел «Внешние ссылки»). В комплекте с этими загрузочными дисками шли ADF-файлы, которые считывались программой настройки и предоставляли информацию о конфигурации карты. ADF был простым текстовым файлом, содержащим информацию об адресации памяти и прерываниях карты. Хотя карты MCA стоили почти вдвое дороже, чем сопоставимые карты, не относящиеся к MCA, маркетинг подчеркивал, что любому пользователю было легко обновить или добавить дополнительные карты в свой ПК, тем самым экономя значительные расходы на услуги техника. В этой критической области самое большое преимущество архитектуры Micro Channel было одновременно и ее самым большим недостатком, и одной из основных причин ее упадка. Чтобы добавить новую карту (видео, принтер, память, сеть, модем и т. д.), пользователю просто нужно было подключить карту MCA и вставить настроечную дискету (которая поставлялась с ПК), чтобы автоматически интегрировать новую карту в исходное оборудование, вместо того чтобы обращаться к дорого обученному технику, который мог бы вручную внести все необходимые изменения. Все настройки прерываний (часто сложная задача) и другие изменения выполнялись автоматически ПК, считывая старую конфигурацию с дискеты, внося необходимые изменения в программное обеспечение, а затем записывая новую конфигурацию обратно на дискету. Однако на практике это означало, что пользователь должен был хранить ту же дискету, привязанную к этому ПК. Для небольшой компании с несколькими ПК это было неудобно, но выполнимо. Но для крупных организаций с сотнями или даже тысячами ПК постоянное сопоставление каждого ПК с собственной дискетой было логистически маловероятным или невозможным. Без оригинальной обновленной дискеты никакие изменения в картах ПК не могли быть внесены. После того, как этот опыт повторился тысячи раз, руководители бизнеса поняли, что их идеальный сценарий простоты обновления не работал в корпоративном мире, и они стали искать лучший процесс.
Передача данных
Базовая скорость передачи данных микроканала была увеличена с 8 МГц до 10 МГц. Это могло быть скромным увеличением с точки зрения тактовой частоты, но большая ширина шины, в сочетании с выделенным контроллером шины, использовавшим передачи в режиме burst mode, означала, что эффективная пропускная способность была до пяти раз выше, чем у ISA. Для более быстрой передачи адресная шина могла быть повторно использована для данных, что еще больше увеличивало эффективную ширину шины. При частоте 10 МГц достигалась пропускная способность 40 МБ/с при 32-битной ширине, а в более поздних моделях RS/6000 скорость передачи данных была увеличена до 20 МГц, а пропускная способность – до 80 МБ/с. Некоторые функции микроканала с более высокой пропускной способностью были доступны только на платформе RS/6000 и первоначально не поддерживались на картах, работающих на платформе Intel. Благодаря bus mastering, каждая карта могла напрямую взаимодействовать с другой, что обеспечивало производительность, независимую от центрального процессора. Одним из потенциальных недостатков многомастерной архитектуры были возможные коллизии при попытке нескольких карт одновременно получить управление шиной, но Micro Channel включал в себя механизм арбитража для устранения таких ситуаций и позволял мастеру использовать burst mode. Карты Micro Channel имели полный контроль над шиной до 12 миллисекунд, что было достаточно для буферизации входящих данных от устройств, таких как ленточные накопители и устройства связи, которые могли переполнить буфер. Поддержка нескольких bus master и улучшенный арбитраж позволяли нескольким таким устройствам сосуществовать и совместно использовать системную шину. Устройства, поддерживающие bus mastering в Micro Channel, могли даже использовать шину для прямого обмена данными друг с другом (peer-to-peer) со скоростью, превышающей скорость системного процессора, без какого-либо вмешательства системы. Теоретически, системы на архитектуре Micro Channel могли масштабироваться, как мэйнфреймы, путем добавления только интеллектуальных bus master, без необходимости периодической модернизации центрального процессора. Улучшенный арбитраж обеспечивал более высокую пропускную способность системы за счет более эффективной передачи управления. Усовершенствованная обработка прерываний подразумевала использование прерываний, чувствительных к уровню, для обработки системных запросов. Вместо выделенной линии прерывания можно было совместно использовать несколько линий для обеспечения большего количества возможных прерываний, что решало проблему конфликтов линий прерывания шины ISA. Все сигналы запроса прерывания были "публичными" в архитектуре Micro Channel, что позволяло любой карте в шине функционировать как процессор ввода-вывода для непосредственного обслуживания прерываний устройств ввода-вывода. ISA ограничивала всю такую обработку только процессором системы. Аналогично, сигналы запроса и подтверждения bus mastering были публичными, что позволяло устройствам, подключенным к шине, отслеживать задержку для управления внутренним буфером процессоров ввода-вывода. Эти функции не были реализованы в PCI, что требовало, чтобы вся поддержка ввода-вывода осуществлялась исключительно процессором системной платы. Последним важным улучшением архитектуры Micro Channel был POS (Programmable Option Select) – программируемый выбор опций, который позволял выполнять все настройки программным путем. Сейчас это воспринимается как должное, но в то время настройка была сложной задачей для систем ISA. POS была простой системой, включавшей идентификаторы устройств в прошивке, которые должны были интерпретироваться драйверами компьютера. (Этот тип системы программной конфигурации сегодня известен как Plug and Play). Однако эта функция не оправдала ожиданий: автоматическая конфигурация работала хорошо, когда работала, но часто давала сбой, приводя к не загружаемому компьютеру, и устранение проблемы вручную было намного сложнее, чем настройка системы ISA, отчасти потому, что документация к устройству MCA обычно предполагала, что автоматическая конфигурация будет работать, и поэтому не предоставляла необходимой информации для ручной настройки, в отличие от документации к устройствам ISA, которая по необходимости содержала подробные сведения (однако физическое удаление и проверка всех настроек IRQ, а затем поиск и установка нового IRQ для нового устройства – если подходящий был доступен – для ISA не было приятным занятием и было недоступно многим пользователям. Очевидно, почему была предпринята попытка перейти к программной арбитражной конфигурации, и почему эта попытка в конечном итоге увенчалась успехом в виде PnP).
Прием
В ноябре 1983 года журнал The Economist заявил, что доминирование стандарта IBM PC на рынке персональных компьютеров не является проблемой, поскольку "это может способствовать развитию конкуренции". Журнал предсказал, что архитектура Micro Channel была впервые представлена вместе с выпуском линейки PS/2 в 1987 году, и три из четырех новых машин были оснащены ею. Ее использование в IBM распространилось на RS/6000, AS/400 и, в конечном итоге, на системы IBM 9370 – самые младшие представители линейки System/370. IBM лицензировала эту архитектуру другим компаниям за комиссию от одного до пяти процентов от выручки. Tandy Corporation первой выпустила компьютер на базе Micro Channel – модель 5000 MC, но глава компании Джон Роуч сказал: "Я удивлен, что вообще кто-то захочет ее использовать"; Tandy продавала этот компьютер, по его словам, только потому, что на него был некоторый спрос. NCR Corporation полностью приняла Micro Channel: они разработали и построили высокопроизводительные персональные компьютеры, рабочие станции и серверные платформы с ее поддержкой, включая собственные логические компоненты на основе архитектуры Micro Channel, такие как SCSI, графические адаптеры, сетевые карты и звуковые карты. Несколько других производителей, включая Apricot, Dell, Research Machines и Olivetti, также приняли ее, но лишь для части своего модельного ряда ПК. Несмотря на то, что MCA представляла собой значительное техническое улучшение по сравнению с ISA, вскоре стало очевидно, что IBM плохо организовала ее внедрение и маркетинг. IBM обладала сильными патентами на системные особенности архитектуры Micro Channel и требовала от производителей систем Micro Channel выплаты лицензионных сборов, а также активно добивалась патентов, чтобы блокировать продажу третьими лицами нелицензионных реализаций. Рынок клонов ПК не хотел платить IBM роялти за использование этой новой технологии и в основном оставался на 16-битной шине AT (которая была принята и переименована в ISA, чтобы избежать товарного знака "AT" от IBM) и ручной конфигурации, хотя VESA Local Bus (VLB) на короткое время приобрела популярность для машин Intel '486. Для серверов технические ограничения старой ISA были слишком серьезными, и в конце 1988 года "Группа девяти" во главе с Compaq объявила о создании конкурирующей высокопроизводительной шины – Extended Industry Standard Architecture (EISA). Она предлагала аналогичные преимущества Micro Channel, но с двумя дополнительными преимуществами: возможность использования старых плат ISA и независимость от контроля IBM. В течение нескольких лет EISA и Micro Channel боролись за долю рынка в сегменте серверов, но в 1996 году IBM фактически признала свое поражение, выпустив собственные серверы с шиной EISA. В 2001 году руководитель IBM Роберт Моффет заявил, что из ошибок компании на рынке ПК "самой очевидной является Micro Channel". В течение нескольких лет после появления в 1992 году PCI в значительной степени вытеснила Micro Channel, EISA и VLB.
Micro Channel architecture was first introduced at the launch of the PS/2 range in 1987, with three out of four of the new machines featuring it. Its use in IBM spread to the RS/6000, AS/400, and eventually to the IBM 9370 systems smallest members of the System/370 range. IBM licensed the architecture to other companies for one to five percent of revenue. Tandy Corporation was the first to ship a Micro Channel based computer, the 5000 MC, but company head John Roach said "I'm surprised anybody at all would want it"; Tandy only sold the computer, he said, because there was some demand for it. NCR Corporation adopted Micro Channel comprehensively they designed and built high performance personal computer, workstation and server platforms supporting it, including their own Micro Channel architecture based logic componentry, including SCSI, graphics, networking, and audio. A small number of other manufacturers, including Apricot, Dell, Research Machines, and Olivetti adopted it, but only for part of their PC range. Despite the fact that MCA was a huge technical improvement over ISA, it soon became clear that its introduction and marketing by IBM was poorly handled. IBM had strong patents on Micro Channel architecture system features, and required Micro Channel system manufacturers to pay a licence fee and actively pursued patents to block third parties from selling unlicensed implementations of it. The PC clone market did not want to pay royalties to IBM in order to use this new technology, and stayed largely with the 16 bit AT bus, (embraced and renamed as ISA to avoid IBM's "AT" trademark) and manual configuration, although the VESA Local Bus (VLB) was briefly popular for Intel '486 machines. For servers the technical limitations of the old ISA were too great, and, in late 1988, the "Gang of Nine", led by Compaq, announced a rival high performance bus Extended Industry Standard Architecture (EISA). This offered similar performance benefits to Micro Channel, but with the twin advantage of being able to accept older ISA boards and being free from IBM's control. For several years EISA and Micro Channel battled it out in the server arena, but, in 1996, IBM effectively conceded defeat, when they themselves produced some EISA bus servers. In 2001 IBM executive Robert Moffat said that of the company's mistakes in the PC market, "the most obvious one is Micro Channel". Within a few years of its arrival in 1992, PCI had largely superseded Micro Channel, EISA, and VLB.
Консорциум
В ответ на распространение EISA, IBM и тринадцать производителей карт Micro Channel и периферийных устройств сформировали Ассоциацию разработчиков Micro Channel. Этот консорциум был создан для рассмотрения и определения приоритетов в развитии Micro Channel, а также для поиска более эффективных способов распространения технической информации о Micro Channel среди сторонних разработчиков. К 1992 году в ассоциацию входило 92 члена, включая IBM. Даже после прекращения IBM выпуска систем MCA в 1995 году, консорциум продолжал проводить встречи и поддерживал онлайн-каталог устройств MCA.
Усыновление третьей стороной
В конце 1980-х – начале 1990-х годов было выпущено несколько компьютеров, не являющихся PS/2. Эти компьютеры сторонних производителей также назывались клонами PS/2 или клонами MCA. Первым компьютером стороннего производителя на базе микроканала стал Tandy Corporation 5000 MC в 1988 году. Несмотря на значительные затраты на исследования и разработки со стороны производителей компьютеров Micro Channel – частично из-за высоких лицензионных сборов, которые IBM взимала за право законного использования технологии Micro Channel – к 1990 году большинство клонов MCA не обладали полной совместимостью с архитектурой Micro Channel или платами расширения на базе Micro Channel. К моменту, когда IBM прекратила выпуск линейки персональных компьютеров PS/2 (которая в 1987 году послужила средством представления Micro Channel широкой публике), в 1992 году, NCR Corporation оставалась одним из немногих производителей, продолжавших выпускать клоны MCA.
Карты
Карты расширения для шины Micro Channel обычно предназначались для высокопроизводительных графических рабочих станций или серверов, обеспечивая подключения SCSI, Token Ring, Ethernet, IBM 5250 и IBM 3270.