Ein kleiner Ăśberblick ĂĽber Saleae Logic Pro 8 und DreamSourceLab DSLogic Pro Logikanalysatoren

Logikanalysatoren



Wenn ich elektronische Geräte entwickle oder debugge, die aus mehreren Komponenten bestehen (Mikrocontroller, ADC, I2C-Speicher usw.), möchte ich häufig die Kommunikation zwischen diesen Komponenten untersuchen. Um endlich zu verstehen, warum alles "richtig" geschrieben ist, aber nichts funktioniert. Im Allgemeinen können Sie hierfür ein digitales Oszilloskop verwenden, aber Oszilloskope mit 4 Kanälen sind recht teuer und nicht sehr praktisch. Viel schöner wird diese Aufgabe mit einem logischen Analysator gelöst. Der Logikanalysator ähnelt im Wesentlichen einem Oszilloskop, aber wenn die Hauptaufgabe des Oszilloskops darin besteht, eine Änderung des analogen Signals anzuzeigen, mit dem er hervorragende Arbeit leistet, besteht das Ziel des Logikanalysators darin, ein digitales (aber nicht immer nur digitales) Signal aufzuzeichnen und es dann in praktischen Programmen zu analysieren.

Im Folgenden werde ich die Erfahrungen mit Saleae Logic Pro 8-Logikanalysatoren zu einem Preis von ca. 480 USD und DSLogic Pro von DreamSourceLab (höchstwahrscheinlich eine Kopie) zu einem Preis von 99 USD für 73 USD beschreiben.
Wem es interessant wurde, willkommen unter Katze.

Technische Eigenschaften


Logikanalysatoren unterscheiden sich hauptsächlich voneinander: durch die Anzahl und Art der Kanäle, das Vorhandensein eines Puffers und die Abtastfrequenz.
Eine kleine Vergleichstabelle mit den Merkmalen:
 Logic Pro 8DSLogic ProBeschreibung
Anzahl der digitalen Kanäle816Je mehr desto besser, aber für ein Nutzungsjahr wurden bisher mehr als 4 nicht wirklich benötigt
Anzahl der analogen Kanäle80Ein Oszilloskop ist zwar einem analogen vorzuziehen, aber manchmal ist es praktisch zu sehen, was nicht nur in der Abbildung auf dem Kanal, sondern auch im analogen geschieht.
SchnittstelleUSB 2.0 / USB 3.0USB 2.0USB 3.0 . , .
500 MS/s — USB 3.0
100 MS/s — USB 2.0
400 MS/s — 4
200 MS/s — 8
100 MS/s — 16
, , .
50 MS/s — USB 3.0
10 MS/s — USB 2.0
-.
/:1.2V — 5.5V / -10V — +10V0V — 5V / -Logic Pro 8 1.2V/1.8V/3.3V.
DSLogic Pro 0V 5V 0.1V -30V — +30V.
1,8 MOm250 Om, .
—256Mbits, . UBS 2.0
16MS, Logic Pro 8 PC , DSLogic Pro .

Im Allgemeinen hat Logic Pro 8 nach vielen Merkmalen einen Vorteil, insbesondere in Bezug auf den analogen Teil. Das Fehlen eines Puffers wirkt sich jedoch negativ aus. Erstens sinkt die Geschwindigkeit zweimal, wenn 4 Kanäle verwendet werden, und viermal, wenn 6 oder mehr Kanäle verwendet werden. Dies ist jedoch noch nicht alles, da die Geschwindigkeit eng mit dem USB-Bus verbunden ist. Wenn dieser Bus geladen ist, kann es zu Zwischenfällen kommen. Manchmal reicht es aus, ein UART-Kabel an einen USB-Hub anzuschließen, damit das Programm schwört und sagt, dass die USB-Geschwindigkeit nicht ausreicht und die Aufnahmegeschwindigkeit verringert wird. Es ist nicht so, dass dies häufig vorkommt und stark stört, aber es lohnt sich, sich daran zu erinnern.
Von den Funktionen von DSLogic Pro möchte ich auch das Vorhandensein einer externen Leitung des Shreds sowie die Signale des externen Eingangs des Triggers und des Ausgangs des Triggers beachten.

