Erkennst du dieses Signal?

20

Mystisches DAC-Signal

Die Geschichte für dieses Signal ist die folgende. Ich habe einen NAD C 356BEE-Verstärker mit integriertem MDC-DAC-Modul gekauft . Es hat optische und USB-Eingang. Die Optik ist in Ordnung, aber wenn ich den DAC über USB an meinen PC anschließe, macht er zu festgelegten Zeiten ein Klicken / Knacken. Die Klickfrequenz hängt irgendwie mit der Signalabtastrate zusammen. Zum Beispiel bei 96 kHz alle 2,5 Sekunden, aber bei 48 kHz alle 30 Sekunden.

Ich habe eine Sinuswelle gespielt, das Rauschen aufgezeichnet und die Wellenform vergrößert. Es ist ein sehr kurzes Signal, ungefähr 0,008 Sekunden. Hast du eine Idee woran es liegen könnte?

Die Amplitude des Rauschsignals ist viel höher als das Testsignal. Die Länge des Rauschsignals ist zufällig (aber sehr kurz, Sie hören nur ein Klicken), aber die Wellenform ist für dasselbe Testsignal immer gleich.

Unterschiedliche Testfrequenzen verursachen unterschiedliche Fehlersignale. Es scheint, dass das Fehlersignal eine Transformation des Originals ist.

Geben Sie hier eine Bildbeschreibung ein

csadam
quelle
2
Es sieht fast so aus, als würde ein 2er-Komplement-Teil nicht mit 2er-Komplement-Daten gespeist oder umgekehrt.
Matt Young
1
Wow, das ist verrückte Symetrie, genauso verkehrt herum wie rückwärts ...
Grady Player
@ Matt jung oder falsche Bytereihenfolge
Grady Player

Antworten:

30

Das sieht aus wie eine Sinuswelle, um die die y-Achse gewickelt ist. Hier ist mein Versuch, es neu zu erstellen:

gewickelte Sinuswelle

Dies ist ein Plot der Funktion , wobei round ( x ) x auf die nächste ganze Zahl rundet .1,25Sünde(t)-runden(1,25Sünde(t))runden(x)x

Vielleicht wird das höchste Bit Ihres Signals abgeschnitten? Das würde wahrscheinlich eine solche Wellenform erzeugen.

Ilmari Karonen
quelle
WOW, du bist großartig. Ich habe festgestellt, dass die Form des Fehlersignals mit dem Testsignal zusammenhängt, und ich habe mit einem betroffenen Sinus getestet, als ich über die Wellenformen kam.
csadam
3
Das ist genau die Antwort. Ich habe genau dieses Signal erzeugt, als ich versucht habe, mit einem Digital-Analog-Wandler, der an einen Mikrocontroller angeschlossen ist, eine Sinuswelle zu erzeugen. Dies geschah, indem versehentlich Werte eingegeben wurden, die größer als der Maximalwert des Konverters waren, was zu einer Art Umbruch führte, wie Sie in der obigen Welle sehen können.
Lightyear Buzz
8

Das habe ich schon mal gesehen. Ich habe an einem ADSP-21xx-Prozessor gearbeitet. Der Audio-CODEC setzt die eingehenden Daten in das Komplement-Format von 2 mit Vorzeichen. An diesem Tag habe ich die Daten an einen Mehrkanal-Maxim-DAC gesendet, der eine vorzeichenlose Binärdatei erwartet hat. Alle um mich herum hatten ein Lachen über die Batman-Ohren, dann fügte ich ein paar Codezeilen hinzu, um zur nicht signierten Binärdatei zurückzukehren.

Um das Problem zu beheben, benötigen wir viel mehr Informationen. Es sieht so aus, als ob es einige Überlaufprobleme geben könnte.

Matt Young
quelle
Ich versuche es mit verschiedenen gesteuerten Signalen wie erzeugten Sinuswellen, um zu sehen, was es tut. Haben Sie eine Vorstellung von der Zeit-Abtastrate-Beziehung zwischen Occurrency? Vielleicht hat es einen internen Puffer, der überläuft und sich dann selbst zurücksetzt.
csadam
Können Sie ein paar andere Abtastraten ausprobieren?
Matt Young
Durch Ändern der Abtastrate wird die Wellenform nicht geändert, jedoch die Frequenz oder die Wellenform des Testsignals. Ich hatte großes Glück, dass ich dieses scharfe Signal bekam, andere Frequenzen sind viel verzerrter.
csadam
bei 96 kHz, 72 kHz, 60 kHz, 30 kHz, 15 kHz immer 2,5 Sekunden. Manchmal "verfehlt" es einige Pops, dann beginnen die späteren nicht beim nächsten Raster von 2,5 Sekunden, sondern nach dem Zufallsprinzip. Allerdings sind zwischen 2 Klicks immer 2,5 Sekunden die kürzeste Zeit.
csadam
7

Das ist sehr interessant. Ich beschloss, mir das Konzept des Verlusts des höchstwertigen Teils einer Sinuswellensequenz anzuschauen. Ich habe es für einen halben Zyklus einer Sinuswelle gemacht und es führt tatsächlich zu der Wellenform in der Frage des ursprünglichen Posters.

Bildbeschreibung hier eingeben

In der von mir erstellten Tabelle wird das Argument für die Funktion sin () von 0,00 auf 3,14 erhöht. Es skaliert dann den Bereich des Sinusergebnisses, der über den Bereich von 0 bis 255 skaliert werden soll, um einem Byte-Wertebereich zu entsprechen. Schließlich wurde das obere Bit des Byte-Wertebereichs abgeschnitten.

Die zum Erstellen des Bildes verwendete Tabelle ist als Excel-XLSX-Datei verfügbar: https://docs.google.com/file/d/0BxTbL_E1KhGvbTYtY1k1WTNxT1U/edit?usp=sharing

Michael Karas
quelle
Sie erhalten sicherlich eine ähnlich aussehende Welle, aber ich denke, Sie werden feststellen, dass Sie, wenn Sie diese über die gesamte Welle erstrecken, einen Halbzyklus erhalten, der nur positiv und nur negativ ist, was nicht mit der OP-Welle identisch ist.
Wideman
@gwideman - Nicht, wenn Sie das MSB-1-Bit verpassen und Ihre Daten das 2er-Komplement sind!
Connor Wolf
2

Bisherige Hinweise: 1. Die Problemwellenform sieht aus wie ein Sinus mit hoher Bitumkehrpolarität oder verursacht zumindest eine Verschiebung zu einer anderen Grundlinie. 2. Problemwellenform sieht aus wie die zu testende Wellenform, jedoch mit der angegebenen Transformation. 3. Die Periodizität des Problems ist ziemlich lang (Sekunden) und scheint mit der Abtastrate zu variieren.

Ich werde vorschlagen, dass es irgendwo im System einen Pufferüberlauf gibt, bei dem in einem Intervall, das von der Abtastrate beeinflusst wird, Bytes verloren gehen, wodurch die Zahlengrenzen verschoben werden. Beispiel: Für 16-Bit-Nummern erwartet der D / A H1 L1, empfängt jedoch stattdessen L1 H2 oder Ähnliches. (Ähnlich wie Gradys Vorschlag). Das Signal hat also Merkmale, die an das beabsichtigte Signal erinnern, aber natürlich durch die falschen Bytes an den falschen Stellen verzerrt sind.

csadam hat nicht erwähnt, wie das USB-Signal vom PC erzeugt wird, aber das wäre vielleicht interessant.

Wideman
quelle