www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik JTAG Problem mit ATMega128 und XC9536


Autor: kollabierer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
ich habe einen ATmega128 zusammen mit einem XC9536 in einem JTAG-Chain. 
Beim µC ist JTAGEN-Fuse gesetzt. Allerdings finde ich im iMPACT den CPLD 
nicht. Ich bekomme das chain garnicht aufgebaut.


Die Meldungen des iMPACT sehen so aus:

// *** BATCH CMD : Identify
PROGRESS_START - Starting Operation.
Identifying chain contents ....INFO:iMPACT:1588 - '1':The part does not 
appear to be Xilinx Part.
'1': : Manufacturer's ID =Unknown , Version : 12
INFO:iMPACT:501 - '1': Added Device UNKNOWN successfully.
----------------------------------------------------------------------
----------------------------------------------------------------------
done.
The bsdl for device 'UNKNOWN' is out of date. Please check your 
installation.
ERROR:iMPACT:477 - The bsdl for device 'UNKNOWN' is out of date. Please 
check your installation.
PROGRESS_END - End Operation.
Elapsed time =      1 sec.
Device #1 selected



Jemand eine Ahnung woran das liegen könnte?

Autor: kollabierer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ich habe jetzt noch bisschen getestet und folgendes festgestellt:
Wenn ich in ASM ein Programm schreibe, das TDI direkt nach TDO kopiert 
funktioniert die Erkennung des XC9536 problemlos. Auch der "IDCODE loop" 
klappt 50000 Mal fehlerfrei.
Damit gehe ich mal davon aus dass die Hardware funktioniert. Kann es 
sein, dass man beim ATmega zusätzlich etwas beachten muss außer JTAGEN 
zu setzen?

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nun ja, wenn ich micht nicht ganz täusche hat der Atmel, wie viele 
andere kleine µC keine Boundary-Scan-Funktionalität. JTAG ist nicht 
gleich Boundary Scan. Den MSP430 z.b. kann man auch nicht in eine 
JTAG-Kette hängen.

Autor: kollabierer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Antwort, aber beim ATmega steht folgendes:

JTAG (IEEE std. 1149.1 Compliant) Interface
– Boundary-scan Capabilities According to the JTAG Standard
– Extensive On-chip Debug Support
– Programming of Flash, EEPROM, Fuses and Lock Bits through the JTAG 
Interface

Und im übrigen sagen alle Quellen die ich angesehen habe, dass JTAG für 
IEEE 1149.1 steht.

Was soll ich jetzt machen???

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Achso. Na dann musst du dir das BSDL File von Atmel runterladen, bei 
Impact mit reingeben und dann sollte es klappen. Notfalls gehts auch 
ohne BSDL, wenn man den Bypass Modus aktiviert. Der ist immer eine 
Scan-Zelle lang. Weiß aber nicht, ob Impact das kann...

Autor: kollabierer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Müsste die Erkennung der Chips nicht sogehen? Die IDs abfragen muss doch 
ohne die Dateien möglich sein. Und wenn der ATmega dran ist finde ich 
nur noch einen unbekannten Baustein.
Und wenn ich das BSDL angebe nützt es auch nix :-(

Autor: Uwe Bonnes (Firma: TU Darmstadt) (uwebonnes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Impact fragt nach der Instruction Code Length ( 4 fuer den AT90CAN128). 
Gib dass von hand ein, dann sollte die Kette erkennbar sein. So spielt 
es jedenfalls bei uns.

Dass bedingt allerdings AVRs mit einigermassen neuem Datecode. Es gab 
lange Zeit ein Errata, dass man hinter dem AVR keine weiteren Devices 
erkennen kann...

Autor: Daniel (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe eine Chain aus XC9572XL und Atmega128 (also fast identische 
Konfiguration) und bei mir funktioniert es, wenn ich in Impact die Chain 
per Hand einrichte:

 - Das CPLD: "Add Xilinx Device", dann .bsd file angeben (liegt unter 
/Xilinx91i/xc9500xl/data), richige Package Variante wählen

 - Der AVR: bsdl.zip runterladen
(http://www.atmel.com/dyn/resources/prod_documents/bsdl.zip), 
ATMEGA128.BSD entpacken, WICHTIG: Endung von Groß- auf Kleinschrift 
ändern sonst erkennt es Impact nicht, als "Non-Xilinx Device" in die 
Chain einbauen (Position beachten)

Dann müsste die Device-ID des CPLD auslesbar sein und der "Chain 
Integrity Test" laufen. Anbei ein Bild der Chain wie sie in Impact 
erscheint.

Viel Erfolg

Daniel

Autor: Daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das händische Routen des TDI zum TDO per Software ist insofern lustig, 
als dass sich der Kontroller in einem Zustand befindet in dem 
Hardware-Debugging unmöglich ist, nämlich im normalen Programmablauf.
Interessante Lösung aber um das CPLD anzusprechen während der AVR ein 
Programm ausführt.

Daniel

Autor: kollabierer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dankeschön, jetzt funktioniert es. Hab jetzt alles von Hand angegeben 
und es funzt :-)

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.