Forum: FPGA, VHDL & Co. JTAG Signale


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von vhtl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich benutze einen Xilinx CPLD und habe die JTAG-Pins direkt an einen 
2x5-Wannenstecker angeschlossen.

Sind die während des Normalbetriebs floatenden JTAG-Pins ein 
Stabilitätsproblem? Wären Pullups/Pulldowns angebracht?

Außerdem habe ich den Xilinx XSVF-Player auf meinen ATmega portiert. 
Wegen Pin-Knappheit sollen mind. zwei Pins, welche mit den JTAG-Pins 
verbunden sind, auch andere Aufgaben übernehmen und an andere Pins 
angeschlossen werden.

Welche der JTAG-Signale lassen sich "deaktivieren"? Wenn ich bspw. TDI 
und TDO doppelt anschließe, wie müssen TCK und TMS geschaltet sein, 
damit (Fremd-)Signale auf TDI und TDO den CPLD nicht beeinflussen?

von Lothar M. (lkmiller) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
vhtl schrieb:
> Wenn ich bspw. TDI und TDO doppelt anschließe
Dieser Ansatz ist doch schon falsch (oder wenigstens nicht vorgesehen). 
Nicht umsonst heißt es "JTAG-Chain"...

: Bearbeitet durch Moderator
von vhtl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ich weiß nicht, ob meine Absicht klar geworden ist. Ich möchte NICHT 
zwei JTAG-ICs anschließen, sondern den CPLD zum Programmieren und bspw. 
eine LED und ein 74er-IC, die angesteuert werden, wenn der CPLD gerade 
NICHT programmiert wird.

von vhtl (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Zur Klarstellung noch eine kleines Schaltung.

Während der Programmierung werden die JTAG-Pins des CPLD angesteuert. 
Den 245 stört das aufgrund der Restschaltung nicht.

Wenn nicht programmiert wird, möchte ich einige der Pins PD1 bis PD4 für 
andere Aufgaben nutzen, ohne den CPLD zu beeinflussen.

Mit welchen Pins geht das am besten? Wie muß ich die restlichen 
JTAG-Pins beschalten?

von Lothar M. (lkmiller) (Moderator) Benutzerseite


Bewertung
1 lesenswert
nicht lesenswert
vhtl schrieb:
> Mit welchen Pins geht das am besten?
Mit anderen... ;-)

Ich würde den TCK statisch lassen, denn der sorgt dafür, dass 
irgendwas passiert: 
https://www.xjtag.com/about-jtag/jtag-a-technical-overview/
Und somit TDI und TMS anderweitig verwenden...

von user (Gast)


Bewertung
1 lesenswert
nicht lesenswert
TDI und TMS kannst du toggeln lassen solange TCK nicht toggelt

von vhtl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank, das meinte ich. Sorry wenn ich so schwer verständlich bin. 
:-)

TDO darf ich offenbar nicht verwenden - weil der nicht hochohmig wird, 
wenn nicht programmiert wird?

von Lothar M. (lkmiller) (Moderator) Benutzerseite


Bewertung
1 lesenswert
nicht lesenswert
vhtl schrieb:
> TDO ... nicht verwenden - weil der nicht hochohmig wird
So ist es.

Du könntest ihn verwenden, wenn du zwischen µC+245 und TDO-Pin einen 2k2 
Widerstand setzen würdest.

: Bearbeitet durch Moderator
von vhtl (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Prima, zwei Pins reichen eigentlich aus. Danke!

von vhtl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ach so, eine Frage ist noch offen:

Müssen die JTAG-Pins (insb. TCK) mit einem Pull-Up/Down Widerstand 
versehen werden, damit sie nicht floaten? Oder sind die fest eingebaut?

In XAPP058 sind Pull-Ups für den JTAG-Stecker eingezeichnet.

von vhtl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Wohl nicht:
"Internal pullup resistors are on TMS and TDI to 3.3V." (XAPP 112)

von Olli Z. (z80freak)


Bewertung
0 lesenswert
nicht lesenswert
vhtl schrieb:
> "Internal pullup resistors are on TMS and TDI to 3.3V." (XAPP 112)

Ist das per Definition so? Ist damit dann auch der Ruhepegel auf HIGH 
definiert?

TDI ist ja eigentlich bei den JTAG-fähigen Chips der Eingang. Ist das 
beim JTAG-Controller auch so? Komischerweise sieht es so aus als wäre 
bei meinem Segger Interface TDI und TDO vertauscht.

von Duke Scarring (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Olli Z. schrieb:
> Ist das per Definition so?
Das ist bei dem Chip so, auf den sich die XAPP bezieht.
Für alles andere würde ich im konkrete Datenblatt suchen.

> Ist damit dann auch der Ruhepegel auf HIGH definiert?
Ist das wichtig? Solange die Spannung nicht um Vcc/2 liegt, sollte der 
genaue Pegel egal sein.

Duke

von Olli Z. (z80freak)


Bewertung
0 lesenswert
nicht lesenswert
Duke Scarring schrieb:
>> Ist damit dann auch der Ruhepegel auf HIGH definiert?
> Ist das wichtig? Solange die Spannung nicht um Vcc/2 liegt, sollte der
> genaue Pegel egal sein.
Vermutlich nicht. Es sind ja eher die Übergänge die zählen.

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]
  • [vhdl]VHDL-Code[/vhdl]
  • [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.