Abo
  • Services:

Die Macht der Statistik

Wie geht es weiter? Die Signale der niederwertigsten Bits in jeder Pin-Gruppe sollten sich öfter ändern als die höherwertigen. Warum also nicht eine kleine Statistik aufmachen? Ich sortiere die Signale an den Pins nach der Häufigkeit der Änderungen und ordne sie in Vierergruppen an.

Übergänge    Pins
6            E13 F12 J14 K15
18           F10 H13 H15 L14
42           D11 G12 G14 M15
84           C11 F15 J13 N14
173          P15 B14 E15 J11
335 - 357    K12 B15 M13 D14
358 - 368    B10 R15 T14 C13
406 - 427    L12 R14 C15 B12
Stellenmarkt
  1. P.E.G. Einkaufs- und Betriebsgenossenschaft eG, München
  2. Soluvia IT-Services GmbH, Mannheim

Bei einer Sinuskurve, die sich dreimal wiederholt, wird sich das höchstwertige Bit zweimal pro Wiederholung ändern, damit gilt 2 * 3 = 6 Änderungen, das entspricht dem ersten Eintrag. Die anderen Einträge sind Vielfache von 3. Erst ab 173 wird das Schema durchbrochen, das liegt um eins unter 58 * 3 = 174. Wahrscheinlich ist das Signal nicht ganz mittig über den gesamten Bereich. Die Anzahl der Änderungen für die niederwertigsten drei Bits variiert deutlich, eventuell sind sie durcheinander und einige Signaländerungen sind wahrscheinlich einfach Rauschen.

Ordnen wir die Pins entsprechend der obigen Tabelle und schauen erneut darauf:

  • Legende der FPGA-Pins (Bild: Christer Weinigel)
  • Die FPGA-Pins (Bild: Christer Weinigel)
  • Pins des SoC-Bus (Bild: Christer Weinigel)
  • Pins zum RAM (Bild: Christer Weinigel)
  • Pins zum ADC (Bild: Christer Weinigel)
  • Vollständig dokumentierte Karte der Pins (Bild: Christer Weinigel)
  • Matrix-Schaltung der Bedientasten am Oszilloskop (Bild: Christer Weinigel)
  • Noch keine Sinuskurve (Bild: Christer Weinigel)
  • Mit viel Phantasie eine Sinuskurve (Bild: Christer Weinigel)
  • Eine echte Sinuskurve (Bild: Christer Weinigel)
  • Das gleiche Spiel mit zwei Kanälen (Bild: Christer Weinigel)
  • Noch etwas Chaos (Bild: Christer Weinigel)
  • Wenigstens keine Ausreißer mehr (Bild: Christer Weinigel)
  • Beide Kanäle sind klar erkennbar. (Bild: Christer Weinigel)
  • Beide Kanäle mit größer Dämpfung (Bild: Christer Weinigel)
Eine echte Sinuskurve (Bild: Christer Weinigel)

Das sieht jetzt definitiv wie eine abgeschnittene Sinuskurve aus. Es gibt immer noch viel Rauschen, aber langsam wird es.

Weiter geht es. Da alle Pin-Gruppen ähnliche Daten zeigen, muss der ADC mit allen vier Gruppen Daten von Kanal 1 liefern. Also starte ich das Oszilloskop neu und schalte beide Kanäle an, beide werden mit der gleichen Signalquelle gespeist. Jetzt sollten je zwei Gruppen die Daten für Kanal 1 und Kanal 2 enthalten. Ich schalte auf Linux um und führe eine neue Erfassung durch.

  • Legende der FPGA-Pins (Bild: Christer Weinigel)
  • Die FPGA-Pins (Bild: Christer Weinigel)
  • Pins des SoC-Bus (Bild: Christer Weinigel)
  • Pins zum RAM (Bild: Christer Weinigel)
  • Pins zum ADC (Bild: Christer Weinigel)
  • Vollständig dokumentierte Karte der Pins (Bild: Christer Weinigel)
  • Matrix-Schaltung der Bedientasten am Oszilloskop (Bild: Christer Weinigel)
  • Noch keine Sinuskurve (Bild: Christer Weinigel)
  • Mit viel Phantasie eine Sinuskurve (Bild: Christer Weinigel)
  • Eine echte Sinuskurve (Bild: Christer Weinigel)
  • Das gleiche Spiel mit zwei Kanälen (Bild: Christer Weinigel)
  • Noch etwas Chaos (Bild: Christer Weinigel)
  • Wenigstens keine Ausreißer mehr (Bild: Christer Weinigel)
  • Beide Kanäle sind klar erkennbar. (Bild: Christer Weinigel)
  • Beide Kanäle mit größer Dämpfung (Bild: Christer Weinigel)
