Embedded System Access (ESA) - Programmierung
Embedded-System-Access-Technologien speziell zur Software-Validierung sowie zur Programmierung von Flash, PLD und μControllern (MCU).
Embedded Diagnostics Test (EDT)
Der Embedded Diagnostics Test benutzt den nativen Prozessor nicht nur zur Ausführung von Tests, sondern auch zur Abarbeitung von Diagnoseroutinen.
Da sämtliche Operationen in Echtzeit erfolgen, können nicht nur dynamische Fehler erkannt werden, sondern es sind auch Performance-Optimierungen möglich. Dabei wird die spezielle Testsoftware über JTAG eingebracht, sie kann jedoch auch über ein schnelles Kommunikationsinterface geladen werden.
Zugriffspunkt zum System ist damit der native Mikroprozessor. Über entsprechende Kommandos werden die integrierten Testfunktionen der Software aktiviert. Im Fehlerfall erfolgt dann die Diagnose direkt im System. Darüber hinaus kann EDT auch in Form eines residenten Power-On Self-Tests (POST) eingesetzt werden.
Desweiteren bietet die Kombination von EDT mit System JTAG (SJTAG) interessante technische Möglichkeiten, Hardcore-Fehler in komplexen Systemen zu lokalisieren.
In-System Programmierung (ISP)
Die Bezeichnung In-System Programmierung ist ein Sammelbegriff zur Programmierung von Flash-Bausteinen über Boundary Scan, sowie für PLD/FPGA über den Test Access Port (TAP) im Verbund mit spezifischen Programmierregistern.
Die Programmierung erfolgt im eingelöteten Zustand onboard. Für PLD/FGPA existieren auch spezielle Standards wie IEEE 1532, JESD71 oder dem Serial Vector Format (SVF), einem de-facto Industriestandard.
Neu im ISP-Bereich ist die Flashprogrammierung durch FPGA-basierende Instumente (FPGA-Assisted Programming). Es sind spezielle Chip-embedded Instruments (Softmakros), welche drastische Verbesserungen der Programmiergeschwindigkeit erlauben.
In-Application Programmierung (IAP)
Bei der IAP-Methode wird die native Firmware um eine Flash-Programmierroutine erweitert. Diese kann dann per Kommando die an den Prozessor angeschlossenen Flash-Bausteine während des laufenden Betriebes umprogram-mieren.
Das benötigte Flash-Image wird über ein externes Interface, wie z.B. LAN bereitgestellt.
Core Assisted Programming (CAP)
Im Grundsatz verfolgt die Strategie von Core Assisted Programming den gleichen Lösungsansatz wie der Processor Emulation Test.
Der Prozessor wird über das native Debug-Interface in der Art angesteuert, dass die an seinen Systembus angeschlossenen Flashs oder FPGAs (wenn das Design es ermöglicht) gelöscht, programmiert und verifiziert werden können.
Bei Flash spielt es keine Rolle, ob er direkt in eine MCU (Microcontroller Unit) integriert ist (On-Chip) oder extern als separater Baustein angeschlossen ist. Darüber hinaus ist es möglich, nur den Flash-Handler per JTAG und das Flash-Image über eine schnelle Kommunikationsschnittstelle zu laden. Die CAP-Technologie bietet deutlich höhere Geschwindigkeiten.
System JTAG (SJTAG)
Im Gegensatz zur Nutzung eines externen Controllers verfolgt System JTAG den Ansatz, die zentrale Steuereinheit direkt mit in das Design zu integrieren. Dabei kommt typischerweise als Testbuscontroller ein separater Chip zum Einsatz und die Testvektoren werden lokal gespeichert.
Derzeit existiert eine sogenannte SJTAG-Initiative zur Standardisierung
des Verfahrens.








