Online lesen
„Gutes Werkzeug ist halbe Arbeit.“
(Volksweisheit)

Liebe Kundin, Lieber Kunde,

Die starke Zunahme von 32 bit Architekturen in immer komplexeren Systemen führt zu einer großen Nachfrage nach Middleware-Tools und Echtzeitbetriebsystemen. Sie als Entwickler schätzen es ganz sicher, wenn Sie an Ihren Projekten mit Softwarelösungen arbeiten können, deren Komponenten - auch wenn sie von unterschiedlichen Herstellern kommen - nahtlos integriert, umfangreich getestet sind und bestens zusammenspielen.
Doch genau da liegt oft der Hund begraben.


NL_1006_1.gif

One Size fits all

Die Anforderungen an das zu entwickelnde Embedded System entscheiden bei der Wahl von RTOS und Middleware Tools. Die Komponenten eines sicherheitskritischen Systems müssen anderen Standards entsprechen als die eines schnellen Kommunikationssystems oder eines Batterie-getriebenen Produktes für den Consumer-Markt.

Die Anforderungen sind sehr unterschiedlich, und eine „One size fits all“ Lösung gibt es nicht.

Doch es sind gewisse Kernkomponenten bei der Entwicklung eines jeden Embedded Systems, die sich als gemeinsamer Nenner in praktisch jedem Projekt herauskristallisieren: für jede Entwicklung braucht es eine praxiserprobte und anwenderfreundliche Entwicklungsumgebung (IDE), einen hocheffizienten Compiler, der schnellen und kompakten Code erzeugt und eine flexible und intelligente Debug Probe, die mit der Zielhardware kommunizieren kann.


NL_1006_2.gif

Der gemeinsame Nenner

Die IAR Embedded Workbench ist eine solche Kernkomponente, die durch die Integration mit einer Vielzahl von Betriebssystemen und Middleware-Tools und die Verfügbarkeit für praktisch jede aktuelle Architektur quasi zu einer Drehscheibe bei der Entwicklung geworden ist.

Dies haben auch die Hersteller der führenden RTOS Produkte erkannt: sie sind mit IAR Systems ein neues RTOS & Middleware Partner Programm eingegangen.

Durch Wahl der weltweit besten und erfolgreichsten RTOS Produkte bietet dieses Programm ein breites und umfassendes Ecosystem aus Entwicklungswerkzeugen, bestehend aus RTOS und Middleware-Tools an, die nahtlos mit der IAR Embedded Workbench integriert sind und perfekt zusammenspielen.

Zu den ausgewählten Herstellern gehören SEGGER Microcontroller, CMX, Express Logic, Micrium, Sciopta und andere.

Ziel des RTOS & Middleware Partner Programm von IAR Systems ist die einfache und problemlose Nutzung der gewählten Toolkette durch ein hohes Maß an Integration und Anwender-Effizienz. Damit leistet IAR Systems einen wesentlichen Beitrag zur Reduzierung von Entwicklungszeiten und -kosten.


NL_1006_3.gif

Nichts geht ohne sie

Bei der Entwicklung von Embedded Systemen stellt sich unweigerlich die Frage nach einer Debug Probe, die ebenfalls seine solche Kernkomponente jeder Entwicklung ist.

Die Debug Probe ist das unverzichtbare Bindeglied zwischen PC und Zielhardware, um mit deren Bausteinen kommunizieren zu können. In der Regel reichen die Ressourcen auf dem Zielsystem nicht aus, den Debugger selbst dort laufen zu lassen. Also wird eine Verbindung zum PC benötigt, die vom Debugger genutzt werden kann. Dies geschieht üblicherweise über die jeweilige JTAG-Schnittstelle des Mikrocontrollers, die als Transportmechanismus genutzt wird, um auf Debug-Module der Ziel-CPU zuzugreifen.

Wenn Sie Ihrem Einkauf “nur” den Auftrag geben, einen JTAG-Debugger zu besorgen, entscheidet sich dieser aus Kostengründen für einen USB-JTAG-Wandler ohne weitere Intelligenz. Diese haben jedoch grundsätzliche Nachteile, die Ihnen als Entwickler das Leben schwer machen und damit auch viel Zeit in der Entwicklung kosten. Zeit, die in Kosten umgerechnet den Aufpreis zu einem intelligenten Debugger wie dem J-Link von SEGGER leicht rechtfertigt. Ein typisches Beispiel dafür, dass billig eingekauft am Ende teuerer ist.