Das gleiche Spiel mit zwei Kanälen (Bild: Christer Weinigel)

Die Pins für beide Kanäle wirken teilweise vermischt, also probiere ich wieder den Trick mit dem abgeschnittenen Signal und vertausche die Pins so lange, bis die ersten beiden Gruppen die Daten von Kanal 1 enthalten.

  • Legende der FPGA-Pins (Bild: Christer Weinigel)
  • Die FPGA-Pins (Bild: Christer Weinigel)
  • Pins des SoC-Bus (Bild: Christer Weinigel)
  • Pins zum RAM (Bild: Christer Weinigel)
  • Pins zum ADC (Bild: Christer Weinigel)
  • Vollständig dokumentierte Karte der Pins (Bild: Christer Weinigel)
  • Matrix-Schaltung der Bedientasten am Oszilloskop (Bild: Christer Weinigel)
  • Noch keine Sinuskurve (Bild: Christer Weinigel)
  • Mit viel Phantasie eine Sinuskurve (Bild: Christer Weinigel)
  • Eine echte Sinuskurve (Bild: Christer Weinigel)
  • Das gleiche Spiel mit zwei Kanälen (Bild: Christer Weinigel)
  • Noch etwas Chaos (Bild: Christer Weinigel)
  • Wenigstens keine Ausreißer mehr (Bild: Christer Weinigel)
  • Beide Kanäle sind klar erkennbar. (Bild: Christer Weinigel)
  • Beide Kanäle mit größer Dämpfung (Bild: Christer Weinigel)
Noch etwas Chaos (Bild: Christer Weinigel)

Das sieht wieder besser aus. Die rote und die grüne Gruppe enthalten die Daten von Kanal 1, die blaue und magentafarbene Gruppe die von Kanal 2. Offensichtlich sind die grüne und blaue Gruppe immer noch vermischt. Zwischen der 80. und der 230. Stichprobe ist der Wert der blauen Stichproben um 128 zu hoch und der der grünen 128 zu niedrig. Ich tausche die Pins, die den Wert 128 repräsentierten, zwischen den Gruppen aus.

  • Legende der FPGA-Pins (Bild: Christer Weinigel)
  • Die FPGA-Pins (Bild: Christer Weinigel)
  • Pins des SoC-Bus (Bild: Christer Weinigel)
  • Pins zum RAM (Bild: Christer Weinigel)
  • Pins zum ADC (Bild: Christer Weinigel)
  • Vollständig dokumentierte Karte der Pins (Bild: Christer Weinigel)
  • Matrix-Schaltung der Bedientasten am Oszilloskop (Bild: Christer Weinigel)
  • Noch keine Sinuskurve (Bild: Christer Weinigel)
  • Mit viel Phantasie eine Sinuskurve (Bild: Christer Weinigel)
  • Eine echte Sinuskurve (Bild: Christer Weinigel)
  • Das gleiche Spiel mit zwei Kanälen (Bild: Christer Weinigel)
  • Noch etwas Chaos (Bild: Christer Weinigel)
  • Wenigstens keine Ausreißer mehr (Bild: Christer Weinigel)
  • Beide Kanäle sind klar erkennbar. (Bild: Christer Weinigel)
  • Beide Kanäle mit größer Dämpfung (Bild: Christer Weinigel)
