Forum: Mikrocontroller und Digitale Elektronik JTAG-Adapter mit FT2232H/FT4232H für ARM-Cortex _und_ FPGA?


von Ralf (Gast)


Lesenswert?

Hallo,

ich suche eine OpenSource-Schaltung, mit der es möglich ist, sowohl 
FPGAs als auch Cortex-Controller zu programmieren/debuggen.
Die FTDI-Chips sind kein Muss, ich hab hier halt ein, zwei Stück 
rumfahren :)

Momentan spiele ich mit Cortex-Controllern von NxP und habe die 
LPCxpresso Module, auf denen ein abtrennbares Debug-Interface drauf ist, 
allerdings funzt das ja nur eben mit den NxPs.

Bzgl.FPGA habe ich noch nie etwas gemacht, aber kürzlich ein (wohl 
älteres) Xilinx Spartan3 Sample Pack geschenkt bekommen, dort ist 
allerdings kein Programmierkabel dabei.
Da ich in beiden Fällen nicht weiss, ob ich bei den beiden Herstellern 
bleibe, ist die Frage einfach, ob es eine OpenSource-Schaltung gibt, mit 
der man sowohl Cortex-MCUs als auch FPGAs programmieren und debuggen 
kann.

Ralf
von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Die ARMe sind hier nicht das Problem (Stichwort OpenOCD), die 
entscheidende Frage ist, ob es überhaupt eine Möglichkeit gibt, Deine 
FPGAs mit irgendwas anderem als dem von Xilinx selbst vorgesehenen 
Interface zu programmieren.
Deine Suche sollte sich also zunächst darauf beschränken, 
herauszufinden, welche JTAG-Varianten für diese FPGAs geeignet sind.

Sollte dabei auch eine Selbstbauvariante auf Basis des FT2232 enthalten 
sein, musst Du nur noch herausfinden, inwiefern sich diese von der 
OpenOCD-Variante für ARMe unterscheidet.
von Wesche (Gast)


Lesenswert?

FPGA mittels FT2232 (MPSSE) Mode zu laden ist kein Problem und sehr 
performant. Stichwort (X)SVF-Player. Eine Programmierung kann dann 
mittels des nun geladenen FPGAs erfolgen.

Ein Programmierung per BoundaryScan ist ebenfalls möglich. (Gilt 
natürlich auch für die ARMe).

Hier gibt es ein kleines Tool, welches beides kann:
http://wesche.we.ohost.de/Homepage/Version_3/index.php?section=PC_Delphi_FT2232_JTAG.html
von Ralf (Gast)


Lesenswert?

@Rufus:
Danke für die "Stichworte" :)
Ich glaube ich hab was gefunden:
http://dangerousprototypes.com/docs/Bus_Blaster_v2_design_overview

Was hältst du davon?

@Wesche:
Ich hab einen kurzen Blick draufgeworfen. Soweit ich das verstanden 
habe, handelt es sich um ein reines Softwaretool, ist das korrekt? Wie 
steht's mit der Erweiterbarkeit über AddIns?

Ralf
von Strubi (Gast)


Lesenswert?

Moin,

> Die ARMe sind hier nicht das Problem (Stichwort OpenOCD), die
> entscheidende Frage ist, ob es überhaupt eine Möglichkeit gibt, Deine
> FPGAs mit irgendwas anderem als dem von Xilinx selbst vorgesehenen
> Interface zu programmieren.
> Deine Suche sollte sich also zunächst darauf beschränken,
> herauszufinden, welche JTAG-Varianten für diese FPGAs geeignet sind.

Das geht schon seit Jahren, Stichwörter:

- xc3sprog
- xilprg
- xsvfplayer
- cableserver (per Impact)

>
> Sollte dabei auch eine Selbstbauvariante auf Basis des FT2232 enthalten
> sein, musst Du nur noch herausfinden, inwiefern sich diese von der
> OpenOCD-Variante für ARMe unterscheidet.

Die Anpassung ist leicht gemacht. Im Prinzip empfiehlt es sich, sich an 
der Belegung populärer FT2232-Adapter zu orientieren, z.B.: ICEbear, 
JtagKey, usw.

Beispiel:
https://hackerspace.be/Icebear_jtag
http://www.amontec.com/openocd.shtml
von Vanilla (Gast)


Lesenswert?

Die Programmierung der FPGAs ist wohl ueber die gezeigten Wege moeglich, 
das Debugging (via EDK sprich Mikroblaze bzw. via Chipscope) jedoch 
nicht.

Irgendwo hatte ich gelesen, dass da (zumindestens fuer den Chipscope) 
welche dran sind....

Gruss

Vanilla
von Ralf (Gast)


Lesenswert?

@Vanilla:
> Die Programmierung der FPGAs ist wohl ueber die gezeigten Wege moeglich,
> das Debugging (via EDK sprich Mikroblaze bzw. via Chipscope) jedoch
> nicht.
Das heisst, so ein Dingens wäre so oder so nur zum Flashen tauglich? 
Schade...

Ralf
von Christian R. (supachris)


Lesenswert?

Ich glaube, neuerdings geht das. Das billige Digilent HS JTAG Kabel hat 
auch nur einen FT2232H drauf, und das wird mittlerweile von Xilix voll 
unterstützt. Jedenfalls bei Impact und ChipScope.
Programmieren über (x)SVF geht immer, nur Debuggen ist halt alles closed 
source und man ist auf den Hersteller angewiesen.
von Martin S. (strubi)


Lesenswert?

Hat noch keiner das von Chipscope benutzte JTAG-Protokoll reverse 
engineert?
Da ich sowieso ne simulierbare Lösung brauchte, hab ich mir gleich den 
JTAG TAP in VHDL mit dazugebacken, darum mir die BSCAN-Primitiven erst 
gar nicht angesehen.

Gruss,

- Strubi
von Sven Wagner (Gast)


Lesenswert?

Martin S. schrieb:
> Hat noch keiner das von Chipscope benutzte JTAG-Protokoll reverse
> engineert?
Nein. Das wäre aber mal eine tolle Sache. Ein einigermaßen brauchbares 
alternatives Frontend gibt es schon auf sump.org

Grüße
Sven
von Ralf (Gast)


Lesenswert?

Christian R. schrieb:
> Programmieren über (x)SVF geht immer, nur Debuggen ist halt alles closed
> source und man ist auf den Hersteller angewiesen.
Okay, das heisst also fertige(n) Kabelsalat(e) vom Hersteller kaufen :/

Na gut, dann werd ich mal suchen, was die Bucht etc. so hergeben :)

Ralf
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.