Details zu AMDs TrueAudio: Von VLIW und Verwandten

Auf der GPU-Mes­se vor ein paar Tagen gab AMD erst­mals bekannt, eine Audio-Beschleu­ni­gung mit­tels digi­ta­len Signal­pro­zes­so­ren (DSP) anzu­bie­ten. Mitt­ler­wei­le sind im Inter­net eini­ge wei­te­re Ein­zel­hei­ten in Inter­views mit AMD durch­ge­si­ckert. Bereits alt ist die Infor­ma­ti­on, dass TrueAu­dio kei­ne Sound­kar­te ersetzt, jedoch kann man dies nicht oft genug erwäh­nen, da sich die­se Falsch­in­for­ma­ti­on zäh im Inter­net hält. Zwei Folie aus der aktu­el­len Prä­sen­ta­ti­on der Vul­kan­in­sel-Rei­he stellt die­sen Sach­ver­halt deut­lich dar:

Nach der Berech­nung des Sounds erfolgt die Aus­ga­be also über die han­dels­üb­li­chen Onboard­sounds, USB, oder was man sonst noch an Audio-Gerä­ten im PC hat.

Beim ver­wen­de­ten DSPs fiel die Wahl auf Tech­nik von Ten­si­li­ca, die AMD bereits zur Video-Beschleu­ni­gung in der UVD-Ein­heit ein­setzt:

Macht man sich auf die Suche nach dem Audio-Lie­fe­ran­ten, fin­det man Genaue­res in Form von PDFs auf des­sen Web­sei­te. Ten­si­li­cas DSPs basie­ren auf einem CPU-Grund­ge­rüst namens LX4, das die übli­chen Ver­wal­tungs­ein­hei­ten wie Fetch/Decode und Load/Store bereit hält. Schon letz­te­re sind aber kon­fi­gu­rier­bar, wie man im nächs­ten Bild an der grau-blau­en Farb­ge­bung sieht:

L1-Caches, die AMD in Ihrer Lösung im Maxi­mal­aus­bau von 2x32 kB ein­setzt, wie man im fol­gen­den Bild links sehen kann, sind gar kom­plett optional.

Wei­te­re Fle­xi­bi­li­tät gewinnt der Kun­de dann bei der Aus­wahl der Funk­ti­ons­ein­hei­ten. Dort kann man aus einer Viel­zahl Optio­nen wählen:

AMD nutzt davon laut Ihrer TrueAu­dio-Über­sichts­fo­lie oben die Audio-Erwei­te­rung “HiFi EP”. Was die­se Erwei­te­rung leis­tet, sieht man in Ten­si­li­cas Über­sicht der ange­bo­te­nen Audio-Lösungen:

Die EP-Ver­si­on ist also eine 24-Bit-VLIW-Archi­tek­tur. Ja, man hat rich­tig gehört, die DSPs funk­tio­nie­ren nach dem glei­chen Sche­ma wie die GCN-Vor­gän­ger­ge­ne­ra­ti­on. Aller­dings wer­den bei “HiFi EP” nur VLIW-Bün­del aus 2 Befeh­len geschnürt, nicht 4 oder gar 5 wie bei AMDs alten Gra­fik­chips. Des­wei­te­ren ste­hen 3 Mul­ti­pli­ka­ti­ons­ak­ku­mu­la­to­ren (MAC) zur Ver­fü­gung, die die Rechen­last über­neh­men. Im Gegen­satz zu den im Bull­do­zer ver­wen­de­ten FMACs wird zwi­schen der Addi­ti­on und Mul­ti­pli­ka­ti­on gerundet.

Was gewinnt man nun damit? Viel Rechen­leis­tung, die aber nicht nur für 3D-Audio­ef­fek­te, wie den gezeig­ten Genau­dio-Algo­rith­men, son­dern auch zur Deko­die­rung für gewöhn­li­che MP3, MP4, DAB, OGG, WMA, und vie­le ande­re Audio-Codecs zur Ver­fü­gung steht. Ins­ge­samt hält Ten­si­li­ca dafür über 100 Soft­ware­pa­ke­te bereit. Wie bereits frü­her berich­tet, wird die CPU  dadurch von allen Audio­be­rech­nun­gen befreit und somit ent­las­tet. Laut eines Berichts bei Tech Report lau­fen die DSPs auf dem Rade­on-HD-7790-Clo­ne R7-260X mit 800 MHz. Da dies deut­lich unter dem Shader­takt von 1100 MHz liegt, ist davon aus­zu­ge­hen, dass die DSPs bei den neue­ren AMD-GPUs durch ein eige­nes Takt­si­gnal ver­sorgt wer­den. Nach­prü­fen kann man dies man­gels geeig­ne­ter Aus­le­se­tools aber noch nicht. Auf alle Fäl­le wäre ein fixer DSP-Takt für die Pro­gram­mie­rer vor­teil­haft, da sie damit gezielt mit einem fixen Rechen­leis­tungs­bud­get pla­nen kön­nen. Dies benennt AMD auch auf fol­gen­der Folie:

Sol­che CPU-Ent­las­tun­gen und bes­se­re Plan­bar­keit stün­den natür­lich auch den bei­den ver­wand­ten Spiel­kon­so­len mit den Jagu­ar-Ker­nen gut zu Gesicht. Tat­säch­lich setzt auch Micro­soft auf die glei­che Tech­nik von Ten­si­li­cia. In einem Gespräch mit Eurogamer.net gaben die XBox-One-Ent­wick­ler fol­gen­de Details bekannt:

The audio block was com­ple­te­ly uni­que. That was desi­gned by us in-house. It’s based on four ten­si­li­ca DSP cores and seve­ral pro­gramma­ble pro­ces­sing engi­nes. We break it up as one core run­ning con­trol, two cores run­ning a lot of vec­tor code for speech and one for gene­ral pur­po­se DSP. We cou­ple with that sam­ple rate con­ver­si­on, fil­te­ring, mixing, equa­li­sa­ti­on, dyna­mic ran­ge com­pen­sa­ti­on then also the XMA audio block. The goal was to run 512 simul­ta­neous voices for game audio as well as being able to do speech pre-pro­ces­sing for Kinect.”

Micro­soft nutzt also 4 DSPs von Ten­si­li­ca, die es ermög­li­chen, 512 Stim­men sowie Sprach­er­ken­nung für Kinect zu steu­ern. Im Gegen­satz zu Micro­soft nutzt AMD nach Infor­ma­tio­nen von Maxi­mumPC zwar nur 3 DSPs:

AMD has sin­ce dis­c­lo­sed to us that it has three Ten­si­li­ca DSPs on the die”

… jedoch dürf­te der Ver­zicht eines DSPs durch das Feh­len von Kinect zu erklä­ren sein. Für die Audio-Pro­gram­mie­rer wäre somit die Effekt­er­zeu­gung für die XBox und AMD ähnlich.

Wei­te­re tech­ni­sche Details wer­den noch auf fol­gen­der Folie verraten:

Hier sieht man links unten im Eck, dass die DSPs einen eige­nen Adress­raum von 64 MByte im Gra­fik­spei­cher haben. Trotz Ten­si­li­cas Mit­glied­schaft im HSA-Gre­mi­um kann von HSA bzw. hUMA zwi­schen GPU und DSP somit also kei­ne Rede sein. In Hin­blick auf die recht neue Mit­glied­schaft und die lan­ge Ent­wick­lungs­zeit bei Gra­fik­kar­ten durf­te man aber auch nicht zuviel erwar­ten. Span­nend wird es, wann die DSPs kom­plett ins HSA-Uni­ver­sum ein­ge­klinkt wer­den, und ob die DSPs viel­leicht auch auf einer APU zum Ein­satz kom­men werden.

Zum Ende noch die tech­ni­schen Daten von AMDs TrueAu­dio-Lösung im Überblick:

  • 3 Ten­si­li­ca DSP cores
  • Ten­si­li­ca HiFi2 EP Audio Erweiterung
  • Ten­si­li­ca Xten­sa SP Float support
  • 32KB L1I- und L1D-Caches pro DSP core
  • 8KB Scratch RAM für loka­le Ope­ra­tio­nen pro DSP core
  • 800 Mhz
  • Voll­in­te­gra­ti­on in der GPU
  • Auf allen Gra­fi­kar­ten gleich

Und zum Abschluss noch eine Hör­pro­be von Genau­dio für alle audio­phi­len Leser:

Quel­len: