Guten Tag zusammen, ich möchte mich an euch wenden da ich selber keine Erfahrungen mit FPGA´s habe und daher leider auch nicht bewerten kann ob diese für meine Anwendung sinnvoll und brauchbar sind. Falls ja würde ich mich natürlich selbst einarbeiten und versuchen das Projekt damit zu realisieren. Ich gehe mal davon aus das ich hier ein paar FPGA erfahrene finden kann und würde gerne mal eure Meinung hören ob die Dinger für meine Anwendung sinnvoll wären. Es handelt sich um ein Kamera-System welches Bilddaten verarbeiten muss. Dazu muss ich zum einen erstmal 4 Bilder im Speicher haben und dann ein paar mathematische Operationen (+,-,*,sqrt) auf jeweils Pixel 1 von Bild 1 bis 4, Pixel 2 von Bild 1 bis 4 usw. ausführen und das daraus neu entstehende Bild über Ethernet ausgeben. Für die Ausgabe des Bildes würde ich den Wiznet W5300 verwenden falls das in Kombination mit dem FPGA Sinn macht. 1 Pixel hat jeweils 12 Bit (+1 Saturation Bit), könnte aber auch für besser Verwendbarkeit mit dem W5300 auch auf 16 Bit erweitert werden... 2 Byte sind halt schöner zu übertragen ;-) Die Bildgröße ist 320*240 Pixel (150KB) bei 25FPS. Die Kameraschnittstelle scheint ein Standard zu sein (vsync,hsync,data0:11,shutter,pixel-clk etc.) Die Übertragungsgeschwindigkeit ist mit 40 oder 80 MHz wählbar, es werden dann in jeweils 8 bzw. 16µs zwei Bildzeilen übertragen wobei jede Pixelclock einen Pixel überträgt. Nach fertigstellen einer Zeile erfolgt eine Pause bei der Übertragung von 7,9 bzw. 15,8µs (Hsync -> high). Ich habe schon mal vorab eine Bewertung vorgenommen was für eine CPU ich bräuchte und da wäre ich im Bereich von 1-1,4 GHz, würde also auf einen ARM oder ähnliches hinauslaufen. Ich habe da allerdings zweifel ob das mit dem Timing so funktioniert wie ich es gerne hätte. Ein bekannter hatte mir nun einen FPGA als alternative genannt, da er aber auch keine Erfahrungen damit hat möchte ich mal hier fragen ob es mit FPGA möglich ist diese Anwendung sinnvoll umzusetzen. Quasi 4 Bilder im Speicher ablegen, daraus ein neues erzeugen und dieses dann im W5300 ablegen und versenden? Zusätzlich wäre wahrscheinlich noch ein "kleiner" Controller zur Konfiguration des W5300 sowie der Kamera (über I²C) nötig, falls der FPGA dafür noch Platz hätte vielleicht als Softcore?! Entschuldigung für den langen Text, ich hoffe ich habe alles wichtige erwähnt. Nun wüsste ich gerne was die Profi´s unter euch darüber denken, zum Programmieren des FPGA würde ich vermutlich dann jemanden holen der das kann, meine Aufgabe ist momentan aber erstmal die nötige Hardware zu entwerfen und ich hoffe auf eine Bewertung ob der FPGA das kann oder das ganze keinen Sinn ergibt? Danke schonmal im Vorraus Viktor
@Viktor (Gast) >Ein bekannter hatte mir nun einen FPGA als alternative genannt, da er >aber auch keine Erfahrungen damit hat möchte ich mal hier fragen ob es >mit FPGA möglich ist diese Anwendung sinnvoll umzusetzen. Ja. Großen SDRAM dran, geht. >Quasi 4 Bilder im Speicher ablegen, daraus ein neues erzeugen und dieses >dann im W5300 ablegen und versenden? Zusätzlich wäre wahrscheinlich noch >ein "kleiner" Controller zur Konfiguration des W5300 sowie der Kamera >(über I²C) nötig, falls der FPGA dafür noch Platz hätte vielleicht als >Softcore?! Genau. >Entschuldigung für den langen Text, ich hoffe ich habe alles wichtige >erwähnt. Ja. > Nun wüsste ich gerne was die Profi´s unter euch darüber denken, >zum Programmieren des FPGA würde ich vermutlich dann jemanden holen der >das kann, meine Aufgabe ist momentan aber erstmal die nötige Hardware zu >entwerfen Kauf lieber erstmal ein fertiges Evalboard, dort ist alles drauf was du brauchst.
Ist es nicht "einfacher" ein Raspberry Pi 2 zu nehmen? Ich glaube, bei 320x240@25 fps wird man da keine Probleme bekommen (habe jetzt aber nicht gerechnet) Kest
Erstmal danke für die antworten bisher. @Falk Brunner Sehr effizient beantwortet :-) > Kauf lieber erstmal ein fertiges Evalboard, dort ist alles drauf was du > brauchst. Haben sowieso schon Eval-Boards im Labor, hatte eben bisher nur nichts damit gemacht und die Leute die sich damit auskennen sind nicht mehr da :-/ Würde es daher eh erstmal damit probieren, wollte aber eben wissen ob das überhaupt sinn macht mich damit auseinander zu setzen um nicht nacher eine Woche dran rum zu machen nur um festzustellen das es eben nicht geht. Aber soweit klingt das schonmal gut, dann werde ich die Zeit mal investieren. Kest schrieb: > Ist es nicht "einfacher" ein Raspberry Pi 2 zu nehmen? Ich glaube, bei > 320x240@25 fps wird man da keine Probleme bekommen (habe jetzt aber > nicht gerechnet) > > Kest Bei diesen ganzen "Mini-PC" Lösungen habe ich die Befürchtung das mir das OS zu viele Probleme beim Timing erzeugen wird. Hatte gesehen das das Rasp 2 ein "CSI" Kamera Interface besitzt allerdings ist dieses ein Serielles, mein Kamerasensor bietet aber nur ein 12-Bit parallel Interface, außerdem wären die 900 MHz sehr knapp bemessen, ich hatte 1-1,4 GHz als Single Core mindestens ausgerechnet daher könnte das schon zu knapp werden... aber danke für die Idee. Lieben Gruß Viktor
320*240 Pixel sind 76800 Pixel, bei 25FPS macht das 1,9M Macroflops, also deine Formel durcharbeiten. Macht pro Formeldurchlauf ~500ns bzw 500 Takte bei 1 GHz CPU Takt. Hmmm. Mit Hilfe einer aktuellen GPU sicher machbar, wenn man die Software beherrscht. Nur per CPU ist nicht so sinnvoll.
Das ist ja genau mein Problem weswegen ich mich nach alternativen zur CPU umschaue :-P Aber danke für deine Hilfe, ich werde mich jetzt mal intensiv mit den FPGA´s auseinandersetzen, falls sich dabei nochmal fragen auftuen werde ich mich wieder vertrauensvoll an euch wenden. Danke
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.