Архитектура Micro Channel , или шина Micro Channel , — это фирменная 16- или 32-битная параллельная компьютерная шина, публично представленная IBM в 1987 году, которая использовалась на PS/2 и других компьютерах до середины 1990-х годов. Ее название обычно сокращается до « MCA », хотя IBM этого не делает. В продуктах IBM она заменила шину ISA и сама впоследствии была заменена архитектурой шины PCI .
Развитие Micro Channel было обусловлено как техническими, так и деловыми факторами.
Шина IBM AT , которая позже стала известна как шина промышленной стандартной архитектуры (ISA), имела ряд технических ограничений конструкции, в том числе:
Кроме того, возникли и другие проблемы:
Эти ограничения стали более серьезными по мере роста спектра задач и периферийных устройств, а также количества производителей IBM PC-совместимых компьютеров . IBM уже исследовала возможность использования процессоров RISC в настольных компьютерах и могла бы, теоретически, сэкономить значительные средства, если бы можно было использовать одну хорошо документированную шину во всей линейке компьютеров.
Считалось, что, создав новый стандарт, IBM восстановит контроль над стандартами посредством необходимого лицензирования. Однако, поскольку патенты могут выдаваться три года и более, только те, которые касаются ISA, могли быть лицензированы, когда был объявлен Micro Channel. Патенты на важные функции Micro Channel, такие как автоматическая конфигурация Plug and Play , не были предоставлены IBM до тех пор, пока PCI не заменил Micro Channel на рынке. В целом прием был прохладным, а влияние Micro Channel на мировом рынке ПК было незначительным.
Архитектура Micro Channel была разработана инженером Четом Хитом. [1] [2] Многие разработанные карты Micro Channel использовали контроллер интерфейса MCA Chips and Technologies P82C612, что значительно упростило реализацию MCA. [3]
Micro Channel изначально представлял собой 32-битную шину, но система также поддерживала 16-битный режим, разработанный для снижения стоимости разъемов и логики в машинах на базе Intel, таких как IBM PS/2 .
Однако ситуация никогда не была такой простой, поскольку и 32-битная, и 16-битная версии изначально имели ряд дополнительных опциональных разъемов для карт памяти, что привело к огромному количеству физически несовместимых карт для памяти, подключенной к шине. Со временем память переместилась на локальную шину ЦП , тем самым устранив проблему. С другой стороны, качество сигнала значительно улучшилось, поскольку Micro Channel добавила контакты заземления и питания и расположила контакты так, чтобы минимизировать помехи; таким образом, заземление или питание были расположены в пределах 3 контактов от каждого сигнала.
Другое расширение разъема было включено для графических карт . Это расширение использовалось для аналогового выхода с видеокарты, который затем направлялся через системную плату на собственный выход монитора системы. Преимущество этого заключалось в том, что системные платы Micro Channel могли иметь базовую графическую систему VGA или MCGA на борту, а графика более высокого уровня ( XGA или другие карты-ускорители) могла затем использовать тот же порт. Затем дополнительные карты могли быть свободны от « устаревших » режимов VGA, используя встроенную графическую систему при необходимости и позволяя использовать один разъем системной платы для графики, которую можно было бы обновить.
Карты Micro Channel также имели уникальный 16-битный программно-считываемый идентификатор, который лег в основу ранней системы plug and play. BIOS и/или ОС могут считывать идентификаторы, сравнивать их со списком известных карт и выполнять автоматическую настройку системы в соответствии с требованиями. Это приводило к сбоям загрузки, когда старый BIOS не распознавал новую карту, вызывая ошибку при запуске. В свою очередь, это потребовало от IBM регулярно выпускать обновленные справочные диски ( CMOS Setup Utility). Доступен довольно полный список известных идентификаторов (см. раздел Внешние ссылки). К этим справочным дискам прилагались файлы ADF, которые считывались программой установки, которая, в свою очередь, предоставляла информацию о конфигурации карты. ADF представлял собой простой текстовый файл, содержащий информацию об адресации памяти карты и прерываниях.
Хотя карты MCA стоят почти вдвое дороже сопоставимых не-MCA карт, в маркетинге подчеркивалось, что любому пользователю будет легко обновить или добавить больше карт в свой ПК, тем самым сэкономив значительные расходы на техника. В этой критической области самое большое преимущество архитектуры Micro Channel было также ее самым большим недостатком и одной из главных причин ее упадка. Чтобы добавить новую карту (видео, принтер, память, сеть, модем и т. д.), пользователь просто подключал карту MCA и вставлял настроенную дискету ( которая поставлялась с ПК), чтобы автоматически интегрировать новую карту в исходное оборудование, вместо того, чтобы приглашать дорогостоящего обученного техника, который мог бы вручную внести все необходимые изменения. Все выборы для прерываний (часто озадачивающая проблема) и другие изменения выполнялись автоматически, когда ПК считывал старую конфигурацию с дискеты, что вносило необходимые изменения в программное обеспечение, а затем записывало новую конфигурацию на дискету. На практике, однако, это означало, что пользователь должен был сохранить ту же дискету, соответствующую этому ПК . Для небольшой компании с несколькими ПК это было раздражающе, но практично. Но для крупных организаций с сотнями или даже тысячами ПК постоянное соответствие каждого ПК его собственной дискете было логистически маловероятно или невозможно. Без оригинальной обновленной дискеты нельзя было вносить изменения в карты ПК. После того, как этот опыт повторился тысячи раз, руководители бизнеса поняли, что их идеальный сценарий простоты обновления не работает в корпоративном мире, и они искали лучший процесс.
Базовая скорость передачи данных Micro Channel была увеличена с 8 МГц ISA до 10 МГц. Это могло быть скромным увеличением с точки зрения тактовой частоты, но большая ширина шины в сочетании с выделенным контроллером шины, который использовал пакетный режим передачи, означала, что эффективная пропускная способность была в пять раз выше, чем у ISA. Для более быстрой передачи адресная шина могла быть повторно использована для данных, что еще больше увеличивало эффективную ширину шины. В то время как скорость 10 МГц обеспечивала пропускную способность 40 МБ/с при 32-битной ширине, более поздние модели машин RS/6000 увеличили скорость передачи данных до 20 МГц, а пропускную способность — до 80 МБ/с. [4] Некоторые функции более высокой пропускной способности шины Micro Channel были доступны только для платформы RS/6000 и изначально не поддерживались на картах, работающих на платформе Intel. [5]
С помощью управления шиной каждая карта могла напрямую общаться с другой. Это позволяло добиться производительности, которая не зависела от ЦП. Одним из потенциальных недостатков конструкции с несколькими мастерами были возможные коллизии, когда более одной карты пытались управлять шиной, но Micro Channel включал функцию арбитража для исправления таких ситуаций, а также позволял мастеру использовать пакетный режим . Карты Micro Channel имели полный контроль в течение 12 миллисекунд . Этого было достаточно, чтобы позволить максимальному количеству других устройств на шине буферизировать входящие данные от перегруженных устройств, таких как лента и коммуникации.
Поддержка нескольких мастеров шины и улучшенный арбитраж означают, что несколько таких устройств могут сосуществовать и совместно использовать системную шину. Устройства с поддержкой мастера шины Micro Channel могут даже использовать шину для прямого общения друг с другом ( peer-to-peer ) на скоростях, превышающих скорость центрального процессора системы, без какого-либо вмешательства со стороны другой системы. Теоретически системы архитектуры Micro Channel могут быть расширены, как мэйнфреймы , только с добавлением интеллектуальных мастеров, без периодической необходимости обновления центрального процессора.
Улучшение арбитража обеспечивает лучшую пропускную способность системы, поскольку управление передается более эффективно. Расширенная обработка прерываний относится к использованию чувствительных к уровню прерываний для обработки системных запросов. Вместо выделенной линии прерывания можно использовать несколько линий для предоставления большего количества возможных прерываний, решая проблемы конфликта линий прерываний шины ISA.
Все сигналы запроса прерывания были «публичными» в архитектуре Micro Channel, что позволяло любой карте на шине функционировать как процессор ввода-вывода для прямого обслуживания прерываний устройств ввода-вывода. ISA ограничила всю такую обработку только ЦП системы. Аналогично, сигналы запроса и предоставления мастера шины были публичными, так что устройства, подключенные к шине, могли отслеживать задержку для управления внутренней буферизацией для процессоров ввода-вывода. Эти функции не были приняты для PCI, требуя, чтобы вся поддержка ввода-вывода исходила исключительно от процессора системной платы.
Последним крупным усовершенствованием архитектуры Micro Channel стал POS , Programmable Option Select , который позволял выполнять всю настройку в программном обеспечении. Сейчас эта функция считается само собой разумеющейся, но в то время настройка была огромной рутиной для систем ISA. POS была простой системой, которая включала идентификаторы устройств в прошивку, которую драйверы в компьютере должны были интерпретировать. (Этот тип системы конфигурации программного обеспечения сегодня известен как plug and play .) Функция на самом деле не оправдала своих обещаний; автоматическая настройка работала нормально, когда работала, но часто этого не происходило, что приводило к невозможности загрузки компьютера, а решение проблемы вручную было гораздо сложнее, чем настройка системы ISA, не в последнюю очередь потому, что документация к устройству MCA, как правило, предполагала, что автоматическая настройка будет работать, и поэтому не предоставляла необходимой информации для ее ручной настройки, в отличие от документации к устройству ISA, которая по необходимости предоставляла полную информацию (однако необходимость физически удалять и проверять все настройки IRQ , а затем находить и устанавливать новый IRQ для нового устройства — если подходящий был доступен — для ISA была совсем неинтересной и выходила за рамки возможностей многих пользователей... очевидно, почему была предпринята попытка перейти к конфигурации с программным управлением, и почему это впоследствии увенчалось успехом в форме PnP .)
В ноябре 1983 года The Economist заявил, что доминирование стандарта IBM PC на рынке персональных компьютеров не является проблемой, поскольку «оно может способствовать процветанию конкуренции». Журнал предсказал, что [6]
IBM скоро станет таким же пленником своих стандартов, как и ее конкуренты. Как только будет куплено достаточно машин IBM, IBM не сможет вносить внезапные изменения в их базовую конструкцию; то, что может быть полезно для избавления от конкурентов, оттолкнет еще больше клиентов.
Архитектура Micro Channel была публично представлена при запуске линейки PS/2 в 1987 году, и три из четырех новых машин имели ее. [NB 3] IBM фактически осторожно представила архитектуру Micro Channel в октябре 1986 года, за полгода до появления IBM PS/2, как часть своей серии промышленных компьютеров "Gearbox" 7552. Эти компьютеры были монтируемыми в стойку, прочными, модульными промышленными ПК . Они имели гибридную 16-битную шину MCA и ISA, при этом некоторые сигнальные линии ISA были отключены. [7] [8] [9] [10]
Использование MCA в IBM распространилось на системы RS/6000 , AS/400 и, в конечном итоге, на системы IBM 9370 — самые маленькие представители семейства System/370 . [11] [12]
IBM лицензировала архитектуру другим компаниям за один-пять процентов от выручки. [13] Tandy Corporation была первой, кто поставил компьютер на базе Micro Channel, 5000 MC, но глава компании Джон Роуч сказал: «Я удивлен, что кто-то вообще захотел его»; Tandy продала компьютер только потому, что на него был некоторый спрос. [14] NCR Corporation приняла Micro Channel всесторонне — они спроектировали и построили высокопроизводительные персональные компьютеры, рабочие станции и серверные платформы, поддерживающие его, включая их собственные логические компоненты на базе архитектуры Micro Channel, включая SCSI, графику, сетевое оборудование и аудио. Небольшое количество других производителей, включая Apricot , Dell , Research Machines и Olivetti , приняли его, но только для части своего ассортимента ПК.
Несмотря на то, что MCA была огромным техническим усовершенствованием по сравнению с ISA, вскоре стало ясно, что ее внедрение и маркетинг IBM были плохо организованы. IBM имела сильные патенты на системные функции архитектуры Micro Channel и требовала от производителей систем Micro Channel платить лицензионный сбор - и активно добивалась патентов, чтобы не допустить продажи третьими лицами нелицензированных реализаций. Рынок клонов ПК не хотел платить роялти IBM за использование этой новой технологии и в основном оставался с 16-битной шиной AT (принятой и переименованной в ISA, чтобы избежать торговой марки IBM "AT") и ручной настройкой, хотя локальная шина VESA (VLB) была недолго популярна для машин Intel '486 .
Для серверов технические ограничения старой ISA были слишком велики, и в конце 1988 года « Банда девяти » во главе с Compaq анонсировала конкурирующую высокопроизводительную шину — Extended Industry Standard Architecture (EISA). Она предлагала аналогичные преимущества производительности Micro Channel, но с двойным преимуществом — возможностью принимать старые платы ISA и свободой от контроля IBM.
В течение нескольких лет EISA и Micro Channel боролись на арене серверов, но в 1996 году IBM фактически признала поражение, когда сама выпустила несколько серверов с шиной EISA. [15] В 2001 году руководитель IBM Роберт Моффат сказал, что из ошибок компании на рынке ПК «самой очевидной является Micro Channel». [16]
За несколько лет с момента своего появления в 1992 году PCI в значительной степени вытеснил Micro Channel, EISA и VLB.
В ответ на рост EISA, IBM и тринадцать производителей карт Micro Channel и периферийных устройств сформировали Ассоциацию разработчиков Micro Channel . Это был консорциум , который стремился рассмотреть и расставить приоритеты в развитии Micro Channel, а также изучить лучшие подходы к распространению технической информации о Micro Channel третьим лицам. [17] В 1992 году он достиг 92 членов, включая IBM. [18] Даже после того, как IBM прекратила выпуск систем MCA в 1995 году, консорциум продолжал проводить встречи и поддерживать каталог устройств MCA в сети. [19]
В период с конца 1980-х по начало 1990-х годов было произведено несколько компьютеров, не поддерживающих PS/2. Такие компьютеры сторонних производителей также назывались клонами PS/2 или клонами MCA . [20] [21] Первым сторонним компьютером на базе Micro Channel был Tandy Corporation 5000 MC в 1988 году. [22] [23] [24] Несмотря на высокие затраты на исследования и разработки со стороны сторонних производителей компьютеров Micro Channel — отчасти из-за высоких лицензионных сборов, которые IBM внесла, чтобы разрешить легальное использование технологии Micro Channel — к 1990 году большинство клонов MCA не были полностью совместимы с архитектурой Micro Channel или картами расширения на основе Micro Channel. [25] К тому времени, как IBM в 1992 году свернула линейку персональных компьютеров PS/2 (которая в 1987 году послужила средством представления Micro Channel широкой публике), NCR Corporation оставалась одним из немногих оставшихся преданных поставщиков клонов MCA. [26]
Платы расширения для шины Micro Channel обычно ориентированы на высокопроизводительные графические рабочие станции или серверы с соединениями SCSI , Token Ring , Ethernet , IBM 5250 и IBM 3270 .
Было произведено очень мало звуковых карт MCA. Вот несколько примеров:
IBM не рекламирует PS/2 как машину для заводского цеха, однако структура шины объединительной платы PS/2, Micro Channel, появилась в заводском компьютере до того, как сам PS/2 появился на рынке. Люди, которые исследовали IBM 7552 Gearbox, якобы укрепленную на заводе версию AT, заметили нечто странное в шине устройства: у нее было больше линий шины, чем могла бы объяснить шина AT. Дополнительные линии оказались 16-битным Micro Channel. Никто в IBM ничего не сказал об этом в то время, потому что PS/2 еще не был представлен.