Hallo zusammen,
nach langem habe ich es nun geschaft das ISE zum laufen zu bekommen
(siehe Beitrag "Fehler in ISE Webpack 11.1" ).
Projekt anlegen, Programm in VHDL schreiben/simulieren und syntetisieren
funktioniert nun endlich.
Das Auslesen der ID/Checksum/Signatur/Usercode des CPLDs funktioniert.
Das Device lässt sich löschen (sagt es zumindest).
Aber sobald ich versuche mein Programm auf den CPLD zu brennen meckert
er.
Aus dem Log kann man auch nichts vernünftiges rauslesen:
1
Connecting to cable (Parallel Port - LPT1).
2
Checking cable driver.
3
Driver windrvr6.sys version = 9.2.1.0. WinDriver v9.21 Jungo (c) 1997 - 2008 Build Date: Jul 3 2008 X86 32bit SYS 18:41:51, version = 921.
4
LPT base address = 0378h.
5
ECP base address = 0778h.
6
Cable connection established.
7
PROGRESS_END - End Operation.
8
Elapsed time = 1 sec.
9
Attempting to identify devices in the boundary-scan chain configuration...
10
INFO:iMPACT - Current time: Mi 24. Jun 14:20:22 2009
11
// *** BATCH CMD : Identify
12
PROGRESS_START - Starting Operation.
13
Identifying chain contents...'0': : Manufacturer's ID = Xilinx xc9572, Version : 2
INFO:iMPACT - Current time: Mi 24. Jun 14:20:42 2009
30
// *** BATCH CMD : ReadIdcode -p 1
31
Maximum TCK operating frequency for this device chain: 0.
32
Validating chain...
33
Boundary-scan chain validated successfully.
34
'1': IDCODE is '00101001010100000100000010010011'
35
'1': IDCODE is '29504093' (in hex).
36
'1': : Manufacturer's ID = Xilinx xc9572, Version : 2
37
INFO:iMPACT - Current time: Mi 24. Jun 14:20:50 2009
38
// *** BATCH CMD : Program -p 1 -e -v
39
PROGRESS_START - Starting Operation.
40
Maximum TCK operating frequency for this device chain: 0.
41
Validating chain...
42
Boundary-scan chain validated successfully.
43
'1': Erasing device...
44
'1': Erasure completed successfully.
45
'1': Programming device...
46
'1': Programming terminated due to errors.
47
PROGRESS_END - End Operation.
48
Elapsed time = 7 sec.
Ich habe XP,ISE Webpack 11.1, benutze den XC9572PG44-15 und den
bekannten Parallelprogrammer von Ulrich Radig/Xilinx.
Hatte schon mal jemand ähnliche Probleme?
Was könnte man da machen?
Jemand Ideen?
Gruß Mani
Maximum TCK operating frequency for this device chain: 0.
Das ist schon mal komisch, da klappt die automatische Ermittlung der
max. Frequenz über die BSDL Files nicht richtig. Versuch mal bei Cable
Setup manuell was einzustellen.
Hallo Christian,
>Versuch mal bei Cable Setup manuell was einzustellen.
Leider kann man da nichts einstellen, ansonsten hätte ich da auch mal
die Baudrate etwas heruntergeschraubt :-D
Trotzdem Danke für den Tipp.
Hab mittlerweile noch was gefunden dass es evtl. an der Kabellänge liegt
(kürze dass morgen mal auf 10 cm) bzw. dass man noch irgendwelche
Kondensatoren ändern muss...sobald ich was weis schreib ich es.
Werde es morgen mal testen.
Wenn es jemand schon weis, darf er gerne schreiben :-D
Gruß Mani
Ist der PC und das Zielsystem auf der selben Steckdose?
Steck mal den Programmer aus und miss zwischen dem Masse-Pin am
Programmierstecker und dem Massepin vom Programmieradapter. Sind da
irgendwelche Ausgleichs-Ströme?
Alternative: Steck den Programmer aus un fass an die Masse vom
Zielsystem und an das PC-Gehäuse. Kitzels dann in den Fingern?
> kürzen des Kabels
Welches Kabel?
Das vom Programmer zum PC oder vom Programmer zum Zielsystem?
Welche 74xx hast du verbaut?
Hallo Lothar Miller,
danke erst mal für Deine Antwort.
>Ist der PC und das Zielsystem auf der selben Steckdose?
Nein, das Zielsystem ist Akkubetrieben. Stabile 5V sind auf dem Board
vorhanden. Abblockkondensatoren direkt am CPLD.
>Sind da irgendwelche Ausgleichs-Ströme?
Ja, ca. 100uA fließen von Programmer Masse zu Zielsystem Masse.
Nach abziehen der TTLs geht er runter auf ca. 70uA.
Der Gesammtstrom des Programmers betragt mit TTLs an einer 5V Quelle ca
8mA.
>Welches Kabel?
Als erstes habe ich nur von Programmer zu Zielsystem (JTAG)
gekürzt(15cm).
Mittlerweile aus Verzweiflung auch das LTP, Computer zu
Programmer(30cm).
>Welche 74xx hast du verbaut?
Wie bei Ulrich Radig im Layout 74HC125N.
Mal noch ne andere Frage, könnte es auch am Laptop liegen?
Habe mittlerweile die C's in den Datenleitungen entfernt und noch einen
kleinen Stützkondensator auf dem Programmer eingebaut.
Damit geht er jetzt zumindest bis 3% und bricht erst dann ab.
(Was mich auch nicht wirklich weiter bringt).
Grüße Mani
Hallo Thomas, danke für Deine Antwort.
Mittlerweile glaub ich nicht mehr dass es am Programmer liegt.
Um das Ganze noch etwas zu verkomplizieren:
Ich hab mir gerade mal das Xilinx Platform Cabble USB II ausgeliehen.
Am Anfang konnte ich nichts damit programmieren.
Nach einem Update der ISE konnte ich ein einziges Mal was auf den CPLD
aufspielen, seither erkennt er ihn teilweise garnicht mehr oder er
bringt die Fehlermeldung "There are many unknown devices being
detected".
Ab und zu fängt er wieder an und versucht etwas rüberzuspielen (bricht
dann aber bei 5-6% ab).
Mittlerweile glaub ich eher dass es am ISE Webpack liegt.
Kann ja nicht sein dass man nur einmal nach nem Update was rüberspielen
kann.
Hat schon mal jemand ähnliche Erfahrungen gemacht?
Gruß und danke für eure Geduld.
Mani
Also ich habs eben mal getestet:
ISE Design Suite 11.2 System Edition (Impact ist aber das gleiche wie im
WebPack), ein XC9572XL auf dem Digilent CPLD Starter Board und ein
Platform Cable USB II. Klappt bestens, beliebig oft bespielbar, keine
Abbrüche oder so. Kabel ist das mit den losen Enden, was beim Platform
Cable dabei ist, Länge 10cm. Aber vielleicht stimmt ja an deiner
Hardware was nicht, der XC9572 ohne XL hat ja 5V, da könnte was mit dem
Kabel sein....sehr seltsam.
Danke Christian für Deine Mühen.
Habs gerade mal mit der alten 9.2 Version versucht.
Gleiches Problem.
Beim ersten Start funktioniert der Verbinungsaufbau.
CPLD und Kabel (egal ob Paralell oder USB) wird erkannt.
Programiervorgang wird allerdings nach 5-10% abgebrochen.
Dannach wird oft nur noch der Programieradapter erkannt und nicht mehr
das Device.
Fehlermeldung: "There are many unknown devices being detected"
Mir werden dann ca. 20-30 unbekannte Devices in der Chain angezeigt!?
Vielleicht hat auch der CPLD ne Macke.
Ich schau mir jetzt nochmal die Lötstellen an, prüfe die Kontakte und
wenn das nichts bringt löte ich ihn mal ab und mach nen neuen drauf.
Wer weis...
Grüße Mani
Also wenn so viele "Unknown Devices" sind, klappt die JTAG Verbindung
auf Hardware-Ebene nicht richtig. Wirklich alles korrekt verdrahtet?
Spannung ist auch stabil? Auch während der Programmierung?
>Wirklich alles korrekt verdrahtet?
Jupp, habs gerade nochmal überprüft.
Alle Pins sind gut gelötet (unterm Mikroskop nachgeschaut), keine
elektrischen Kontakte zu benachberten Pins, Masse oder Vcc.
>Spannung ist auch stabil?
Hab gerade auch mal unseren "Super-Hochpräzisen Constanter"
rangehängt...keine Änderung. Spannung ist stabil auch wärend dem
Programmieren.
Als ich aber gerade wieder die 9.2 Version deinstalliert und
anschließend die 11.2 wieder installiert habe konnte ich den CPLD 2 Mal
programmieren.
Nun werden wieder 20-30 Devices angezeigt (selbst mit dem "Cable USB
II").
Ich habe dazwischen nichts bewegt...also wackler oder ähnliches kann es
dann auch fast nicht sein.
Denke ich werd es mal auf einem anderen Rechner versuchen.
Wahrscheinlich liegt es doch an der ISE.
Gruß Mani
Hm...da scheint irgendwas mit dem Programmierfile nicht zu stimmen, wer
weiß, was da bewirkt, wenn es einmal reinprogrammiert ist.
Ich hab übrigens auch gerade einen ImPact Bug....das Menü "Programming
Properties" und "Erase Properties" ist leer. Heute vormittag war dort
noch das übliche einstellbar...Erase before Programming usw.
Komisch.
>Ich hab übrigens auch gerade einen ImPact Bug....das Menü "Programming >Properties" und "Erase Properties" ist leer.
Ja, dass ist bei mir auch ab und zu so.
Mani schrieb:
>>Ich hab übrigens auch gerade einen ImPact Bug....das Menü "Programming>>Properties" und "Erase Properties" ist leer.>> Ja, dass ist bei mir auch ab und zu so.
Hmm...und gibts da irgendwie einen Workaround, oder wie kriegt man das
wieder angezeigt?
Wie gesagt, nach dem 2.Mal geht bei mir nix mehr...auch die Anzeige der
Properties geht nur noch "sporadisch".
Sobald ich aber was in Erfahrung bringe schreib ich es.
Gruß Mani
Ich hab jetzt selbst zumindest einen Workaround für die Programming
Properties gefunden. Wenn man Output auf SVF File stellt, ist das Menü
komplett da. Da kann man alles einstellen, Projekt speichern, und dann
wieder auf JTAG umstellen. Die Einstellungen gelten dann auch für den
direkte Kabel-Output.
>Ich hab jetzt selbst zumindest einen Workaround für die Programming>Properties gefunden.
Danke Christian für Deine Unterstützung.
Danke auch an alle anderen.
Es lag wirklich am CPLD, obwohl er brandneu und nach ESD Richtlinien
eingebaut wurde :-)
Neuer CPLD...und schon funktionierts.
Gruß Mani