Ein solcher Nachteil ist die Instabilität der Kommunikation zwischen PC und Zielhardware bei Verwendung eines einfachen USB-JTAG-Wandlers. Kleinere Signalschwankungen können nicht ausgeglichen werden, da diese erst den Umweg über USB gehen müssen, bevor der Host darauf reagieren kann. Dies wird insbesondere dann zum Problem, wenn der Mikrocontroller sehr langsam läuft.


NL_1006_4.gif

Ein Debugger ...

Intelligente Debugger dagegen haben eine Reihe von Vorteilen: ein Beispiel ist die Unterstützung des „adaptive Clocking“. Dieser Modus stellt die JTAG-Geschwindigkeit mittels Handshake ein und kann so auch bei Mikrocontrollern eine vergleichsweise schnelle Verbindung aufbauen, deren PLL für die volle Geschwindigkeit zuerst initialisiert werden muss.

SEGGER Microcontroller hat seinen J-Link so weit optimiert, dass schon mit dem normalen J-Link Produkt Download-Geschwindigkeiten ins RAM eines SAM7 von 720 kB/s erreicht werden. Vergleichbare “Mittelklasse-Debugger” erreichen hier etwa 400kB/s. Ohne lokale Intelligenz auf dem Debugger werden Geschwindigkeiten von nur 200 kB/s erreicht.

Der neue J-Link Ultra verdoppelt die Download-Geschwindigkeit auf 1.440 kB/s, so dass SEGGER jetzt sogar die Geschwindigkeiten der “Highend-Debugger” übertrifft.

Mit dem Cortex-M3 hat ARM neue Schnittstellen zum Prozessor eingeführt: SWD (Serial Wire Debugging) und SWO (Serial Wire Output).


NL_1006_5.gif

... der mehr kann

Ohne Intelligenz im Debugger lassen sich diese Schnittstellen jedoch nicht nutzen, da die Kommunikation über den USB-Flaschenhals hier nicht mehr schnell genug ist, um die Signale korrekt zu erzeugen. Für SWD und SWO sind wesentlich weniger Leitungen erforderlich, so dass der Entwickler auf seinem Zielsystem Platz sparen kann, indem er einen kleineren Stecker verwendet wie den von ARM definierten 9-poligen JTAG-SWD-Stecker.

SEGGER hat für den J-Link eine hoch-komplexe Implementierung für Flash Breakpoints entwickelt. Dies wäre mit einem USB-JTAG-Wandler in der von SEGGER erreichten Ausführungsgeschwindigkeit nicht möglich. Auch mit den neueren Mikrocontrollern, die bis zu 8 Hardware Breakpoints erlauben, bringen Flash Breakpoints einen deutlichen Mehrwert.

Der Debugger benötigt für die Terminalausgabe einen Breakpoint, zusätzlich werden weitere Funktionen wie das Single-Stepping über Breakpoints realisiert. Bei einer relativ einfachen vierfachen Verzweigung würden zum Beispiel weitere vier Breakpoints benötigt, die oft schon gar nicht mehr verfügbar sind, weil der Entwickler selbst schon diverse Breakpoints genutzt hat.


Gute Tools sind die halbe Miete und sollten beim Einkauf wohl überlegt sein. Sie sichern im Vorfeld bereits den Erfolg des Projektes ab. Kaum ein Entwickler kann aber den Markt und das überbordende Angebot überblicken. Leicht ist eine Kleinigkeit übersehen, was sich später bitter rächt. Umso wichtiger ist es, mit einem Toolpartner zusammenzuarbeiten, der nicht nur sein eigenes „Egosystem“ im Blick hat, sondern ein „Ecosystem“ anbietet, dass Ihnen verbriefte Sicherheit gibt, die richtige Tool-Entscheidung über Hersteller-Grenzen hinaus getroffen zu haben.

Sie haben ja nichts zu verschenken ...
... am wenigsten Ihre Zeit und das Geld Ihres Unternehmens.

Herzlichst,
Ihr
Marian A. Wosnitza

„Der Unterschied zwischen Theorie und Praxis ist in der Praxis größer als in der Theorie."
(Entwicklerweisheit)


Anmerkung zum neuen Telekommunikationsgesetz (seit 1.03.2006):
Sie erhalten diese Nachricht aufgrund eines bestehenden Kundenkontaktes oder aufgrund einer Anfrage an uns oder einen unserer Partner. Sollten Sie in Zukunft keine Zusendungen mehr von uns wünschen, so klicken Sie bitte auf Unsubscribe in der Fußnote dieser Email. Sie werden unverzüglich aus dem Verteiler genommen.
Impressum: Medieninhaber und Herausgeber: Carnica Technology, Marian Wosnitza, Untervellach 96, A-9620 Hermagor, www.carnica-technology.com, Email: info@carnica-technology.com