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?
>Meine Aufgabe ist es, die Formate zu erkennen und das Bilddaten zu >prozessieren
(Glättung, Schärfung, Kontrastoptimierung und die Helligkeit), >was auch klappt.
Wie stellst Du fest, dass es klappt? In der Simulation?
Ja, in der Simulation und mit MATLAB / Sysgen. Die Bilddaten kann man ja jederzeit langsam moffline prozessieren und mit bitgenauen Beispielen vergleichen. Die Algorithmen (u.a. das Suchen nach bestimmten Mustern) sind zudem bereits anderweitig getestet und obendrein evident überprüfbar. Das ist weniger das Problem. Es geht jetzt um die reale Taktung. Bislang lag ja jeweils nur ein Datenstrom vor. Der war bekannt und benannt.
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.