PEmicro-erlebniswelt

Einführung von On Chip Debugging

Wie funktioniert das On-Chip-Debugging?

Das Folgende ist eine Vereinfachung, um neuen Benutzern mit den Konzepten zu helfen..........

Jeder einzelne Chip einer Familie ( z.B. ARM oder NXP/Freescale ColdFire ) weist einige Pins für die Kommunikation zwischen einem speziellen Steuermodul innerhalb des Mikroprozessor-Chips und einem Anwendungsprogramm, das normalerweise auf einem PC läuft, zu. Um die Anzahl der auf dem Chip verwendeten Pins und Schaltkreise zu minimieren, verwendet diese Kommunikation typischerweise eine nicht standardisierte Kommunikationsverbindung, so dass wir eine spezielle Schnittstelle auf der PC-Seite benötigen.

Wenn der Microcontroller eingeschaltet wird, werden diese Pins geprüft und wenn sie auf eine bestimmte Weise eingestellt sind, übernimmt das Steuermodul die Kontrolle und der Microcontroller wird als im On-Chip-Debug-Modus betrieben (wir werden die Abkürzung BDM für Background Debug Mode synonym verwenden).  Wenn nicht für den BDM eingestellt, startet das Steuermodul den Microcontroller einfach an der Einschaltposition und hat nichts weiter zu tun --- den Pins werden ihren Standard-I/O-Funktionen zugewiesen. 

Wenn BDM eingestellt ist, entscheidet das Steuermodul und nicht die CPU, was als nächstes passiert. Das Steuermodul hat Zugriff auf alle Speicherbusse und kann im BDM-Modus z. B. alle Speicher und Register lesen und schreiben und deren Inhalte an den PC senden, damit der Ingenieur sie sich ansehen kann. Der Techniker kann entscheiden, neuen Code vom PC zu senden, der in das RAM des Targets geladen werden soll. Das Steuermodul kann den Mikroprozessor auch zwingen, eine einzelne Anweisung auszuführen oder so lange zu laufen, bis der Mikroprozessor eine vordefinierte Stelle erreicht, deren Adresse dem Inhalt der "Haltepunkt-Register" des Steuermoduls entspricht. Mit diesen wenigen Funktionen hat der Ingenieur, der den PC bedient, alle Möglichkeiten, das Zielsystem zu kontrollieren und Code auf dem Mikrocontroller zu debuggen.

Kurz gesagt, BDM bietet 90% der Funktionalität eines In Circuit Emulators (ICE) zu <1% der Kosten. 

Hinweis: Wenn JTAG zur Steuerung des On-Chip-Debugging verwendet wird, werden die von der Joint Test Action Group (JTAG ist der allgemeine Name für IEEE 1149.1) spezifizierten Signalstandards für die Kommunikation verwendet, was jedoch nicht automatisch bedeutet, dass der Chip mit Boundary-Scan-Techniken und -Tools getestet werden kann.

 

BDM zum Programmieren von Flash verwenden ?

Das Geheimnis ist, dass über die BDM-Schnittstelle eine kleine Anwendung in den RAM geladen wird plus so viele der in den Flash zu ladenden Daten, wie in den Rest des RAMs passen.  Das BDM startet dann diese Anwendung, die den Flash "brennt" und dann zurück zum PC geht, um weitere Daten zu holen, bis die Aufgabe beendet ist.

Im Folgenden wird das BDM- & JTAG-Produktangebot von PEmicro beschrieben

PEmicro ist führend auf diesem Gebiet und ihre Produkte sind in vielen NXP/Freescale EVB-Paketen enthalten.  Die Tools von PEmicro, einschließlich Schnittstellen, Software wie Programmierer (PROG), In-Circuit-Debugger (ICD), Assembler/Editoren und Register-File-Displays (REGxx) sind alle ab Lager verfügbar. Sie arbeiten über die Schnittstellen von PEmicro, die den PC mit dem Target verbinden, per USB oder Ethernet. Diese Produkte sind als vollständige 32/64 Bit Windows-Applikation für W95/98/2K/NT/XP/W7 und W8 für die folgenden Zielprozessorfamilien verfügbar:

  • ARM Cortex M0-4
  • All Freescale Devices
  • NXP (LPC TI/Stellaris) Devices
  • Renesas & Hitachi Devices
  • ST Microelectronics Devices

