Mal ein paar Gedanken......
Wir erwarten 3.1 MHz Bit-Clock. Diese Bit-Clock und die eigentlichen Bits können aus den Nulldurchgängen und den Zeiten dazwischen gewonnen werden.
Nach 64 Bits (= 48 kHz) ist ein Frame gesammelt und wir könnten die beiden mit 24 Bit auflösenden PW-Modulatoren für die beiden Stereo-Kanäle laden.
Die PWM müsste dann aber mit stolzen 800 GHz getaktet werden (48 kHz * 2^24), damit sie mithalten kann. Das ist natürlich Humbug!
Also wird jede Lösung mehr oder weniger "so lala" sein. Einfach dadurch, dass man Bits wegwirft. Bei 10 Bit Auflösung reicht man mit einer 50 MHz PWM aus.
Diese PWM-Taktrate muss synchron zur o.a. Bit-Clock laufen. In eine Bit-Clock müssten also exakt "50 MHz / 3.1 Mhz" Takte passen.
Man kann zwar nun eine Digital-PLL justieren. Die muss dann allerdings mit einer Grundfrequenz von mehreren GHz arbeiten, damit sie genau genug geregelt werden kann. Das ist auch wieder Humbug.
Also vergisst man das PLL-Gebrabbel, stellt die PWM-Taktfrequenz auf ~52MHz hoch und lässt innerhalb einer 3.1 MHz Bit-Clock den PWM-Taktgenerator genau 16 Takte laufen. Dann stoppt man die PWM und startet die nächsten 16 Takte bei der nächsten Bit-Clock.
So wird die 10 Bit-PWM in 64 kleine Häppchen unterteilt, die jeweils ein paar Nanosekunden zu kurz sind. Jedes Häppchen ist synchron zu einem empfangenen Bit.
-------------
Wo lag/lieg nun das Problem?