Wolfenbüttel & Ingolstadt, Deutschland

CAN OSI Layer 2 CC, FD, XL

Intro

OSI Layer 2
Classic CAN, CAN FD und CAN XL

Wir bieten:

Konformitätstest Ihres CAN Controllers nach ISO 16845-1

Die ISO 16845-1 ist die standardisierte Testspezifikation zu den Implementierungen der CAN Verbindungsschicht. Mit der Methode und den abstrakten ‚Testpaketen‘ (test suite), die in der Testspezifikation beschrieben sind, kann die Übereinstimmung jeder beliebigen CAN Implementierung zu den in der ISO 11898-1 definierten Anforderungen geprüft werden.

Nach der erfolgreichen Aktualisierung des CAN-Protokolls zu CAN FD folgt nun mit CAN XL ein weiterer Schritt, um dem steigenden Bedarf an Bandbreite und kostengünstigen Kommunikationsprotokollen gerecht zu werden. Mit Datenraten von bis zu 20 Mbit/s und Datenfeld von bis zu 2048 Byte schließt es die Lücke zwischen CAN FD und 100 Mbit Ethernet (100BASE-T1) und liefert die Grundlage für ein effizientes Zusammenspiel von IP-Technologie und klassischer signalbasierter Kommunikation.

Auch wenn dies ’nur‘ eine Erweiterung zu sein scheint, handelt es sich mit den vorgenommenen Änderungen um eine Neuentwicklung, die wie alle Entwicklungen getestet werden muss.

Derzeit stehen mehrere Implementierungen mit CAN XL von verschiedenen Herstellern kurz vor der Markteinführung. Die Automobilhersteller stehen nun vor der Aufgabe, die Interoperabilität in einer herstellerneutralen Umgebung sicherzustellen.

C&S war von Anfang an aktiv an dieser Aufgabe beteiligt. Angefangen mit der Spezifikation des neuen Protokolls in der neuen ISO 11898 Teil 1, gefolgt von der Definition der neuen Testfälle in der neuen ISO 16845 Teil 2 (Conformance Test Plan) und schließlich mit der Erweiterung unseres Testsystems um Konformitätstests für CAN XL. Damit Sie beim Einsatz des neuen CAN-Protokolls, aber auch der etablierten CAN-Protokolle auf der sicheren Seite sind, bieten wir Konformitätstests für Classic CAN, CAN FD und CAN XL an.

Bei der Planung und Durchführung von Konformitätstests berücksichtigen wir Ihre spezifischen Anwendungsbereiche und Anforderungen und stehen Ihnen mit unserer langjährigen Expertise zur Seite. Darüber hinaus bieten wir Erweiterungen zu den Tests der ISO 16845-1 an, die wir auf Basis unserer Erfahrungen in der Testdurchführung entwickelt haben.

CAN – Data Link Layer, Test Specification C&S Enhancement Tests
CAN – Data Link Layer, Test Specification C&S Enhancement Tests

Wir bieten:

Tests der 'Robustheit' Ihres CAN Controllers

Die standardisierten Konformitätstests für Implementierungen des CAN Protokolls werden als eine Reihe von kurzen Testfällen ausgeführt. Jeder dieser Testfälle prüft jeweils die Implementierung einer einzelnen spezifischen Eigenschaft des Protokolls.

Dabei wird vernachlässigt, dass das Verhalten einer Implementierung unter bestimmten Bedingungen möglicherweise von dem Zustand beeinflusst wird, in dem sie sich vor dem Erreichen des aktuellen Zustandes befunden hat.

Unsere Robustheitstests überprüfen daher Ihren CAN Controller mit sehr vielen aufeinanderfolgenden Testfällen. Ein solcher Robustheitstest läuft dabei über einen sehr langen Zeitraum, der sich abhängig von der Komplexität Ihres Bausteins teilweise über mehrere Tage erstreckt.