BDM-, JTAG- und SWD-Schnittstellen

PEmicros neueste USB-Multilink-Universalkabel sind die Hardware-Schnittstellen zwischen einem Standard-PC und dem Header auf einem beliebigen der zahlreichen Zielsysteme. Je nach Chip bieten sie Zugriff auf die Background Debug Mode (BDM), JTAG und SWD Schnittstellen des Mikrocontrollers. Durch den Einsatz des BDM/JTAG/SWD-Kabels kann der

 kann der Anwender die Vorteile des "On-Chip-Debugging" nutzen, um interne oder externe FLASH-Speicherbausteine zu programmieren und den Applikationscode im Mikro zu testen.

Mit dem preisgünstigen Multilink ACP für den ARM-Bereich, dem Multilink Universal für eine breite Palette von CPUs von Motorola, NXP bis ARM oder dem hochleistungsfähigen Multilink Universal FX und für die Produktion der Cyclone-Reihe als Alternativen sind verschiedene Preis-/Leistungspunkte verfügbar.

Flash-Speicher-Programmierwerkzeuge sind sowohl für die Entwicklungs- als auch für die Produktionsumgebung verfügbar.  Details zu deren Funktionsweise finden Sie unten.

pemicro Multilink fx debug schnittstelle
howbdm

Eigenschaften

Volle Kontrolle über die On-Chip-Ressourcen über BDM/JTAG/SWD
In-Circuit-Emulation mit voller Geschwindigkeit zu einem günstigen Preis
Programmierung für interne oder externe EEPROM/FLASH-Speicherbausteine
Ausführen bis zum Hardware-Breakpoint
Arbeitet mit PROG-Programmier-Softwarepaketen sowie mit einer Vielzahl von
Compiler-Debug-Umgebungen wie CodeWarrior, KDS, Keil, IAR, Atollic, GDB
1,8- bis 5-Volt-Versionen sind verfügbar, siehe chip-spezifische Informationen
Sehr schnelle Downloads und Stepping
Schnittstellenbibliothek und Demo für eigene Tester und Software

Bei Verwendung der synchronen Zielarchitekturen des Universal FX-Modells, wie z. B. Kinetis, Qorivva, Coldfire V2-V4, 683xx, HC16, Power Architecture PX-Serie und DSC, kann die Kommunikation 4 bis 10 Mal schneller ablaufen als bei den älteren Multilink-Schnittstellen.

Download-speed-universal-fx

Cyclone Serie

Cyclone_Bild

Diese Boxen verbinden einen PC über Seriell, USB oder Ethernet, um ein superschnelles, interaktives Flash-Programmiergerät unter manueller oder automatischer Steuerung bereitzustellen. Sie können sogar vom PC getrennt und als eigenständiges Flash-Programmiergerät verwendet werden. Wenn Sie Anwendungen für einen der NXP / Freescale Bausteine entwickeln, sind sie das einzige CPU-spezifische Hardware-Entwicklungstool, das Sie jemals kaufen müssen. Sie arbeiten mit allen unten aufgeführten Softwarepaketen.

Cyclone Universal LC Zur Verwendung mit den Familien 68HC08, HCS08, HC12, HCS12. Schnittstellen zu PEmicro, CodeWarrior und Cosmic Debug-Umgebungen.  Sowie Für den Einsatz mit Arm cortex, Kinetis, 55xx/56xx/57xx Qorivva, ColdFire, PPC 5xx/8xx, STM32, STM8, SPC56 und MAC 71xx,72xx (ARM) Familien. Schnittstelle zum ARM GDB-Server. Diese programmieren auch die folgenden Geräte

Cyclone für ARM® Cortex Bausteine Zur Programmierung von ARM Cortex M0-4 basierten Bausteinen von STMicro, NXP, TI Stellaris und NXP/Freescale Kinetis.


