Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung | |||
jtag:tutorials:start [Mon. 12.03.2018 14:43] – [Aller Anfang ist schwer...] wikiadmin | jtag:tutorials:start [Tue. 13.03.2018 07:26] (aktuell) – wikiadmin | ||
---|---|---|---|
Zeile 81: | Zeile 81: | ||
===== Wie kommuniziere ich nun mit dem Chip? ===== | ===== Wie kommuniziere ich nun mit dem Chip? ===== | ||
+ | |||
+ | == Erstes Etappenziel: | ||
+ | |||
+ | Um schnell einen Erfolg zu erziehlen und auch das ganze Setup zu überprüfen, | ||
+ | |||
+ | == Automatische IDCODE Bereitstellung nach Reset == | ||
+ | |||
+ | Ein JTAG-Controller soll seinen IDCODE nach einem Reset in das Datenregister stellen. Durch geeignete Ansteuerung der Statemachine über den TMS-Pin kann man dieses Register dann zwischen TDI und TDO schalten und die darin befindlichen Bits " | ||
+ | |||
+ | Neben dem Reset nach einschalten kann man aber auch per Hardware oder Software einen Reset durchführen. Hierzu führen manche JTAG-Header einen zusätzlichen Pin, namens '' | ||
+ | |||
+ | Um das Ziel zu erreichen musst Du also nun wissen wie man einen Soft-Reset auslöst, wie man das Datenregister aktiviert und wie man die Daten dann daraus ausliest. Das zeige ich dir nun... | ||
== Grundlegende Kommunikation == | == Grundlegende Kommunikation == | ||
- | Diese ist seriell, sowohl für die Daten als auch für die Befehle. Die Daten werden | + | Diese ist seriell, sowohl für die Daten als auch für die Befehle. Die Daten werden |
+ | |||
+ | Der Aufbau und die Funktion der State-Machine sind wichtig, bedarf aber etwas Erklärung. Kurz gesagt sendet man eine bestimmte Bitfolge | ||
+ | |||
+ | Zur Synchronisation der Zustands- | ||
+ | |||
+ | nach LOW oder umgekehrt, werden bestimmte Zustände übernommen. | ||
Intern liegt zwischen TDI und TDO ein Schieberegister. Die Breite dieses und die Verwendung der darin befindlichen Daten bestimmt der Betriebsmodus des Chips, der über JTAG-Befehle gesteuert wird. | Intern liegt zwischen TDI und TDO ein Schieberegister. Die Breite dieses und die Verwendung der darin befindlichen Daten bestimmt der Betriebsmodus des Chips, der über JTAG-Befehle gesteuert wird. |