Foutdetectie en -correctie wordt al lang toegepast in audiotoepassing. Met de komst van digitale systemen was het voor het eerst mogelijk om een sluitende foutcorrectie te implementeren, maar ook analoge signalen kunnen voorzien worden van een (zeer eenvoudige) foutcorrectie om storingen weg te werken. Een mooi voorbeeld is het dubbel versturen van het analoge signaal waarbij beiden signalen in tegenfase staan (+A en -A). Wanneer er een storing optreedt in het signaal door een externe storingsbron (+X), dan zal dit op beide signalen in dezelfde zin staan (+A+X en -A+X). Door nu aan de ontvangerskant een verschilsignaal samen te stellen wordt het originele signaal verdubbeld in amplitude en zal de storing geëlimineerd worden: (+A+X) - (-A+X) = A+A + X-X = 2*A.
Natuurlijk werkt deze detectie- en correctietechniek enkel op dit soort specifieke storingen, maar ik geef het voorbeeld gewoon even om aan te tonen dat zelfs analoge communicatie in bepaalde mate van foutdetectie en -correctie kan worden voorzien.
Bij digitale data is het implementeren van foutdetectiemechanismen echter veel eenvoudiger. Men kan probleemloos extra (redundant) informatie met het signaal meesturen. De ontvanger kan dan deze extra data gebruiken om de digitale audiodata te verbeteren. Dit kan variëren van eenvoudige pariteitscontrole tot complexe algoritmen. Als u wilt, kan ik wel wat wiskundige voorbeelden uitwerken van verscheidene foutcorrectietechnieken die gebruikt worden bij digitale communicatie.
Voor zover ik weet gebruiken alle populaire digitale audio-opslagsystemen een foutcorrectiemechanisme. DAT, CD, DCC, MD, DVD,... allen gebruiken ze CIRC (Cross Interleaved Reed-Solomon Code) of een afgeleide hiervan. Waar de klassieke audio-cd enkel CIRC ter bescherming had, maken moderne audio-opslagsystemen gebruik van een bestandssysteem naar analogie met een data-cd. Dit bestandssysteem voorziet meestal nog een extra laag foutinformatie bovenop CIRC. Hierdoor kan de integriteit van de data nog beter gewaarborgd blijven. DVD is een mooi voorbeeld van zulk een systeem.
Het PCM of DD/DTS signaal is digitaal, maar om het te vervoeren moet je het omzetten in stroompjes en dat signaal is analoog. Door een coax-kabel loopt een analoog signaal in blokvorm, 1=hoog 0=uit.
Het lijkt erop, maar dat is het niet , en de 0 en de 1 wordt ook maar willekeurig uitgelezen, hoe beter de clock is deste nauwkeuriger het overeenkomt met de bron. Het clocksignaal bepaalt een interval en tussen die intervallen is er een spanning boven of onder een bepaald niveau waardoor het een 0 of een 1 is.
Dit is natuurlijk onzin. De term digitaal slaat enkel en alleen op het feit dat er slechts 2 logische niveau's zijn. Het signaal zelf mag er analoog uitzien door imperfecties van de elektronica en fysische natuurwetten (Fourier met name), maar de data welke het vervoert is wel degelijk digitaal. Stel een zuivere sinusgolf. Als je deze op een oscilloscoop voor je ziet zul je meteen aan een analoog signaal denken, maar wanneer de ontvanger van het sinussignaal enkel een onderscheid kan maken tussen de positieve alternatie en de negatieve, en géén tussenliggende waarden, dan spreekt men van een binair/digitaal systeem. Ja, er zijn wel degelijk waarden anders dan de logische 0 en 1, maar deze vallen volledig binnen één van beide niveau's, of in sommige gevallen een ongedefinieerd gebied (*). Laten we even de analogie doortrekken naar digitale TTL-elektronica. In de volksmond geldt daar dat de TTL-signaalniveau's zijn; 0 Volt voor de logische 0 en 5 Volt voor de logische 1. In werkelijkheid is de logische 0 een gebied van 0 Volt tot 0.8 Volt en de logische 1 van 2.4 Volt tot 5 Volt. Dat geeft een aanzienlijke bewegingsvrijheid aan het signaal. Het signaal hoeft helemaal niet exact 0 en 5 Volt te zijn... En toch blijft het volledig digitaal.
Omdat bij normale toepassingen de klokken in twee communicerende toestellen (bijvoorbeeld cd-speler en receiver) niet gesynchroniseerd zijn door middel van een worldclock kunnen er timingsproblemen ontstaan. Onder puristen wordt dit gegeven graag aangegrepen om goedkopere apparatuur af te breken omdat de klok daarvan vaak niet stabiel genoeg is. Echter, bij ontvangst wordt gebruik gemaakt van flanktriggering en een buffer om de ontvangen data te synchroniseren met de eigen klok. Met andere woorden, de binnenkomende data mag al aanzienlijke duty-cycle-problemen hebben zonder dat dit een probleem vormt voor de ontvanger. Het populaire S/PDIF is speciaal met deze opzet in het achterhoofd ontworpen. Anders zou een foutloze overdracht tussen twee niet gesynchroniseerde apparaten volstrekt uitgesloten zijn. Natuurlijk bestaat er een kans dat er zo nu en dan een gelijkloopprobleem optreedt (een worldclock lost dit op). Echter dit is statistisch verwaarloosbaar. In metingen die ik ooit toepaste op een hoogwaardige sample-rate-convertor en een spotgoedkope cd-speler kwam het alleszins nooit tot fouten. Een mooi teken dat de puristen (zoals meestal) de hele zaak vreselijk opgeblazen hebben...
Let wel, bij goedkope DAC's kan het wel degelijk mislopen. Deze vertrouwen blindelings op de timing van het ingangsignaal en gebruiken deze als eigen klok zonder nasynchronisatie. Een goede DAC is daarom een cruciaal component in elke digitale geluidsinstallatie. Een dure cd-speler digitaal verbonden met een goedkope receiver zal dus sneller tot fouten leiden waar een goedkope cd-speler op een dure receiver vrijwel nooit voor problemen zorgt. Natuurlijk is duur en goedkoop relatief. Niet alles wat blinkt is goud.
Waar het wel tot fouten kan komen is bij lange optische kabels. Door imperfecties van de plasticvezel (TOSLINK gebruikt geen glasvezel) ontstaan er reflecties die een vertragend effect hebben. Hierdoor kunnen zeer zware timingsproblemen ontstaan: jitter. Een elektrische coaxkabel heeft hier overigens geen last van. TOSLINK optische verbindingen zijn daarom enkel aan te raden voor korte afstanden (minder dan 5 meter). Overigens uit jitter zich niet als een verandering in de klankkleur, maar als vervelende artifacten in het geluid. Bij digitale overdracht is het voor storingen onmogelijk om de klankkleur te veranderen. Verminkingen zorgen altijd voor willekeurige artifacten.
Jammer genoeg waren Sony en Philips niet zo vooruitziend als bij de ontwikkeling van CIRC toen ze S/PDIF het leven inbliezen... Slechts één miezerig bitje werd voorzien voor de foutdetectie. Dit laat slechts een eenvoudige pariteitscontrole toe. De ontvanger kan dus hoogstens zien dat de ontvangen data fout is (en met slechts één bit als pariteit is de kans zelfs aanzienlijk dat er heel wat fouten niet opgemerkt worden). Nog erger is het feit dat S/PDIF geen requests for retransmission ondersteunt waardoor wanneer een fout gevonden wordt er voor de DAC niets anders op zit dan de foutverhullingscircuits in te schakelen en te hopen dat de luisteraar niets opmerkt.
Bij DTS en AC3 data-overdracht over S/PDIF werd dit op eendoudige manier aangepakt. Vergelijkbaar met de extra foutinformatielaag bovenop CIRC bij DVD wordt ook hier het AC3/DTS-signaal voorzien van een foutinformatielaag bovenop S/PDIF's enkele pariteitsbitje. Niet meteen de beste methode, maar de foutgevoeligheid wordt zo alsnog aanzienlijk verlaagd.
*: Het ongedefinieerde gebied tussen de beide logische waarden wordt vaak toegepast om de storingsgevoeligheid te verlagen maar staat voor de rest los van dit verhaal.Jack schreef op 02 november 2004 @ 14:28:
Digitaal daarentegen werkt met 'hoge' en 'lage' signalen. En aangezien optisch is altijd nog lichtpulsen werkt is het dus gewoon digitaal.
Je kunt niet eens een analoog signaal optisch versturen omdat men niet de lichtsterkte van de laser kan aanpassen in recievers e.d.
Analoge overdracht via een optische kabel is geen enkel probleem hoor. Men kan probleemloos de lichtintensiteit van de laser-LED's controleren.
[
Voor 4% gewijzigd door
satcp op 02-11-2004 22:18
. Reden: update aan Jack ]