Cyclone Universal FX, die höchste Spezifikation in der Familie, wurde für den Einsatz in der Produktion entwickelt und zeichnet sich durch eine extrem hohe Downloadgeschwindigkeit aus: Bis zu 75Mb/s. Er hat einen Gbyte-Speicher, um 200+ Bilder aufzunehmen und kann die Programmierung über einen Barcode-Scanner auswählen und starten. Es programmiert alle oben aufgeführten Chips von HC08 - ARM dann mit Adaptern STM32, STM8 und SPC56 Familien sowie Renesas M32C, M16C, M16C/80, R8C, H8 und H8S/Tiny Familien.  Eine kostengünstigere Version ist ausschließlich für die ARM-Familie vorgesehen.

Die Cyclones sind mit einem vollständigen Satz von Flash-Programmieralgorithmen ausgestattet und sind besonders in Produktionsumgebungen beliebt, wo sie mit einer Reihe von Automatisierungsoptionen eingesetzt werden können, die für die Programmierung in der Fertigungslinie in vollem Umfang ausgelegt sind.

prog32w

BDM Flash Programmer

Ein interaktives Flash-EEPROM-Programmier-Softwarepaket, mit dem Sie sowohl interne als auch externe Flash-Bausteine in-circuit über ein PEmicro-Schnittstellenkabel programmieren/umprogrammieren können. Perfekt für die Entwicklung, Produktionslinienprogrammierung oder Firmware-Upgrades im Feld. PEmicros Produkte enthalten unsere gesamte Bibliothek von Setup-Dateien für einen bestimmten Prozessor und umfassen sowohl interaktive als auch Befehlszeilen-Versionen für den Einsatz in Entwicklung und Produktion. 

Die Funktionen für Flash-Speicher sind: 

Programmieren, Verifizieren, Blank Check, Hochladen, Anzeigen & Löschen.

In-Circuit Debugger

Die In-Circuit-Debugger-Software von PEmicro - ICD für Windows ist ein leistungsfähiges Werkzeug zum Debuggen. Sie nutzt den Hintergrund-Code-Debug-Modus des Prozessors über ein Schnittstellenkabel, um dem Anwender direkten Zugriff auf alle On-Chip-Ressourcen zu ermöglichen.

  • C-Source-Level-Debugging-Unterstützung für IEEE695 & GNU
  • In-Circuit-Emulator mit voller Geschwindigkeit
  • Haltepunkte mit Zählern zum Unterbrechen bei der nächsten Ausführung
  • Variablenfenster mit Anzeige von Bytes, Wörtern, Strings und langen Wörtern
  • Echtzeit-Ausführung sowie mehrere Tracing-Modi
  • Startup- und Makro-Dateien zur Automatisierung des Debug-Prozesses
  • Kontextsensitive Hilfe für alle Befehle
  • Timing-Messung und Ausführungszählfunktionen
  • Hotkeys zum Setzen von Haltepunkten und Zählern
  • Unterstützung für symbolische Registerdateien
icd32w
reg32w

Register File

Mit REGxx kann der Benutzer über den BDM die Registerfelder des Prozessors sowohl im symbolischen als auch im numerischen Format anzeigen und ändern, wodurch das mühsame Durchsuchen von Handbuchseiten nach Registerbeschreibungen entfällt. Wenn der Benutzer ein Register auswählt, wird der tatsächliche Speicher des Prozessors gelesen und angezeigt. Die Registerdateien arbeiten mit der In-Circuit-Debugger-Software von PEmicro.

PACKAGE mit Assembler  

Ein komplettes 32-Bit-Windows-Softwarepaket, bestehend aus integrierter Entwicklungsumgebung, In-Circuit-Debugger, Assembler, Programmierer, Registerdatei, ist jetzt für alle CPUs verfügbar -- fügen Sie einfach das Kabel Ihrer Wahl hinzu. 

 

PACKAGE Pro mit C 

