SPC700
De Sony SPC700 is de 8-bit geluidchip ontwikkeld door Ken Kutaragi en gebruikt in de Super Nintendo Entertainment System/Super Famicom spelcomputer samen met een digitale signaalprocessor (DSP). De SPC700 en de bijbehorende 16-bit DSP zijn ontwikkeld en gefabriceerd door Sony. De SPC700-chip was zeer geavanceerd voor zijn tijd (1990).
De SPC700 bevindt zich in de SNES boven de DSP, aan de linkerkant van de geluidsmodule. De chip bevat 64KB intern RAM en draait op 2,048 MHz. Het heeft zes interne registers en kan 256 opcodes verwerken.
SPC700-samples worden opgeslagen in het RAM in gecomprimeerd (Bit Rate Reduction) formaat. De SPC700-instructieset lijkt veel op de 6502-CPU-familie, maar bevat extra instructies waaronder XCN (eXChange Nibble), dat de bovenste en onderste 4-bit delen van de 8-bit accumulator verwisselt, en een 8-bij-8-naar-16-bit vermenigvuldigingsinstructie.
De DSP werkt vergelijkbaar met een moderne wavetable-geluidskaart, zoals de Sound Blaster Audigy. Het kan acht geluiden tegelijk voortbrengen, op elke relevante toonhoogte en volume. Het heeft ondersteuning voor panning, ADSR-envelope-besturing, echo met filtering (via een programmeerbare 8-taps FIR), en het gebruik van ruis als geluidsbron (nuttig voor bepaalde geluidseffecten zoals wind). Het genereert een 16-bit stereogeluid op een bemonsteringsfrequentie van 32 kHz. Communicatie tussen de SPC700 en de DSP loopt via memory-mapped I/O.
De SPC700 gedraagt zich op een ietwat niet-standaard manier voor een geluidschip. De hoofd-cpu van de SNES draagt blokken data met commando's en samples over naar het interne geheugen van de SPC700. Deze commando's zijn machinecodeprogramma's en zijn voor de SPC700 ontwikkeld op een manier die vergelijkbaar is met programma's die geschreven zijn voor pc's of Mac's. Zodoende kan de SPC700 gezien worden als een coprocessor die toegewijd is aan geluid op de SNES/Super Famicom. Dit is een gebied waar de Game Boy Advance niet lijkt op de SNES, waar de ARM7-cpu alle audio bestuurt.
Het formaat waar SNES-emulatoren geluid in opslaan, .SPC, komt van de naam van deze chip.
Externe links
[bewerken | brontekst bewerken]- (en) Een tutorial over de SPC700 is te vinden op Wikibooks
- (en) SPC700 Documentatie
- (en) SPC700 APU-handleiding