mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik JTAG


Autor: Olaf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Morgen,

ich hab schön öfter im Netz gelesen, dass bei einer JTAG Verbindung zum 
Computer für Programmier-etc-zwecke nicht nur die vier Standardleitungen 
(TMS etc.) herausgeführt werden sondern auch ein RST (zum resetten des 
µC), TEST (um µC JTAG freizuschalten), VCC des JTAG-Adapters und VCC der 
Platine sowie eine GND...

kann damit jede Software-Lösung zum Programmieren des µC umgehen? Wenn 
ja, bedeutet das ja im Umkehrschluss, dass man in der Software selbst 
die Pinbelegung manipulieren kann von dem JTAG-Stecker - oder sind diese 
optionalen Sachen wie ein TEST-Pin-Anschluss etc. bei jeder Software 
vorhanden nur nicht bei jedem µC?

Olaf

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Olaf wrote:
> Morgen,
>
> ich hab schön öfter im Netz gelesen, dass bei einer JTAG Verbindung zum
> Computer für Programmier-etc-zwecke nicht nur die vier Standardleitungen
> (TMS etc.) herausgeführt werden sondern auch ein RST (zum resetten des
> µC), TEST (um µC JTAG freizuschalten), VCC des JTAG-Adapters und VCC der
> Platine sowie eine GND...

Freischalten kann man das nicht nennen. Entweder ist JTAG zugänglich 
oder nicht. Man kann u.U. ein Signal gebrauchen, um gezielt den 
Controllerteil, der hinter JTAG steckt (z.B. ICE) zu resetten.

> kann damit jede Software-Lösung zum Programmieren des µC umgehen?

"Jede" wahrscheinlich nicht.

> Wenn
> ja, bedeutet das ja im Umkehrschluss, dass man in der Software selbst
> die Pinbelegung manipulieren kann von dem JTAG-Stecker - oder sind diese
> optionalen Sachen wie ein TEST-Pin-Anschluss etc. bei jeder Software
> vorhanden nur nicht bei jedem µC?
>
> Olaf

Ich kenne zumindest µCs bei denen TEST nicht vorhanden ist.

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Unbedingt benötigt werden:
- TCK, TMS, TDI, TDO, GND

Optional sind:
- TRST ((t)est reset), SRST ((s)ystem reset, also der Reset Eingang des 
uCs).

Komplett Target-spezifisch ist "TEST", wie es z.B. die AT91SAM7 (iirc) 
verwenden. Das würde ich aber eher nicht an den JTAG Port führen, 
sondern via DIP-Switch/Jumper konfigurierbar machenl.

Viele JTAG Interfaces benötigten zumindest Vcc vom Target, andere können 
auch die USB Versorgung des Hosts oder eine andere eigene 
Spannungsquelle verwenden. Manche Interfaces benötigen Vref als 
Referenz-Spannung, um die JTAG Pins mit der Spannung des Targets zu 
betreiben (automatische Spannungsanpassung).

Die Softwarelösung muss den uC bzw den uC und ein angeschlossenes 
externes Flash unterstützen - eventuell auch generische Unterstützung 
für boundary-scan, dann ist aber ein BSDL File für den uC nötig.
Wenn es sich beim Target z.B. um einen ARM7/9 handelt kann entsprechende 
Software den uC auf jeden Fall debuggen, zum Flashen muss aber das Flash 
(intern oder extern) unterstützt werden.

Gruß,

Dominic

Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Die Softwarelösung muss den uC bzw den uC und ein angeschlossenes
>externes Flash unterstützen - eventuell auch generische Unterstützung
>für boundary-scan

unterstützt die YAGARTO Toolchain sowas? Der von mir verwendete µC wird 
in OpenOCD unterstützt (AT9SAM7SE-Serie). Was ist genau der Vorteil von 
einer Boundary-Scan-Option (standardisiertes Verfahren zum Testen 
digitaler und analoger Bausteine) - bzw. andersherum gefragt, welche 
Optionen Möglichkeiten fehlen mir, wenn ich diese Option nicht verwenden 
kann?

Bernd

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der OpenOCD unterstützt das Debug Interface des ARM7, allerdings kein 
Boundary-Scan.

Boundary Scan ist insofern interessant, als dass eine Software (bzw. ein 
Standalone Gerät), die via Boundary Scan ein Flash programmieren kann, 
die mit jedem Target kann, sofern der uC ein Boundary-Scan Interface 
bietet und der User Zugang zu dem BSDL File (das die Boundary-Scan-Chain 
beschreibt) hat, unabhängig von der Architektur des Targets (FPGA, 
ARM7/9, XScale, MIPS, ...). Dazu kommen natürlich die Funktionen, für 
die JTAG ursprünglich entwickelt wurde, also PCB Test etc., allerdings 
ist Soft- und Hardware dafür extrem teuer.

Wenn über die Debug Funktionen eines Target das Flash programmiert wird 
muss Unterstützung für die jeweilige Architektur implementiert sein.

Gruß,

Dominic

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.