Das PEmicro-Paket "Pros" bietet alles, was der Ingenieur benötigt, um mit der Verwendung des Gnu Cross Compilers zu beginnen.  Es enthält eine von PEmicro vorkompilierte Version des GNU/GCC-Compiler-Toolsets, die direkt unter der Windows-Umgebung arbeitet, ohne dass eine Unix-Shell installiert werden muss. Der Compiler ist in WinIDE integriert und ermöglicht eine One-Touch-Kompilierung eines C-Level-Projekts. Das Paket enthält Startup-Code und Linker-Skripte für die gängigsten Geräte. Der Compiler erzeugt sowohl das Elf/Dwarf 2.0- als auch das S19-Ausgabeformat; das Elf/Dwarf-Format ist mit dem In-Circuit-Debugger von PEmicro ladbar und das S19-Format ist mit dem In-Circuit-Flash-Programmierer von PEmicro ladbar, die alle zusammen mit einer geeigneten BDM/JTAG-Schnittstelle enthalten sind.   Die Pro-Versionen des Pakets sind jetzt für ColdFire und Power PC Qorivva 55xx/56xx/57xx (AKA NEXUS) verfügbar. 

 

Unit Library

Eine Bibliothek mit Aufrufen, mit denen der PC das BDM-Kabel direkt ansteuern kann.  Ideal, wenn Sie Ihre eigenen Testprogramme für die Produktionslinie erstellen möchten.  Hier ein Beispiel für die C- und Pascal-API. Zwei Versionen sind verfügbar Windows und Linux x86 (nicht ARM).

Debug Werkzeuge

PEmicro Multilink UniversalMultilink Universal
Multilink Universal
Artikelnr: USB-ML-UNIVERSAL
Der Multilink Universal (U-Multilink) ist eine Schnittstelle zum Debuggen & Programmieren von ARM und 8/16/32 bit Prozessoren.
...mehr anzeigen

Features

  • USB Datenverbindung zwischen PC und Multilink, die ein schnelles und unkompliziertes Programmieren sowie Debuggen ermöglicht
  • USB Stromversorgung des Multilink vom PC, sodass keine externe Stromversorgung notwendig ist
  • Unterstützung von Prozessoren deren Spannungsbereich innerhalb von 1,8 V bis 5,25 V liegt.
  • Unterstützt JTAG-Daisy-Chaining mehrerer ARM-MCUs
  • Unterstützt eine Vielzahl von ARM Mikrocontroller, eine exakte Auflistung finden Sie auf der Seite unterstützte Architekturen.
  • ARM-Geräteunterstützung durch JTAG- sowie durch das SWD-Protokoll
  • Pipeline-Programmieralgorithmen für kompatible Power Architecture-Familien, die die Programmiergeschwindigkeit drastisch erhöhen.
  • Automatische Frequenzerkennung + Trimmfunktionen für HCS08-Geräte
  • Automatische Frequenzerkennung für HC(S)12(X)-Geräte
  • Erzeugung von Programmierspannung auf der RESET-Leitung für RS08-Geräte
  • Unterstützung von NXP S32, Coldfire V1-V4, MPC55xx-57xx, DSC, S12Z, HC(S)12(X), HCS08, RS08 und STMicro SPC5

280,00 €*
4.01 %
PEmicro Multilink FX UniversalMultilink Universal FX
Multilink Universal FX
Artikelnr: USB-ML-UNIVERSAL-FX
Das PEmicro Multilink FX Universal ist eine Schnittstelle zum Debuggen und Programmieren von ARM- und 8/16/32-Bit-Prozessoren
...mehr anzeigen

