Все мы с вами привыкли к тому, что балом на рынке x86-процессоров правят всем известные Intel и AMD. Некоторые читатели могут вспомнить также процессоры VIA (Centaur), которые массово применялись в тонких клиентах и ноутбуках в середине нулевых, единицы знают про чипы Transmeta серии Crusoe, которые отличались концептуально близкой к Эльбрусу VLIW-архитектурой, ну а совсем уж гики могут вспомнить Vortex86 - экзотические x86-процессоры, предназначенные для встраиваемых систем.

Однако люди незаслуженно забывают про Cyrix MediaGX - уникальный процессор родом из 1997 года, который интегрировал в двух чипах целый компьютер: и видеокарту, и звуковую карту, и PCI/ISA/IDE-контроллеры, и даже USB! Что за чудесный процессор сделала Cyrix, каким образом он прожил почти до конца нулевых, и причём тут AMD - читайте в сегодняшней статье!

❯ Предисловие

Компания Cyrix широко известна в кругах гиков ретрокомпьютинга. Во время гонки x86-совместимых процессоров в конце 80-х и начале 90-х, фирма прославилась за счёт выпуска быстрых FPU для 286'ых и 386'ых процессоров - причём они не просто работали не хуже чем чипы от Intel и AMD, но ещё и заметно обгоняли их во многих задачах. Дело в том, что архитектура ПК в те годы была максимально модульной для возможности урезания функционала и соответственно удешевления и без того дорогих компьютеров. Засунуть FPU в один чип с процессором не позволял огромный техпроцесс и дороговизна кристалла, а поскольку архитектура x86-ых позволяла расширять свою ISA за счёт инструкции ESC и подключения внешних сопроцессоров на IO-шину процессора, инженеры Intel решили вынести модуль для обработки чисел с плавающей точкой в отдельный чип - и его апгрейд с Intel x87 на Cyrix x87 помогал заметно ускорить как инженерный и бизнес-софт, так и 3D-игры.

Концептуальная архитектура 387'ого - мы можем наблюдать собственный регистровый файл, декодер инструкций и даже ROM с микрокодом. По сути, это сам по себе был маленький процессор, только для чисел с плавающей точкой!
Концептуальная архитектура 387'ого - мы можем наблюдать собственный регистровый файл, декодер инструкций и даже ROM с микрокодом. По сути, это сам по себе был маленький процессор, только для чисел с плавающей точкой!

FastMath был выпущен в ноябре 1989 года и стал первым успехом для Cyrix на рынке ПК-железа. Успех на поприще математических сопроцессоров позволил компании включится в полноценную гонку x86-совместимых процессоров и представить свои первые чипы - 486SLC и 486DLC в 1992 году. Несмотря на название, оба процессора предназначались для апгрейда старых 386'ых систем и были с ними Pin-to-pin совместимыми, благодаря чему их производительность заметно вырастала благодаря добавлению L1-кэша (правда всего 1КБ, по сравнению с 8КБ в 486DX), реализации новых для 486'ого инструкций, а также возможности исполнения многих инструкций за один такт.

486SLC/DLC производился IBM и Ti. Чипы обоих вендоров отличались между собой в основном объёмом кэша. Фото Appaloosa с Вики
486SLC/DLC производился IBM и Ti. Чипы обоих вендоров отличались между собой в основном объёмом кэша. Фото Appaloosa с Вики

На практике 486SLC был весьма странным процессором, поскольку настоящий i486'ой он не догонял из-за использования урезанной 16-битной шины 386SX, в то время как полноценный 32х-битный 486DLC показывал себя уже вполне неплохо. Кроме того, в 486SLC не было FPU и для работы с числами с плавающей точкой необходимо было устанавливать сопроцессор, поэтому с "настоящим" 486'ым процессор конкурировать не мог.

