« Архитектура Mega Drive / Genesis (index)

Архитектура Mega Drive / Genesis

Chapter 3: Процессор


Содержание

  1. Ведущий
    1. Интересный набор инструкций
  2. Ведомый
  3. Доступная память
    1. Взаимосвязь

Эта консоль имеет два процессора общего назначения.

Ведущий

Во-первых, у нас есть Motorola 68000, работающий на частоте ~7,6 МГц, популярный процессор, уже присутствовавший во многих компьютерах того времени, таких как Amiga, (оригинальный) Macintosh, Atari ST... Любопытно, что каждый из этих компьютеров сменил своего "предшественника на 6502", и хотя Master System (предшественник Mega Drive) не использовал процессор 6502, NES использовал (и в некотором роде целью Sega было завоевать потребителей Nintendo). В целом, можно увидеть некоторую корреляцию между эволюцией компьютеров и технологий игровых консолей.

Image
Чип Motorola 68000 в Mega Drive, произведённый Hitachi.

Возвращаясь к теме, 68k отводится роль "основного" процессора, и он будет обрабатывать игровую логику, операции ввода-вывода и графические вычисления. Он обладает следующими возможностями :

Если вам интересна причина, по которой используются 24-битные адреса в процессоре, способном обрабатывать 32-битные слова, то немногое оборудование того времени требовало работу с 4 ГБ памяти. Также учитывая, что внедрение неиспользуемых адресных линий дорогое с точки зрения производительности и стоимости, Motorola достигла разумного компромисса с 32-битными регистрами и 24-мя адресные линии, чем также подготовила разработчиков к будущему, полностью 32-битному процессору 68020, вышедшему через пять лет.

Интересный набор инструкций

До революции RISC в 80-х была другая волна, которая попыталась утвердить способ построения наборов инструкций. По сути, потребительские процессоры 70-х (такие, как 6502 или 8080) содержат инструкции, которые уже предопределили, как будет доступна память (это называется "режим адресации"). С 68000, Motorola отделила функцию инструкции (операционный код) от режима адресации, делая его просто ещё одним параметром (операндом). Таким образом, разработчики могут использовать одни и те же опкоды с наиболее оптимальным режимом адресации на основе их потребностей.

Этот принцип называется ортогональностью набора команд и он сильно повлиял на новое поколение процессоров конца 70-х, но быстро отошёл на второй план с появлением RISC, по сути переложившим всё самое сложное на компиляторы. В любом случае серия Motorola 68k пользовалась большим спросом в 80-х, и лишь к началу 90-х компании начали переключаться на другого поставщика.

Ведомый

В этой консоли установлен еще один процессор, Zilog Z80, работающий на частоте ~3,5 МГц. Это тот же самый процессор, который был анализирован в статье про Master System.

В основном Z80 используется для управления звуком. Таким образом, ее 16-битная шина адреса состоит из следующего :

Наконец, важно отметить, что оба процессора работают параллельно.

Доступная память

Основной процессор содержит 64 КБ выделенной оперативной памяти для хранения данных общего назначения, а Z80 содержит 8 КБ оперативной памяти для операций, связанных со звуком.

Взаимосвязь

Sega выбрала два независимых процессора, которые не знают друг о друге, так как же игры могут управлять обоими одновременно? Так, основная программа выполняется в 68000, и этот процессор может впоследствии записывать в оперативную память Z80. Потом, 68000 может отправить программу в оперативную память Z80 и дать команду Z80 загрузить ее (посылая сигнал сброса на Z80) . Когда Z80 находится под контролем, его можно использовать для управления звуковой подсистемой и перемещения памяти с помощью ранее описанного метода, и все это в то время, когда 68000 занимается другими операциями.

Image
Архитектура памяти в Mega Drive/Genesis.

Поскольку одному процессору придется задействовать процессорную шину другого, а оба не могут использовать ее одновременно, существует дополнительный компонент Bus arbiter, который должен быть активирован, чтобы затормозить любой из процессоров, так что память может быть записана без опасности.

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


Previous: 2. Краткое введение

Next: 4. Графика


Rodrigo Copetti © 2026 RSS Feed

Переключиться на современную версию

Домашняя страница · Статьи · Поддержка · Об авторе · О сайте