Hallo, ich habe als Lernprojekt ein kleines FPGA Board entworfen. Heute habe ich es endlich soweit bestückt, dass das FPGA läuft, von VIVADO gesehen wird und auch vom Flash bootet. Noch nicht bestückt sind die PMODs, der DAC und der ADC weil ich noch auf Teile warte. Schaltung und Layout sind im Anhang, ich musste beim Bestücken nichts ändern oder fixen bisher. Edit: Ja, ich hatte die Platine im Schraubstock und habe dann mit Heißluft draufgebraten. Sie hat sich natürlich ausgedehnt und eine weitere freie Dimension dazu verwendet und ist jetzt entsprechend gewellt/gebogen.
:
Bearbeitet durch User
Super Arbeit ich hoffe das dass Ding auch mit der restlichen Peripherie läuft. Ich selber habe kein Interesse an den Board, aber gutes gelingen zu deinem Werke wünsch ich dir trotzdem.
So langsam muss ich mich auch mal an BGA trauen. Haste den FPGA direkt auf die Goldkontakte geföhnt ohne vorherige Verzinnung?
Was für ADCs DACs kommen denn drauf (.sch Dateien kann ich nicht ansehen)
Saubere Arbeit, gefällt mir sehr gut! Welche Lizenz hat das Board? :-)
:
Bearbeitet durch User
Tippgeber schrieb: > [...] zu deinem Werke wünsch ich dir trotzdem. Vielen Dank! Mw E. schrieb: > Haste den FPGA direkt auf die Goldkontakte geföhnt ohne vorherige > Verzinnung? Direkt drauf gesetzt. Ich habe einen Stencil und hatte da auch versucht Paste aufzutragen, aber immer wenn ich den Stencil dann wegnehme verwischt die Paste. Klar das Lot in der Paste zieht sich dann beim Löten zusammen aber ich hab es dann ohne Paste gemacht. Ich hatte aber eine ganz dünne Schicht Flussmittel aufgetragen. Martin O. schrieb: > Was für ADCs DACs kommen denn drauf (.sch Dateien kann ich nicht > ansehen) .sch ist Eagle. Mir ging es eigentlich darum Dinge zu probieren die ich noch nie gemacht hatte. Hier das BGA und die Beschaltung vom FPGA und der DCDC Regler. Damit das dann auch einen Nutzen hat habe ich noch DAC und ADC draufgepackt. Der DAC hatte ich schon mehrmals so verbaut. Das wird der DAC8581IPW und dadran dann ein OPA551UA. Damit kann ich dann Signale von -12.5 V bis +12.5 V erzeugen um die Beschaltung vom ADC zu testen. Als ADC ist natürlich der XADC vom FPGA dabei, der wird so beschaltet, dass er eben von -12.5 V bis +12.5 V geht. Und es kommt ein AD9650 mit 25 MHz drauf. Der hat zwei Kanäle und 16 Bits. Wenn das alles funktioniert werde ich vermutlich ein Platine für Radioaktivitätsmessungen bauen die dann zwei AD9650 bekommt, aber dafür keinen DAC und keine PMODs. Vielleicht werde ich auch mal sowas wie ein USB Oszi basteln und da einen schnellen ADC hinsetzen, wer weiß ... das wird jedenfalls so eine Art Grundplattform für kommende Projekte. Mampf F. schrieb: > Saubere Arbeit, gefällt mir sehr gut! Vielen Dank! > Welche Lizenz hat das Board? :-) Braucht es eine? Also meinetwegen darf das Jeder nachbasteln, modifizieren und kopieren. Für mich ist das ein reines Lernprojekt. Und falls ich nach dem Referendariat doch nicht Lehrer werden will ist das etwas was ich bei Bewerbungsgesprächen herzeigen kann. Edit: Kritik ist natürlich auch sehr willkommen. Nur weil es funktioniert habe ich vermutlich noch lange nicht alles so gemacht wie man es machen sollte.
:
Bearbeitet durch User
Gustl B. schrieb: > Martin O. schrieb: >> Was für ADCs DACs kommen denn drauf (.sch Dateien kann ich nicht >> ansehen) > > .sch ist Eagle. Ich war jetzt mal so frei und habe das Projekt in KiCad importiert. Das Board sieht auch richtig gut aus (und vor allem kann ich die vier Lagen bearbeiten, in Eagle kann ich es nicht ;-). Beim Schaltplan scheint auf den ersten Blick alles da zu sein, aber er wirkt etwas durcheinander. War das bei Eagle auch nur eine Seite? Ich habe mal ein PDF erzeugt und angehängt. Ihr müsst das PDF ordentlich aufzoomen, um was erkennen zu können. Bitte bitte bitte keinen Eagle vs KiCad Thread draus machen. Will nur wissen, ob KiCads Eagle Importer den Schaltplan halbwegs sauber importiert hat. Tolles Projekt übrigens...
Wow, der Importer ist richtig gut! Genau so sieht der Schaltplan auch in Eagle aus. Ich weiß, das gefällt nicht Jedem, aber ich mag das so alles auf einer Seite, ihr dürft das gerne für euch anpassen.
2⁵ schrieb: > Ihr müsst das PDF ordentlich aufzoomen, um was erkennen zu können. Hm Mist. Scheint so, dass KiCad doch als PDF nur ein Bitmap exportiert und keine Vektordarstellung. Wird unscharf bei hohen Zoomstufen. Genau genommen exportiert KiCad kein PDF sondern man lässt ins PDF drucken.
Sogar die Anordnung ist im Eagle genau so. Im Anhang einmal klein und einmal als 300 Dpi Bild, also alles gut lesbar, aber eben auch groß.
2⁵ schrieb: > Hm Mist. Scheint so, dass KiCad doch als PDF nur ein Bitmap exportiert > und keine Vektordarstellung. Sorry, mein Fehler. Scheinen doch Vektoren zu sein (zumindest wird das Bild so aufgebaut). Aber warum zeigt mir dann Firefox bei 1000% nur einen unscharfen Text an? In KiCad selbst ist der Schaltplan vernünftig zu lesen. Will jetzt den Thread nicht weiter kapern.
Naja, vielleicht exportiert KiCad das nicht als Vector-PDF sondern als Pixel. Der Adobe Reader zeigt zwar sowas wie Vektoren an, aber es sieht auch seltsam kaputt aus. 2⁵ schrieb: > Will jetzt den Thread nicht weiter kapern. Kein Problem! Ich werde vielleicht nach KiCad wechseln wenn meine Education-Lizenz für Eagle ausläuft.
Es scheint schon der Druck-Export gewesen zu sein. Exportiert man in KiCad den Schaltplan mittel "Plotten", dann ist auch das PDF brauchbar bzw. lesbar. Aber jetzt wirklich der letzte Post zu diesem Thema. Interessant finde ich ja, dass du den Spartan so einfach mit dem Heißluftfön und ohne Lötpaste da draufgebacken hast. Hast du von unten und oben erhitzt und wie hast du ihn ausgerichtet? Konntest Du schon testen, ob alle Pads Kontakt haben?
2⁵ schrieb: > Konntest Du schon > testen, ob alle Pads Kontakt haben? Ne, aber da der FPGA beim Löten gleichmäßig abgesackt ist sollte alles passen. Ausrichten war eher nach Gefühl. Da ist ja um die Pads der Lötstopplack, sprich wenn der richtig sitzt, dann sitzen die Bälle in kleinen Vertiefungen die man spüren kann wenn, wenn man das FPGA hin und her schiebt. Erhitzt habe ich mit einem normalen Heißluftfön mit großer Öffnung. Zuerst das Board ohne FPGA bis es schön heiß war, dann FPGA drauf und nochmal warm machen bis das FPGA abgesackt ist. Ich habe in der zweiten Phase nur senkrecht von oben mittig auf das FPGA gefönt.
Nettes Projekt, mit so was liebäugle ich auch schon seit einiger Zeit. Eine Frage hätte ich aber auch noch: Wie ich sehe nutzt du einen FTDI Chip als Programmer, geht dass so Out of the Box oder muss man da im Flash vom FTDI noch zusätzlich irgendwas hinterlegen damit Vivado den erkennt (abgesehen natürlich dass man den Chip eh als JTAG konfigurieren muss)
Ja :-D Siehe Beitrag "FT2232H JTAG clonen?" . Und nein, das poste ich aus rechtlichen Gründen nicht. Aber es ist machbar. Sogar sehr einfach. Man braucht aber einen original Programmer (ich habe einen XMOD von Trenz) den man auslesen kann. Warnung: Wenn man das mit FT_Prog macht kann man auch den originalen Programmer "löschen".
Mist, ich hatte gehofft dass die Config irgendwo im Internet kursiert. Ich hab hier leider nur einen DLC9G zu Verfügung, da steckt aber wimre irgend ein Teil von Cypress drin + ein nicht beschrifteter CPLD oÄ. So ein FT2232 ist da natürlich zum spielen besser. Trotzdem Danke
Also den FT2232H von nem ZYBO aulesen ginge auch? Supi. Ist jetzt die Frage ob Trenz ne Vertrag mit Xilinx hat oder nicht, aber die bieten ihren FT2232H Programmer als normal JTAG an und als Xilinx kompatibel: https://shop.trenz-electronic.de/de/TE0790-02L-XMOD-FTDI-JTAG-Adapter-nicht-kompatibel-mit-Xilinx-Tools?c=247 https://shop.trenz-electronic.de/de/TE0790-02-XMOD-FTDI-JTAG-Adapter-Xilinx-kompatibel Ist die Frage ob der Aufpreis Lizenzgebühren sind oder weil das Teil wer umflashen muss.
Vermutlich geht das, ja. Und ja das sind wohl Lizenzgebühren.
So, fertig bestückt mit kleinen Änderungen. Fazit: Ich bin zufrieden. Den ADC kann ich schön über SPI einstellen. Mit dem interleaved Output hätte ich deutlich IOs eingespart, wird auf der nächsten Platine gemacht. Ausserdem kommt ein schnellerer DAC drauf. Im Anhang ein 10 MHz Sinus gemessen mit dem AD9650@25MSamples/s. Der sehr saubere Sinus stammt aus einem TSW2110EVM.
Gustl B. schrieb: > Vermutlich geht das, ja. Und ja das sind wohl Lizenzgebühren. Lizenzgebühren für eine simple Flash-Konfiguration?? Also gut, wie auch immer - aber abgesehen vom rechtlich hypersauberen Weg gibt es auch einfach den OpenSource-Weg per xc3sprog, allerdings weiss ich nicht, wie weit der Spartan7-Support dafür gediehen ist. Gefällt mir aber deutlich besser, "make download" zu tippen als die Programmer-GUI zu starten, insbesondere wenn ich dabei einige Schritte des Bauens (danke Make) sparen kann.
OK, mit xc3sprog habe ich noch nie was gemacht. Geht das auch mit dem FT2232H JTAG? Für mich war meine Lösung die einige Möglichkeit ausser eben einen teuren JTAG Adapter zu kaufen. Kann man mit dem xc3sprog auch das PROM beschreiben? Edit: Mein Flash S25FL ist nicht als supported gelistet.
:
Bearbeitet durch User
Beitrag #5607454 wurde vom Autor gelöscht.
Schönes Projekt :) Ich hatte zeitlich parallel zu deinem auch ein FPGA-BGA Layout erstellt, Platinen fertigen lassen und mittlerweile bestückt. Bei mir ist es ein Altera/Intel Cyclone 10 LP im UFBGA256 (0,8mm Pitch). Ich glaube der Spartan ist ein bisserl größer (und mit größerem Pitch), wenn ich das richtig gesehen habe. Mit den BGAs hatte ich so meine Probleme - zwei Platinen hab ich aber auf das jeweils erste mal hinbekommen, aber so diesen typischen Einschwimm-Effekt, von dem man oft liest, konnte ich nicht beobachten. Da deine Erfahrungen quasi frisch sind, wollte ich dich folgendes Fragen: Wie viel Flussmittel hattest du auf die Platine geschmiert? Konntest du das Einschwimmen beobachten? Hast du die Platine von unten beheizt? Falls ja, mit was? Vielen Dank! Mampf
Habe deine Platine ebenfalls gesehen :-) Mampf F. schrieb: > Bei mir ist es ein Altera/Intel Cyclone 10 LP im UFBGA256 (0,8mm Pitch). Das war mir etwas zu fein. Wenn ich bei 1mm die Pads etwas kleiner mache, würde ich zwei Bahnen zwischen je zwei Vias durchbekommen. Habe ich aber noch nicht gemacht. Mampf F. schrieb: > Ich glaube der Spartan ist ein bisserl größer (und mit größerem Pitch), > wenn ich das richtig gesehen habe. 15mm x 15mm hat aber auch weniger IOs. Mampf F. schrieb: > Wie viel Flussmittel hattest du auf die Platine geschmiert? Fast keines. Also dünn drauf und dann mit einer Plastikkarte abgezogen. > Konntest du das Einschwimmen beobachten? Nein. Nur, dass das FPGA etwas abgesunken ist. > Hast du die Platine von unten beheizt? Falls ja, mit was? Nein. Habe aber zuerst lange aus größerer Entfernung warm gemacht und bin dann langsam näher ran.
Gustl B. schrieb: > Mampf F. schrieb: >> Wie viel Flussmittel hattest du auf die Platine geschmiert? > > Fast keines. Also dünn drauf und dann mit einer Plastikkarte abgezogen. Auch eine gute Idee :) Hab einen Klecks in die Mitte der Pads und dann mit einem Q-Tip verstrichen. Gustl B. schrieb: >> Konntest du das Einschwimmen beobachten? > > Nein. Nur, dass das FPGA etwas abgesunken ist. Okay, dann wirklich nicht so wie bei den QFNs, die ja richtig schwimmen. >> Hast du die Platine von unten beheizt? Falls ja, mit was? > > Nein. Habe aber zuerst lange aus größerer Entfernung warm gemacht und > bin dann langsam näher ran. Hatte da ziemliche Probleme ... Hab so eine China-Heißluft für 50EUR und musste da mit 350°C von oben drauf brutzeln und das einige Minuten lang ... Ich hab allerdings keine Ahnung, wie heißt die Luft wirklich ist, die da rauskommt. So einen Platinenheizer würde ich mir aber wünschen - glaub das könnte das etwas vereinfachen.
:
Bearbeitet durch User
Mampf F. schrieb: > Okay, dann wirklich nicht so wie bei den QFNs, die ja richtig schwimmen. Mit viel Flussmittel schwimmt das, bei mir schwimmen auch die nicht. Als Fön zum Löten verwende ich einen alten Steinel HL1800E ohne den feinen Aufsatz. Habe also ca. 2,3 cm Düsendurchmesser.
Mein Spartan-7 Projekt ist jetzt auch langsam so weit, dass ich mit der Hardware anfangen kann - da ist deins natürlich eine große Inspiration! Dazu würden mich noch ein paar Sachen interessieren: Hast du eigentlich auch indirekt SPI programming verwendet? Im Schaltplan sehe ich einen SPI-Flash am FPGA hängend, der im Quad-Modus angebunden ist. Kannst du den auch über Vivado flashen? Ist das egal, wo das Flash hängt oder gibt es dedizierte Pins für den indirect programming mode? :) VG Mampf
:
Bearbeitet durch User
Gustl B. schrieb: > Edit: > Mein Flash S25FL ist nicht als supported gelistet. Das hängt wohl daran, dass xc3sprog keinen indirekten Flashing-Modus kann. Auf meinem Arty S7 hab ich mit den encryption-Settings mein Flash unbrauchbar gemacht. Scheinbar wird im Flash für den indirekten Flash-Modus irgendwas eingebettet, mit dem zunächst das FPGA geladen wird, damit über das FPGA der Flash beschrieben werden kann und wenn man die eFuses programmiert, bevor ein verschlüsselter Bitstream im Flash ist, kann das nicht mehr beschrieben werden. "First, the FPGA is programmed with a circuit that can program flash devices, and then data is transferred to the flash device via the FPGA circuit (this complexity is hidden from the user by the Xilinx tools). This is called indirect programming." (Arty S7 Manual) Früher gab es das meines Wissens nicht und da hingen die Platform-Flashs einfach auf der anderen Seite. (Direkt an JTAG glaub ich sogar). Funktioniert das heute nicht mehr?
:
Bearbeitet durch User
Moin! Also der Flash hängt am FPGA und der/das FPGA über einen FT2232H am USB. In den FT2232H habe ich die Firmware von einem Digilent USB-JTAG Adapter geklont. Der Digitelt Adapter verwendet nämlich auch den FT2232H. Im Vivado wird das jetzt als USB-JTAG von Digilent erkannt und da sehe ich dann das FPGA und den Flash. Der andere Kanal vom FT2232H ist ein UART. Laut Datenblatt kann man leider mit dem FT2232H nicht gleichzeitig den schnellen synchronen FT245 FIFO verwenden und JTAG machen, das ist eine Einschränkung. Der asynchrone FIFO müsste aber gehen. Das hatte ich bei der Platine aber beides nicht angeschlossen. Für den Flash gibt es feste Pins am FPGA, ich hatte hier ja das .sch irgendwo im Thread ... mal suchen ... warte ... ja genau, bei Bank14 und der Config "Bank" hängt JTAG und Flash. Ich habe da so ziemlich die Minimalbeschaltung verwendet. Die Nachfolgeplatine ist auch schon in Planung, Layout ist fast fertig, ich muss nur noch testen ob mir beim DCDC-Wandler auch für alle drei Ausgänge die gleichen Spulen genügen. Da hatte ich bisher jeweils wie es im Datenblatt steht die Ströme berechnet und unterschiedliche Spulen verbaut, aber in einer Beispielschaltung die auch im Datenblatt steht wird dreimal die gleiche Spule verwendet. Das werde ich auch testen und dann hoffentlich deutlich Platz sparen. Im Anhang ist schonmal ein Layout ... Mampf F. schrieb: > Früher gab es das meines Wissens nicht und da hingen die Platform-Flashs > einfach auf der anderen Seite. (Direkt an JTAG glaub ich sogar). So ist das bei mir. Den indirekten Flashing-Modus verwende ich nicht.
:
Bearbeitet durch User
Gustl B. schrieb: > ich habe als Lernprojekt ein kleines FPGA Board entworfen Poste doch bitte mal die PCB-Files. Mich interessiert das sehr!
Gustl B. schrieb: > Moin! > Also der Flash hängt am FPGA und der/das FPGA über einen FT2232H am USB. > In den FT2232H habe ich die Firmware von einem Digilent USB-JTAG Adapter > geklont. Der Digitelt Adapter verwendet nämlich auch den FT2232H. Im > Vivado wird das jetzt als USB-JTAG von Digilent erkannt und da sehe ich > dann das FPGA und den Flash. Der andere Kanal vom FT2232H ist ein UART. Hmm, das ist bei meinem Arty S7 board genauso ... Vlt kann man das genauso klonen :) > Die Nachfolgeplatine ist auch schon in Planung, Layout ist fast fertig Sehr schick! Sieht echt gut aus. Machst du das nur als Hobby? > Mampf F. schrieb: >> Früher gab es das meines Wissens nicht und da hingen die Platform-Flashs >> einfach auf der anderen Seite. (Direkt an JTAG glaub ich sogar). > > So ist das bei mir. Den indirekten Flashing-Modus verwende ich nicht. Ich glaube da täuscht du dich ... Zumindest bei Version 1 deines Projekts bin ich mir ziemlich sicher, dass du indirekt Flashing verwendest. Ich weiß nicht, ob du das bei der zweiten Version geändert hast - falls ja, dann wäre interessant, was du für ein Flash verwendet hast, um es in die JTAG-Chain einzubinden. Im Anhang ein Bild aus einem PDF für indirect programming. Ist zwar Spartan 3 - dürfte jetzt aber immer noch gleich sein. Früher gab es die XCF0irgendwas Platform-Flashs, die direkt an JTAG in der Chain hingen. Die konnte man dann auch mit xc3sprog beschreiben.
:
Bearbeitet durch User
Mampf F. schrieb: > Hmm, das ist bei meinem Arty S7 board genauso ... Vlt kann man das > genauso klonen :) Hier der Thread dazu. Die Digilent Firmware werde ich nicht hochladen, aber das C Programm kann ich bereitstellen. Mampf F. schrieb: > Sehr schick! Sieht echt gut aus. Machst du das nur als Hobby? Derzeit ja. Ich habe Lehramt studiert und bin gerade im Referendariat. Aber was ich danach mache ist noch ungewiss ... Mampf F. schrieb: > Ich glaube da täuscht du dich ... Zumindest bei Version 1 deines > Projekts bin ich mir ziemlich sicher, dass du indirekt Flashing > verwendest. OK, ne, habe in der zweiten Version nichts geändert. Im Vivado sehe ich am JTAG den Flash und das FPGA, ich kann die getrennt beschreiben. Ja, verstehe, bei mir hängt das Fpash nicht direkt am JTAG.
Gustl B. schrieb: > Mampf F. schrieb: >> Ich glaube da täuscht du dich ... Zumindest bei Version 1 deines >> Projekts bin ich mir ziemlich sicher, dass du indirekt Flashing >> verwendest. > > OK, ne, habe in der zweiten Version nichts geändert. Im Vivado sehe ich > am JTAG den Flash und das FPGA, ich kann die getrennt beschreiben. Ja, > verstehe, bei mir hängt das Fpash nicht direkt am JTAG. Oh, auf digikey kostet zB der XCF32P um die $55! Ja hmm, das ist ja blöd ... Ich hab herausgefunden, wenn man das FPGA so konfiguriert, dass es nur noch encrypted Bitstreams akzeptiert, kann man das per indirect programming nie wieder flashen. :/
OK, naja, vielleicht ist das ein Feature. Ich verwende da so einen anderen Flash Stein, den S25FL128SAGN der hat ein WSON-8 Package. Kostet so um die 2-3€.
Hast du eigentlich rausfinden können, wieviel Strom der VCCAUX benötigt? Vivado meint bei meinem Design irgendwas mit kleiner 100mA ... Ist sowas realistisch? Für mein neues Design hab ich (wie bei meinem anderen Cyclone 10 Projekt) den EN5329QI (1V, 2A) und für VCCAUX den EP5388QI verwendet. Der EP5388QI kann 800mA ... Ist vermutlich weit mehr, als man wirklich braucht. Hmm ... ich weiß gar nicht so recht, wofür man das außer JTAG überhaupt benötigt. (btw: den Footprint für den WSON8-Flash hab ich mir von dir geklaut :-) )
:
Bearbeitet durch User
Man diese Empirons muss ich mir auch mal angucken, die sind ziemlich schick klein. Ist das PCIe? Dafür braucht man glaube ich einen XC*****T FPGA. Ich hatte auch keinen Footprint gefunden. VCCAUX braucht recht wenig nach Datenblatt, ich habe dafür aber keine getrennte Versorgung.
Gustl B. schrieb: > Ist das PCIe? Dafür braucht man glaube ich einen XC*****T FPGA. > Ich hatte auch keinen Footprint gefunden. Ja, aber leider kein richtiges PCIe. Der Artix7 könnte PCIe - ich hab nur den Connector verwendet. Da ist das gleiche FPGA drauf, wie du in deinen Projekten verwendet hast. Hatte meinen FPGA-Core mit dem Arty S7 (auch 50kLE) Board gebaut und jetzt kriegt der Core ein eigenes Board :) Für KiCad hab ich sofort einen hübschen Footprint für den PCIe-Connector gefunden - mit Eagle hab ich seit 5.x nicht mehr gearbeitet und weiß daher nicht, was es alles gibt. Gustl B. schrieb: > Man diese Empirons muss ich mir auch mal angucken, die sind ziemlich > schick klein. Jau, die sind echt nett :)
Mit Footprint meinte ich den Flash. Eagle hat auch PCIe Footprints, aber das bringt mir ohne die schnellen SerDes nichts. Sind das auch 4-Lagen? Welche Signale gehen über den Verbinder? Wo lässt du das fertigen? Welchen Durchmesser haben die Vias? Das sieht verdammt klein aus ...
Gustl B. schrieb: > Mit Footprint meinte ich den Flash. Eagle hat auch PCIe > Footprints, aber > das bringt mir ohne die schnellen SerDes nichts. Aaah ok, ja den hatte ich auch irgendwie nirgends gefunden xD > Sind das auch 4-Lagen? Jup, sind auch 4. > Welche Signale gehen über den Verbinder? Alles mögliche. In dem FPGA läuft ein Cortex-M1. Da geht Peripherie wie 2*SPI raus. Oder auch ein SWD-Interface für das Debugging. Ein paar Ein- und Ausgänge. > Wo lässt du das fertigen? JLCPCB müsste das fertigen können. Ich hatte heute mal den Rechner gefragt und für 10Stück 4-Layer Platinen in 30x30mm (50x50 kostet gleich viel), mit ENIG und Gold-Fingern verlangen sie inklusive Pastenschablone und Versand 42EUR. Unglaublicher Preis. > Welchen Durchmesser haben die Vias? Das sieht verdammt klein aus ... 0,2mm Drill mit 0,4mm Durchmesser. JLCPCB kann das bei Multilayer-Platinen. Die schaffen auch Strukturen unter 0,1mm. Für den Preis schon fast unglaublich.
:
Bearbeitet durch User
Wow das klingt genial. Ich lasse bei Beta Layout fertigen. Poste mal Fotos wenn das da ist, die Qualität interessiert mich doch sehr.
Gustl B. schrieb: > Wow das klingt genial. Ich lasse bei Beta Layout fertigen. Poste > mal > Fotos wenn das da ist, die Qualität interessiert mich doch sehr. Ja in Ordnung, werde ich machen :) Bzgl Vias hatte ich mich leider dann doch getäuscht ... 0,2mm Drill mit 0,45mm Diameter geht. Muss ich noch bisserl nacharbeiten :)
Ich frag mich, ob man so einen Adapter wie im angehängten Bild ebenfalls um-klonen kann. Da braucht man natürlich Glück, dass die JTAG-Signale an den richtigen Pins des FT2232 anliegen ... Mich würde es aber fast wundern, wenn die das nicht schon ebenfalls kopiert hätten und das ein quasi-Standard ist. Ich hab mir so einen mal besorgt und werde das testen. Wäre echt nett, weil das RS232 auch schon drauf ist. Du hattest letztens was von einem C-Programm erzählt, das du mir zur Verfügung stellen könntest. Könntest du mir das bitte zuschicken oder falls du es selbst irgendwo gefunden hast, mir den Link dazu schicken? :-) PS: JLCPCB hat mein Design reviewed und akzeptiert und es ist jetzt in Produktion.
Das sucht aber eben genau nach dem FTDI auf einem Digitent Adapter mit genau der passenden ID. Da müsstest du wohl die ID oder so ändern damit es deinen FT2232H findet, aber ja das schreibt da dann auch die Firmware ins EEPROM. Das EEPROM braucht man dafür glaube ich zwingend. Ich glaube nicht, dass in dem Adapter ein FTDI Stein drinnen ist, die sind nämlich recht teuer. Aber es interessiert mich schon, also zerlege ihn wenn er da ist.
Kleines Update - und sorry, wenn ich dir in deinen Thread spamme. Also von dem FT232 hab ich nun Abstand genommen. Ich hab ein "Dev-Board" dazu gebaut, in das man das Modul stecken kann und dort gibt es einen Standard JTAG-Header und zusätzlich hängt JTAG noch an einem STM32, der an USB hängt. Ich versuche, soweit wie es geht, dann ohne proprietäre Tools auszukommen. Auch den Core, den man für das indirekt Flash Programming benötigt, baue ich dann selbst nochmal nach. In dem FPGA läuft ein Cortex M1 SoC, das Peripherie für den Quad-SPI schon drin hat - da sollte es möglich sein, den Bitstream selbst in da SPI-Flash zu laden. Für die eFUSE-Register braucht man aber leider einen richtigen Xilinx-Programme, weil das über das XSVF-Format nicht unterstützt wird. Platinen-Design wird in ca. 2 Wochen unter MIT Lizenz freigegeben. Mit 30x26mm ist das Modul hübsch klein geworden :)
:
Bearbeitet durch User
Mampf F. schrieb: > Ich versuche, soweit wie es geht, dann ohne proprietäre Tools > auszukommen. Auch den Core, den man für das indirekt Flash Programming > benötigt, baue ich dann selbst nochmal nach. Da kannst Du Eich evtl. bei xc3sprog bedienen. Da müßte ein JTAG-to-Flash-Programmer dabei sein...
Bernd schrieb: > Mampf F. schrieb: >> Ich versuche, soweit wie es geht, dann ohne proprietäre Tools >> auszukommen. Auch den Core, den man für das indirekt Flash Programming >> benötigt, baue ich dann selbst nochmal nach. > Da kannst Du Eich evtl. bei xc3sprog bedienen. Da müßte ein > JTAG-to-Flash-Programmer dabei sein... Jein - der xc3sprog kann nur Xilinx Platform-Flashs, die an JTAG mit dem FPGA hängen. Die sind aber unglaublich teuer. Für einen XC7S50 kostet so ein Flash um die $55. Das SPI-Flash ist ein $3-Teil, das quasi auf der anderen Seite des FPGAs hängt. Beim indirekt Programming wird von Xilinx ein proprietärer Core in das FPGA geladen, um dann das Flash flashen zu können. Sowas werde ich dann nachbauen, weil es anders leider nicht geht. Zudem kommt, dass man das SPI-Flash nicht mehr flashen kann, sobald man die eFUSE-Register gesetzt hat (das ist wirklich so! Es gibt eine offizielle Seite von Xilinx, wo die das bestätigen). Wenn man einen eigenen Core zum Flashen verwendet, dann kann man den encrypten und damit sollte das Beschreiben dann problemlos möglich sein - trotz programmierte eFUSEs.
:
Bearbeitet durch User
Mampf F. schrieb: > Jein - der xc3sprog kann nur Xilinx Platform-Flashs, die an JTAG mit dem > FPGA hängen. Die sind aber unglaublich teuer. Für einen XC7S50 kostet so > ein Flash um die $55. Stimmt so nicht. Ein Kollege und ich haben letztes Jahr mit xc3sprog rumgemacht, man kann sehr wohl auch mindestens einen Spartan6 mit einem Winbond Feld-Wald-Und-Wiesen SPI-Flash bespassen. Wir mussten nur im xc3sprog-Source die Chip-ID des Winbonds eintragen, der Rest lief mit einem billigen Digilent JTAG Adapter und ein paar Cmd-Optionen. Muesste ich nach Ostern mal 'auf Arbeit' nachsehen. Aber es geht definitiv.
Beitrag #5813558 wurde vom Autor gelöscht.
Das sieht tatsächlich ziemlich schick aus. Da würde mich ja der Anwendungsfall interessieren.
-gb- schrieb: > Das sieht tatsächlich ziemlich schick aus. Da würde mich ja der > Anwendungsfall interessieren. Das ist quasi eine Art Secure Crypto Prozessor für die Crypto-Währung IOTA. So ähnlich wie die Crypto-µCs von STM, aber mit Hardware-Beschleunigung für die Algorithmen, die viel von IOTA benötigt werden und wofür es keine ASICs gibt :) Der Cortex-M1 im FPGA ist relativ lahm (trotz 100MHz Clock) und Algorithmen wie Type-Konvertierungen (trinär <-> binär), Hashing (curl-p81, keccak384, troika) und Proof-of-Work (damit werden keine Coins erzeugt) laufen ohne Hardware-Beschleunigung sehr langsam. Außerdem ist auf dem Modul noch ein Secure-Storage für Seeds (quasi die privaten Schlüssel zu den Coins). :) Gibt noch ein "Dev-Board" dazu, mit dem ich dann noch ein paar Sachen testen wollte. Nächster Schritt ist ein Linux SoM auf Basis des ATSAMA5D27, das dann das Modul verwenden soll. Ahja, alles was da entwickelt wird, ist dann quelloffen und unter MIT Lizenz.
:
Bearbeitet durch User
IOTAs habe ich auch noch ein paar bei Bitfinex. Hoffentlich steigen die mal wieder ...
-gb- schrieb: > IOTAs habe ich auch noch ein paar bei Bitfinex. Hoffentlich > steigen die > mal wieder ... Geduld Geduld xD Der nächste Bull-Cycle startet in 2-3 Monaten, in 2 Jahren kannst du dann abkassieren xD
:
Bearbeitet durch User
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.