Xilinx USB-JTAG-Adapter
Xilinx USB-JTAG-Adapter
Dies ist ein Nachbau des Xilinx Platform Cable USB I (DLC9). Er besitzt einen fast gleichen Schaltplan (ausgenommen die Spannungsversorgung) wie das Original und ist somit zu 100% kompatibel.
Bestückte Platine
Fertiger JTAG-Adapter in einem Reichelt Gehäuse
Schaltpläne
Pinbelegung des Programmiersteckers
Pin | Signal | Pin | Signal |
---|---|---|---|
1 | GND | 2 | VREF |
3 | GND | 4 | TMS |
5 | GND | 6 | TCK |
7 | GND | 8 | TDO |
9 | GND | 10 | TDI |
11 | GND | 12 | NC * |
13 | GND | 14 | NC * |
Pin | Signal | Pin | Signal |
---|---|---|---|
1 | GND | 2 | VREF |
3 | GND | 4 | PROG |
5 | GND | 6 | CCLK |
7 | GND | 8 | DONE |
9 | GND | 10 | DIN |
11 | GND | 12 | NC * |
13 | GND | 14 | INIT |
* Not Connected / Nicht Angeschlossen
Bestückungsplan
Menge | Bauteil | Wert | Größe |
---|---|---|---|
1 | R32 | 10 | SMD2010 |
4 | R34, R37, R40, R43 | 30 | SMD0805 |
1 | R15 | 270 | SMD0805 |
1 | R14 | 360 | SMD0805 |
4 | R27, R28, R29, R55 | 2,2K | SMD0805 |
23 | R1-R12, R26, R30, R31, R47, R48, R53, R54, R58, R59, R64, R65 | 10K | SMD0805 |
1 | R46 | 15K | SMD0805 |
13 | R13, R16, R33, R35, R36, R38, R39, R41, R42, R50, R56, R57, R63 | 20K | SMD0805 |
1 | R62 | 47,5K oder 200K** | SMD0805 |
1 | R61 | 64,9K oder 270K** | SMD0805 |
2 | R45, R52 | 100K | SMD0805 |
2 | R44, R51 | 300K | SMD0805 |
2 | R49, R60 | 1M | SMD0805 |
2 | R17, R18 | 0 * | SMD0805 |
* Bestückung je nach verwendeten EEPROM (Siehe Schaltplan Seite 2)
** Könnte auch verwendet werden, da es das gleiche Teilerverhältnis ergibt, aber besser beschafbar
Menge | Bauteil | Wert | Größe |
---|---|---|---|
2 | C1, C2 | 11p | SMD0805 |
1 | C25 | 10n | SMD0805 |
22 | C3, C6-C24, C30, C31 | 100n | SMD0603 |
3 | C26, C27, C29 | 1µ | CPOL-EUB |
2 | C4, C28 | 4,7µ | CPOL-EUB |
1 | C5 | 10µ | CPOL-EUB |
Menge | Bauteil | Wert | Größe |
---|---|---|---|
1 | IC1 | CY7C68013A | QFP100 |
1 | IC2 | XC2C256 | VQFP100 |
1 | IC3 | 24LCxxSN | SO08 |
1 | IC4 | DS2411P * | TSOC6 |
1 | IC14 | DS2411R * | SOT23 |
4 | IC5-IC8 | NC7SZ125 | SC70-5 |
1 | IC9 | LT1719S6 | SOT23-6 |
1 | IC10 | LM393D | SO08 |
1 | IC11 | NC7SZ66 | SC70-5/SOT23-5L |
1 | IC12 | TPS71718DCK | SC70-5L |
1 | IC13 | MCP1825S-33 oder MIC2920A-3.3V | SOT223 |
* Je nach Verfügbarkeit bestücken. Falls bestückt können mehrere JTAG-Kabel gleichzeitig benutzt werden.
Menge | Bauteil | Wert | Größe |
---|---|---|---|
1 | D1 | 1SMA5915BT3G | SMB |
2 | D2, D3 | BAT54 | SOD323-W |
1 | D4, D5 | DUO-LED * | DUOLED5MM |
1 | LED1 | rot * | SMD0805 |
1 | LED2 | grün * | SMD0805 |
1 | Q1 | Quarz 24MHz | HC49U-V |
2 | Q2, Q4 | BSS138 | SOT23 |
1 | Q3 | BC856BSMD | SOT23 |
1 | SV1, SV2 | abgewinkelter 2x7 Pinheader ** | ML14L |
1 | JP3 | Pinheader 1x2 | JP1Q |
1 | X1 | USB-Buchse Type-B | LUMBERG241103 |
* Je nach verwendetem Gehäuse LED1 und LED2 oder D4 oder D5 bestücken
** Je nach verwendetem Gehäuse SV1 oder SV2 bestücken
Layout
Nachbau Version 1.04
Diese Version wurde auch in der Sammelbestellung angeboten.
Datei:Xilinx-USB-Kabel V1 04.zip
Originales Layout
Bilder des Originals
Programmierung
Das für die Programmierung notwendige Programm kann von hier herrunter geladen werden: http://www.mikrocontroller.net/topic/168006#1610155
- Jumper JP3 darf nicht gesteckt sein
- USB-JTAG-Adapter an den USB-Port anstecken (vorher mit einem stabilisierten 5V Netzeteil überprüfen, dass auch keine Kurzschlüsse vorhanden sind). Ansonsten könnte der USB-Port kaputt gehen. Also Achtung!!!
- Den in dem Archiv befindlichen Treiber installieren
- Danach sollte im Gerätemanager, unter USB-Controller, der Eintrag Cypress USB Generic Driver vorhanden sein
- Jumper JP3 wieder drauf stecken (ansonsten kann der EEPROM nicht beschrieben werden)
- Das im Archiv befindliche Programm FxEEPROM.exe starten
- Je nach verwendetem EEPROM, entweder Program Small EEPROM oder Program Large EEPROM verwenden
- Die Datei xilinx_xup.iic auswählen, die im Archiv enthalten ist
- Nach der Programmierung das Kabel aus dem USB-Port ziehen und wieder hinein stecken. Der Adapter sollte nun als Xilinx USB-JTAG-Adapter erkannt werden.
- Die Treiber von Xilinx installieren. Meiner Meinung nach 2 Stück. Der erste Treiber ist für den Bootloader der Firmware und der zweite ist der eigentliche Treiber für das Kabel.
- Impact starten
- Impact sollte nun erkennen, dass die Firmware auf dem Adapter aktualisiert werden muss (Es ist ja auch noch keine Firmware im CPLD ;-) ). Hat Impact fälschlicherweise eine Firmware erkannt, muss wie unter Probleme vorgegangen werden.
- Firmware aktualisieren
- freuen
- Die Steckbrücke JP3 muss für die korrekte Funktion gesteckt bleiben!!!
Sammelbestellung
Sammelbestellung abgeschlossen. Es sind noch Leiterplatten vorhanden.
Wer eine davon haben möchte, kann sich per PN bei dem User MockUp melden.
Bei genug Interessenten wäre es Möglich eine Zweite Sammelbestellung zu organisieren. Ich mach hier einfach mal ne Liste. Interessenten könnten sich mit der Anzahl an Strichen hinzufügen.
Interessenten:
borism |, nicmic |, klubi |, mcfloppy |, Rasieel, xgcfx |
Probleme
CPLD wurde nicht richtig programmiert
1. Open a DOS shell and set the environment variable by entering: SET XIL_IMPACT_ENV_USB2_FORCE_CPLD_UPDATE=TRUE
2. Start iMPACT by entering impact in the DOS shell.
3. Select Xilinx USB Cable from the Cable Communication Setup dialog box and wait for the update to be completed.
4. Exit iMPACT.
5. Clear the environment variable in the DOS shell by entering: SET XIL_IMPACT_ENV_USB2_FORCE_CPLD_UPDATE=
Impact guckt wohl nur ob die ausgelesene ID größer der ID des PLD Files ist und möchte dann nicht upgraden.
Programmieradapter unter Linux
Für die Linuxbenutzer ist hier eine Anleitung zum Einrichten und installieren von ISE und dem USB-Kabel zu finden.
http://george-smart.co.uk/wiki/Xilinx_JTAG_Linux
Änderungen
14.Januar 2010
- EEPROM geändert, dass auch größere verwendet werden können
- Platinengröße auf 51x100mm geändert, damit es in das Reicheltgehäuse passt USB-Buchse sowie ISP-Stecker kuckt etwas herraus
16.Januar 2010
- EEPROM Jumper durch Widerstände ersetzt
- R44 und R51 auf 300k vereinfacht
- R45 und R52 auf 100k vereinfacht
- R27 und R55 auf 2,2k vereinfacht
- R61 auf 270k verändert
- R62 auf 200k verändert
- C4 auf 4,7µF verändert
23.Januar 2010
- Fehler im Schaltplan bereinigt
- Signal INIT_INT und INIT_B_INT am CPLD getauscht
25.Januar 2010
- Breite auf 51mm geändert
- Länge auf 109mm geändert, von USB-Buchse bis JTAG-Stecker 113mm lang für 110mm langes Gehäuse
- Bei verwendung des Reicheltgehäuses mit 100mm kann die Platine gekürtzt werden. Dazu einfach bis zur Massefläche absägen/feilen. Deshalb auch die LED und der ISP-Stecker 2mal. Die USB-Buchse sollte dann Plan abschließen und der JTAG-Stecker schaut dann 1,5-2mm herraus.
02.Februar 2010
- kleine Änderungen im Layout
- Vergrößerung der Namen der Bauteile im Bestückungslayer. Diese waren zu klein.
26.Februar 2010
- Artikel erstellt