AN02003 : SPDIF/ADAT/I²S Slave Receive to I²S Slave Bridge with ASRC

VERSION RELEASED COMMENTS DOCUMENTATION SOFTWARE
v1.1.0 2024-11-21 VIEW HTML VIEW PDF ZIP
1.0.1 2024-09-16 DOWNLOAD ZIP ZIP

Overview#

This note describes the authoring of a ADAT/SPDIF/I²S to I²S converter/bridge. Asynchronous sample rate conversion (ASRC) is employed in order to bridge the two differing clock domains.

This note replaces AN00231: SPDIF Receive to I2S output using Asynchronous Sample Rate Conversion

Key features#

The documented application is designed to run on the XK-316-AUDIO-MC board and has the following key features:

  • ASRC input interfaces:
    • S/PDIF Receive

    • ADAT Receive (including support for S/MUX)

    • I²S slave receive

  • ASRC output interfaces:
    • I²S slave transmit

  • Additional ADAT/SPDIF transmitters are enabled in ADAT or S/PDIF mode (data derived from input received from the ASRC “output” I²S bus)

  • Support for the following sample frequencies: 44.1, 48, 88.2, 96, 176.4, 192 kHz

  • Sample latency of between 1.9 and 0.33 milliseconds (Higher sample rates -> lower latency) which can be lowered to between 1.1 and 0.24 milliseconds

  • Core power consumption between 126 and 205 mW depending on configuration

  • Provides similar functionality to the CS8422 device

Known issues#

  • None

Required tools#

  • XMOS XTC Tools: 15.3.0

Required libraries (dependencies)#

  • lib_src (www.xmos.com/file/lib_src)

  • lib_adat (www.xmos.com/file/lib_adat)

  • lib_spdif (www.xmos.com/file/lib_spdif)

  • lib_i2c (www.xmos.com/file/lib_i2c)

  • lib_i2s (www.xmos.com/file/lib_i2s)

  • lib_sw_pll (www.xmos.com/file/lib_sw_pll)

  • lib_logging (www.xmos.com/file/lib_logging)

  • lib_xassert (www.xmos.com/file/lib_xassert)

  • lib_xcore_math (www.xmos.com/file/lib_xcore_math)

Scroll to Top