Hallo, ich bin gerade dabei ein FPGA Board mit Xilinx Spartan 6 (LX9) zu machen und wollte grundsätzlich mal fragen, ob jemand vielleicht Interesse an so einem Board bzw. auch nur an Platinen hätte!? Die Anforderungen an das Board waren sehr minimal. D.h. es ist hauptsächlich der - Spartan 6 (XC6SLX9), - ein USB Interface zum Programmieren des FPGA und - ein MicroSD Slot (inspiriert durch das von Elektor vorgestellte FPGA Board) vorhanden sein. Die SD Karte soll eben auch benutzt werden können, um ein Bitfile zu laden. Zum USB Interface muss ich noch sagen, dass ich nicht auf den meist üblichen doch eher schwerfälligen Cypress FX2 Highspeed USB Controller setze, sondern auf einen einfachen ATMega32U2. Der Grund dafür ist einfach der, weil ich den FX2 nicht so gerne verwende. Ist zwar sehr schnell, aber einfach auch ein sehr komplexes Teil! Anbei noch ein Bild meines Prototypen, bei dem zumindest schonmal die Konfiguration über USB mit einem Bitfile läuft! Grüße, Andreas
ich weiß es kommt nachher stark auf sie Menge der Boards an, aber was wird denn das Teil ca. kosten?
Der Spartan kostet selbst nur ein zehner, das macht die Sache attraktiv. Wie machst du das mit dem Atmega? Ich kenn nur JTAG + EEPROM.
Kommt auf den Preis und die Entwicklungsumgebung drauf an .. Aber wäre mit einem Stück dabei vorausgesetzt Preis passt und es gibt eine frei verfügbare IDE!
Hallo, schön, wenn Interesse besteht ;-)! @daniel: Die Kosten hab ich noch nicht alle 100%ig zusammen, aber auf jedenfall unter 100 Euro für das aufgebaute Board. Ich hoffe, dass sich ca. 80 Euro ausgehen wird. @nicht billig: Wo gibts den Spartan 6 LX9 um 10 Euro? Ich hab ihn für den Prototypen nur um 17,90 Euro (inkl. Mwst.) bekommen. Der Spartan 6 wird über ein serielles Interface konfiguriert (ist am SPI vom Atmega angeschlossen). Das nennt sich dann Slave Serial Configuration. @d_b F.: Für den Spartan6 gibts von Xilinx eine freie IDE. Für den ATMega32 gibts den AVRGCC + Editor (oder Eclipse) als IDE. Und zum Konfigurieren des FPGA hab ich momentan ein kleines C++ Programm, dass unter Linux in der Console läuft. Als Alternative sind aber auch die JTAG Anschlüsse rausgeführt und man kann mit einem JTAG Programmer den FPGA konfigurieren. Die SD Karte habe ich bis jetzt noch nicht getestet... Achja... vielleicht noch ein Punkt. Der Atmega32 stellt für den FPGA das Clock Signal (8MHz) zur Verfügung, damit die Schaltungen im FPGA auch "geclockt" werden. Aus den 8 MHz kann man mit dem DCM Block im FPGA auch höhere Frequenzen erzeugen (hab zum Testen aus den 8 MHz per DCM 64 MHz gemacht und einen 8bit Counter betrieben und dessen Zustand auf die externen Pins gelegt). mfg, Andreas
Andreas Auer schrieb: > Die Kosten hab ich noch nicht alle 100%ig zusammen, aber auf jedenfall > unter 100 Euro für das aufgebaute Board. Ich hoffe, dass sich ca. 80 > Euro ausgehen wird. Da kriegt man mit Studentenrabatt schon fast n Eval-Board mit nem Spartan 3. Ist da so n grosser Unterschied zum Spartan 6 dass es sich dann lohnen wuerde deine Platine statt eines Eval Boards zu kaufen? Sorry, aber ich kenn mich auf dem FPGA-Markt nicht wirklich aus, darum die Frage. Preis von 50 Euro waer mal richtig interessant!! Gruss
Hi, da hast du wahrscheinlich auch recht! Es gibt auch schon Spartan 6 Boards, die nicht viel mehr kosten. Der Grund warum ich mein Board gebaut habe (und was IMHO auch der Unterschied zu den meisten Eval Boards ist), ist der, dass ich viele I/O Pins nach außen geführt haben wollte und zwar auf Anschlüssen, wo ich auch mal ein Kabel anlöten kann. Deshalb gibts auch kein extra RAM und dergleichen. Das Designziel war ein günstiges FPGA Board mit vielen I/Os, einer einfachen Schnittstelle zum Konfigurieren und keine zusätzliche Peripherie wie RAM oder dergleichen, um das Board nicht zu teuer bzw. zu kompliziert zu machen. Wenn mir jemand noch sagen kann, wo ich den FPGA um 10 Euro statt um 18 Euro herbekomme, dann wären auch schon wieder 8 Euro gespart ;-). Du kannst die Platine auch selbst bestückst, dann bist du natürlich auch nochmal billiger und du kommst wahrscheinlich schon auf die 50 Euro hin. Andreas
Hallo, den kleinsten spartan 6 gibt es für 10 euro. digikey.de/scripts/dksearch/dksus.dll?FV=ffec6186%2Cffec6187%2Cfff40027% 2Cfff80166&k=Spartan&vendor=0&mnonly=0&newproducts=0&ptm=0&fid=0&quantit y=0&PV1291=2492&stock=1 Das mit dem atmega klingt interessant. Mal ne ernste frage, willste an dem projekt was verdienen? Spartan 6 10 bis 20 euro Atmega + spannungsregler + kleinkram 10 euro Sd karte brauch ich nicht Wahrscheinlich brauchst du eine 4 lagige platine.aber so teuer sind die auch nicht. Ich will nicht stänkern, wäre aber an einem ultra low cost nur interessiert. viele grüße
@ nicht billig +19% Mwst und der LX4 ist eben auch deutlich kleiner als der LX9 ;-)
Mein Vorredner (danke @Albert G) hats eh schon gesagt... da kommen noch 19% bzw. für mich hier in Österreich noch 20% Mwst dazu. Dann bist du beim günstigsten LX9 auch bei 16,xx Euro. Und die Bestückung der Platine musst du natürlich auch rechnen. Wenn du es bei 30-50 Stück bei ner Firma machen lässt, dann kannst du mit ca. 50 Euro/Platine rechnen, was dich nur die Bestückung kostet. Und wenn ich es per Hand bestücke, mach ich das auch nicht umsonst (sorry). Deshalb hab ich auch angeboten, dass ich auch gerne nur die Platinen hergebe, und es sich dann jeder selbst bestücken kann. Andreas
nicht billig schrieb: > Ich will nicht stänkern, wäre aber an einem ultra low cost nur > interessiert. Ja, wie die meisten hier. Kratz dir doch aus dem Elektroschrott alle Transistoren die du finden kannst und bau das FPGA selbst auf. Kommt bestimmt günstiger!! Sei froh, das Angebot dass er hier macht ist schon gut genug.
Ich hab mir mal dieses zugelegt: http://shop.ztex.de/product_info.php?products_id=70&language=de (Spartan 6, USB, EEPROM, DDR2, MicroSD-Sockel, < 200€ ) Was macht dein Board besser als dieses? MfG,
Nero Neugier schrieb: > Was macht dein Board besser als dieses? Meins ist nicht so komplex und doch günstiger ;-). Vorallem habe ich eine persönliche Abneigung gegen den FX2. Nicht falsch verstehen... ich find, dass das Teil echt viel kann und wenn man sehr viele Daten zwischen FPGA und PC übertragen muss, dann ist er genau richtig. ABER, durch das, dass er soviel kann und vorallem auch die USB Endpoints voll konfigurierbar sind, wird er eher schwer zu programmieren. Außerdem muss teilweise bestimmter Code am Anfang im Speicher liegen und die USB Deskriptor müssen auch an gerade Adresse anfangen, wenn ich mich noch recht erinnere. Alles Sachen, die eine einfache Programmierung in C etwas erschweren.
Andreas Auer schrieb: > Und die Bestückung der Platine musst du natürlich auch rechnen. Wenn du > es bei 30-50 Stück bei ner Firma machen lässt, dann kannst du mit ca. 50 > Euro/Platine rechnen, was dich nur die Bestückung kostet. > > Und wenn ich es per Hand bestücke, mach ich das auch nicht umsonst > (sorry). Deshalb hab ich auch angeboten, dass ich auch gerne nur die > Platinen hergebe, und es sich dann jeder selbst bestücken kann. Was hat denn der FPGA für ein Gehäuse? Ist das noch 0.5 mm Pitch? Wenn ja wäre ein selber zusammenbauen natürlich schon interessant! Ich kann die Grösse von dem Ding auch nicht wirklich abschätzen - krieg ich da n 32-Bit Softcore rein und wenn ja wie viel Prozent ist dann noch frei?? So ne Platine wäre auf jeden Fall interessant z.B. für einen LED Cube! Gruss
Nero Neugier schrieb: > (Spartan 6, USB, EEPROM, DDR2, MicroSD-Sockel, < 200€ ) Auch nur Netto < 200€... Wie sieht es bei deinem Board denn mit der Stromversorgung aus, Andreas? Habe bis jetzt privat noch nichts mit FPGAs gemacht (nur in der Hochschule), aber folgenen Punkt finde ich bei dem von "Nero Neugier" verlinkten Board schon recht aufwendig: > Externe Stromversorgung erforderlich: > 3,3 V; Versorgungsstrom anwendungsabhängig (siehe Spartan 6-> >Datenblätter), empfohlen: ≥ 800 mA > 2,5 V - 2,6 V: Versorgungsstrom anwendungsabhängig (siehe Spartan 6-> >Datenblätter), empfohlen: ≥ 300 mA > 1,2 V; Versorgungsstrom anwendungsabhängig (siehe Spartan 6-> >Datenblätter),empfohlen: ≥ 2500 mA > Variable I/O-Spannung VCCO_IO: 1,14...3,46 V; Versorgungsstrom >anwendungsabhängig (siehe Spartan 6-Datenblätter), empfohlen: ≥ 500 mA
@Christoph: Das Gehäuse des FPGA ist TQFP144 mit 0.5mm Pitch und war ohne Probleme per Hand zu löten. Ich selbst hab mit den Spartan6 leider auch noch nicht viel gemacht, und kann dir deshalb leider auch nicht genau sagen, wieviel du in den LX9 reinbekommst. Ich hab mir mal einen SHA256 Core für den FPGA angesehen und etwas optimiert. Das Design (ohne Interface nach außen) hat auf dem LX9 ca. 16% benötigt. LED Cube oder auch RGB LED Display wäre sicher eine interessante Anwendung für das Board. @Dominik S.: Versorgt wird das Board bei mir komplett über USB. Es sind 2 Spannungsregler mit jeweils 800mA Ausgangsstrom drauf (einer für 3,3V und einer für 1,2V). Nachdem es "nur" ein LX9 ist, benötigt der auch nicht soviel Strom wie der LX45 auf dem Board von Nero Neugier. Sollte eigentlich für die meisten Designs hinkommmen. Um das zu testen möchte ich auch noch einmal ein größeres Design (z.B. einen Bitcoin Mining Core) synthetisieren und mal ausprobieren, ob das läuft.
Hey Leute.... sorry sollte kein Angriff sein ... Ich glaub es gibt hier einfach Differenzen zwischen den Bastlern und Leuten die ein bisschen mehr Geld haben.... Selber löten kann ich ... das Geld vom Bestücker würde ich mir gerne sparen. Ob es Sinn macht den kleinesten Spartan 6 zu nehmen kann ja auch jeder selbst entscheiden... Ich denke für die meisten reicht der kleine DICKE. Der Kostet 9,33 + 1,19 = ca. 11,2 Wieviel Lagen hat denn die Platine? Wenn sie nur zwei hat, würde ich noch eine billig Version machen... Noch mal sorry, wollte keinen Krieg anzetteln ...
Habe mir gerade mal den Shop angeschaut .... Hier gibt es ein Board Spartan6 XC6SLX9 (der größere) mit Ram und auch alles auf Buchsenleisten rausgeführt. Für 118 Euro butto http://shop.ztex.de/product_info.php?cPath=21&products_id=60
Moin, ich will euch nicht die Laune verderben, aber schaut euch dieses Board mal an: AES-S6MB-LX9-G http://www.em.avnet.com/en-us/design/drc/Pages/Xilinx-Spartan-6-FPGA-LX9-MicroBoard.aspx Mit Speicher + Netzwerk + USB + Debug und relativ günstig ($89). ---
@nicht billig: Habs auch nicht persönlich genommen ;-). Mir ist klar, dass es hier jeder sehr günstig haben will. Möchte ja selbst auch nichts überteuertes kaufen. Außerdem lebt das Mikrocontroller Forum und seine Gemeinde auch von dieser Einstellung. Aber es muss auch jedem klar sein, dass keiner hier im Forum z.B. 30 Platinen für nen warmen Händedruck auflöten wird. Ich denke, dass man die Zeit, die jemand darin investiert auch sehen muss (und ich glaube jeder hier weiß, was eine normale Technikerstunde in der Wirtschaft kostet) und entsprechend auch honorieren soll. Die Platine hat nur 2 Lagen! Wie schon gesagt, ich weiß, dass es ähnliche Boards gibt, die auch nicht viel mehr kosten. Aber das Hauptziel von mir war ein günstiges und EINFACHES Board zu bauen, das keine externe Versorgung benötigt und das viele I/O Pins zur Verfügung stellt. Das ZTEX Board hat zwar die I/Os nach draußen geführt, aber benötigt eine externe Versorgung. Und das AVNET MicroBoard ist zwar klein und hat RAM und Ehternet on-board, aber dafür wieder kaum I/O Pins, die man verwenden kann. Und beides kostet mehr als 100 Euro (inkl. Mwst.).
Andreas Auer schrieb: > Die Platine hat nur 2 Lagen! Dann wird die Platine selber ja auch nicht wirklich teuer. Mit selbst Bestuecken koennte das mit 30-40 Euro schon aufgehen! Ich melde mal prinzipielles Interesse an 1-2 Stueck an! Gruss
Andreas Auer schrieb: > XC6SLX9 viel zu mickrig! nicht billig schrieb: > Der Spartan kostet selbst nur ein zehner, das macht die Sache attraktiv Der Lx45 kostet 40,- macht 30 Euro Differenz und man bekommt etwas rein. Ich würde sogar zum 75er raten, der ebenfalls noch mit der Webversion programmierbar ist.
Hast schon recht, aber > LX9 ist nur noch im BGA Gehäuse zu bekommen. D.h. du brauchst wen, der dir das bestückt, oder du hast selbst einen Reflow Ofen, mit dem du das machst. Ich hab leider keinen!
Jetzt will ich auch noch meinen Senf dazugeben ;) Das wirklich einzigste Argument für dein Board ist das selbst löten. Alles andere bekommt man nur unwesendlich teurer mit viel mehr Leistung und fix und fertig. Du hast ein schnelles Fpga und nur USB 1.0 zum PC, da ist Ram auf dem Board zum zwischenspeichern schon recht angenehm aber da brauchst du eben mehr Pins und dann bist du bei einem BGA Gehäuse. Ich habe so als Beispiel ein Ztex-Board mit einem LX45, das überträgt unkomprimierte Bilder (800Kb/Bild) von einem Cmos-Sensor zum PC und das wäre mit deinem Board nicht möglich. Jedenfalls, wenn die Bilder sich bewegen sollen ;). Der LX9 würde das schon locker schaffen aber nicht ohne Unterstützung von externem Ram. Auch noch interessant ist diese Board: http://www.xess.com/prods/prod055.php Kann man hier kaufen: http://shop.trenz-electronic.de/catalog/product_info.phpcPath=1_173&products_id=1249
Alles berechtigte Argumente! Deshalb ist es auch gut, dass es solche Boards wie das von dir (@h-g-l) erwähnte von Xess gibt. Und auch ein Grund warum ich eben nichts mit externem RAM usw. gebaut habe, weil es davon wie du richtig sagst, schon einige gibt, die sich alle im Bereich um die 100-200 Euro bewegen. Aber für viele Anwendungen reicht auch ein FPGA alleine. Wenn ich ein RGB LED Display ansteuern will, oder einen LED Cube, oder wenns mir nur darum geht mal einen Bitcoin Mining Core auszutesten, dann reicht mir auch ein FPGA ohne RAM und Fullspeed oder gar Highspeed USB. Und wenns unbedingt notwendig ist, kann ich auch ein USB Interface oder sogar ein 10/100/1000 MBit Ethernet Interface in den FPGA bauen!
Ich hänge mein Projekt mal hier an, nicht die feine Art, aber auch egal ;) Wer ein Interesse an einem kleinen LX9-Board hat, das mit einer Menge Peripherie zugeknallt ist, kann sich bei mir melden. Der jenige braucht allerdings recht viel Kohle, denn 1-Off Preis alleine für Bauteile liegt bei knapp 110 Euro. Die Platine ist 2-Layer in der Größe eines Arduino... Fertigungskosten könnt ihr euch ausrechnen. Von mir gibt's nur den Schaltplan und das Layout. Zum Programmieren von dem Teil benötigt man einen Arduino oder einen anderen µC, der das Bitfile über SPI in den Flash schiebt. Für den Arduino habe ich bereits einen Downloader und zugehörige Software geschrieben, funktioniert bisher super. Das Board ist als Arduino-Shield gedacht, kann aber auch selbstständig laufen. Zur Fertigung per Hand: mit Lötkolben braucht man ca. 2 Nachmittage+Abende oder eben einen ganzen Tag... auf dem Board sind 150 SMD-Bauteile, der größte Teil davon auf der Unterseite... Ich wollte das Board wie Andreas auch in größeren Stückzahlen fertigen, aber wie man hier bereits sieht, macht es keinen Sinn, weil die Konkurrenz einfach viel zu billig ist und die Nachfrage für FPGA-Boards eher gering.
Hallo Andreas, ich möchte dir den Spass einer Eigenentwicklung bestimmt nicht verderben und finde es immer lobenswert, wenn jemand Eigeninitiative zeigt. Aber wie Maik bereits schrieb ... die Kundschaft wird wahrscheinlich fehlen. Marktnische und "low cost" passt selten zusammen ;)
Auch ich möchte meinen Senf zu der ganzen Problematik mit FPGA-Boards abgeben: Ich habe auch mit dem Gedanken gespielt auch selbiges zu machen und dann zu verkaufen. Und ich habe auch vieles mitverfolgt und mich absolut dagegen entschieden. Dir Gründe sind vielfältig, aber hier sind meine (zugegeben wenige) Erkenntnisse: - wenn man hier die Boards "anbietet", dann schon nach dem Prinzip "Friß oder stirb". Man sollte sich weder auf die Diskussionen über Funktionalität einlassen, noch über den Preis groß verhandeln. Hat es man doch getan, hat man sich erstmal für den (hohen) Preis rechtfertigt, nimmt es keinen Ende. Viele hier haben (leider) wenig Ahnung vom Aufwand, der damit verbunden ist, ein solche Board zu produzieren, die sehen nur 08.15,- Euro bei Digikey und denken, damit ist es getan. - es ist besser, ein Board mit der passenden Applikation zu "verkaufen". Nicht in der Art "man könnte damit Logic-Analyzer aufbauen, oder LEDs Ansteuern, oder ...". Es muss ein lauffähiges Beispiel vorhanden sein! - weniger ist mehr. Gegen die preiswerten "General Purpose"-Boards kann man preislich nicht anstinken -- also lieber sich auf was Bestimmtes konzentrieren und das auch gut machen Viel Erfolg, Kest
Es gibt schon feine Boards, aber ein Bereich wird irgendwie nicht (vollständig) abgedeckt. Man findet viele Boards bei eBay mit viel IO und billig, aber dann auch nur mit kleinem Spartan/Cyclone und SRAM. Und dann findet man welche mit großem Spartan, viel IO, auch noch recht günstig aber DDR-RAM. Gerade als Anfänger will ich eigentlich keinen DDR-RAM verwenden. PS-RAM wie auf dem Digilent Nexys2 ist super. Aber da ist auch wieder viel drauf was ich nicht brauche (VGA). Ich suche eigentlich ein Board mit - Spartan3 500 oder größer oder dickem Cyclone - aber noch mit Webpack programmierbar - viel IO, einfach auf Lochraster - SPI-Flash - JTAG Header - SRAM (so 1-2 MByte oder 16 MByte PS-RAM) - guter Oscillator/Quartz - Spannungsversorgung mit einer Spannung (z.B. 5V) - < 100€ Also eigentlich sowas wie das http://papilio.cc/index.php?n=Papilio.Hardware aber ohne USB und dickerer FPGA und einfach beschreibbares RAM.
Mal weg, ob günstig und brauchbar oder nicht. Du hast gesagt, dass der Clock (8 MHz) vom Atmega kommt. Wie wird dieser erzeugt? Ich würde persöhnlich davon absolut abraten! Spendier dem Board lieber einen Oszillator mit ca. 25 MHz. Dein 8 MHz Clock wird meiner Meinung nach viel zu sehr Jittern, was bei kritischen Designs zu unschönen Effekten führen kann, wie: Warum läuft die State Machine in den State X, obwohl er von State A nur zu State B wechseln kann, aber nicht von A nach X? Ansonsten finde ich es gut, dass du es probierst. Viele sind von FPGAs einfach abgeneigt, da es schwierig ist ein vernünftiges Power Management auf einer möglichst einfachen Platine zu gestalten und meist mit einem 2-Lager nicht auskommt. Aber es geht trotzdem! Und FPGA sind nunmal eine feine Sache
Platine : 5,- + Fpga (XC3S50AN) ca 20,- als Minimallösung. Die AN Version behält die Konfiguration und benötigt kein externes Flash. Platine gibts schon fertig hier: http://gsg-elektronik.de/shop/index.php?main_page=product_info&products_id=3 @gustl Spartan6 haben eingebaute DDR-Ram Controller und nach etwas Gefummel mit dem ISE-Core Generator sieht das Ram für dich wie ein statisches aus.
@tja: Eigentlich wollte ich direkt den 16MHz Quarz Takt vom ATMega verwenden, den man über einen Portpin ausgeben lassen kann. Jedoch müsste ich dazu die Fusebits entsprechend programmieren und ich hab auf ein ISP Interface verzichtet. Deshalb wird der 8MHz Clock jetzt per Timer im CTC Mode erzeugt. Wenn ich den 8MHz Clock im FPGA über einen DCM Block schicke, können danach auch noch so unschöne Effekte auftreten?
ja, kann .... Ich weiß es nicht auswendig, aber hat der Timer höchste IRQ Priorität? Wenn nein, dann hast erst recht ein ziemlich großes Problem! Clock vom Timer -> wirklich nicht gut .....
Andreas Auer schrieb: > Versorgt wird das Board bei mir komplett über USB. Es sind 2 > Spannungsregler mit jeweils 800mA Ausgangsstrom drauf (einer für 3,3V > und einer für 1,2V). Gibt es bei USB nicht eine 500mA Begrenzung je Anschluss? Wäre es möglich, von deiner Platine die Schaltung zu veröffentlichen? Oder soll Schaltung und Layout closed-source bleiben?
@tja: Die Generierung des Clocks läuft rein hardwaremäßig. Der Timer ist so eingestellt, dass er hardwaremäßig beim Erreichen des Schwellwerts in einem Register den Pin toggelt. Es ist also keine Software beteiligt, die da Jitter hinzufügen könnte. @Martin Maurer: Ja, stimmt... USB hat eigentlich eine 500mA Begrenzung. Aber nachdem es z.B. auch dieses AVNET Microboard mit LX9 gibt, das per USB versorgt wird, sollte das für die meisten Designs schon ok sein. Anbei auch der Schaltplan.
Andreas Auer schrieb: > @Martin Maurer: > Ja, stimmt... USB hat eigentlich eine 500mA Begrenzung. Aber nachdem es > z.B. auch dieses AVNET Microboard mit LX9 gibt, das per USB versorgt > wird, sollte das für die meisten Designs schon ok sein. ... und da ist ja sogar noch DRAM und ein Ethernet Phy und anderes mit drauf... Aber das mit dem Takt per Timer ist mir auch suspekt. (auch ein Hardwaretimer kann Jitter da reinbringen! Nicht so heftig wie Software natürlich... )
wäre Software für den Clock im Spiel wäre es sowieso in die Hose gegangen. Als Vergleich: Für einen guten Jitterfreien Clock kann man im einstelligen unteren ps Bereich ausgehen, für wirklich guten Clock im fs Bereich (pk-pk). Für den Timer IRQ würde ich definitiv >100ps schätzen, eher so Richtung 500-1000ps. Wenn noch andere IRQs im Spiel sind (sollte hier nicht der Fall sein), dann bewegt man sich schnell >100ns (bei 8 MHz). Natürlich kann es sein, dass auch (fast) immer alles einwandfrei funktioniert und dann viel Spaß beim Fehlersuchen. Es gibt nichts schöneres als sporadische Fehler, die wenn überhaupt nur einmal am Tag auftauchen.
Andreas Auer schrieb: > Eigentlich wollte ich direkt den 16MHz Quarz Takt vom ATMega verwenden, > den man über einen Portpin ausgeben lassen kann. Jedoch müsste ich dazu > die Fusebits entsprechend programmieren und ich hab auf ein ISP > Interface verzichtet. Deshalb wird der 8MHz Clock jetzt per Timer im CTC > Mode erzeugt. > > Wenn ich den 8MHz Clock im FPGA über einen DCM Block schicke, können > danach auch noch so unschöne Effekte auftreten? Also dein Design ist unterste Schublade, sorry. Benutze statt der AVR-Baustelle lieber einen FTDI und spendiert dem Herz der Schaltung bitte einen Quarz. Ganz viele Baustellen um 1€ zu sparen, so lieben wir es! ---
Danke für den netten Beitrag, der selbst aus der untersten Schublade kommt. Darauf kann ich dann auch echt verzichten. Sorry für diejenigen, die den Beitrag interessant fanden, oder auf eine konstruktive Diskussion gehofft haben. Ich werde mich jetzt von dem Thread verabschieden.
Och ich find das Thema gut, suche selbst sowas. Du solltest dir angewöhnen, die Beiträge der unangemeldeten zu ignorieren. Zumindest die, die rummeckern. Das macht das leben leichter:) Würde es gut finden wenns hier weiter geht, wenn man so günstig an ein FPGA Board kommt (gerne zum Selbstbestücken). Zum Takt sind ja genügend Hinweise gekommen, ich denke das wäre nicht schwer umzusetzen. Und das treibt die Kosten auch nicht extrem hoch. Genauso würde ich den größeren FPGA wählen, wenn der nur 8€ teurer ist. Grüße
tja schrieb: > Wenn noch andere IRQs im Spiel sind (sollte hier nicht der Fall sein), > dann bewegt man sich schnell >100ns (bei 8 MHz). Er hat doch schon erklaert, dass die Takterzeugung per HW erfolgt. Egal wie viele ISRs da im Spiel sind, der Timer laeuft autark und der Takt im uC ist per Quarz generiert. Der Takt ist somit komplett softwareunabhaengig! Trotzdem waer es evtl. interessant einen externen Takt einspeisen zu koennen - evtl. ueber Jumper... Gibts Ne schrieb: > Genauso würde ich den größeren FPGA wählen, wenn der nur 8€ teurer ist. Ich dachte alle groesseren sind nicht mehr von Hand loetbar - dann ists egal wenn der FPGA ein paar Euros mehr kostet, das bestuecken lassen ist wesentlich teurer!! Faende es auch schade, wenn das Projekt jetzt eingestellt wird....
@Andreas Auer: lass den Kopf nicht hängen! Miesepeter gibt es überall. Verbale Ausfälle auch. Nimm' Dir die konstruktive Kritik zu Herzen und mache weiter! :-) Kest
@Christoph ICh meinte den größeren von den kleinen;) Quasi der größter, der sich noch von Hand bestücken lässt...
Weitermachen werd ich sowieso. Auch werd ich meiner nächsten Version dann einen eigenen 25MHz Oszillator spendieren (danke für den Hinweis mit dem Jitter). BTW. einen externen Oszillator sollte man jetzt auch schon anschließen können. Ich denke, dass irgendwo auch einen CLK Pin nach außen geführt habe. Einen größeren FPGA wird es aber voerst nicht geben, weil die alle schon im BGA Gehäuse sind.
Andreas Auer schrieb: > - ein MicroSD Slot (inspiriert durch das von Elektor vorgestellte FPGA > Board) vorhanden sein. Welches Elektor Board meinst du?
Elektor hat im September oder Oktober (weiß ich nicht mehr genau) über ein Webinar auf Element14 ein FPGA Board vorgestellt. Und zwar haben sie einen Spartan-3(E) als FPGA genommen und eben auch einen SD Kartenslot. Wird vermutlich auch bald mal in einem Heft erscheinend.
Hallo, ich will (nach 20 Jahren) gerade wieder in die Welt der Hardwarehacks einsteigen. Hat sich ja einiges geändert. FPGAs fertige Kleinstrechner.... Ich bin jetzt auch über diesen Beitrag gestolpert. Was mich irritiert ist dieser "Zwang" zu einem USB-Chip. > Zum USB Interface muss ich noch sagen, > dass ich nicht auf den meist üblichen > doch eher schwerfälligen Cypress FX2 > Highspeed USB Controller setze, > sondern auf einen einfachen ATMega32U2. Wieso nicht das auch durch den FPGA erledigen lassen? Den Ablauf stelle ich mir dann so vor: 1.) USB in Rechner einstecken oder Rechner mit eingesteckten USB starten. 2.) USB verhält sich neutral und zieht nur Strom. 2.a) Sollte ja machbar sein, evtl. eine kleine Schaltung mit hochohmigen Ausgang bis.... 2.b) In der Zeit wird FPGA z.B. von SD konfiguriert. 3.) FPGA ist fertig konfiguriert und aktiviert USB. Meldet sich dabei als was auch immer im SD festgelegt wurde. Mit dem FPGA kann man dann was auch immer man will anstellen. Eine Option wäre es wenn sich das FPGA als 3 Geräte meldet. Einmal als Hub, einmal als SD-Kartenleser (und schreiber) am Hub und einmal als was auch immer. Dann muss man die SD-Karte zum umkonfigurieren nicht einmal entfernen. Eine andere Option wäre es einen Open-Risk Kern zu laden oder.... Meines Erachtens wäre das die flexibelste Lösung um ein FPGA am USB-Port eines Rechners zu betreiben. Nur diese Lösung finde ich nicht im Netz und frage mich warum. Blindheit oder... Bye Alexander
@Alexander Hast du mit USB schon mal was gemacht? Hast du mit FPGAs schon mal was gemacht? Schon mal eine SD-Karte mit eigenem Programm angesprochen? Schon mal einen USB-Hub implementiert? Schon mal selbst einen Open-Risk Kern benutzt? Manche Punkte hören sich nicht schlecht an, aber ich glaube du unterschätzt die Komplexität, so etwas umzusetzen...
Hi. @Alexander: USB kannst du natürlich auch in den FPGA reinprogrammieren, wenn du wirklich hohen Datendurchsatz bzw. direkten Zugriff auf den USB core brauchst. Aber dazu brauchst einen controller, der dir den FPGA erstmal konfiguriert. Und für den controller musst auch zumindest einmal eine Firmware einspielen, damit sie z.b von SD card die Konfiguration für den FPGA lesen kann. Wenn sich der controller über USB programmieren lässt dann wäre es ja fast unnötiger Aufwand eine extra Programmierschnittstelle vorzusehen. Und wenn der controller schon USB kann, warum nicht gleich auch für den FPGA verwenden. Einem extra USB core im FPGA zu implementieren ist (1) nicht so easy und (2) verbrauchst du damit nur wertvolle LUTs. Deshalb gibts solche Lösungen auch nicht wirklich (glaub ich). LG Andreas
Hallo! @ Andreas Auer (Firma: Embedded Microtec) (andi) Erst mal danke! Das hat mir geholfen mich auf das wesentliche zu konzentrieren. Also ich denke in vielen Fällen ist die flexiblere Nutzungsmöglichkeit einen gewissen Mehraufwand wert. Da man ja frei wählen kann als was sich diese Lösung beim Host anmeldet gibt es da keine Einschränkungen. Du willst einen Hardware-Passwort-Generator und Passwort-Tresor. -> Dein Gerät meldet sich als Tastatur an. Du willst am PC alte Mac-, Amiga-, oder sonst exotische Disketten lesen? -> Du meldest dein Gerät als Block-Device an und benötigst nur noch das Filesystem welches Linux ja i.a. schon kann. Du willst... ->... Das USB Interface entwickelst du nur einmal oder kopierst es dir von Opencore oder... Ansonsten, ich habe mal etwas genauer auf die Opencores.org Seite ... Ich habe gefunden: 1.) http://opencores.org/project,spi_boot -> Lösung für SD konfiguriert FPGA. 2.a.) http://opencores.org/project,spimaster 2.b.) http://opencores.org/project,sdcard_mass_storage_controller Lösungen zum beschreiben von SD. Kompatibelität zu 1. ist fraglich. 3.) Diverse USB. z.B. http://opencores.org/project,usb_device_core Hmmm: Development status: Alpha Sieht fast so aus, als muss man nur alles "irgendwie" zusammenbringen. Aber ob es wirklich so einfach ist glaube ich nicht. Ausserdem wäre es mir recht, wenn ich für die erste Schritte etwas mehr hätte. Also etwas was so schon läuft und nicht erst zusammengesetzt werden muss. @ Peter P. (Gast) Ich bin mir nicht sicher ob du mein erstes Schreiben richtig gelesen hast. >> ich will (nach 20 Jahren) gerade wieder >> in die Welt der Hardwarehacks einsteigen. >> Hat sich ja einiges geändert. >> FPGAs fertige Kleinstrechner.... > Hast du mit USB schon mal was gemacht? > Hast du mit FPGAs schon mal was gemacht? > Schon mal eine SD-Karte mit eigenem Programm angesprochen? > Schon mal einen USB-Hub implementiert? > Schon mal selbst einen Open-Risk Kern benutzt? USB kam vor ca. 20 Jahren heraus, der Rest.... Also wie man schon bei meinem ersten Schreiben erkennen kann: NEIN! > ich glaube du unterschätzt die Komplexität, > so etwas umzusetzen... Mag sein, ich sehe mich ja erst mal ein wenig um. Zurück zu: > Schon mal eine SD-Karte mit eigenem Programm angesprochen? Wenn du Hardwareseitig meinst nein. Was Laufwerke betrifft hatte ich mal eine Schaltung für Motor-Flipflops für 2 externe Amiga-Laufwerke entwickelt. Nicht weil ich das gebraucht hätte, sondern weil ich einmal eine Schaltung für ein Laufwerk gesehen hatte, die aehm nun ja, ich fand diese Schaltung nicht so gut und wollte beweisen dass es besser geht. Also habe ich eine Schaltung entwickelt welche mit genau so vielen (oder eins weniger?) unterschiedlichen 74irgendwas nicht nur ein, sondern 2 Laufwerke ansprechen konnte. Diese Schaltung hatte ich dann auch aufgebaut und eine Zeit lang an meinem Amiga 2000 angechlossen. War aber recht unsinnig, ein Rechner, 2 interne Floppy, eine interne SCSI-Platte, eine externe SCSI-Platte mit Stromversorgung (ich denke) vom Floppyport und dann noch 2 externe Floppys. Nun ja, ich wollte einfach beweisen, dass ich es besser kann. Zum Datenaustausch und für Daten zum mitnehmen hatte ich die externe Festplatte. Die hatte ich eingesetzt wie heute einen USB-Memory-Stick. Dank RDB konnte fast jeder Amiga mit SCSI-Host-Adapter diese externe Festplatte nutzen. Die ID konnte vom Gehäuse (Zweckentfremdetes Amiga 1010 Gehäuse) der Platte aus geändert werden.... Nun ja, es war ein anstrengender Tag inkl. einigen 100 km mit dem Auto und... Gute Nacht! Alexander
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.