« Mega Drive'ın / Genesis'in Mimarisi (index)

Mega Drive'ın / Genesis'in Mimarisi

Chapter 3: İşlemci (CPU)


İçindekiler

  1. Lider
    1. Tuhaf bir talimat seti
  2. İkinci muz
  3. Kullanılabilir hafıza
    1. İletişim

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.

Image
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 :

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 :

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.

Image
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.


Previous: 2. Hızlı bir giriş

Next: 4. Grafikler


Rodrigo Copetti © 2026 RSS Feed

Modern baskıya geçin

Ana sayfa · Yazılar · Destek · Yazar hakkında · Web sitesini hakkında