Ещё через год, в 1993 году, Cyrix представила свой первый "полноценный" 486-ой - Cx486SX и 486DX. Как и аналоги от Intel, SX отличался от DX отсутствием встроенного FPU и объёмом L1-кэша (2КБ против 8КБ), в остальном же процессоры были близки к 80486 и даже работали на тех же самых частотах. Главной фишкой процессоров Cyrix была цена - они стоили заметно дешевле чипов от Intel, при этом не так сильно уступая им по производительности, благодаря чему были популярны в бюджетных и среднебюджетных сборках.

Cx486. Фото с сайта RetroWeb
Cx486. Фото с сайта RetroWeb

Только вот в 1993 году, Intel уже представила Pentium - следующее поколение процессоров, которое вчистую уделывало любые существующие на тот момент 486'ые за счёт реализации суперскалярной архитектуры (возможности обработки двух инструкций за один такт), крутого FPU, и, самого важного, предсказания переходов. Cyrix не отставала, и будучи производителем процессоров для апгрейда старых систем, представила 5x86 в 1995 году, который был одним из самых быстрых ядер для Socket 3 и местами обгонял Pentium.

Pentium 1. Фото из Википедии.
Pentium 1. Фото из Википедии.

В том же году вышел легендарный 6x86, который стал одновременно успехом на рынке среднебюджетных ПК и провалом на рынке игровых. Инженеры сделали упор на оптимизацию целочисленного АЛУ, забив на FPU (который в P1 был реально очень шустрым), из-за чего все новые игры с floating-point арифметикой (а таких становилось всё больше и больше) и программными растеризаторами банально лагали, а ещё у 6x86 на ядре M1 не было поддержки MMX.

В 1997 году, National Semiconductor выкупила Cyrix и свернула разработки высокопроизводительных процессоров в пользу недорогих систем на кристалле для сборки реально бюджетных систем "топ за свои деньги". Результатом стало появление MediaGX - уникального процессора, который в связке с чипом-компаньоном позволял реализовать полноценный ПК на минимальной компонентной базе.

❯ Что это за процессор?

Платформа MediaGX по своей натуре заметно отличалась от архитектуры классических Intel-совместимых ПК. В обычных ПК процессору нужно было как минимум два-три чипа обвязки для полноценной работы: северный мост, который выполнял задачи контроллера памяти, PCI, AGP, и других высокоскоростных шин, а также объединял нескольких процессоров в SMP-профиль, и южный мост - который выполнял роль хаба для низкоскоростных шин типа ISA, USB и LPC.

Блок-схема компьютера на 440BX. Взято из даташита
Блок-схема компьютера на 440BX. Взято из даташита

MediaGX же хватало всего два чипа - самого процессора и хаба Cx55x0. При этом функционал северного моста сразу же был интегрирован в процессор:

  • MediaGX подключался напрямую к оперативной памяти, как и современные чипы от Intel/AMD после ~2010 года. Контроллер памяти поддерживал до двух модулей SDRAM DIMM, позволяя установить до 128МБ памяти - солидный объём для 1997 года.

  • В процессор было встроено VGA-совместимое видеоядро, которое помимо вывода фреймбуфера и аппаратного курсора, также умело в аппаратный блиттинг с поддержкой всех DDraw растровых операций. Однако выводом VGA/LVDS/STN занимался сопроцессор, который брал данные от видеоядра через шину

Шина видеоядра была параллельной и напоминала современные 565. При этом формированием сигналов синхронизации занимался тоже процессор, а не Cx55x0.
Шина видеоядра была параллельной и напоминала современные 565. При этом формированием сигналов синхронизации занимался тоже процессор, а не Cx55x0.
  • Также в процессор был сразу же встроен PCI-контроллер, который и подключал чип-компаньон в качестве обычного PCI-устройства. На контрасте с 440BX, такое решение выглядит ну... очень экзотическим.

Нехилый уровень интеграции по меркам 1997 года на 350нм техпроцессе, да?

Блок схема компьютера на MediaGX. Скриншот из даташита
Блок схема компьютера на MediaGX. Скриншот из даташита