Aussehen und Ausstattung


Logic Pro 8 Kit:



  • der Analysator selbst
  • , 4
  • 16 , ,
  • USB 3.0 USB-A to MictoUSB 3.0



DSLogic Pro:



  • 16 ,
  • 16 , ,
  • USB 2.0 USB-A to MictoUSB









Wenn Sie die Konfiguration vergleichen, ist sie ungefähr gleich. Meiner Meinung nach ist der Anschluss mit Kabeln für Logic Pro 8 jedoch viel bequemer und angenehmer zu verwenden, die Kabel sind weicher und flexibler. Logic Pro 8-Clips sind um ein Vielfaches praktischer. Erstens haben sie zwei Stifte zum Anschließen an das Analysatorkabel, was praktisch ist, und zweitens befinden sich die Verbindungsstifte an der Seite, was das Einhängen von Clips mit einem bereits angeschlossenen Draht vereinfacht. In DSLogic Pro befindet sich der Stift oben, was die Verbindung manchmal erschwert, obwohl sich die Clips im Griff nicht unterscheiden, aber die Gesamtqualität immer noch lahm ist.
Ein paar Vergleichsfotos





Software


Was auch immer ein guter logischer Analysator wäre, ohne gute Software wird es nicht einfach sein, damit zu arbeiten. Gute Software sollte die erfassten Daten schnell anzeigen, damit Sie ihre Eigenschaften wie Frequenz und Arbeitszyklus beobachten können. Und es ist sehr gut, dass er bekannte Protokolle entschlüsseln konnte. Es ist unvorstellbar praktisch, anzugeben, wo sich die I2C-Beine befinden, und zu sehen, was genau aus Sicht des I2C-Protokolls im Bus passiert ist, anstatt sich am Hinterkopf zu sitzen und zu kratzen, während Sie schauen und versuchen zu verstehen, ob alles ist und wie die Adresse hier steht. Jeder Analysator ist mit einem eigenen Programm ausgestattet:

Saleae Logik


Saleae-Analysatoren sind mit Saleae Logic ausgestattet.

Das Programm ist plattformübergreifend. Alle Windows-Versionen werden ab XP unterstützt (vor einem Jahr gab es Probleme mit Win 7 und höher, in der neuen Version funktioniert Win 7 einwandfrei, wurde oben nicht getestet). Mac OS X 10.7 Lion + wurde installiert und funktionierte einwandfrei , Ubuntu 12.04.2+ hat bei mir nicht funktioniert (vor einem Jahr auf der alten Version des Programms getestet, jetzt kann es funktionieren), aber ich habe es nicht wirklich versucht.

Es unterstützt eine große Liste von Protokollen für die I2C / SPI / UART / CAN-Analyse, die einwandfrei funktionieren. Die Aufnahme ist sowohl durch manuellen Start als auch durch einen Trigger auf einem der Kanäle möglich. Von den Mängeln in langen Proben verlangsamt es sich ziemlich stark.

Von den Funktionen des Programms ist die Möglichkeit zu beachten, über ein Telnet-ähnliches Protokoll das Vorhandensein eines SDK zum Schreiben eigener Protokolldecoder zu steuern. Protokolle werden in C ++ geschrieben, was das Schreiben erschwert.

DSView


DSLogic Pro ist mit dem Programm DSView ausgestattet:



