DDR zu SDR Datenstrom

OP Persönliche Seite #2241335
Lesenswert?
• ▲
▼
Hi,

mein Sparten-3e 500 bekommt von extern 5 LVDS-Pärchen mit Daten (DDR), 
und ein LVDS-Pärchen mit der passenden, um 90 Grad verschobenen, Clock.

Aus den LVDS-Takt erzeuge ich über IBUFGDS und DCM zwei 
phasenverschobene Takte Clock0 und Clock180.  Die Daten gehen über 
IBUFDS auf 5 IDDR2 (betrieben mit Clock0 und Clock180). Um die 
IDDR2-Ausgänge zusammenzufassen, könnte ich z.b. zwei Vektoren 
rxdata_0(4 downto 0) und rxdata_180(4 downto 0) definieren.

Hoffe, das habe ich mir soweit richtig überlegt. Nun möchte ich die 
Daten mit Clock0 weiterverarbeiten und dazu aus den beiden 5-Bit 
Vektoren einen 10-Bit SDR Datenstrom zusammenbauen. Wie mache ich das am 
einfachsten? Irgendeine Pufferung werde ich doch sicher brauchen, FIFO 
klingen aber überdimensioniert, habe da einen kleinen Blackout.

Sebastian
#2241413
Lesenswert?
• ▲
▼
Du kannst das Cascade Feature des IDDR2 nehmen. Siehe User Guide auf 
Seite 330 unten. Wenn du bei der Instanziierung sagst 
"DDR_ALIGNMENT=C0", dann wird ein 2. FF in den D Ausgang eingeschleift, 
was das Signal von 180° auf 0° bringt. Geht aber nur bei differenziellen 
Signalen, aber die hast du ja. Ansonsten einfach selber ein FlipFlip 
getaktet mit CLK0 hinter deine 180° Daten und fertig ist die Laube.

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