It is quite opportune that with the latest firmware update, we thought we would add this update for you. When we say the iFi XMOS software is optimised in-house, we REALLY mean it. Do NOT use the latest firmware on any other iFi product except for the iDSD and under no circumstances try to flash another non-AMR/iFi product that uses XMOS as it will be bricked.
Without further ado.
Software Design Team's Notes (1) (taken from Crowd-Design thread)
Thorsten and his team have been getting all the limelight so we thought we might introduce you all to Mark, Gordon and his team as they head up the software side of things. They are good guys and dont get as much press as they "only" do the software.
iFi-XMOS Solution: all out 8-Core and Ground-Up Coding
With software design, when it comes to the usability factor, Apple is the undisputed king.
No, we cannot match Apple, yet we can still try our very best to improve the usability factor as much as humanly possible with each and every new product.
The micro iDSD is no exception. It really has an unprecedented level of software optimisation at both the XMOS and the microprocessor levels. As a typical user, he or she will never see but we sure hope they hear it (J).
Starting from the XMOS chipset, we are employing the very latest U-series XMOS Octa(8)-Core chip.
Traditionally for USB audio, the 6-core chip is more than enough, however we are packing in a lot of extra features and XMOS internal clock optimisations hence the two extra cores are required.
This is like a Dual-Core versus a Single-Core computer, no comparison when it comes to benchmark tests and in use.
XMOS Programming – CPU Load Optimisation
There is the XMOS USB platform and there is iFi XMOS USB platform.
The micro iDSD uses an Octa(8) core XMOS chip (not the common 6 core). In our experience, to have the best audio performance, the loading of each core needs to be optimised. However, the XMOS development tools do not provide us with a tool (think Task Manager in Windows) to monitoring the real-time loading of each core and every core. As a result, we just went ahead and developed our very own real-time load monitor for the XMOS.
We then used it to analyse the loading of each core of the stock XMOS platform for all the sampling frequencies and data formats (PCM and DSD). What we found out was that loading was not optimised for best audio performance.
Loading of an XMOS core before optimization
- Overall, a very unevenly spread and with some very high loads
We then went on to perform a full optimisation (took us a few months to punch through) on the core loading. Now we can sleep better at night knowing that the XMOS running on all iFi products is fully-optimised for audio and we can hear the results easily (we hope you can too).
Loading of an XMOS core after optimization
- lower and smoother loading for each and every core.
- especially for the audio-related cores, the lowest and the smoothest.
More to come. Next time, the XMOS Star Clocking Scheme.
Edited by iFi audio - 5/14/14 at 5:14am