Wenigstens keine Ausreißer mehr (Bild: Christer Weinigel)

Langsam sieht es gut aus. Es gibt noch einige Artefakte bei den drei niederwertigsten Bits, aber das ist nicht so schlimm. Ich spiele einfach ein wenig weiter herum, bis der Graph gut aussieht. Schließlich ergibt sich der finale Graph:

  • Legende der FPGA-Pins (Bild: Christer Weinigel)
  • Die FPGA-Pins (Bild: Christer Weinigel)
  • Pins des SoC-Bus (Bild: Christer Weinigel)
  • Pins zum RAM (Bild: Christer Weinigel)
  • Pins zum ADC (Bild: Christer Weinigel)
  • Vollständig dokumentierte Karte der Pins (Bild: Christer Weinigel)
  • Matrix-Schaltung der Bedientasten am Oszilloskop (Bild: Christer Weinigel)
  • Noch keine Sinuskurve (Bild: Christer Weinigel)
  • Mit viel Phantasie eine Sinuskurve (Bild: Christer Weinigel)
  • Eine echte Sinuskurve (Bild: Christer Weinigel)
  • Das gleiche Spiel mit zwei Kanälen (Bild: Christer Weinigel)
  • Noch etwas Chaos (Bild: Christer Weinigel)
  • Wenigstens keine Ausreißer mehr (Bild: Christer Weinigel)
  • Beide Kanäle sind klar erkennbar. (Bild: Christer Weinigel)
  • Beide Kanäle mit größer Dämpfung (Bild: Christer Weinigel)
Beide Kanäle sind klar erkennbar. (Bild: Christer Weinigel)

Wenn ich die Dämpfung erhöhe, verändert sich der Graph entsprechend.

  • Legende der FPGA-Pins (Bild: Christer Weinigel)
  • Die FPGA-Pins (Bild: Christer Weinigel)
  • Pins des SoC-Bus (Bild: Christer Weinigel)
  • Pins zum RAM (Bild: Christer Weinigel)
  • Pins zum ADC (Bild: Christer Weinigel)
  • Vollständig dokumentierte Karte der Pins (Bild: Christer Weinigel)
  • Matrix-Schaltung der Bedientasten am Oszilloskop (Bild: Christer Weinigel)
  • Noch keine Sinuskurve (Bild: Christer Weinigel)
  • Mit viel Phantasie eine Sinuskurve (Bild: Christer Weinigel)
  • Eine echte Sinuskurve (Bild: Christer Weinigel)
  • Das gleiche Spiel mit zwei Kanälen (Bild: Christer Weinigel)
  • Noch etwas Chaos (Bild: Christer Weinigel)
  • Wenigstens keine Ausreißer mehr (Bild: Christer Weinigel)
  • Beide Kanäle sind klar erkennbar. (Bild: Christer Weinigel)
  • Beide Kanäle mit größer Dämpfung (Bild: Christer Weinigel)
Beide Kanäle mit größer Dämpfung (Bild: Christer Weinigel)

Ich habe es geschafft. Es kann sein, dass die Ordnung der Gruppen noch nicht ganz korrekt ist. Die 1. Gruppe von Kanal 1 könnte tatsächlich auch die 2. Gruppe von Kanal 1 sein. Ich müsste mit höheren Signalfrequenzen experimentieren, um herauszufinden, ob die Abfolge stimmt oder nicht.

Aber mein Ziel habe ich erreicht. Ich kann das Oszilloskop mit meiner eigenen Software nutzen, um Signale zu analysieren.

Weiterlesen lohnt

Wir haben eine Vielzahl von Werkzeugen, Methoden und teils unorthodoxen Ideen kennengelernt, um die Hard- und Software eines Gerätes zu verstehen. Die Analyse von Christer Weinigel ist allerdings noch längst nicht vorbei. In weiteren Blogbeiträgen widmet er sich unter anderem dem genaueren Verständnis des Analog-Frontends und seiner Ansteuerung, greift erneut die DDR-RAM-Implementierung im FPGA auf - diesmal mit Erfolg. Mit der Kenntnis der gesamten Artikelserie sollte es auch für Einsteiger möglich sein, den umfangreichen Ausführungen zu folgen.

Diese Artikelserie erschien zuerst im Blog von Christer Weinigel. Mit seiner Erlaubnis hat Golem.de seine Artikel ins Deutsche übersetzt und dabei einige Kürzungen und Ergänzungen vorgenommen, damit der Inhalt auch Einsteigern verständlich ist.

 Oszilloskop-Daten auslesen
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5


Anzeige
Top-Angebote
  1. 49,00€ (Bestpreis!)
  2. (u. a. John Wick, Sicario, Deepwater Horizon, Die große Asterix Edition, Die Tribute von Panem)
  3. (heute u. a. Creative PC-Lautsprecher 99,90€, Samsung UE-65NU7449 TV 1199,00€)
  4. 269,00€

grslbr 26. Nov 2016

Du bist mit Abstand der coolste Typ auf dieser Erde. Wahrscheinlich wirst du eigentlich...

grslbr 26. Nov 2016

Jo, das Trollen bei Heise war schon mal lustiger. Früher konnte man da sicher sein, mit...


Folgen Sie uns
       


Monster Hunter World vs Generations Ultimate Gameplay

Gameplay von den Spielen Monster Hunter World und Monster Hunter Generations Ultimate, das im Splittscreen verglichen wird.

Monster Hunter World vs Generations Ultimate Gameplay Video aufrufen
Assassin's Creed Odyssey im Test: Spektakel mit Spartiaten
Assassin's Creed Odyssey im Test
Spektakel mit Spartiaten

Inselwelt statt Sandwüste, Athen statt Alexandria und dazu der Krieg zwischen Hellas und Sparta: Odyssey schickt uns erneut in einen antiken Konflikt - und in das bislang mit Abstand schönste und abwechslungsreichste Assassin's Creed.
Von Peter Steinlechner

  1. Assassin's Creed Odyssey setzt CPU mit AVX-Unterstützung voraus
  2. Project Stream Google testet mit kostenlosem Assassin's Creed Odyssey
  3. Assassin's Creed angespielt Odyssey und der spartanische Supertritt

Kaufberatung: Der richtige smarte Lautsprecher
Kaufberatung
Der richtige smarte Lautsprecher

Der Markt für smarte Lautsprecher wird immer größer. Bei der Entscheidung für ein Gerät sind Kaufpreis und Klang wichtig, ebenso die Wahl für einen digitalen Assistenten: Alexa, Google Assistant oder Siri? Wir geben eine Übersicht.
Von Ingo Pakalski

  1. Amazon Alexa Echo Sub verhilft Echo-Lautsprechern zu mehr Bass
  2. Beosound 2 Bang & Olufsen bringt smarten Lautsprecher für 2.000 Euro
  3. Google und Amazon Markt für smarte Lautsprecher wächst weiter stark

Mobile-Games-Auslese: Bezahlbare Drachen und dicke Bären
Mobile-Games-Auslese
Bezahlbare Drachen und dicke Bären

Rundenbasierte Strategie auf dem Smartphone mit Chaos Reborn Adventure Fantasy von Nintendo in Dragalia Lost - und dicke Alpha-Bären: Die Mobile Games des Monats bieten spannende Unterhaltung für jeden Geschmack.
Von Rainer Sigl

  1. Mobile-Games-Auslese Städtebau und Lebenssimulation für unterwegs
  2. Mobile-Games-Auslese Barbaren und andere knuddelige Fantasyhelden
  3. Seismic Games Niantic kauft Entwickler von Marvel Strike Force

    •  /