А ведь и само процессорное ядро было достаточно неплохим на момент выхода. С точки зрения CPU-части, MediaGX мог легко конкурировать не только с Pentium 1, но и Pentium MMX. Судите сами:

  • Первое, и самое крутое - MediaGX поддерживал SIMD в лице MMX, который к 1997 году начало использовать всё больше и больше мультимедийного софта.

  • Помимо целочисленного АЛУ, в MediaGX был интегрирован не самый плохой FPU для работы современных 3D-игр. Правда отсутствие поддержки AGP было критичным уже к 1998 году в мире гейминга, поэтому игровой платформой MediaGX назвать нельзя (ну разве что для 2D-игр, которым FPU чаще всего был не нужен).

  • Процессор мог работать на частоте до 300МГц, имел 16КБ L1-кэша, поддерживал виртуализацию и имел 6-стайдиный конвейер. Многие инструкции он мог выполнять за один такт.

Чисто технически это развитие ядер Cx586, которые в свою очередь берут корни от 486'ых. И тем не менее, на момент 1997 года это были очень неплохие процессоры для бюджетного сегмента, благо сам чип стоил около 60-100$ в закупке, что роняло цены на компьютеры ниже 1.500$.

Какие шины торчат в процессоре
Какие шины торчат в процессоре

Однако в отличии от Cx586, MediaGX нельзя было установить в обычный компьютер с Intel-овским сокетом и чипсетом, и поэтому для работы был необходимо хаб. Как вы уже могли понять по схеме выше, хаб подключен как обычное PCI-устройство в паре с специальной последовательной шиной по типу OneWire (возможно вариация Cyrix на тему SMBUS). В задачи хаба входило:

  • Аппаратное декодирование MPEG1/MPEG2. Дело в том, что в те годы процессоры ещё не могли нормально воспроизводить видео DVD-качества с софтовым декодером. Для просмотра фильмов на ПК необходимо было покупать видеокарту с поддержкой DVD-ускорения по типу ATi Rage или Nvidia Riva TNT. Cyrix же запилила этот функционал ещё в 1997 году, да ещё и с возможностью вывода в качестве оверлея - то есть даже не тратя ресурсы процессора/видеоускорителя на блиттинг и преобразование цветовых пространств!

  • Вывод изображения из видеоускорителя в процессоре на экран. Вот тут начиналось самое интересное: видеоускоритель "скармливал" изображение и клоки хабу, а тот в свою очередь либо преобразовывал цифровые данные в аналоговые для VGA-мониторов, либо в почти идентичную параллельную шину для TFT-матриц ноутбуков, либо через специальный контроллер Cx9210 в формат для DSTN-матриц.

  • AC97-совместимый аудиопорт. Чисто технически хаб был и звуковой картой с полной эмуляцией SoundBlaster 16, однако задачи ЦАП'а он не выполнял - этим занимался отдельный чип под названием аудиокодек, к которому хаб подключался с помощью I2S-подобной шины.

  • Помимо этого, хаб включал в себя функционал контроллера ISA, USB и IDE. Целых два USB в 1997 - это сильно!

Как и Intel'овским ПК, Cyrix'овской платформе для работы необходим был мультиконтроллер - он отвечал за включение/выключение/переход в режим сна (чипсет поддерживал APM - ранний аналог ACPI), контроллер клавиатуры (если речь о ноутбуке), работу с флэшкой BIOS'а, LPC и некоторые другие задачи.

Изучаем плату

По традиции блога, мы с вами просто обязаны изучить на практике материнскую плату типичного Cyrix-компьютера. В качестве оной у нас выступит SuperTek ST-MGXm на базе хаба Cx5520, выпущенная в далеком 1998 году. Плату подарил мне читатель, за что ему огромное спасибо, однако фактическую работоспособность я пока не проверял. Оставим это для практической статьи про MediaGX :)

У платы есть как AT, так и ATX разъёмы питания, два слота под SDRAM-память, два PCI и два ISA. В общем, всего по две штуки.

