Hallo, ich bin ein FPGA-Neuling und kann mich bei der Auswahl der Hardware nicht für ein bestimmtes Model entscheiden. Mit der Entwicklungsplatine soll eine CMOS-Bild-Matrix angesteuert werden, anschließend soll ein Glättungsfilter angewandt werden, etwas Videobearbeitung – bewegende Objekte Umrahmen. Es soll also ein Hintergrund aufgenommen und gespeichert werden und dann wird das Videosignal und das aufgenommene Bild voneinander subtrahiert und das Resultierende Bild wird analysiert, bei überschreiten einer vorgegebener Punktezahl soll das Objekt umrahmt werden. Das original Video und die Umrahmung soll dann auf den VGA-Ausgang ausgegeben werden. Eventuell soll noch die OSD-Anzeige erfolgen. Welches Board ist dafür am besten geeignet? Manche haben mehr, manche weniger Gattern, das 3E-1600 hat dagegen einen Prozessor, reicht bei dem aber die Gatter Anzahl für mein Vorhaben? Funktioniert die DSP-Builder-Software von Xilinx mit jedem Spartan Chip oder nur mit einem speziellen DSP-Board? Spartan 3E Starter Board http://shop.trenz-electronic.de/catalog/product_info.php?cPath=1_114_119&products_id=504 Spartan 3E-1600 Development Board http://shop.trenz-electronic.de/catalog/product_info.php?cPath=1_114_119&products_id=578 XtremeDSP Starter Platform - Spartan-3A DSP 1800A Edition http://shop.trenz-electronic.de/catalog/product_info.php?cPath=1_47&products_id=182
> ich bin ein FPGA-Neuling Wer war das nicht? > soll eine CMOS-Bild-Matrix angesteuert werden, anschließend soll ein > Glättungsfilter angewandt werden, etwas Videobearbeitung – bewegende > Objekte Umrahmen. Das ist allerdings schon gewaltig fortgeschritten... :-o Hast du für diese Aufgabe schon ein Konzept erstellt? Was soll in Hardware, was in Software abgebildet werden? Wieviel Zeit hast du?
Nach Möglichkeit soll alles in Hardware realisiert werden. Das wird meine Diplomarbeit, maximal 6 Monate Zeit habe ich zur Verfügung. Wenn die Realisierung zu zeitaufwendig wird, kann man natürlich etwas weglassen. Mit System Generator/DSP-Tools wären solche Sachen wie Filter relativ einfach realisiert, ich weiß aber nicht ob ich dafür mir ein DSP-Board zugelen muß, oder ob es auch mit günstegeren Boards funktioniert.
> maximal 6 Monate Zeit habe ich zur Verfügung. Gibt es schon Grundlagen? Weißt du, wie du das Ganze machen kannst? Glaub es mir, das werden sehr sehr harte 6 Monate. Effektiv hast du zum Hardwarebasteln, VHDL-Lernen und programmieren gerade mal 4 Monate. Die restlichen 2 gehen für die Doku drauf. > ich weiß aber nicht ob ich dafür mir ein DSP-Board zugelen muß, Du hast keine Zeit. Du mußt dir das Board zulegen, das schon die Hardware drauf hat, die du brauchst.
Ich kann mir vorstellen wie man so was in der Programmiersprache C realisiert. Das Problem wird das Ganze in VHDL zu übertragen. Für VGA-Ansteuerung gibt es fertige Code-Beispiele, für die Speicher-Ansteuerung muss es auch etwas ähnliches geben. Das Schwierigste ist die Matrix-Ansteuerung. Ich habe den Datenblatt von dem Sensor gefunden, in dem beschrieben ist wie es angesteuert und beschaltet wird. Zuerst die Matrix über den seriellen Bus I2C initialisieren. Es hat Register, die mit bestimmten Werten belegt werden sollen. Ein Baustein programmieren, der den I2C Protokoll realisiert, also Registeradresse und Wert an die Eingänge legen, und der serielle Ausgang zur Matrix. Die Registeradressen und die Werte vom Flash-Speicher auslesen und zum I2C Baustein leiten. Nach der Initialisierung Pixelwerte auslesen und in den RAM schreiben. Danach die Daten zum VGA-Ausgang schicken. Mit der Videobearbeitung werde ich mich nur beschäftigen wenn die Zeit übrig bleibt. http://www.dvinfo.net/conf/attachments/alternative-imaging-methods/3790d1184583226-new-diy-hd-cinema-camera-project-mt9p031.pdf
> Ein Baustein programmieren, der den I2C Protokoll realisiert, also > Registeradresse und Wert an die Eingänge legen, und der serielle Ausgang > zur Matrix. Die Registeradressen und die Werte vom Flash-Speicher > auslesen und zum I2C Baustein leiten. Das lässt du am besten einen kleinen Softcore (Picoblaze) machen. > Nach der Initialisierung Pixelwerte auslesen und in den RAM schreiben. > Danach die Daten zum VGA-Ausgang schicken. Hier geht es zackig zur Sache (immerhin bis zu 96 Mp/s at 96 MHz). Das ist jetzt was, was du in Hardware machen musst.
Vielen Dank!
>Das lässt du am besten einen kleinen Softcore (Picoblaze) machen.
DSP Edition hat aber keine CPU, dann wäre Spartan 3E-1600 Development
Board mit Microblaze besser geeignet?
Die Frage ist ob dann noch der System Generator für DSP mit diesem Board
funktioniert.
I2C ist auch sogar als Core verfügbar
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.