Hallo, hat jemand schonmal mit dem usbprogV2.0 oder V3.0 einen XCF01 programmiert ? Ich frag deshalb da der usbprogXSVF-Player ja Instruktionen bis max 64 bytes länge verarbeiten kann. Da ich nicht weiß ob die Erzeugung von XSVF's für den XCF01S nicht vllt längere Instuktionen als 64 Bytes beinhaltet. Könnte man in dem falle irgendwo die max Instruktionslänge einsehen (oder besser begrenzen) ?
danke für die antwort. wie kann man überhaupt die instruktions länge ermitteln ? hängt das auch von der länge der jtag-chain (also wieviele chips in der kette hängen) ab ? oder zählt da nur die max länge eines einzelnen chips (also das die adressierung der chips quasi mit in der instruktion steht) ? werd mal zusehen das ich meinen xcf01s probehalber mal mit dem usbprog programmiere. dann wäre das parallelport-problem zumindest für meine anwendung gelöst. ich habe zwar noch einen funktionierenden old-style parallelport an meinem läppi ... aber es wird die parallelports ja auch nur noch bei ebay- oder gebrauchten läppis geben.
Rene Böllhoff schrieb: > danke für die antwort. > > wie kann man überhaupt die instruktions länge ermitteln ? hängt das auch > von der länge der jtag-chain (also wieviele chips in der kette hängen) > ab ? oder zählt da nur die max länge eines einzelnen chips (also das die > adressierung der chips quasi mit in der instruktion steht) ? Die Länge steht zum Beispiel im BSDL File des Bausteins. Beim XCF01S wäre das folgende Zeile
1 | attribute INSTRUCTION_LENGTH of XCF01S_VO20 : entity is 8; |
Siehe Datei.
vielen dank. also müsste sich demnach der usbprog zur programmierung der xcf01s eignen. prima. danke für den hinweis mit dem bsdl file.
Hi, keine das usbprog-Projekt recht wenig, entsinne mich aber, dass mit der Instruction-Länge nicht die Länge des Intruction-Registers gemeint ist, sondern die Länge einer JTAG-Shift-Operation. Erstell dir mal ein SVF-File und öffne es mit einem Text-Editor; Hier siehst du dann Instruction/Daten-Shifts mit folgender Syntax: //Loading device with 'USER1' instruction. SIR 6 TDI (02) SMASK (3f) ; SDR 8 TDI (05) SMASK (ff) TDO (05) MASK (FF) ; Die Zahl nach SIR/SDR ist die Anzahl an Bits, die zu Shiften sind. Bei den FPGA-SVF-Files, die ich gesehen habe [vor allem Xilinx], waren das immer 1,2,3 Shifts um das FPGA zu initialisieren und dannach das FPGA-Bit-File in einem Shift. Also leicht mehr als 64*8 Bit. Also schau dir einfach mal dein SVF-File an. Also FT2232-Alternative gibts hier einen XSVF-Player: http://embdev.net/topic/139121#new Gruß Andreas
Das nur das Instructionregister gemeint sein soll macht keinen Sinn, schon weil Instructionregister und Dataregister eh gleich angesprochen werden. Also entweder das svf ansehen oder aber in das bsd kucken, die liegen einfach im xilinx Ordner. Dabei gibt es ja nach Chip deutliche Unterschiede. interessant ist immer das Konfigurations-"Register" unter "attribute REGISTER_ACCESS of...." Beispiel für einen 95144 : ISCONFIGURATION[82] hier hast du also kein Problem da nur 82bit benötigt werden. Beispiel für einen Virtex 5 : CFG_DATA[12556672] naja dazu muss ich wohl nicht viel sagen... Fraglich ist nun ob du den auch in mehreren Schritten programmieren kannst und deshalb mit 64kbyte pro Schritt auskommst.
also nach ein wenig nachschauen (unter anderem der tip mit dem svf file welches ja im klartext zu lesen ist) scheint es wohl doch so zu sein das ich mit dem XSVF-Player den XCF01S bzw XCF02S nicht programmieren kann. die einzelnen Programmier-Schritte umfassen bis zu 4096 bit für die SDR-Operation. Ergo -> ein büüschen mehr als 64 Byte :-( Schade. Also weiterhin das Parallelkabel benutzen oder eben nen teuren USB-Programmier-Adapter kaufen :-( falls jemand noch infos hat bin ich dankbar, aber ich glaube nicht das es funktioniert, es sei den xsvf ist grundsätzlich so aufgebaut das die instruktionslänge immer kleiner als 64 byte ist, was allerdings wohl nicht anzunehmen ist.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.