Gast
#3180582
Hallo Zusammen, ich habe zur Zeit ein paar Verständnisprobleme bei einer logischen Schaltung aus einem Datenblatt. Hier geht es um eine Brücke zwischen RGMII und GMII - darum geht es allerdings gar nicht so genau. Ich wollte diese Brücke mit VHDL beschreiben und habe dann in einem Datenblatt folgendes gesehen (siehe Anhang). Mir geht es nun erstmal nur um die obere logische Schaltung. Primär geht es mir um die Verzögerung zwischen den Signalen RGMI_TXD(4 Bit breit) und GMI_TXD (8 Bit breit). Hier sollen die selben Daten übertragen werden, und zwar über DDR. Soweit ist es mir klar. Nur verstehe ich die Zusammensetzung der logischen Schaltung nicht so recht. Die verwendeten Flip-Flops geben den Eingangswert immer auf der steigenden Flanke direkt aus (natürlich nur idealisiert angenommen). Und hier liegt auch mein Problem. Bei einer steigenden Clk (genauer: RGMII_TX_CLK) schaltet das obere Flip-Flop "den Eingang durch", welcher dann beim FF FDDRSE ebenfalls auf den Ausgang (RGMII_TXD[3:0]) durchgeschaltet wird. Das setzen des 1. FF-Ausgangs ist also "zeitgleich" mit dem lesen des 2. FF-Eingangs. Das ist doch relativ kritisch, da hier im Grunde die Leitungslängen entscheiden, wann wo welches Signal anliegt. Ich komme somit irgendwie nicht auf eine Verzögerungszeit von 2 Takten, wie man sie im Timing-Diagramm erkennen kann (erkennbar an den Pfeilen). Ich hoffe es ist einigermaßen klar, worum es mir geht :/ Viele Grüße, Thomas PS: Die Bilder stammen aus der PDF http://www.xilinx.com/itp/xilinx10/books/docs/spartan3a_hdl/spartan3a_hdl.pdf Seite 3