Die Testfälle zielen auf Bedingungen und Ereignisse ab, die sich in der Realität als kritisch erweisen können:

Kommunikation unter sehr hoher Buslast in Zusammenhang mit definierten Nachrichten, die von Ihrem Controller gesendet und empfangen werden sollen.
-> Verifikation durch Pseudo-Zufalls-Daten bei sehr hoher Buslast (bis zu 10.000.000 Frames).
-> Beispiel für in diesem Zusammenhang auftretende Fehler: Verlust von Nachrichten oder die Übertragung von Nachrichten wird blockiert.
Probleme mit dem gemeinsam genutztem Speicher (shared memory), da CAN Controller und Host unterschiedliche Taktgeber haben.
Übertragung oder Empfang von vielen Nachrichten mit langem Dateninhalt:
-> Beispiel für in diesem Zusammenhang auftretende Fehler: eingeschränkte Bearbeitung der Nachrichten und eingeschränkte Bandbreite des Pufferspeichers, teilweise Verlust von Nachrichten.
Nachrichten-Jitter – die Zeit zwischen dem Senden und dem Empfang einer Nachricht variiert:
-> Beispiel für auftretende Fehler: Übertragung wird blockiert, teilweiser Verlust der empfangenen Nachricht.
Probleme bei Vorhandensein von Rauschen – Bitfehlern – über mehrere Kommunikationszyklen:
-> notwendig ist hier die andauernde Stabilität mit der Fähigkeit gültige Nachrichten zu entschlüsseln, nachdem das Fehlerbit erkannt wurde.
-> Beispiel für auftretende Fehler: nach einer Fehlererkennung können gültige Nachrichten nicht mehr entschlüsselt werden oder eine anschließend anstehende Übertragung erfolgt nicht mehr.

Um sich einem ‚Worst-Case-Szenario‘ der Realität anzunähern, werden also Abschnitte des Tests unter sehr hoher Buslast gefahren, zusätzlich werden Fehler eingespielt. Die Parameter wie Länge und Codierung der Identifier, Länge und Inhalt der Botschaften und Baudraten werden während des Testdurchlaufs variiert.

Unsere Robustheitstests können Probleme und sporadisch auftretende Fehler einer Implementierung aufdecken, die durch die standardisierten Testfälle nach ISO 16845-1 alleine nicht entdeckt werden.

CAN – Data Link Layer, Test Specification C&S Robustness Tests
CAN – Data Link Layer, Test Specification C&S Robustness Tests

Wir bieten:

Test der Schnittstelle Ihres CAN Controllers

Für die verschiedenen Implementierungen des CAN Protokolls ist definiert, welche Eigenschaften sie haben und wie sie sich verhalten müssen, welche Konfigurationsmöglichkeiten sie bieten und welche Statusinformationen sie liefern. Die Sende- und Empfangsschnittstelle zur nächsthöheren Schicht wird aber produktspezifisch entwickelt und implementiert.

Dadurch sind zum Beispiel die Anzahl, die Größe und der Umgang mit den Nachrichten-Puffern, die Implementierung von optionalen Eigenschaften, verschiedene Betriebsmodi und die Behandlung von Interrupts ganz unterschiedlich umgesetzt und ausgeprägt.

Diese produktspezifischen Schnittstelleneigenschaften sind bis ins Detail im Datenblatt und/oder im Handbuch des CAN Controllers beschrieben.

Die standardisierten Testfälle der ISO 16845-1 gehen jedoch von einer immer gleichen und auch vereinfachten Schnittstelle zum sogenannten Upper Tester (übernimmt die Funktionalität der nächsthöheren Schicht) aus.

Diese Vereinfachung vernachlässigt den Einfluss, den die tatsächliche Implementierung der Schnittstelle auf das Verhalten des Controllers hat. Daher bieten wir als Ergänzung Schnittstellentests an, welche die spezifischen Eigenschaften Ihrer Schnittstellenimplementierung auf Übereinstimmung zu dem Datenblatt Ihres Controllers überprüfen.

