UDE 2.4 jetzt mit Unterstützung für MPC5510-MCUs

pls unterstützt mit seiner Universal-Debug-Engine (UDE) ab sofort auch die Power-Architecture-32-Bit-MCUs der MPC5510-Familie von Freescale.

Die High-End-Automotive-Mikrocontroller, mit einer Taktfrequenz von 80 MHz, sind je nach Version mit ein oder zwei PowerPC-e200zX-Cores, bis zu 1 MByte Flash mit Error-Correction-Coding (ECC) und bis zu 64 KByte SRAM ausgestattet. Darüber hinaus sind sie mit vielen spezifischen Kommunikations-Schnittstelle (FlexRay, Multi-CAN, LIN), DMA Low-Power-Modi und weitere Peripherieeinheiten, wie Timer und AD-Wandler bestückt.

Die UDE ermöglicht echtes Multi-Core-Debugging innerhalb einer Bedienoberfläche, was vor allem bei den Dual-Core-Derivaten MPC5516x und MPC5514x zum Tragen kommt. Dadurch können die durch On-Chip-Hardware unterstützten vier Code-Breakpoints und zwei Watchpoints pro Core direkt im Programm- bzw. Watch-Window des entsprechenden Cores genutzt werden. Beim On-Chip-Triggern übernimmt der Debugger die Verwaltung der On-Chip-Ressourcen.

Die Verbindung zu Dual-Core-Bausteinen erfolgt typischerweise über ein JTAG-Interface. Downloadraten von bis zu 1 MByte/s lassen sich in Kombination mit dem Universal-Access-Device-2+ (UAD2+) realisieren. Die auf allen Bausteinen der MPC5510-Familie vorhandene Nexus-Einheit erlaubt dem Debugger Speicherzugriffe während der Programm-Laufzeit. Dies lässt sich unter anderem zur Echtzeit-Visualisierung von Variablen nutzen.

Zusätzlich hat pls ein virtuelle Ein- und Ausgabe-Schnittstelle über den JTAG-Debug-Kanal implementiert. Transparenten Support durch die UDE findet auch das von den Core-Architekturen Power-e200z1 bzw. Power-e200z0 unterstützte Variable-Length-Encoding (VLE). Dieser alternative, aus 16 und 32 Bit breiten Anweisungen bestehende Befehlssatz erlaubt eine größere Code-Dichte. Der Compiler CodeWarrior von Freescale als auch der PowerPC-Compiler von WindRiver und die GNU-Implementierung können mit der UDE verwendet werden.