В мире ретрокомпьютеров слово «совместимый» давно может означать что угодно: программный эмулятор, FPGA-ядро, микроконтроллер на переходной плате или целую современную систему, притворяющуюся машиной из восьмидесятых. Проект FOSSi Z80 пошёл другим путём. Его цель — получить не очередную программную имитацию, а настоящий новый процессорный кристалл с открытым исходным описанием, способный со временем заменить классический Zilog Z80 в реальном железе.
Это ещё не серийная микросхема, которую завтра можно заказать, вынуть старый процессор из ZX Spectrum и без раздумий поставить новый. Но проект уже покинул безопасный мир симуляторов и FPGA. Команды выполняются настоящим кристаллом, адресная и информационная шины оживают, тестовые программы запускаются. Для свободного аппаратного проекта это тот самый момент, когда строки Verilog превращаются в физическую вещь — маленький кусок кремния, на котором действительно работает Z80-совместимая машина.
Zilog Z80 появился в 1976 году и стал одним из главных восьмибитных процессоров своей эпохи. Архитектуру задумал Федерико Фаджин, а ключевую роль в разработке сыграл Масатоси Сима — инженеры, ранее работавшие над ранними микропроцессорами Intel.
Z80 сохранял совместимость с программами для Intel 8080, но заметно расширял его возможности. Он получил дополнительные регистры, индексные IX и IY, альтернативные наборы регистров, новые команды, более удобную систему прерываний и встроенную логику регенерации динамической памяти. Для разработчиков компьютеров это означало меньше внешней обвязки, а для программистов — богатый набор инструментов, из которого десятилетиями выжимали значительно больше, чем обещали сухие таблицы команд.
На Z80 и его вариантах строились ZX Spectrum, TRS-80, компьютеры стандарта MSX, Amstrad CPC, множество машин с CP/M, игровые автоматы и промышленная аппаратура. Процессор использовался и в Sega Master System. В Nintendo Game Boy стоял не полноценный Z80, как иногда пишут, а родственный Sharp SM83: он унаследовал часть черт Z80 и Intel 8080, но имел другой набор возможностей.
Для спектрумиста Z80 — не просто пункт в технических характеристиках. Это ритм всей машины: 3,5 миллиона тактов в секунду, борьба с ULA за память, точные задержки, счёт T-state'ов, экранные эффекты на границе луча, музыка, распаковщики, самопереписывающийся код и бесконечная охота за несколькими свободными байтами. На этом процессоре выросла не только игровая индустрия, но и целая культура низкоуровневого программирования.
В апреле 2024 года Zilog объявила о завершении жизненного цикла классического семейства Z84C00. Последние заказы принимались до июня того же года. Формально закончилась почти полувековая история непрерывного производства, но для сообщества это стало не финалом, а сигналом к действию.
Инициатор проекта Реналдас Зиома поставил прямую и по-хорошему дерзкую цель: создать свободный, проверенный в кремнии и в конечном счёте совместимый по выводам заменитель Z80 для старых домашних компьютеров и современных любительских систем вроде RC2014.
Основой FOSSi Z80 стало ядро TV80, написанное на языке описания аппаратуры Verilog. TV80 существует уже много лет, поддерживает систему команд 8080/Z80 и старается воспроизводить машинные циклы классического процессора. Раньше такие ядра главным образом жили внутри FPGA. Теперь одно из них прошло полный путь до физического производства.
Это важное различие. FPGA загружает описание логики в универсальную программируемую матрицу. ASIC — специализированная микросхема, где нужная схема уже воплощена в кремнии. После изготовления её нельзя «перепрошить» в другой процессор, зато она становится самостоятельным настоящим чипом.
При этом открытость проекта не ограничивается публикацией красивой блок-схемы. Исходное RTL-описание, тесты, конфигурация синтеза и файлы разводки доступны для изучения. Компоновка выполняется с помощью открытого маршрута OpenROAD и открытых технологических наборов PDK. Иными словами, энтузиаст может проследить путь от логики процессора до геометрии будущего кристалла — почти как демомейкер, который распространяет не только готовый экран, но и исходник эффекта.
Первую итерацию изготовили в рамках Tiny Tapeout — проекта, который объединяет множество небольших цифровых схем на одной производственной пластине. Каждый участник получает крошечный участок общего чипа, поэтому цена входа оказывается несравнимо ниже стоимости отдельного промышленного запуска.
Версия FOSSi Z80 для Tiny Tapeout 7 была реализована по 130-нанометровому техпроцессу SkyWater. Само ядро заняло всего около 0,064 квадратного миллиметра. Для сравнения эпох: оригинальный Z80 создавался по нормам, измерявшимся микрометрами, а его транзисторы инженеры фактически размещали вручную. Новый вариант строится автоматизированными средствами на открытом цифровом маршруте.
Первые кристаллы были доставлены разработчикам в 2025 году и подтвердили работоспособность. Процессор смог взаимодействовать с микроконтроллерами RP2040 и RP2350, которые в тестовом стенде изображали память и внешнее окружение. На нём запускали простейшие программы, миниатюрную CP/M-среду и наборы проверки команд ZEXDOC/ZEXALL.
Тесты здесь особенно важны. Совместимость Z80 — это не только выполнение официальных мнемоник из справочника. Старые программы, игры и демо порой зависят от флагов, точной длительности машинных циклов и недокументированных особенностей оригинального кристалла. Испытания уже помогли обнаружить и исправить ошибку в реализации команды DAA; отдельная работа продолжается вокруг недокументированных флагов и точных временных характеристик.
После первой миниатюрной версии появилась ревизия в корпусе QFN64, где наружу выведены все 40 сигналов классического процессора. Были также подготовлены запуски на открытом 130-нм техпроцессе IHP. Каждый такой шаг проверяет проект в новом физическом исполнении и приближает его к главной цели.
Оригинальный Z80 хорошо знаком по продолговатому корпусу DIP40 с двадцатью ножками с каждой стороны. Именно такой процессор стоит в панельках многих старых компьютеров и самодельных плат. Поэтому конечная задача FOSSi Z80 — не просто работающий кристалл, а устройство в совместимом форм-факторе, которое можно использовать как замену без переделки всей материнской платы.
Текущая версия DIP40 пока находится в разработке. Для неё выбран 180-нанометровый процесс GF180MCU и сборка типа chip-on-board: кристалл устанавливается непосредственно на небольшую плату, соединяется проводниками и закрывается защитным материалом. Внешне такая конструкция сможет повторять расположение выводов обычной 40-контактной микросхемы.
Но слово «drop-in» требует осторожности. Недостаточно одинаково пронумеровать ножки. Нужно проверить уровни напряжения, направление и нагрузочную способность сигналов, реакцию на WAIT, BUSREQ, прерывания, регенерацию памяти, фронты тактового сигнала и поведение на границах временных допусков. Старое железо бывает капризным, а разные модели компьютеров используют особенности шины по-разному.
Особенно непростой полигон — ZX Spectrum. Здесь процессор работает в тесной связке с ULA, а доступ к экранной памяти сопровождается задержками. Многие игры и демо рассчитывают время с точностью до нескольких тактов. Новый чип может правильно вычислять результат команды, но всё равно нарушить растр или синхронизацию, если его шинный цикл хоть немного отличается от ожидаемого. Поэтому разработчики отдельно планируют сравнивать реальные временные диаграммы FOSSi Z80 с оригинальными микросхемами.
В описании проекта указано, что реализация на современном 130-нм CMOS-процессе теоретически может работать на частоте до 50 МГц. Это заметно выше частот классических Z80: например, процессор ZX Spectrum 48K работает примерно на 3,5 МГц, а поздние серийные CMOS-варианты Z80 достигали 20 МГц.
Однако 50 МГц пока следует воспринимать как ожидаемый потенциал реализации, а не как обещанную скорость готового DIP40-изделия. Кроме того, быстрая микросхема сама по себе не превратит обычный Spectrum в машину, ускоренную в четырнадцать раз. Память, ULA, периферия и вся временная модель компьютера рассчитаны на штатный ритм. Для совместимой замены гораздо важнее сначала безупречно работать на родной частоте.
Высокий частотный запас пригодится в новых самодельных компьютерах, экспериментальных платах и системах с быстрой памятью. А в классическом Spectrum главная ценность FOSSi Z80 совсем иная: возможность однажды получить свежий процессор, который не был снят с донора, не пролежал сорок лет на складе и не оказался перемаркированной подделкой.
Старые микросхемы не вечны. Пока оригинальных Z80 на вторичном рынке много, проблема не выглядит критической, но запасы неизбежно уменьшаются, происхождение деталей становится всё менее прозрачным, а цены на надёжные экземпляры растут. Ремонт редких машин уже сегодня нередко зависит от доноров.
Открытый процессор не отменит оригинальное железо и не заменит коллекционную ценность настоящего Zilog. Его задача другая — дать старым системам продолжение жизни. Такой чип может использоваться в ремонте, учебных стендах, новых ретрокомпьютерах, репликах классических плат и аппаратных экспериментах.
Есть в этом и культурный смысл. В восьмидесятые домашний компьютер учил владельца заглядывать внутрь: читать карту памяти, считать такты, паять интерфейс, дизассемблировать загрузчик и спорить о том, можно ли выиграть ещё один байт. FOSSi Z80 переносит ту же этику на следующий уровень. Теперь открытым становится не только код игры или демо, но и сам процессор.
Полвека назад Z80 помог миллионам людей впервые приблизиться к машинному коду. Сегодня сообщество возвращает долг: берёт архитектуру, которую промышленность отправила в архив, описывает её открытым языком, прогоняет через свободные инструменты и снова поднимает на настоящем кремнии.
Старый солдат ещё не закончил программу. На адресной шине снова появляются сигналы, счётчик команд движется вперёд, а до финального HALT, похоже, очень далеко.