結局セガサターンのプロセサは何個だったのか

SuperHといえばサターンやDCのようなセガ末期のハードということで。
一般には、SH-2(x2)と68kの構成として知られている。これに加えて、マイクロコードで制御されるDSPいくつか備えている。

  • SH-2 x2 @ 20MHz 26/28MHz (see comment)
  • 68EC000 @ 11.3?MHz
  • SCSP @ 22.6MHz
    • YAMAHA開発のサウンドチップ。
    • 68kから見ると、割り込みコントローラ/メモリインターフェースでもある。
    • DSPとしては:
      • 128ステップ、60bit巾プログラム
      • 64wordx13bitテーブル、いくらかの(RING?)バッファ
      • 128wordx24bit? RAM
      • 13bitx13bit(= 26bit MAC?)
    • 音源部はPCM/FM、32ch。DSPエフェクトのdry/wet比率の設定も可能。
  • SCU @ 14.3 MHz
  • 他に周辺機器制御のためのマイクロコントローラ(SMPC)とCD-ROM/MPEGデコーダ制御用のSH-1がある。(ユーザはプログラミングできない)

どうしてこうなった。。
全てのチップが別々に存在しているわけではなく、SH-2がデュアルコア(ダイ?)の1チップになったり、SCSP+68kで1チップになったりしている。
ちなみにDreamcastでも(ビデオ周りを除けば)大変化というほどでもなくて、

  • SH-2 x2はSH-4 x1に
  • SCSPはAICA(やっぱりYAMAHA開発、128step DSP)に
  • 68kやSCUに相当するものは無くなった。

ゲームは非常にリアルタイム性の高い仕事なので、1 chip 1 タスクという配分が合理的という考え方もある。CD-ROM以前のゲーム機はソフトウェアを一般にROMで供給していたので、遅延の予測できないロードは一般に存在せず、ロードを行う場合はゲームの進行そのものを止めるのが普通だった。*1
SS/DCどちらも、ATARI JaguarGPUSony PS2のVUのように、汎用的に使えるDSPは搭載していない。JaguarPS2では、画面に対するぼかしエフェクトなどにDSPを使用することができたが、SSのDSPは固定的なパイプラインの一部を占めるに過ぎない。

*1:もっともPS1は最初からマルチスレッドライブラリを持ち、MIPSのMain CPU一つで大体の制御を行う。