Forum: FPGA, VHDL & Co. Ein JTAG-Adapter für alle Spannungen


von Markus K. (markus-)


Lesenswert?

Hi,

es gibt die Xilinx-Logikbausteine (Konkret: XC9572) in verschiedenen
Varianten für verschiedene Spannungen (5V, 3.3V, 2.5V), aber bis jetzt
habe ich bei den JTAG-Adaptern (zum selberbauen) noch keinen Hinweis
darauf gesehen, für welche Typen die denn gut sind.

Kann ich davon ausgehen, daß die Adapter auf alle Typen passen? Wichtig
sind mir vorläufig nur die 5V und die 3.3V-Typen.

Markus

von MockUp (Gast)


Lesenswert?

also ich habe mir den gebastelt.
http://www.xilinx.com/support/programr/jtag_cable.pdf
und ich denke bei den kannste davon ausgehen das beide gehen.
zumindest bei mir
die widerstände r9-r12 dienen zur strombegrenzung, dadurch kann man
auch an die 2,5v ran da die aus und eingänge nicht so doll belastetb
werden.
mfg

von Netbandit (Gast)


Lesenswert?

Tja da will ich auch gleich eine Frage stellen :)

Ich möchte mir auch diesen JTAG Adapter bauen mit dem 74HC125 wie er
hier benutzt wird.
Nach einem Blick ins Datenblatt bin ich etwas ins Grübeln geraten.
Dort steht, daß der 74HC125 maximal VCC+0.5V an seinen Eingängen sehen
möchte. Wenn ich jetzt einen 3.3V CPLD programmiere ist auch die
Betriebsspannung der Schaltung 3.3V und somit auch die Betriebsspannung
des JTAG Adapters. Der 74HC125 kann in diesem Fall also maximal 3.3V +
0.5V = 3.8V HI Pegel an seinen Eingängen haben.
Was ist wenn der Rechner nun aber ca. 5V als HI zum 74HC125 sendet? Das
könnte Probleme geben. Oder arbeiten moderne Rechner auch schon mit
Pegeln um die 3.3V???

Auf der anderen Seite habe ich hier auch kein Thread zu diesem Thema
gefunden, also könnte man davon ausgehen, daß es keine Probleme zu
diesem Thema gibt :)

von MockUp (Gast)


Lesenswert?

hi netbandit

die widerstände r1-r7 und r14 dienen zur strombegrenzung.
das gleiche macht man auch wenn man einen fpga mit 3,3v hat und nen
anderen versorger mit 5v. damit wird der reinfließende strom auf ein
minimum begrenzt sodas er den mikrochip nicht zerstört.
das wird meistens so gemacht. andersrum ist es egal da der verbraucher
mit 5v die high meistens schon ab ca 2v oder so erkennt.
denke das hat deine frage beantwortet.

mfg
MockUp

von Netbandit (Gast)


Lesenswert?

@MockUp:

Ja ich danke dir, dann brauch ich mir ja keine Sorgen zu machen.

Aber nu hab ich eine andere Frage:

>das gleiche macht man auch wenn man einen fpga mit 3,3v hat und nen
>anderen versorger mit 5v.
Meinst du damit den Fall, daß man eine 5V Umgebung (ATMega@5V, IDE Bus
etc.) an einen FPGA schalten möchte der nur 3.3V hat?
Also das in diesem Fall die Eingänge des FPGA mit Widerständen
abgesichert werden um sie durch die 5V nicht zu überlasten?

Ich dachte das z.b. die FPGAs und CPLDs von Xilinx 5V-Tollerant sind
und man daher soetwas nicht bräuchte... oder sollte man sie in solch
einem Fall trotzdem einbauen? (Wodurch ja der Widerstand erhöht wird
und die Leitung anfäller wird fürs Übersprechen)

von Christoph Kessler (Gast)


Lesenswert?

Hallo
In der Firma haben wir einen Original "Byte-Blaster" von Altera, mit
dem Interface im DSub-Steckergehäuse, das habe ich mal genauer
angeschaut (drei verschiedene Versionen gibts mindestens, die sich
minimal unterscheiden).
Da das Original auch für 1,8V geeignet sein soll, ist die ganze
Schaltung mit diskreten Transistoren aufgebaut. Es gibt anscheinend
keine geeignete Logikfamilie, die alles von 1,8 bis 5V umfasst. Ein
Komparator ist das einzige IC auf der dicht doppelseitig bestückten
Platine.
Die älteren Schaltpläne von Altera sind immer mit 74xx244 aufgebaut.
Immerhin wird diese Schaltung noch veröffentlicht, andere Firmen machen
ein großes Geheimnis um ihre ISP-Interfaces.
73
Christoph

