I2C vs SPI Protokoll Analysatoren: Unterschiede...

I2C vs SPI Protokoll Analysatoren: Unterschiede und Ähnlichkeiten

 

Der I2C-Bus

I2C (Inter-Integrated Circuit) ist ein On-Board-Kommunikationsprotokoll, das ideal für kurze Distanzen und geringe Bandbreite ist. Es hat eine Master-Slave-Architektur, in der alle Slaves über zwei Leitungen mit dem Master verbunden sind: die serielle Datenleitung (SDA) und die serielle Taktleitung (SCL). I2C wird typischerweise zum Anschluss von Peripheriegeräten mit niedrigerer Geschwindigkeit, wie Sensoren an Prozessoren und Mikrocontrollern über kurze Strecken, innerhalb einer integrierten Schaltung verwendet.

Das I2C-Protokoll definiert, wie Daten gesendet werden. Zu Beginn gibt der Master eine Startbedingung aus, gefolgt von der Adresse des Slave-Geräts, mit dem er kommuniziert. Sobald der entsprechende Slave seine Adresse identifiziert hat, sucht er nach dem fortschreitenden Lese / Schreib-Flag, das vom Master ausgegeben wurde. Dieses Flag teilt dem Slave mit, ob er Daten empfangen oder Daten senden kann. Sobald der Slave den Master bestätigt hat, wird die Kommunikation fortgesetzt.

Ein Merkmal von I2C ist das eingebaute Prüfsystem: Jedes Datenbyte wird vom Empfänger entweder mit ACK oder NAK bestätigt, um dem Sender zu signalisieren, ob die Daten empfangen wurden oder nicht. Sobald der Master die Kommunikation mit dem adressierten Slave beendet hat, gibt er eine Stoppbedingung aus, um das Ende der Übertragung zu signalisieren. Nach der Stopp-Bedingung kann die Kommunikation mit anderen Slave-Geräten beginnen.

Der SPI-Bus

Das Serial Peripheral Interface (SPI) ist ein weiteres serielles Kommunikationsprotokoll, das in eingebetteten Systemen häufig verwendet wird. Wie I2C, hat es auch eine Master-Slave-Architektur, aber es ist ein 4+ Wire-Bus. SPI benötigt eine Taktleitung (SCK), zwei Datenleitungen zur bidirektionalen Übertragung von Daten, die als MOSI- und MISO-Leitungen bekannt sind. Zusätzlich muss für jeden Slave am Bus eine Slave-Select-Leitung (SS) vorhanden sein. Anstatt ein Adressierungssystem wie I2C zu verwenden, werden mehrere Slaves vom Master über die Slave-Auswahlleitungen gesteuert. Dies ist ein sehr einfaches Protokoll mit nahezu keinem Overhead, was es ideal für Streaming-Anwendungen macht - Daten können mit sehr hohen Raten verschoben werden, da die Vollduplex-Charakteristik SPI zu einem sehr effizienten Protokoll macht.

Wenn Sie die Datenübertragung dieser Protokolle überwachen müssen, benötigen Sie einen Protokollanalysator. Protokollanalysatoren erfassen und melden die Kommunikation über einen Bus, damit Benutzer Datenverkehr analysieren und debuggen können. Lassen Sie uns Ähnlichkeiten und Unterschiede zwischen den Eigenschaften von I2C- und SPI-Protokollanalysatoren betrachten.

 

I2C vs SPI Protokoll Analysatoren: Unterschiede und Ähnlichkeiten

Ein signifikanter Unterschied ist, dass der I2C langsamer ist (typischerweise 100-400 KHz, maximal 5 MHz) im Vergleich zu SPI, der bis zu 80 MHz oder manchmal sogar höhere Geschwindigkeit erreichen kann. Die Verfügbarkeit einer höheren SPI-Geschwindigkeit ist auf die Verwendung mehrerer Leitungen für die Datenübertragung und einen geringen Protokoll-Overhead zurückzuführen.

Jetzt, da wir die Unterschiede und Ähnlichkeiten zwischen den beiden Protokollen klar verstehen, besprechen wir die Analysatoren.

Es gibt mehrere Protokollanalysatoren auf dem Markt. Einige sind spezifisch für ein Protokoll, während andere Analysatoren mehrere Protokolle unterstützen.

Zwischen den meisten I2C- und SPI-Analysatoren gibt es nur wenige funktionale Unterschiede. Sie können Implementierungsunterschiede wie Header-Typen, Pin-Anzahl oder Spannung / Strom-Toleranzen haben, diese Unterschiede gehen aus den Designs der Hersteller hervor.

Die meisten Analysatoren bieten eine GUI-Software zum Lesen der auf dem Bus erfassten Kommunikation. Protokollanalysatoren entschlüsseln typischerweise Protokollsteuersignale und Daten im Gegensatz zu einem Standardlogikanalysator, der nur Signale und Zeitdiagramme anzeigt.

Nicht alle Software ist gleich. Die Möglichkeit, Daten in Echtzeit anzuzeigen, Captures zu starten und zu stoppen, Captures zu speichern und zu teilen sowie Captures zu suchen und zu filtern, ist nicht immer in allen Protokollanalysesoftware verfügbar. Für zusätzliche Flexibilität und Verwendung sind einige Protokollanalysatoren mit einer Software-API ausgestattet, mit der der Benutzer ein benutzerdefiniertes Tool für seine spezifischen Anforderungen erstellen kann.

Es gibt einige Protokollanalysatoren auf dem Markt, die mehrere Protokolle unterstützen, aber auch hier sind nicht alle gleichermaßen geschaffen. Diese Analysatoren können sich stark in Preis und Funktionalität unterscheiden. Der I2C/SPI Protocol Analyzer überwacht I2C- und SPI-Protokolle sowie MDIO. Er ist kompakt, relativ preiswert und die dazugehörige Software ermöglicht Echtzeit-Datenerfassung und -anzeige und unterstützt Windows, Linux und Mac OS X vollständig.

promirafacel-solo_1Beagle-SPI_m

 

 

 

 

 

 

 

 

Wenn Sie nach erhöhter Leistung, zusätzlicher Protokollunterstützung und einem Build-it-as-you-not-it-Gerät suchen, sollten Sie die Promira Serial Platform in Betracht ziehen. Die Promira-Plattform ist ein I2C-, SPI-Host-Adapter sowie ein eSPI-Protokollanalysator in einem. Die Protokollanalysator-Funktionalität für I2C und SPI wird der Plattform in naher Zukunft hinzugefügt werden. Das Plattformmodell ermöglicht es Kunden, nur die Anwendungen zu kaufen, die sie benötigen, so wie Sie sie benötigen. Dieser kommt mit einem etwas höheren Preis als der Beagle I2C / SPI Protokoll Analyzer - er hat jedoch auch viele Funktionen mehr.

Das Verständnis der Ähnlichkeiten und Unterschiede zwischen Protokollanalysatoren ist wichtig und kann den Unterschied zwischen früherer Bereitstellung und fehlender Deadline ausmachen.

Berücksichtigen Sie beim Kauf eines Protokollanalysators dessen Betriebssystemkompatibilität, USB-Optionen sowie den Preis. Stellen Sie sicher, dass Sie Ihre Nachforschungen anstellen, genau das bekommen, was Sie brauchen, und wissen, was Sie kaufen. Wenn Sie alle verfügbaren Optionen in Betracht ziehen, können Sie nicht nur Ihr Geld sparen, sondern auch Ihre Arbeitsleistung maximieren - Sie, Ihr Team und Ihre Projekte können das Beste daraus machen!