Embedded-Software

Anforderungen an Entwicklungs-Tools steigen

4. April 2013, 10:40 Uhr | von Heiko Riessland
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

Oft unterschätzt: Das Interface zum Target

Inzwischen unerlässlich ist eine hohe Flexibilität der Entwicklungstools beim Zugang zum Target. Das gilt nicht nur für die Phase der Software- und Systementwicklung, sondern vor allem im Hinblick auf später anfallende Service- und Wartungsaufgaben. Moderne SoCs wie die AURIX-Familie von Infineon oder die MPC57xx-(Qorivva)-Familie von Freescale bieten dem Anwender meist verschiedene Debug-Zugänge unterschiedlicher Leistungsfähigkeit. So finden sich neben dem klassischen JTAG-Interface auch Schnittstellen wie DAP oder cJTAG auf dem Chip, die sich dank eines höheren seriellen Taktes meist durch gleichen Durchsatz bei verringertem Pin-Bedarf auszeichnen. Darüber hinaus sind diese Übertragungsverfahren, weil beispielsweise durch Checksummen abgesichert, häufig robuster als das klassische JTAG. Manchmal ist man jedoch schon froh, überhaupt einen Debug-Zugang zu finden. Dann wird aus der Not heraus auch mal die CAN-Schnittstelle zur Übertragung von Debug-Kommandos benutzt, weil diese bei automotiven Steuergeräten häufig als einzige am Gehäuse verfügbar ist.

Die große Herausforderung für die Hersteller von SoC-Entwicklungstools besteht letztlich darin, möglichst alle denkbaren Varianten zu unterstützen. Das erfordert nicht nur modulare Hardware-Konzepte, mit denen sich die verschiedenen mechanischen und elektrischen Anforderungen abdecken lassen, sondern auch größtmögliche Flexibilität bei der Anpassung an verschiedene Protokolle. Beides zusammen setzt den Einsatz modernster FPGA-Technologie voraus, wie sie beispielsweise die Universal-Access-Device-Familie von PLS nutzt.

Unabdingbar: Unterstützung von Emulation Devices

Eine weitere Herausforderung für SoC-Entwicklungssysteme ist die uneingeschränkte Unterstützung so genannter Emulation Devices. Diese enthalten im Falle der AURIX-Familie von Infineon und der MPC57xx-(Qorivva)-Familie von Freescale neben dem absolut identischen Serienchip und zusätzlicher Trigger-/ Filterlogik noch weiteren On-Chip-Emulationsspeicher und eine neuartige Trace-Schnittstelle. Die nur für die Entwicklung bestimmten Bausteine dienen in erster Linie der Kalibrierung und dem Debugging. So können mit Hilfe der zusätzlichen Logik beispielweise gezielt bestimmte Cores und/oder Peripherieeinheiten der Multicore-SoCs für die Aufzeichnung ihrer Aktivitäten ausgewählt werden. Die Trace-Informationen werden dabei entweder im internen Emulationsspeicher abgelegt oder über die Trace-Schnittstelle ausgegeben. Diese bietet unter Nutzung des von Xilinx entwickelten AURORA-Protokolls Übertragungsgeschwindigkeiten im Gigabit-Bereich. Die dabei vorkommenden hohen Frequenzen verlangen jedoch eine Aufbereitung dicht am Target. Der modulare Aufbau des Universal Access Device 3 (UAD3+) von PLS bietet mit seinen abgesetzten, über einen schnellen PCI-Express-Bus an das Grundgerät angekoppelten Debug- und Trace-Pods eine gute Infrastruktur für eine AURORA-Trace-Lösung.

passend zum Thema


  1. Anforderungen an Entwicklungs-Tools steigen
  2. Oft unterschätzt: Das Interface zum Target
  3. Verschiedene TRACE-Methoden

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu pls Programmierbare Logik & Systeme GmbH