Frage an die FPGA Profis zu DDR und V-Timing

Gast #3136808
Lesenswert?

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?
Gast #3137227
Lesenswert?

>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?
Gast #3137854
Lesenswert?

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.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren