psx.wiki

Sound Processing Unit (SPU)

24-voice ADPCM sound source and mixer of the PlayStation.

This is an old revision of this page, as edited by RemmyLee at 02:46, 23 October 2026. Edit this revision | Latest revision

Overview

The PlayStation sound system is made up of the SPU and the CD-ROM decoder.1

The SPU plays ADPCM sample data from its local memory at a sampling frequency of 44.1 kHz.2

The CPU operates the SPU.3

The SPU has a digital reverb. It also mixes the audio output of the CD-ROM decoder with its own output.2

The SPU has the following specifications:

Table 1: SPU specifications
Item Specification
Sound data format ADPCM
Number of simultaneous sounds (number of voices) 24
Sampling frequency 44.1 kHz

Sound Buffer

The sound buffer is a 512KB local memory that supplies waveform data to the sound source. It is not mapped in the CPU address space.2

The sound buffer holds the ADPCM sound data. It is also the reverb work area.2

The sound buffer also serves as a temporary buffer for sound data on its way to main memory.2

DMA can transfer data from main memory to the sound buffer. Sound generation does not need to stop during the transfer.2

Voice Functions

Each of the 24 voices has its own settings for the functions below.4

ADPCM or noise, the left and right volume and reverb on or off are set voice by voice.2

Pitch Transformation

The pitch of ADPCM sound data can be varied from -12 octaves to +2 octaves. Steps of a half-tone or less can be set.4

Pitch Variation by Time

The volume of one voice can vary the pitch of the next voice. The final pitch is NewPitch(n) = (1 + V(n-1)) Pitch(n).4

V(n-1) is the volume of voice n-1, which varies with time. Pitch(n) is the pitch originally set for voice n.4

Noise Source

The SPU has a noise generator that uses pseudo random numbers. Any voice can use the noise source in place of ADPCM data from the sound buffer.4

The noise generation clock sets the noise tone.4

Envelope

The envelope has separate rates for attack, decay, sustain and release. The sustain level can also be set.4

Each envelope rate follows a linear curve or an exponential curve. Decay uses the exponential curve only.4

Volume

Volume variation is set apart from the envelope.5

The volume can stay constant or change by one of the following:

Table 2: Volume variation
Variation
Linear increment
Linear decrement
Reverse indexed increment
Indexed decrement

Reverb

The digital reverb uses the sound buffer as its work area.5

Reverb is set on or off for each voice and for the CD input.5

CD-ROM Decoder Input

The CD-ROM decoder plays audio from CD-DA or CD-ROM XA data. Its output enters the SPU and is mixed with the SPU output.1

The mixed signal passes through the reverb unit to become the final audio output.1

The decoder has a built-in mixer of 4 attenuators. The attenuation of each one sets the mix of the stereo output.1

Sound Data Transmission to Main Memory

The SPU writes two kinds of data to a fixed area of the sound buffer at every sample (44.1 kHz).5

The first is the CD input after its volume is applied. The second is the output of 2 specific voices after their envelopes are applied.5

DMA can transfer this data to main memory for processing.5

References


  1. ^ a b c d Sony Computer Entertainment Inc. PlayStation Hardware. August 1998. Page 4-3, Figure 4-1, Figure 4-2.

  2. ^ a b c d e f g Sony Computer Entertainment Inc. PlayStation Hardware. August 1998. Page 4-4, Table 4-1, Figure 4-3.

  3. ^ Sony Computer Entertainment Inc. PlayStation Hardware. August 1998. Page 1-4.

  4. ^ a b c d e f g h Sony Computer Entertainment Inc. PlayStation Hardware. August 1998. Page 4-5, Figure 4-4.

  5. ^ a b c d e f Sony Computer Entertainment Inc. PlayStation Hardware. August 1998. Page 4-6, Figure 4-5.

Categories: Hardware