HomeForumsWhat's newResources 
 
 
Saturn DSP
Amon - Nov 6, 2010
 Amon Nov 6, 2010
Does anyone have any information on the DSP? According to Guillaume the doc is wrong, the simulator is wrong and the DSP is not used much.

Thank you.

 antime Nov 6, 2010
I assume you mean the SCU DSP, not the SCSP DSP? The main source of information is the SCU documentation and there does seem to be errors in it. The only DSP-related thing I've done is to write a disassembler, and while testing I noticed that the documented instruction encoding didn't completely match existing binaries. Anyway, both Yabause and MAME should contain working emulators which can be used as reference.

I don't know how much the DSP was used, but I can well imagine it being more trouble than it was worth. It has an unusual architecture, and unless you can take advantage of its single-cycle multiplier it's probably faster to use the SH2s for the job. It also adds bus contention etc.

 ExCyber Nov 6, 2010

Amon said:
Does anyone have any information on the DSP? According to Guillaume the doc is wrong, the simulator is wrong and the DSP is not used much.

Thank you.

Which DSP? There's the SCSP DSP (which is for sound effects) and the SCU DSP (which is for having your data magically transformed/filtered when you DMA it through the SCU, or something like that). Both are poorly-documented.

 Amon Nov 7, 2010
The SCSP DSP I think... the Yamaha FH1 DSP thingy which is virtually the same as the one in the dreamcast?

 Amon Nov 7, 2010
From IRC

maybe a starting point for comparison: http://hitmen.c02.at/files/docs/dc/aica_v08.txt...

but I never really studied the SCSP

oh yeah, the SCSP manual has pretty much nothing on the DSP

just a block diagram and a really vague register map :/

hmm

not sure this is direct-linkable but: http://koti.kapsi.fi/~antime/sega/files/ST-228-R1-...

and it doesn't have real instruction encodings

but seems to give some idea of how it works

looks like you can basically do difference equations and memory load/store ops, though I could be misinterpreting

* Ex-Cyber takes another look at that block diagram

heh... the microcode memory is on there but just has an arrow vaguely pointing into the rest of the diagram

haha

that happens sometimes in block diagrams when the person drawing it wants to "cheat" and not actually connect two things with a line (e.g. if they're in opposite corners or otherwise would need a lot of snaking around)

but this one doesn't go anywhere

it's just like "MPRO(128Wx54b) ---->"

and I'm guessing that "54" is supposed to be "64"

 antime Nov 7, 2010
The documentation for the AICA is available in HTML format here... (apparently converted from a PDF with some figures re-drawn by hand). The DSP section contains the instruction format and other bits not included in the SCSP documentation. As the AICA has more functionality you'll need to cross-reference the document with the SCSP document to figure out what info applies to the Saturn and what only to the Dreamcast.

MAME also has SCSP DSP emulation, so you can use the sources as additional documentation.

 Runik Nov 8, 2010
I'm not sure Guillaume talked about the SCSP DSP, I think it's a better guess that it was the SCU's one ...