Forum: Mikrocontroller und Digitale Elektronik FPGA mit ARM über JTAG programmieren


von Flo (Gast)


Lesenswert?

Hallo

Ich habe folgendes vor:

Ich habe die Binärdaten, die in einen FPGA (oder dessen ROM) abgelegt 
werden um ihn zu betreiben. Diese Binärdaten liegen in einem ARM, der 
die Daten über JTAG in den FPGA schreiben soll.
Meine Aufgabe wäre es also die JTAG-Schnittstelle von ARM zu FPGA zu 
implementieren.

Ich finde hunderttausende Beiträge, die sich damit beschäftigen, wie man 
allg. das JTAG Interface zwischen Komponente X und Y zum Laufen bekommt 
- Aber nicht wie man JTAG in C in einem ARM implementiert.

Könnt ihr mir da helfen? Kennt ihr irgendwelche Libraries, Tuts, 
Hilfeseiten, Tricks und Kniffe?

Ich kenne mich mit JTAG leider noch nicht aus. Auch hier muss ich mich 
erst einlesen. Aber mich würde einfach mal interessieren, ob jemand 
sowas schonmal gemacht hat, wie groß der Aufwand dafür ist, etc.

Ich verwende einen SAM7 und einen Spartan III ;-)

von Gast (Gast)


Lesenswert?

Gurgel mal nach XSVFPlayer von Xilinx. Applikation-Note xapp058.

Dort gibts dann auch ein .zip zum Runterladen. Darin befindet sich etwas 
Source-Code zum Parsen von xsvf-Files, die mit Impact erstellt werden. 
Im Großen und Ganzen enthält ein xsvf-File ein Abbild der Kommunikation 
über JTAG zum FPGA inklusive den erwarteten Pegeln auf TDO usw ...

Man muss in einem File nur 2 Funktionen selbst implementieren ... Einmal 
das setzen/löschen von TMS, TCK und TDI und in der anderen Funktion das 
Zurücklesen von TDO.

Ganz easy :)

Viel Glück!

von Claude S. (claudeschwarz)


Lesenswert?

http://www.xilinx.com/support/documentation/application_notes/xapp058.pdf

Für diverse Spartan I / II und Altera Cyclones haben wir den sog. "Slave 
Serial" Mode auf einem uC implementiert. Da gibt es auch App.Notes / 
Ansi C Source von Xilinx zu dem Thema.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.