Sound: synthesis in the 9K and an audio codec
Sound is made in the system controller, “the 9K”, by free synthesis cores, then converted by a real audio codec. The final timbre has not yet been chosen.
Synthesis in the 9K
The 9K, besides its role as controller, hosts the sound synthesis:
- free cores recreating well-known sound chips: jt51 (the YM2151, FM synthesis) and/or jt49 (the AY-3-8910, programmable sound generator);
- a sample (PCM) channel with a queue (FIFO).
The audio codec
Digital sound leaves the 9K over I²S to a TLV320AIC3254 codec (fallback: SGTL5000). The codec is powered at 1.8 V and connected to the 9K’s bank 3; the 9K alone controls it, over a 1.8 V I²C bus of its own (separate from the Pico’s 3.3 V I²C); 65816 software reaches it through the 9K’s registers. It provides:
- a line output;
- a line input and a microphone input;
- a 2 × 5 HD Audio connector for the case’s front panel.
The analogue section has its own isolated area on the board, with its own regulator (TPS7A20), to limit noise.
Recording: DMA input
Incoming sound is written to memory by the 9K itself, by DMA. As the 9K is also the PSRAM controller, it writes the samples directly to memory, between two processor accesses, stretching the high phase of the clock when needed: the processor bus is not used. Lighter modes are planned: 8-bit, mono, at 11 or 22 kHz.
And later
An evolution is planned: sound over the HDMI socket, through the Tang Nano 20K.