Features

  • USB Datenverbindung zwischen PC und Multilink, die ein schnelles und unkompliziertes Programmieren sowie Debuggen ermöglicht
  • USB Stromversorgung des Multilink vom PC, sodass keine externe Stromversorgung notwendig ist
  • Unterstützung von Prozessoren deren Spannungsbereich innerhalb von 1,8 V bis 5,25 V liegt.
  • Unterstützt JTAG-Daisy-Chaining mehrerer ARM-MCUs
  • Unterstützt eine Vielzahl von ARM Mikrocontroller, eine exakte Auflistung finden Sie auf der Seite unterstützte Architekturen.
  • ARM-Geräteunterstützung durch JTAG- sowie durch das SWD-Protokoll
  • Pipeline-Programmieralgorithmen für kompatible Power Architecture-Familien, die die Programmiergeschwindigkeit drastisch erhöhen.
  • Automatische Frequenzerkennung + Trimmfunktionen für HCS08-Geräte
  • Automatische Frequenzerkennung für HC(S)12(X)-Geräte
  • Erzeugung von Programmierspannung auf der RESET-Leitung für RS08-Geräte
  • Unterstützung von NXP S32, Coldfire V1-V4, MPC55xx-57xx, DSC, S12Z, HC(S)12(X), HCS08, RS08 und STMicro SPC5
  • Blitzschnell! Bis zu 10-fach schnellere Kommunikationsgeschwindigkeit im Vergleich zu den anderen Multilink Modellen von PEmicro*
  • Spannungsversorgung des Ziel MCU mit 3,3V oder 5,5V
  • Gültige Zielfrequenz von 16 kHz-50 MHz (gilt nur für HCS08, RS08, CFV1, S12Z oder HCS12X)
  • Klemmung der E/A-Leitung für zusätzlichen Spannungsschutz
  • Unterstützung von Echtzeit-Leistungsmessungen
  • zusätzliche Unterstützung von MPC5xx/8xx und HC16/683xx Prozessoren

*Die enormen Leistungssteigerungen des USB Multilink Universal FX sind auf synchrone Architekturen beschränkt:

ARM-Geräte, Kinetis, S32, MPC55xx-577xx (& STMicroelectronics SPC5), Coldfire V2-V4, DSC, MPC5xx/8xx und HC16/683xx.

575,00 €* 599,00 €*
pemicro cyclone fx universalCyclone FX Universal Header Layout
Cyclone Universal FX
Artikelnr: CYCLONE-FX-UNIV
Der PEmicro Cyclone Universal FX (U-Cyclone-FX) ist eine Standalone Programmer für ARM und 8/16/32 bit Prozessoren.
...mehr anzeigen

Features

  • Kostenloser PECloud-Zugriff zum Bereitstellen, Überwachen und Verwalten von Cloud-verbundenen Produktionsprogrammierjobs
  • Kann sowohl über PC als auch alleinstehend betrieben werden
  • Programmieren Sie MCUs mit einem PC oder ohne PC
  • Leistungsstarke Automatisierungssteuerung
  • PC-basiertes SDK, Konsolen- und GUI-Steuerung, Gang-Programmierung, dynamische Datenprogrammierung
  • Zahlreiche Kommunikationsschnittstellen darunter USB 2.0, Ethernet und serielle Schnittstellen
  • LCD-Anzeige und intuitive Touchscreen-Steuerung
  • Einfach zu bedienende Touchscreen-Schnittstelle mit Fernzugriff
  • Target Power Management
  • Fähigkeit, den Ziel MCU mit Strom zu versorgen
  • Automatische Zählen & gemeinsame Seriennummern
  • Die Programmierung kann eine komplexe Serialisierung beinhalten
  • Ethernet-basierte Fehlersuche
  • Kompatibel mit vielen Entwicklungs-IDEs
  • On-Board-Speicher
  • Programmier-Steueranschluss
  • 10-Pin-Anschluss zum Starten der Programmierung und Abrufen des Status und Programmiervalidierung
  • Hochgeschwindigkeits-Programmierung

Nur Cyclone FX Modelle:

  • Download-Raten bis zu 75 Mbits/s
  • 1+ Gigabyte verschlüsselter interner Speicher für 200+ Programmierbilder
  • RSA/AES-Verschlüsselung (eindeutige ImageKeys zum Schutz wertvoller IP)
  • Programmierung von Zähl-/Datumsgrenzen usw. 
  • Externer Speicher über SDHC-Kartenanschluss
  • Durchführung von komplexer Tests des MCUs vor der Programmierung 
  • Messung von Strom und Spannung des Ziel ICs

1.399,00 €*