Самым большим чипом на плате является процессор. Сокет у него кастомный, обычный Intel'овский или AMD'шный процессор сюда поставить нельзя, о чём гласит соответствующий стикер на сокете. Помимо PGA-корпуса, процессор выпускался также в BGA для ноутбуков и тонких клиентов. Правда ноутбуков на MediaGX я не видел - хотя очень хотелось бы пощупать!

Его питание формирует всего один однофазный ШИМ-контроллер TLT494CN, а клок формируется PLL'кой в процессоре относительно частоты шины PCI (SYSCLK), а не FSB, как в Intel'ах.

Чуть ниже расположился хаб - тот самый Cx5520 производства LSI. Наверное в 1997'ом было даже немного необычно осознавать то, что эти два чипа - уже практически готовый компьютер.

Рядом с слотами PCI и ISA расположилась микросхема с BIOS и мультиконтроллер VS0824AG. На нем красуется лого National Semiconductor (которая выкупила Cyrix в 1997) и каких-то конкретных упоминаний об этом чипе в сети я не нашел - так что скорее всего это что-то кастомное специально для MediaGX.

За звук отвечает ЦАП от Analog Devices и усилитель APA2308. И... в целом, это все! Сравните с компонентной базой любой платы на Pentium II и почувствуйте разницу в том, насколько плата для MediaGX простая!

❯ Заключение

В целом, Cyrix MediaGX - один из немногих примеров альтернативных x86-платформ. Другой подобной может быть только TransMeta Crusoe, где север также был встроен в процессор. Интересно и то, что в конце-концов, MediaGX был выкуплен AMD, который затем был переименован в AMD Geode и применялся в тонких клиентах и Embedded-платах типа PC104 вплоть до конца нулевых. А потом в 2011 внезапно появился AMD Brazos, который интегрировал в себе процессор и GPU... Что-то очень знакомо, да? :) Так вот - именно Cyrix MediaGX я считаю первым настоящим APU в мире, за 14 лет до появления официального определения этого термина!

Ну а я надеюсь, что вам было интересно. Подписывайтесь на блог, чтобы не пропускать новые статьи каждую неделю! А если вам интересна тематика ремонта, моддинга и программирования для гаджетов прошлых лет — подписывайтесь на мой Telegram‑канал ‭«Клуб фанатов балдежа‭», куда я выкладываю бэкстейджи статей, ссылки на новые статьи и видео, а также иногда выкладываю полезные посты. А ролики (не всегда дублирующие статьи) можно найти на моём YouTube канале».

А если вы хотите что‑нибудь подарить из железа и увидеть о нём статью — пишите мне в Telegram. Меня очень интересуют самые разные гаджеты: начиная от игровых консолей и любых связанных с геймингом устройств, телефонов, смартфонов, КПК, заканчивая ретро‑компьютерами и ноутбуками. Кто знает, может героем следующей подобной статьи окажется ноутбук из 90-х?:‑)

Особенно сильно я люблю ковыряться в ноутбуках из начала 90-х. Источник
Особенно сильно я люблю ковыряться в ноутбуках из начала 90-х. Источник

После обзоров устройства не продаются, а остаются в моей коллекции. Когда‑нибудь я хочу сделать музей, где к каждому устройству можно будет приложить QR и почитать мою статью. Кто знает, вдруг на следующей неделе я также подробно расскажу про девайс из вашей юности?:)

Фото Nokia 9300 с сайта mobile-review.com
Фото Nokia 9300 с сайта mobile‑review.com

Кстати, у меня есть GameBoy Advance SP, под который я очень хочу написать игру. Однако мой экземпляр был залит водой и кофе. Может у кого‑то есть донор с дохлой платой, откуда я смог бы взять контроллер питания? У меня AGS-101.

Может быть интересно:
Перейти

Новости, обзоры продуктов и конкурсы от команды Timeweb.Cloud — в нашем Telegram‑канале 

Комментарии (0)