Gast
#3136808
Ich habe bezüglich FPGAs vorwiegend Erfahrungen bezüglich der Signalverarbeitung, d.h. Einbau von State Machines, Rechen-Pipelines und Matlab Code. Schwerwiegende Themen, wie z.B. DDR-RAM, Taktdomänenthemen und SoftCores habe ich bisher kaum in Angriff nehmen können. Da ist also wenig Erfahrung. Ich habe nun ein Problem mit einem Videoprojekt, für das ich die Bildfilterung mache: Der Sender ist jeweils eine andere Baugruppe, derer es drei erschiedene gibt und die alle in verschiedenen Bildformaten mit unterschiedlichem V-timing senden können. Die möglichen V-Formate sind bekannt, ich weiss nur vorher nicht, welches benutzt wird. Meine Aufgabe ist es, die Formate zu erkennen und das Bilddaten zu prozessieren (Glättung, Schärfung, Kontrastoptimierung und die Helligkeit), was auch klappt. Aus den Bilddaten ziehe ich Informationen und generiere Hilfssignale für die Steuerung. Allerdings sollen nun die Daten auch in Echtzeit ausgegeben werden, also auch wieder ein Kamerabild erzeugt werden. Dazu muss ich also die Ausgangstakte selber generieren und zwar in dem Format, in dem sie kommen. Meine Vorstellung ist nun die, einfach die Takte durchzuleiten und meine Daten dranzuhängen. Dass die Daten zum Format passen, kann ich sicherstellen. Ginge das? Wie schalte ich die Takte nach aussen durch? Ich könnte sie mir auch mit einer PLL selber erzeugen und dann den rchtigen Takt auswählen, habe aber dann das Problem, dass die Frequenzen nicht passen, da ja der Eingang minimal von der Theorie abweichen kann. Der Ausgang müsste daher scon in Phase sein. Eine Idee, die vogeschlagen wurde, ist ein gewaltiger Buffer, in den das Bild reingeladen wird, um es dann mit meinem Takt auszulesen. Am Ende macht man dann eine kleine Pause im Bild, um weglaufende Takte zu kompensieren. Ich könnte mich dann ja einfach am V-Synch des Origials orientieren. Allerdings bräuchte ich dann das DRR-RAM und das habe ich noch nicht angesprochen. Was würdet ihr mir empfehlen? Die Platform wird ein Stratix 3 sein, von dem ich aber nur etwa 40% in Beschlag nehmen darf, da er schon etwas gefüllt ist (mit Gerätesteuerung und -überwachung). Wie aufwändig ist es mit einem DDR-Controller zu kommunizieren? Geht es s wie in Software?