Herzlich Willkommen beim beam-Verlag in Marburg, dem Fachverlag für anspruchsvolle Elektronik-Literatur.


Wir freuen uns, Sie auf unserem ePaper-Kiosk begrüßen zu können.

Aufrufe
vor 9 Jahren

12-2014

  • Text
  • Jitter
  • Bild
  • Wireless
  • Frequency
  • Software
  • Simulation
  • Amplifiers
  • Microwave
  • Keysight
  • Leistung
  • Mikrowellentechnik
hf-praxis 12-2014

SPI-Schnittstelle Das

SPI-Schnittstelle Das SPI-Interface Die SPI-Schnittstelle wird am häufigsten für synchrone Datenübertragung benutzt, weil sie verhältnismäßig hohe Übertragungsraten mit vielseitigen Konfigurationen ermöglicht. Die Schnittstelle findet sich in der 3-Draht-Version auch bei vielen komplexen ICs der Kommunikationstechnik, um darüber z.B. Frequenzen zu programmieren, Filtercharakteristiken zu ändern oder Verstärkungen bzw. Dämpfungen zu wählen. Daher soll die folgende Einführung einige ihrer grundlegenden Eigenschaften und Betriebsweisen erläutern. Bild 1: Grundlegende Verbindungen des SPI-Interfaces Obgleich SPI ein tatsächlicher Standard geworden ist, ist es kein „de jure Standard“, ist also nicht offiziell festgelegt. Dies kann manchmal ein Vorteil sein, weil der Entwickler das Interface nach seinen Vorstellungen optimal konfigurieren und einsetzen kann, jedoch erschwert es eventuell die Verbindung zwischen verschiedenen Komponenten. Die SPI-Interface besteht aus vier unidirektionalen Leitungen, deren Bezeichnungen – je nach Hersteller – unterschiedich sein können. • Schnittstelle aktivieren: CS´, SYNC´, ENABLE´, usw. • Daten Eingang: SDI, MISO (für Master), MOSI (für Slave), usw. • Daten Ausgang: SDO, MISO (für Slave), MOSI (für Master), usw. • Clock: SCLK, CLK, SCK, usw. Manchmal sind nur drei Leitungen erforderlich. In einem DAC z.B. kann es möglicherweise nicht notwendig sein, die Daten zurück zu lesen, oder im Falle eines ADC die Daten zurück zu senden. Dann kann der Anschluss als 3-Draht-Schnittstelle definiert werden. Master-Slave-Kompatibilität Die erste Schritt besteht darin, die Kompatibilität der Master- Slave-Verbindung zu garantieren. Die SPI-Schnittstelle ist keine offizielle Spezifikation, also ist es wichtig sicherzustellen, dass Daten vom Master zum Slave und umgekehrt in beide Spezifikationen passen. SPI ist keine vollständig synchrone Schnittstelle, weil die Daten mit dem Takt synchroni- Bild 2: Beispiel für ein SPI-Timing-Diagramm Unter Verwendung von: Application Note AN-1248 « SPI Interface » Miguel Usach Analog Devices www.analog.com Bild 3: SPI-Timing 26 hf-praxis 12/2014

SPI-Schnittstelle siert werden, aber CS´ kann synchron sein oder nicht. In einer vollständig synchronen Schnittstelle werden die Flanken in eine Sampling- und eine Driving- Flanke unterteilt. An der Driving-Flanke können die Daten auf dem Bus aktualisiert werden, an der Sampling-Flanke werden die Daten am SDI/DATA- Pin eingelesen. In der Praxis können die Bus-Daten zu jeder Zeit aktualisiert werden, außer während der Sampling-Flanke. Die SPI-Schnittstelle definiert vier Übertragungsbetriebsarten. Der Master sollte in der Lage sein, alle vier Betriebsarten zu unterstützen, aber das muss vorher bestätigt werden, weil der Master manchmal mit einer bestimmten Betriebsart nicht kompatibel ist. Dies kann mit Hilfe von Invertern korrigiert werden. In den meisten Fällen kann jedoch der Slave nicht konfiguriert werden und funktioniert nur in einer Betriebsart. Manchmal arbeitet er aber auch in bis zu zwei verschiedenen Betriebsarten. Tabelle 1: SPI-Betriebsarten Welche Übertragungs- Betriebsart wird vom Slave verwendet? Das SPI-Timingdiagramm zeigt Bild 2. Die Betriebsart hängt vom SCLK-Pegel, manchmal auch Polarität (CPOL) genannt, bei Einleitung der Übertragung (CS´ auf LOW) und der Sampling-Flanke, genannt Phase (CPHA) (Bild 3), ab. Beachten Sie, dass die Phase relativ zur Polarität und kein absoluter Wert ist. Die SPI-Betriebsarten werden in Tabelle 1 erfasst. Die Übertragungsbetriebsart zu identifizieren ist verhältnismäßig einfach. Es gibt eine Linie, die den fallenden Rand von CS´ mit SCLK verbindet, wie Bild 4 zeigt. In diesem speziellen Fall kann SCLK High oder Low sein; es gibt keine Beschränkung. Das SDI-Diagramm sollte ein Bit enthalten, das von zwei Timing- Vorgängen eingeschlossen ist, nämlich SETUP und HOLD. Sie beziehen sich auf die Zeit, in der die Daten auf dem Bus vor und nach der Sampling-Flanke Bild 4: Polaritäts-Modus Bild 5: Phasen-Modus vorhanden sein sollten; daher können beide Timingschritte die Sampling-Flanke als Referenz verwenden, wie Bild 5 zeigt. In diesem Fall fällt die Sampling- Flanke. Bezieht man diese Feststellungen auf Tabelle 1, so zeigt sich, dass der Slave kompatibel ist mit Mode 1 und Mode 2. Wann werden die Busdaten aktualisiert? Der SDO-Pin ist für die Übermittlung von Daten vom Slave zum Master und umgekehrt vorgesehen. Obgleich die Daten jederzeit aktualisiert werden können, setzt man gewöhnlich zwei Strategien ein. Eine Strategie besteht darin, den SDO/DATA OUT-Pin an der Driving-Flanke, wie Bild 7 zeigt, zu ändern. Die andere aktualisiert die Daten am SDO/DATA OUT- Pin erst einige Nanosekunden nach der Sampling-Flanke, wie Bild 8 zeigt. Es gibt technische Gründe für beide Strategien, aber es ist wichtig, die Kompromisse zu verstehen. hf-praxis 12/2014 27

hf-praxis

PC & Industrie

© beam-Verlag Dipl.-Ing. Reinhard Birchel