Bu konsolun iki genel amaçlı işlemcisi vardır.
Lider
İlk olarak, elimizde ~7.6MHz hızında çalışan bir Motorola 68000 var, o zamanlar Amiga, (orijinal) Macintosh, Atari ST gibi birçok bilgisayarda bulunan popüler bir işlemci... İlginçtir ki, bu bilgisayarların her biri '6502 selefi'nin yerini almıştır ve Master System (Mega Drive'ın öncüsü) 6502 CPU kullanmazken, NES kullanmıştır (ve bir şekilde Sega'nın amacı Nintendo tüketicilerini kazanmaktı). Sonuç olarak, bilgisayarların evrimi ile oyun konsolu teknolojisi arasında bir miktar korelasyon görebilirsiniz.

Mega Drive'daki Motorola 68000 çipi, bu çip Hitachi'den ikinci kaynaktan alınmıştır.
Konuya dönersek, 68k 'ana' CPU rolüne sahiptir ve oyun mantığı, I/O ve grafik hesaplamaları için görevlendirilecektir. Aşağıdaki yeteneklere sahiptir :
- 68000 ISA: Bir dizi çarpma ve bölme işlem kodu da dahil olmak üzere birçok özelliğe sahip yeni bir komut seti. Bazı talimatlar 8 bit uzunluğunda ('byte' olarak adlandırılır), diğerleri 16 bit uzunluğunda ('word' olarak adlandırılır) ve geri kalanı 32 bit uzunluğundadır ('long-word' olarak adlandırılır).
- On altı genel amaçlı 32 bit register. Bu CPU'nun seti sekiz 'data register' (aritmetik hesaplamaların yapılabildiği) ve sekiz 'address register' (yalnızca bellek adreslerini saklamak için kullanılır) olarak ikiye ayırdığını unutmayın.
- Yine de, 6502 ve Z80'in yalnızca 8 bitlik register sağladığı düşünüldüğünde bu büyük bir adımdır.
- 16-bit ALU: Yani 32 bitlik sayılarda aritmetik işlemleri hesaplamak için fazladan döngüye ihtiyaç duyar, ancak 16 bit/8 bitlik sayılarda sorun yaşamaz.
- Harici 16-bit veri yolu: Gördüğünüz gibi, bu CPU bazı '32-bit yeteneklere' sahip olsa da, tam bir 32-bit makine olarak tasarlanmamıştır. Bu veri yolunun genişliği, 16 bitlik verileri taşırken daha iyi performans anlamına gelir.
- İlginçtir ki Motorola, bu konsolun piyasaya sürülmesinden dört yıl önce tam bir 32-bit CPU olan 68020'yi piyasaya sürmüştür. Ancak Sega ikinci çipi seçseydi maliyetlerin fırlayacağını tahmin ediyorum.
- 24 bit adres veriyolu: Bu, 16 MB'a kadar belleğe erişilebileceği anlamına gelir. Bellek adresleri CPU içinde hala 32 bitlik değerlerle kodlanır (sadece üst bayt atılır). Bunu söyledikten sonra, Mega Drive ile veri yolu fiziksel olarak 'e bağlanır:
- 64 KB genel amaçlı RAM.
- Kartuş ROM (4 MB'a kadar).
- İki Kontrolör.
- Video Görüntü İşlemcisinin kayıtları, bağlantı noktaları ve DMA.
- Anakart kayıtları (konsolu tanımlar).
- Genişleme portları ('gelecekteki' aksesuarlar için kullanılır).
- İkinci CPU'nun RAM'i, bus arbiter tarafından aracılık edilir.
Eğer 32 bitlik registerları işleyebilen bir CPU'da 24 bitlik adreslerin kullanılmasının ardındaki nedeni merak ediyorsanız: o dönemin ekipmanları 4 GB belleği yönetmek için pek de uygun değildi. Kullanılmayan hatların uygulanmasının performans ve para açısından maliyetli olduğu göz önüne alındığında, Motorola 32 bit kayıtlar ve 24 adres hattı ile mantıklı bir uzlaşmaya vararak geliştiricileri beş yıl sonra tam 32 bit CPU'nun (68020) gelişine hazırladı.
Tuhaf bir talimat seti
80'lerin RISC devrimi öncesinde, talimat setlerinin nasıl tasarlandığını birleştirmeye çalışan önceki bir dalgaydı. Özünde, 70'lerin tüketici CPU'ları (6502 veya 8080 gibi) belleğin nasıl erişileceğini önceden tanımlamış talimatlar sağlar (buna 'adresleme modu' denir). Motorola, 68000 ile talimat işlevini (opcode) adresleme modundan ayırdı ve bu sonuncuyu sadece başka bir parametre (operand) haline getirdi. Bunu yaparak, geliştiriciler artık (ihtiyaçlarına göre) en optimal adresleme moduyla aynı opcodları kullanabilir.
Bu ilkeye instruction set orthogonality adı verilir ve 70'lerin sonlarında yeni nesil CPU'ları büyük ölçüde etkilemiştir, ancak RISC tasarımlarının devreye girmesiyle hızla dağılmış ve yükü etkili bir şekilde derleyicilere kaydırmıştır. Her durumda, Motorola 68k serisi 80'ler boyunca büyük popülariteye sahip oldu ve şirketlerin başka bir satıcıya geçiş yapmaya başlaması 90'ların başlarına kadar sürmedi.
İkinci muz
Bu konsolda ~3,5 MHz hızında çalışan bir Zilog Z80 CPU daha bulunmaktadır. Bu, daha önce Master System'in makalesinde analiz edilen işlemcinin aynısıdır.
Z80 genel olarak ses kontrol için kullanıldı. Böylece, 16-bit adres veri yolu aşağıdakilerden oluşur :
- 8KB RAM.
- İki ses çipi.
- 68000'in RAM'i (yine bus arbiter tarafından idare edilir).
Son olarak, her iki CPU'nun da paralel çalıştığına dikkat etmek önemlidir.
Kullanılabilir hafıza
Ana CPU, genel amaçlı verileri depolamak için 64 KB özel RAM içerir ve Z80, sesle ilgili işlemler için 8 KB RAM içerir.
İletişim
Sega, birbirinden habersiz iki bağımsız işlemci seçti, peki oyunlar ikisini aynı anda nasıl yönetebilir? Ana program 68000'de yürütülür ve bu CPU daha sonra Z80'in RAM'ine yazabilir. Böylece 68000, Z80'in RAM'ine bir program gönderebilir ve Z80'e bunu yüklemesini söyleyebilir (Z80'e bir reset sinyali göndererek) . Z80 kontrol altına alındıktan sonra, 68000 diğer işlemlerle ilgilenirken, ses alt sistemini yönetmek ve daha önce açıklanan yöntemi kullanarak belleği hareket ettirmek için kullanılabilir.

Mega Drive/Genesis'in bellek mimarisi.
Bir CPU diğerinin CPU veri yoluna girmek zorunda kalacağından ve her ikisi de aynı anda kullanamayacağından, her iki işlemciyi de durdurmak için etkinleştirilmesi gereken Bus arbiter adlı ekstra bir bileşen vardır, böylece bellek tehlikesiz bir şekilde yazılabilir.
Bu tasarımın düzgün bir şekilde yönetilmediği takdirde düşük performans gösterebileceğini belirtmek önemlidir, bu nedenle oyunların veri yolu hakemine özel dikkat göstermesi ve her iki CPU'yu da gerekenden daha uzun süre durdurmamaya dikkat etmesi gerekecektir.