Teure Debugger Vorteile

Gast #6214258
Lesenswert?

Hallo,

ich wollte mal fragen, was man für Vorteile davon hat, wenn man sich 
z.B. JTAG  SWD Debugger für mehrere Hundert  Tausend Euro kauft, wie 
sie manche Hersteller anbieten und was die Vorteile davon sind, einfach 
einen billigen STLink z.B. zu nutzen bzw. JTAG über FT2232?

Danke
Persönliche Seite #6214261
Lesenswert?

Debugger wie z.B. der Segger JLink sind schneller und stabiler und 
unterstützen fast alle ARM-Prozessoren. Außerdem gibt es Modelle die 
über Ethernet funktionieren und Tracing unterstützen. Die 
ST-Link-Software ist/war notorisch verbuggt und teilweise kaum nutzbar, 
hat sich aber etwas gebessert. Für Hobby kann der ST-Link ausreichend 
sein, aber wenn man viel/professionell damit arbeitet verschwendet man 
damit zu viel Zeit...
Gast #6214292
Lesenswert?

Ausrede für Manager.

"Wenn das Projekt sogar mit professionellem Equipment, Schulungen und 
Support in die Hose gegangen ist - was wäre dann erst passiert, hätten 
wir China-Glump gekauft?"

Ein ehemaliger Marktführer hatte mal den Werbespruch: Es wurde noch 
keiner entlassen, weil er IBM gekauft hat.
#6214385
Lesenswert?

Robert schrieb:

> ich wollte mal fragen, was man für Vorteile davon hat, wenn man sich
> z.B. JTAG  SWD Debugger für mehrere Hundert  Tausend Euro kauft, wie
> sie manche Hersteller anbieten und was die Vorteile davon sind, einfach
> einen billigen STLink z.B. zu nutzen bzw. JTAG über FT2232?

1. Interfaces: FTDI-Bridges können erstmal nur JTAG. Um SWD unterstützen 
zu können, brauchen die extra Hardware, oft in Form eines CPLDs/FPGAs 
(Beispiel: TI XDS100V2/v3) oder mit extra Gattern (Olimex 
JTAG-SWD-Adapter). Dann gibts da noch cJTAG und andere Spielarten, und 
jenseits von ARM gibts noch weitere Feinheiten.

2. Trace Support für die ETM Trace Cell, die im fast allen Cortex Cores 
mit drin ist.

3. Software-Support: Wenn Du eine bestimmte IDE verwenden willst, wird 
die nur eine eng begrenzte Anzahl von Adaptern unterstützen. Und wenn 
nur A, B und C unterstützt wird und Du nur D hast, hast Du eben Pech 
gehabt.

4. Spannungsbereich: 3.3V ist Standard, aber wenn Dein Prozessor mit 
1.8V oder mit 5V läuft, dann muss der Adapter entsprechende Levelshifter 
eingebaut haben.

5. PC-Verbindung: Die billigen haben machmal nur USB Full Speed. USB 
High Speed sollte eigentlich Standard sein, Ethernet ist 
aufpreispflichtig.

6. galvanische Trennung: manchmal erforderlich, Extra

fchk
Gast #6214602
Lesenswert?

Wenn man low cost hw benutzt wie Bluepill oder die STLink clones hat man 
ein super Preis-Leistungsverhältnis. Aber zb auch die 3.3 V 
Einschränkung.
Das org BMP hat einen Buffer und passt sich der VTarget an, kostet aber 
auch gleich ein vielfaches.
Durch die einfache Konfiguration ist BMP meine Lieblingsprobe.
Gast #6214619
Lesenswert?

Ich nutze einen Debugger von Lauterbach. Die SW stammt gefühlt noch aus 
DOS Zeiten. Sieht nicht toll aus, aber man kann sie individuell Anpassen 
wie man Lust und Laune hat. Eigene Schaltflächen, Makros, Befehle. 
Selbst das Layout der Oberfläche. Steht einem alles frei.

Die Anzahl der unterstützten Controller ist gigantisch. Der Support 
erste Klasse. Der Debugger selbst hat eine irre Perfpormance. JATG mit 
50 cm Kabelpeitsche dazwischen, egal läuft bei 20 MHz. Hunderte 
Breakpoints, klar kein Problem. Ach du willst zu dem nur Springen, wenn 
die Variable den Wert hat, du vorher durch diesen Zweig gelaufen bist 
und heute Donnerstag ist? Klar auch kein Problem. Du willst zwei 
verschiedene Controller gleichzeitig Debuggen, na aber sicher doch.

Das kann der Debugger vom Nucleo Board nicht.
Gast #6214626
Lesenswert?

Lauterbach zb rufst du an und bekommst in deutsch Hilfe.
Da der Kopf bei den Debuger auch die Liezen enthält behält man das 
Grundgerät und kann dann so ziemlich alles debugen was 1 von 0 
unterscheiden kann.
Die einfachen ohne Hardwartraces Unterstützung gehen preislich.
Die großen sind privat nicht bezahlbar. Und den 4 Gb Tracespeicher auf 
dem Debuger hast uU extrem schnell voll.

Auch schön ist halt Multicore debugen, oder Datenbreakpoints.

Von den Spannungen gehen die glaub bei 1,5 V los bis 5 V hoch.
Gast #6214687
Lesenswert?

> Die Anzahl der unterstützten Controller ist gigantisch.

Das ist einer der Hauptgruende warum gute Debugger (und Eprommer) so 
teuer sind.

Schaut als Beispiel mal hier:

https://processors.wiki.ti.com/index.php/ICEPICK

JTAG ist nicht gleich JTAG. Das muss immer passend implementiert werden.

> 50 cm Kabelpeitsche dazwischen, egal läuft bei 20 MHz. Hunderte
> Breakpoints, klar kein Problem. Ach du willst zu dem nur Springen, wenn
> die Variable den Wert hat, du vorher durch diesen Zweig gelaufen bist
> und heute Donnerstag ist? Klar auch kein Problem.

Das geht mit dem gdb auch. Also dann z.B auch dem jLink. Man muss nur 
mal die Anleitung lesen.

> Klar auch kein Problem. Du willst zwei
> verschiedene Controller gleichzeitig Debuggen, na aber sicher doch.

Yep. Oder auch zwei gleiche Debugger an einem PC verwenden. Kommt ja 
auch manchmal vor wenn man Schnittstellen programmiert.

Das wichtigste aber, es muss ZUVERLAESSIG sein. Wenn ich auf Fehlersuche 
bin das ist keine schrullige Kiste akzeptabel wo ich mich frage ob das 
Problem nicht vielleicht auch am Debugger liegen koennte!

Und dann gibt es manchmal noch so Extremfaelle. Wenn der Debugger mit in 
den Klimaschrank muss. .-)

Olaf
(Firma: TU Darmstadt) #6214707
Lesenswert?

Johannes S. schrieb:
> Wenn man low cost hw benutzt wie Bluepill oder die STLink clones hat man
> ein super Preis-Leistungsverhältnis. Aber zb auch die 3.3 V
> Einschränkung.
> Das org BMP hat einen Buffer und passt sich der VTarget an, kostet aber
> auch gleich ein vielfaches.
> Durch die einfache Konfiguration ist BMP meine Lieblingsprobe.

BMP kann auch tracing , siehe orbuculum

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren