雙處理器的迷宮:SEGA Saturn 複雜的架構如何毀了這部主機

八顆專用處理器、以四邊形取代三角形的繪圖方式,以及 90 年代中期程式設計師的惡夢。詳細剖析 SEGA 的這項工程傑作如何成為開發者難以攻克的堅固堡壘。

技術規格快訊:SEGA Saturn 硬體規格

子系統

元件與規格

中央處理器 (CPU)

2 × Hitachi SH-2 @ 28.6 MHz (32位元 RISC 處理器,每秒約 25 MIPS)

圖形子系統

VDP1:精靈圖渲染、多邊形(四邊形)、填滿與 3D 幾何運算。VDP2:4個獨立的 2D 背景平面、硬件水平線與透明度計算

音效處理器

Motorola 68EC000 @ 11.3 MHz + SCSP (SEGA 自訂音效處理器 / 山葉 YMF292,32通道)

輔助控制器

SCU (系統控制單元 / DSP)、CD-ROM MCU (Hitachi SH-1)

總記憶體

2 MB 工作 RAM (1 MB 高速 RAM + 1 MB 低速 RAM) + 1.5 MB VRAM + 512 KB 音效 RAM

總線頻寬

峰值 28.6 MB/s

01. 索尼的應對:發售前夕因恐慌而被迫重組的架構

在 1990 年代初期,SEGA 正處於其權力的巔峰。SEGA Mega Drive(美版稱 Genesis)主機在北美和歐洲的統治地位,給了管理層對明天的絕對自信。由佐藤秀樹領導的硬體工程部門開始以「Project Gigadrive」為代號開發次世代平台,這就是後來演變成 SEGA Saturn 的由來。

最初的 Saturn 專案旨在成為 2D 圖形的絕對王者。工程師們從 SEGA 豐富的街機傳統中汲取靈感,認為 3D 圖形在很長一段時間內仍將是一個小眾領域。這部主機的設計旨在完美處理數百個精靈圖、深色調色盤以及多層捲動畫面。

然而,在 1993 年秋季的ショシンカイ(Shoshinkai)展會上,發生了一場地殼變動:索尼向公眾和合作夥伴公開展示了其即將推出的 PlayStation 主機技術DEMO。即時互動的 T-Rex 恐龍頭像與賽車模擬器的 3D 展示震驚了 SEGA 管理層。事實證明,與 LSI Logic 合作開發的 Sony PlayStation 晶片可以毫不費力地每秒計算數十萬個帶有陰影和紋理的三角形。

意識到當前的 Saturn 設計在 3D 時代的黎明會輸給競爭對手,SEGA 管理層下令進行緊急架構重組。但是,已經沒有時間從頭開始設計一個全新的圖形處理器了。一項命運攸關的決定做出了:在架構中加入第二顆 Hitachi SH-2 中央處理器,並試圖將圖形和幾何運算平行化。

這種倉促意味著系統缺乏統一的、快取一致性的總線。第二個處理器實際上是「焊接」並行連接到現有基礎設施上的,這使得 Saturn 的主機板變成了一個混亂的迷宮,由八個微晶片爭奪共享記憶體的訪問權。

02. 雙 SH-2 與 VDP1/VDP2 視訊晶片:2D 天才與無可避免的 3D 之戰

要理解 SEGA Saturn 的複雜性,只需看看它的晶片組構成即可。主機的主機板上容納了:

• Master CPU: Hitachi SH-2 (Main logic, geometry)

• Slave CPU: Hitachi SH-2 (Auxiliary computations)

• VDP1: Geometry, sprite, and quad video processor

• VDP2: Background planes and special effects video processor

• SCU: System Control Unit with built-in DSP

• Sound CPU: Motorola 68EC000

• SCSP: Yamaha YMF292 sound chip

• CD-ROM Controller: Hitachi SH-1

雙處理器的迷宮:SEGA Saturn 複雜的架構如何毀了這部主機 2
雙處理器的迷宮:SEGA Saturn 複雜的架構如何毀了這部主機 2

分工:VDP1 與 VDP2

圖形系統被分割在兩個高度專門化的處理器之間:

• VDP1 handled object rendering: characters, vehicles, and environmental elements. It worked with sprites and polygons, calculating transforms, texture mapping, and simple shading effects.

• VDP2 was a monstrous 2D co-processor. It could simultaneously output up to four independent scrolling background layers at resolutions up to 704×480 pixels, perform hardware floor and sky plane rotation, and compute heat haze and transparency effects.

當開發人員學會如何正確結合這兩個晶片時(如同 AM2 在《Virtua Fighter 2》或《Sega Rally Championship》中所做的那樣),Saturn 展現了驚人的視覺質量:VDP2 完全負責水平線、賽道和天空的渲染而不消耗 CPU 資源,而 VDP1 則將其全部威力集中在高度詳細的 3D 格鬥家或賽車模型上。

雙處理器的迷宮:SEGA Saturn 複雜的架構如何毀了這部主機 3
雙處理器的迷宮:SEGA Saturn 複雜的架構如何毀了這部主機 3

