Verwenden Sie JTAG, um ein Board zu "erkunden", ohne es zu beschädigen?

Ich habe eine Amontec JTAGKey2 Generic USB JTAG-Kabelschnittstelle. Was ich suche, ist eine Erklärung, wie man ein Gerät "erkundet", von dem ich nicht alle genauen Details kenne, für das ich aber eine BSDL-Datei habe, die fast passt . Ich kann das Gerät nicht beschädigen, weshalb ich versuche, besonders vorsichtig zu sein.

Ist das überhaupt möglich oder suche ich die falsche Technologie für die folgende Aufgabe?:

  • Im Allgemeinen ist mein erstes Hauptinteresse, im Speicher herumzustöbern und vielleicht ein paar Bytes zu ändern.
  • Als nächstes würde eine Komponente blinken, die mit der JTAG-Kette verbunden ist.

Im Moment bin ich aus dem Board ausgesperrt, weil die "Umgebung" des (herstellerspezifischen) Bootloaders ungültig ist und der Bootloader einfach mit einem Segfaulting endet, ohne mich in den interaktiven Modus zu lassen.

Das Board, für das ich nur sehr wenig Dokumentation einer neueren Hardware-Revision habe (leider unter NDA), als ich habe, ist von RMI und kann als eigenständige Netzwerkkarte verwendet oder als PCI-X- (nicht PCI Express!) Board gehostet werden . Der JTAG-Anschluss ist ein Standard-MIPS-Anschluss und entspricht laut Hersteller den für MIPS dokumentierten Spannungen und Pinbelegungen.

Der Anbieter dokumentiert und unterstützt nur die Verwendung bestimmter (und ziemlich teurer) JTAG-Sonden. Amontecs JTAGkey2 gehört nicht dazu.

Antworten (1)

Schnelle Antwort: Sie können es nicht tun.

Lange Antwort: Yyyyyoooouuuu ccccaaaannnn''''ttt dddddooooo iiiittttt.

Aber im Ernst, ohne einen Schaltplan können Sie die JTAG-Schnittstelle nicht ansteuern, ohne Gefahr zu laufen, Dinge zu beschädigen. Mit JTAG können Sie im Wesentlichen "die meisten" Pins auf einem Chip in eine Art GPIO-Pins setzen und dann ihren Zustand lesen oder schreiben. Wenn Sie nicht wissen, womit sie verbunden sind, laufen Sie Gefahr, einen Pin auf einen Ausgang zu setzen, während ein anderer Pin ihn ebenfalls ansteuert. Das würde einen "Buskonflikt" erzeugen, der die Teile beschädigen könnte.