CAN – Data Link Layer, Test Specification C&S Register Functionality Tests for CLASSIC and FD Frame Format
CAN – Data Link Layer, Test Specification C&S Register Functionality Tests for CLASSIC and FD Frame Format

CAN – Data Link Layer, Test Specification C&S Register Functionality Tests for CLASSIC only
CAN – Data Link Layer, Test Specification C&S Register Functionality Tests for CLASSIC only

Wir bieten: Test von CAN Implementierungen mit erweiterten Eigenschaften

Über die in der ISO 11898-1 definierten Eigenschaften hinaus hat Ihre CAN Implementierung möglicherweise weitere Eigenschaften, die es zu testen gilt. Wir entwickeln die entsprechenden darauf zugeschnittenen Tests für Sie.

Das Prinzip unserer CAN Controller Tests

Implementierungen des CAN-Potokolls müssen mit den Definitionen und Anforderungen der ISO 11898-1 übereinstimmen, um die einwandfreie Kommunikation in einem CAN Netzwerk zu ermöglichen.

Um diese Konformität der Implementierung zur Protokollspezifikation zu überprüfen, haben wir ein Testsystem entwickelt, mit dem wir Testfälle auf Basis der ISO 16845-1 (Testspezifikation für CAN-Implementierungen) durchführen, an deren Entstehungs- und Standardisierungsprozess wir beteiligt waren.

Bei der Durchführung der standardisierten Konformitätstests haben wir Testabläufe und Testergebnisse immer wieder hinterfragt und ausgewertet. Es hat sich im Laufe der Jahre gezeigt, dass die Testfälle der ISO 16845-1 für viele Anwendungen nicht mehr ausreichend sind. Dem haben wir Rechnung getragen, indem wir spezielle Testgruppen entwickelt haben, welche die Schnittstelle zum Prozessor behandeln und auch die ‚Robustheit‘ der Implementierung unter starker und ausdauernder Auslastung des CAN-Busses. Dadurch konnten wir den Grad der Testabdeckung erhöhen.

Unser Testsystem wurde in Anlehnung an die Architektur entwickelt, die in der ISO/IEC 9646 (Standard zur Methodik der Konformitätsprüfung) definiert ist.

Ihr CAN-Controller wird in eine Testumgebung eingebettet, in der ein sogenannter Lower Tester die Funktionen der unter dem Controller liegenden OSI-Schicht übernimmt und so die ‚unteren‘ Schnittstellen Ihrer CAN-Implementierung bedient.

Dementsprechend übernimmt der Upper Tester die Funktionen der im OSI-Modell über dem CAN-Controller liegenden Schicht.

Gesteuert wird die Durchführung der Tests von unserer Teststeuerungssoftware. Die Aufzeichnung und Speicherung der Testdaten und die Auswertung der Ergebnisse erfolgt automatisch.

Dennoch besteht gleichzeitig die Möglichkeit, einzelne Tests auch manuell durchzuführen und dabei Einstellungen der Testdurchführung – wie z.B. die CAN-Nachrichten – protokolliert zu ändern. So können wir auf Ungereimtheiten bei der Testdurchführung reagieren und mögliche Fehler im zu testenden Controller bestimmen und analysieren.

C&S Veröffentlichung zum Thema CAN/CAN FD Data Link Layer-Konformitätstest

Finden Sie hier einige unserer Betrachtungen zum Thema CAN/CAN FD Data Link Layer-Konformitätstest. Wenn Sie mehr wissen möchten oder Fragen haben, schreiben Sie uns einfach oder rufen Sie uns an!

Auf der Automotive Networks 2015, in München, hat unser Mitarbeiter Patrick Isensee am 25. November 2015 einen Vortrag: CAN FD Conformance Testing: Minimum requirement to ensure interoperability gehalten.