記憶體與總線瓶頸

該系統的主要缺點在於其碎片化的 RAM 結構。Saturn 沒有單一統一的 RAM 池,而是具備:

• 1 MB High-speed Work RAM (32-bit bus)

• 1 MB Low-speed Work RAM (16-bit bus)

• 512 KB Framebuffer VRAM for VDP1

• 512 KB Texture VRAM for VDP1

• 512 KB Background VRAM for VDP2

如果兩個 SH-2 處理器試圖同時訪問相同的記憶體區域,就會發生硬體總線衝突,其中一個 CPU 將簡單地進入等待狀態而凍結。沒有組合語言和精細的時鐘同步,第二個 SH-2 通常會處於閒置狀態、執行無用的循環,甚至直接乾擾主 CPU。

03. 四邊形 vs. 三角形:為什麼從 PS1 移植是個地獄

3D 圖形產業建立在事實上的標準——三角形網格(三角形多邊形)之上。三角形是由空間中三點定義的最簡單平面幾何形狀。PlayStation、Nintendo 64 和 PC 圖形加速器(3dfx Voodoo、Direct3D、OpenGL)最初都是為了處理三角形而設計的。

SEGA Saturn 卻與全世界背道而馳:其 VDP1 圖形晶片無法進行三角形光柵化。Saturn 的主要圖元是一個扭曲的四邊形(Quad),本質上是一個可變形的帶紋理精靈圖。

雙處理器的迷宮:SEGA Saturn 複雜的架構如何毀了這部主機 4
雙處理器的迷宮:SEGA Saturn 複雜的架構如何毀了這部主機 4

渲染參數

Sony PlayStation (三角形)

SEGA Saturn (四邊形)

基礎圖元

三角形 (3個頂點)

四邊形 / Quad (4個頂點)

多邊形拼接

精確的邊緣對齊

存在間隙和孔洞形成的風險

透視校正

硬體仿射紋理映射

跨 4 個點的精靈圖變形

異類格式模擬

原生行業標準

需要「退化」四邊形(2 個重疊點)

多平台移植問題:

• Lack of Hardware Stitching (Gaps & Overlapping): When attempting to build a complex 3D model out of quads, rotating the camera inevitably caused quad vertices to separate, forming visible gaps and holes through which the background peeked.

• Zero Coordinates: To draw a triangle on the Saturn, programmers had to define a quadrilateral where two vertices overlapped at the same point. VDP1 wasted resources processing the degenerate edge, lowering rendering performance.

• Texture Distortion: Trying to wrap a 2D texture onto a deformed quad without perspective correction resulted in warped, "wobbly" textures.

• Engine Rewriting: Major publishers (including EA, Capcom, and Konami) refused to rewrite their game geometry for quads. Simple ports from PlayStation to Saturn shipped with terrible frame rates, missing effects, and graphical glitches.

04. 鈴木裕與《莎木》:如何在 Saturn 上榨乾不可能

儘管面臨架構上的地獄,SEGA 由傳奇遊戲設計師兼工程師鈴木裕領導的內部 AM2 團隊仍創造了真正的技術奇蹟。

鈴木和他的團隊直接用組合語言編寫程式碼,繞過了 SEGA 不完美的編譯器。他們學會了在兩個 SH-2 晶片之間手動分配任務:一個處理器專門用於幾何和碰撞計算,而另一個則處理動畫、輸入和 AI 邏輯。

雙處理器的迷宮:SEGA Saturn 複雜的架構如何毀了這部主機 5
雙處理器的迷宮:SEGA Saturn 複雜的架構如何毀了這部主機 5

Saturn《莎木》的傳奇(Project Berkeley)

Saturn 上最雄心勃勃的專案是《莎木》的開發(當時代號為 Project Berkeley)。AM2 創造了一個完全可運行的 3D 開放世界 RPG,具有日夜循環、數百個獨特的 NPC 和細緻的古代中國場景。

當多年後 SEGA Saturn《莎木》原型的畫面曝光時,公眾震驚了:一個被認為不適合真正 3D 的平台竟然提供了可媲美早期 Dreamcast 和 PlayStation 2 遊戲的圖形水平!然而,這項成功的代價太高了:創建這樣一個引擎花費了數年時間和數百萬美元,只有 SEGA 的頂級工作室才能辦到。

雙處理器的迷宮:SEGA Saturn 複雜的架構如何毀了這部主機 6
雙處理器的迷宮:SEGA Saturn 複雜的架構如何毀了這部主機 6

最終結論

SEGA Saturn 作為工程思想雄偉而悲壯的紀念碑載入史冊。這部主機在多核心處理方面走在了時代的前面,但在開發工具鏈尚處於萌芽期的時代,它被證明過於複雜。儘管被大眾不公正地遺忘,但 Saturn 卻向世界贈送了永恆的傑作,並給整個遊戲產業留下了至關重要的教訓:平衡性和開發的便利性永遠比純粹的、非正交的力量更重要。