Es ist auch ein plattformübergreifendes Programm, das Windows ab XP, Mac OS X 10.11.4 und Linux unterstützt (das Programm befindet sich in der Quelle). In Bezug auf die Funktionen ist das Programm Saleae Logic überlegen, es gibt fortgeschrittenere Trigger mit Unterstützung für mehrere Kanäle gleichzeitig, die Liste der Protokolle ist ziemlich umfangreich. Aber hier gingen die Entwickler noch weiter und die Möglichkeit, die Arbeit mit einer bestimmten Implementierung dieses Protokolls zu dekodieren, kann immer noch am Protokoll hängen bleiben. Sie können beispielsweise das I2C-Protokoll und die Implementierung von 24CXX auswählen und dann sofort lesen, was aus Sicht dieses Chips genau auf dem Bus passiert ist. Beide Protokolle und ihre Implementierungen werden mit Python geschrieben, was theoretisch das Schreiben und Debuggen vereinfachen sollte. Bei der Arbeit wurden keine Bremsen festgestellt.

Es ist auch erwähnenswert, dass das Projekt teilweise OpenSource ist und die Quellcodes für Software und HDL-Teile auf GitHub hochgeladen werden. Und im Wiki gibt es einen Schaltplan. Daher kann es bald eine Reihe von Klonen dieses Geräts geben (vielleicht habe ich auch einen Klon).

Einfaches Testen


Für eine einfache Überprüfung der Analysatoren wurde das DE0-Nano-SoC-Motherboard verwendet, auf dem die 200-MHz-Mäander erzeugt wurden. Jeder nächste wurde durch Teilen durch die vorherigen 2 (200/100/50) erhalten. Ich werde versuchen, sie mit den verfügbaren Analysatoren zu erfassen.

Mit DSLogic Pro haben wir es geschafft, 200 MHz / 100 MHz / 50 MHz niedriger zu erfassen, und es ist klar, dass alles gut läuft. Es ist unmöglich zu sagen, dass 200 und 100 perfekt erfasst wurden. Manchmal gibt es eine leichte Abweichung in Frequenz und Arbeitszyklus, aber insgesamt ist es normal, dass alles um 50 perfekt ist.

DSLogic Pro

Seleae konnte normalerweise 200 MHz und 100 MHz nicht entfernen, aber 50 MHz sind bereits perfekt.
Logic Pro 8

Und doch wĂĽrde ich solche Messungen nicht ernst nehmen, 200 MHz sind wahrscheinlich nur Overkill-Messungen, aber es war einen Versuch wert.

Versuchen wir fĂĽr das Experiment, die I2C-DatenĂĽbertragung zu erfassen (die Ăśbertragungen sind unterschiedlich, damit die Daten nicht konvergieren).
Seleae
DSLogic Pro

Alles ist perfekt lesbar, es ist klar, wo welches Ereignis aufgetreten ist, welche Adressen und Daten ĂĽbertragen wurden. Keine Aufregung.

Gleiches gilt fĂĽr CAN:
Seleae
DSLogic Pro

Das Ergebnis ist das gleiche wie bei I2C, fĂĽr einen minimalen Zeitraum ist alles klar.

Schlussfolgerungen


Beide Logikanalysatoren machen ihre Arbeit gut. Trotz des Preisunterschieds konnte ich niemanden als Führungskraft herausgreifen, er hat sowohl Vor- als auch Nachteile. Auf der Saleae-Seite sind das Aussehen, die praktischen Kabel, die hochwertigen Clips, USB3.0 und die analogen Kanäle. Lohnt es sich, dafür 400 US-Dollar zu geben? Die Frage ist schwierig, wenn es eine Möglichkeit gibt, warum nicht. Auf der DSView-Seite gibt es mehr Kanäle, einen Eingang für einen externen Shred und Trigger, einen Puffer im Analysator, OpenSource-Software und einen Preis. Beide können die Einrichtung eigener oder fremder Systeme sowie das Studium von Protokollen von Drittanbietern erheblich erleichtern und beschleunigen.

Wenn Sie Fragen haben, fragen Sie.

PS. Wir verwenden Seleae seit ungefähr einem Jahr. Es gab nur Probleme mit früheren Softwareversionen für Win7 und höher. DSView wurde vor ungefähr einer Woche für den persönlichen Gebrauch gekauft. Bisher gibt es keine Beschwerden, aber die Nutzungsdauer ist kurz.
Foto von Dumping I2C

Source: https://habr.com/ru/post/de397381/


All Articles