One of the major trends in consumer audio surely is using a USB bus for audio data transport. And there are reasons for that. The first one is convenience. Every desktop computer, laptop or phone now has an USB port and virtually all operating systems support some USB audio standard. No more dedicated sound cards or other expensive computer audio equipment. The second reason is that it is possible to run the USB device in asynchronous mode as the clock master to overcome the major flaw of more traditional digital audio interfaces, which is the clock recovery. On the other hand, USB Audio also poses some design challenges to minimize leakage of electro-magnetic noise and interferences from the noisy computer environment. Experienced listeners report that different audio apps, computer configurations and even USB cables cause changes in sound due to different EMC conditions.
Without going into all the details about USB audio transfer modes and classes, what is required for asynchronous USB Audio solution is Class 2.0 (UAC2). Although there are several options when it comes to implementation, the XMOS processor is probably the most flexible and efficient one. It comes with USB audio 2.0 reference software, which can be modified and customized to meet additional requirements.
PCM sampling rates up to 768kHz
DSD playback, native or DoP
We have implemented many USB audio interfaces for various purposes based on the XMOS processor. In addition to the USB audio core, we have used the XMOS to implement front-end DSP, remote control and non audio signal acquisition thanks to extra resources available in the processor. With some tweaks to the standard recommended circuit configuration we managed to achieve much lower current consumption for mobile applications. Galvanic isolation on the audio bus side helps dramatically with noise and interferences. For bus powered applications one can go for a full optical isolation as well.