Simulation von Daisy Chain SPI mit der Promira Plattform

 

Was ist Daisy Chain SPI?

Computer und andere elektronische Systeme verwenden serielle Schnittstellen, um die Datenübertragung zwischen angeschlossenen Geräten zu ermöglichen. Die serielle Peripherieschnittstelle (SPI) ist eine Art von serieller Kommunikationsschnittstelle, die eine synchrone Datenübertragung zwischen einem Master-Gerät wie einem Mikrocontroller (MCU) und einem oder mehreren Peripheriegeräten (Slave-Geräten) ermöglicht. In SPI erzeugt das Master-Gerät ein Taktsignal, ein Auswahlsignal und ein Eingangsdatensignal (z. B. Daten, die an die Slave-Geräte übertragen werden). Die Slave-Geräte empfangen das Eingangsdatensignal synchron zum Taktsignal, während das Auswahlsignal aktiv ist, und erzeugen synchron zum Taktsignal ein Datenausgangssignal zum Empfang durch das Master-Gerät. SPI ist eine gebräuchliche Form der Schnittstelle in Automobilanwendungen für eine bessere Flexibilität, Konfigurierbarkeit und Fehlerberichterstattung durch die elektronischen Komponenten. Daisy Chain SPI ist hierbei eine Methode zur synchronen seriellen Kommunikation zwischen einem Master-Gerät und mehreren Slave-Geräten. Der Hauptunterschied zum "herkömmlichen" SPI besteht darin, dass die Slaves durch den Slave-Select nicht ausgewählt werden, sondern, dass mit Änderung des Slave-Select auf logisch 0 die Übertragung begonnen, und mit Rücksetzen des SS die Übertragung beendet wird.

 

 

 

Daisy Chain SPI  Konfiguration

Wenn mehrere Geräte über denselben SPI-Bus mit demselben Master kommunizieren, wird die Daisy-Chain-SPI-Konfiguration benötigt, um GPIO-Ports verfügbar zu halten.  Der Master muss so konfiguriert sein, dass sie abhängig von der Anzahl der in Reihe geschalteten Geräte ein Chip Select, ein Headersignal und mehrere Adressfelder erzeugt. Zusätzlich erzeugt der Master ein Taktsignal, mit dem die Daten synchron durch die Kette übertragen werden können. Aus folgender Abbildung geht hervor, dass der Master über SDI1 ein Mastersignal sendet, das von jedem Gerät in der Kette decodiert wird, und die entsprechenden Befehle ausgeführt werden.

 

 

Daisy_Chain_SPI

 

 

 

Implementierungsdetails

Die herkömmliche Daisy-Chain-Konfiguration ermöglicht eine reduzierte Anzahl von Terminals auf dem Master-Gerät, begrenzt jedoch die Kommunikationsbandbreite. Beispielsweise sind in einigen Implementierungen zwei Transaktionen (zwei Kommunikationsrahmen) erforderlich, um von einem Slave-Gerät zu lesen. In Systemen, die Einzelbildlesevorgänge ermöglichen, wird die Übertragungsgeschwindigkeit von Informationen über die seriell verbundenen Slave-Geräte verringert, wenn die Anzahl der Slave-Geräte zunimmt. Das hier beschriebene synchrone serielle Kommunikationssystem verwendet die Daisy-Chain-Konfiguration, um die Anzahl der auf dem Master-Gerät erforderlichen Terminals zu reduzieren, Lesevorgänge in einem einzelnen Frame zu ermöglichen und eine Übertragungsbitrate bereitzustellen, die unabhängig von der Anzahl der Slave-Geräte in der Kette ist. Einige Implementierungen ermöglichen den Betrieb mit einem einzelnen Slave-Gerät, ohne zusätzlichen Protokoll-Overhead einzuführen. Folgende Abbildung zeigt die Datensende- und Empfangsstruktur zwischen Master und Slaves.

 

 

Data_Transmit

 

 

 

 

Daisy Chain SPI in Battery Management Systemen

In einem Battery Management System existieren viele Slaves, die die Spannungen der Batteriezellen überwachen. Das BMS besteht aus einem Master Board für jeden Strang des Batteriepakets. Der Master beinhaltet die Verarbeitung von Signalen, Messungen, Kommunikations- und Steuerschnittstellen. Ein Batteriemodul kann aus maximal 14 Zellen bestehen und benötigt ein Slave benötigt für die Messungen der Spannung sowie der Temperaturüberwachung. Die Verbindung zwischen den Slaves untereinander und dem Master wird mittels Daisy Chain realisiert.

 

Promira-Serial-Platform

 

 

 

Daisy Chain SPI mit der Promira Plattform simulieren

Bei der Promira Plattform handelt es ich um eine Plattform deren Anwendungen Anwenderspezifisch konfiguriert werden können. Die ausführliche API Dokumentation machen die Promira Plattform zur geeigneten Wahl, um eine Daisy Chain Konfiguration zu erzeugen sowie für die Simulierung eines Battery Management Systems. Die Promira Plattform besitzt viele Features wie eine GPIO Funktion und eine integrierte Level Shifter Funktion, die vielseitige Anwendungen abdecken können.  Darüber hinaus steht dem Anwender das Control Center zur Verfügung, mit dem mittels Batch Script ein Befehlsablauf geladen werden kann.

 

 

 

Daisy Chain SPI Test und Messwerkzeuge

Da im Grunde Daisy Chain SPI sich durch SPI nur durch den Unterschied in der Chip Select Auswahl differenziert, können SPI Werkzeuge benutzt werden, um das Daisy Chain Design zu steuern und zu überwachen.

 

promira_card

 

Promira Serial Platform

Die Promira ™ Serial Platform eine leistungsstarke Plattform die über USB mit dem Host PC verbunden wird. Die Promira Plattform ermöglicht auch das Fernsteuern für Automatisierungen und kann hierbei den Ziel IC mit bis zu 200 mA Strom versorgen. Es sind unterschiedliche Anwendungen für I2C, SPI und eSPI mit verschiedenen Leistungsspezifikationen verfügbar, die je nach Bedarf ausgebaut werden können. 

applications_card

 

SPI Active Anwendungen

Die SPI Active Level 1 Anwendungen bietet  Taktraten von bis zu 12.5 MHz für Master und 8 MHz für die Slave Funktionalitäten. Die SPI Active Anwendung ermöglicht Taktraten von bis zu 40 MHz für Master und 20 MHz für die Slave-Funktionalität zudem wird Dual I/O unterstützt. Die höchste Ausbaustufe SPI Active Level 3 bietet Taktraten von bis zu 80 MHz für Master und 20 MHz für die Slave-Funktionaltät sowie Unterstützung von Quad I/O.

beagle_spi_card

 

Beagle SPI  Protocol Analzer

Der vielseitige Beagle SPI-Protokollanalysator ist das ideale Werkzeug für den Embedded-Techniker, der ein SPI-basiertes Produkt entwickelt. Neben SPI werden zusätzlich das I2C sowie MDIO Kommunikationsprotokoll unterstützt. Mit der funktionsstarken Data Center Software und der Kombination des internen Speichers des Beagles SPI Protokoll Analyzers können alle eingehenden Daten in Echtzeit aufzeichnet werden.