Hallo!
Also ich habe 4 CS8414 u.ä. SPDIF-Receiver. Diese liefern u.a. ein Bitclock-Signal = 128xfs und ein Wordclock = fs Signal. Wenn die Master sind syncen sie sich auf SPDIFin und die Clock-Signale sind outputs. Sind sie Slave dann syncen sie auf die Clock-Signale, die Pins sind Inputs.
Erste Frage: Kann ich die Clock-Signal-Pins einfach verbinden? Ich gewährleiste das immer nur ein Master da ist. Ws passiert beim Umschalten, wenn der Master wechselt?
Zweite Frage: Die ICs liefern ein Errorbit falls SPDIF nicht gültig ist. Diese Errorbit will ich hernehmen und damit den Master schalten nach der folgenden Wahrheitstabelle: Ex == Errorbit X Sx == Slave/Master bit 1 == Slave, 0 == Master (wie rum weiss ich grad nicht)
E1 E2 E3 E4 S1 S2 S3 S4
0 - - - 0 1 1 1 1 0 - - 1 0 1 1 1 1 0 - 1 1 0 1 1 1 1 0 1 1 1 0 1 1 1 1 0 1 1 1Die letzte Zeile sollte doch einen definiterten Anfang gewährleisten, oder? Das Errorbit wird gesetzt wenn kein gültiges Signal anliegt (valid bit gesetzt, ein Fehler auftritt) SPDIFin und Sync nicht syncron sind. D.h. das Errobit hängt vom Status Master/Slave und den Clock-Signalen ab.
Jetzt die Frage, das kann sich doch jetzt so aufschaukeln, dass kein Reciever mehr das Signal erkennt?
SPDIF1 liegt nicht an, aber Reciever1 ist Master -> E1 wird gesetzt. SPDIF2 liegt an, aber Reciever2 ist noch Slave -> E2 wird auch gesetzt, noch bevor Reciever2 dazu kommt Master zu werden.
Wie vermeide ich solche unfiniterten Zustände am besten? Ich möchte beliebig SPDIF-Signal ein- und ausstöpseln.
Mein alter Entwurf funktioniert, aber da habe ich Reciever1 hart auf Master geklemmt. Wenn nichts an R1 ankommt: Pech... Aber auch da zickt die Schaltung manchmal (sehr selten) rum, und nur ein reset (an/aus) hilft da. Was übrigens nicht geht, ist alle 4 Reciever unabhängig voneinander als Master laufen zu lassen. Selbst wenn die reinkommenden SPDIFs gesynct sind. Im ADAT Signal ist dann genau das Signal zu hören von welchem Reciever das Wordclocksignal für den ADAT-Chip gewonnen wird. Die anderen Signale sind dann schönes digitales 0dBfs Rauschen...(Toleranz 20ns und das ist wohl nicht gegeben)
Ach ja, die 4 SPDIFs werden zu einem ADAT verwurschtelt.