von Thomas Pototschnig (Gast)


Angehängte Dateien:

Lesenswert?

Ich hab bei meinem letzten Design einen Spartan-III verwendet, der nur
2,5V JTAG-Signale akzeptiert. Mein Platform-Flash ist 5V tolerant, die
restlichen JTAG-Signale leider nicht. Ich wusste nicht genau wie ich
das am sichersten lösen sollte und so hab ich dann einen 74LVC14
(5V-Tolerant, auf 2,5V betrieben) verwendet. Da ist dann noch dazu
gekommen, dass ich nicht gewusst habe, ob mein Programmer 2,5V Pegel
überhaupt richtig erkennt. Außerdem kann der Pegel vom TDO von 3,3V auf
5V umgeschalten werden, falls notwendig.

Im Anhang hab ich den kleinen Teil des Pegelwandlers gepostet.
TMS, TCK und TDO kommen direct von JTAG. FTMS, FTCK und FTDO gehen zum
FPGA. TDI geht direkt zum Platform-Flash und musste bei mir nicht
Pegelgewandelt werden (5V-Tolerant). Vom Platformflash -> FPGA über
einen 56Ohm Widerstand.

Vermutlich geht's auch noch viel viel einfacher, aber es musste bei
mir gaaanz sicher funktionieren.

Vielleicht hilft's ja den einenen oder anderen.

Mfg
Thomas

von MockUp (Gast)


Lesenswert?

Hy also meines wissens sind die fpga´s bloß 3,5v tollerant.
sprich wenn du was von einer 5v quelle an den fpga schickst, solltest
du einen widerstand zur strombegrenzung einbauen.
andersrum von der 3,3v zur 5 volt brauchst du nichts, da der
empfänger(5v) die 3,3 normal als high signal ansieht und erkennt.
wie du schon sagtest netbandit:

>Meinst du damit den Fall, daß man eine 5V Umgebung (ATMega@5V, IDE
Bus
>etc.) an einen FPGA schalten möchte der nur 3.3V hat?
>Also das in diesem Fall die Eingänge des FPGA mit Widerständen
>abgesichert werden um sie durch die 5V nicht zu überlasten?

meines erachtens sind die cpld´s 5v fähig, die fpga´s aber nicht.

mfg
mockup

von Netbandit (Gast)


Lesenswert?

Ach so, dann habe ich das verwechselt.

Ich bin gerade dabei mich etwas in die Materie einzuarbeiten und
beschäftige mich vorwiegend mit CPLDs und die können das ja. Ich bin
einfach davon ausgegangen, daß die FPGAs das auch machen :)

Also dann danke ich dir :)

von MockUp (Gast)


Lesenswert?

@ netbandit
hab grad ma ins datenblatt des spartan 3 fpga´s geschaut und da steht
das der ne eingangs spannung von 1,14 - 3,45 als high erkennt.

bitte
mfg
mockup

von Netbandit (Gast)


Lesenswert?

danke dir, dann sind ja alle Fragen geklärt :)

von Thomas Pototschnig (Gast)


Lesenswert?

>hab grad ma ins datenblatt des spartan 3 fpga´s geschaut und da steht
>das der ne eingangs spannung von 1,14 - 3,45 als high erkennt.

Da steht aber noch mehr: Vaux = 2,5V wird für JTAG gebraucht und die
JTAG-Eingangspins sind nicht mal 3,3V tolerant! Irgendwas muss man also
machen und die einfachste Form sind Serienwiderstände. Die braucht man
aber dringend.

von Thomas Pototschnig (Gast)


Lesenswert?

vergessen:
abo

von Thorsten (Gast)


Lesenswert?

Hallo,

hier ist das mit der `5 Volt kompatibilitaet' nochmal fuer die Spartan
IIIE (meiste ist uebertragbar auf andere) beschrieben, mit
Berechnungbeispiel fuer die Serienwiderstaende und den
Parallelwiderstand (!) an der Spannungsquelle.

http://www.xilinx.com/products/spartan3e/sp3e_power.pdf
Ab Seite 63 steht dazu was.

Gruss

Thorsten

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.