DSP

From PS2 Developer wiki
Revision as of 22:48, 21 September 2024 by Nino (talk | contribs) (→‎Revisions)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Used for signal processing as part of the CD/DVD drive. Not to be confused with MechaCon in this matter, which is responsible for the drive mechanics among many other functions.

DSP firmware resides in a mask-ROM inside the DSP. Several firmware versions might exist for the same DSP hardware revision.

At least one version of the DSP's firmware (specifically the CXD3098Q) has a tendency to crash MechaCon by sheer bad luck or on badly readable discs (e.g. badly burned/low-quality DVD-R discs or scratched original discs), overvolting the focus/tracking coils of the laser and killing them and also the driver IC in the process. Several hardware-based mitigations/"fixes" have been developed by the community to address this issue with varying degrees of success. The most well known of these fixes have been the "Romeo-mod"/"LA-fix" for SCPH-500xx/5500x consoles and "summ0ne's fix" for some SCPH-700xx consoles; however, the only reliable fix is the Matrix team's PIC-fix which monitors communication between DSP and MechaCon and turns off the console when a crash occurs, just like the hotfix made by Sony itself.

The CXD3098Q DSP chips of DEX models (DTL-H5000x & DTL-H700xx) are not capable of producing the crash. This was fixed by Sony on the software. A dump of the DSP firmware on these units revealed that the only difference between retail and DEX firmware is a -1 (signed byte) at the end of the firmware.

Revisions[edit | edit source]

  • CXD1869Q (GH-001, GH-003)
  • CXD1869Q-1 (DIF-2, DTL-T10000 DVD interface board)
  • CXD1869AQ (GH-004, GH-005, GH-006, GH-007, GH-008, GH-010, GH-012, GH-013, GH-014)
  • CXD1869BQ (GH-010, GH-012, GH-013, GH-014)
  • CXD1869BQ-1 (DIF-001, DTL-T15000 DVD interface board)
  • CXD1886Q (GH-013, GH-014, GH-015, GH-016)
    • Die size: about 8 x 8 mm
    • Die marking: D1886 (M)(C)SONY'01
  • CXD3098Q (GH-017, GH-018, GH-019, GH-022, GH-023, GH-026, GH-027, GH-029, GH-032, GH-035, GH-036, GH-037, GH-040, GH-041, GH-051, GH-052, GH-061, XPD-001, XPD-005)
    • Has a (very likely) intentional bug in the firmware which causes MechaCon to freeze/crash when bad ECC sectors are read (e.g. badly burned/low quality DVD-R discs or scratched original discs). This likelyhood is increased on ARM-based Dragon MechaCon, thus SCPH-500xx/5500x units up to some (mostly earlier) SCPH-700xx units. Some later subrevisions of the GH-032/GH-035 boards implement a factory safety circuit to prevent this from happening, they can be identified via the Mechacon version: if it's 6.04 or newer, the console has the factory safety circuit.
  • CXD3098Q-1 (DTL-H5000x, DTL-H700xx, DTL-H75000)
  • CXD3098AQ (GH-052, GH-061, GH-062, GH-070, GH-071, GH-072)