Hallo. PRP-Protokol. Ich habe folgendes Problem. Mit meinem FPGA empfange ich zwei identische Frames mit PHY1 und PHY2. Diese werden entcodiert und an FPGA durch MII weitergeschickt. Im Fpga befindet sich ein IP-Core (siehe Bild.), der aus zwei rx-Modulen, einem switch, einem FIFO und einem tx-Modul besteht. Die rx-Module empfangen die beiden identischen Frames und stellen diese dem switch-Modul zu Verfügung. Der switch- Modul erkennt, welcher der beiden Frames als erster angetroffen ist und leitet diesen in Richtung FIFO weiter. Falls es zu einer Unterbrechung der Datenempfang kommt(zB. durch Unterbrechung der Leitung am phy1), schaltet der switch-Modul taktsynchron auf rx2-Modul und leitet die Daten, die am PHY2 antreffen(die durch zweite Leitung beim FPGA-Board ankommen) zum FIFO weiter. Ich würde das "Taktsynchrone Umschaltung" nennen. Weiß jemand, wie so ein Umschalter in Verilog oder zumindest als digitale Schaltung zu Realisieren ist? (mit D-Flip Flops, Mux, FSM usw.) Oder gibt es einen guten Link mit digitalen Schaltungen für Probleme jeglicher Art? Dann könnte ich diesen switch-Modul einfach mit Verilog beschreiben. Danke schon mal im Voraus.
Hallo Alex, die Aufgabenstellung wird aus der Beschreibung nicht ganz klar. Der Switch an sich is zwar eher trivial, aber es gibt ein paar Randbedingungen, die zu überlegen sind. Relevant für die Erkennung, ob Daten von PHY1 oder PHY2 vorliegen, sind vermutlich die Signale fifo_we von den beiden RX-FSMs. Da stellt sich gleich die Frage was geschehen soll, wenn beide FSMs gleichzeitig fifo_we aktivieren. Und falls nicht, und falls daher der Switch die Daten eines PHYs weitergibt, wann soll er dann wieder zurück in den Überwachungszustand gehen? Gleich, wenn fifo_we von dem aktuellen Kanal nicht mehr aktiv ist? Dann besteht die Gefahr, dass man mitten in einem Frame des zweiten PHYs landet und somit einen halben Frame weitergibt. Es sei denn, die FSMs haben selbst ein FIFO welches man mit fifo_full daran hindern kann, Daten auszugeben. Du sieht, Fragen über Fragen. Klär erst mal die Aufgabenstellung, alles andere sind dann Peanuts. Das wird ja nur eine FSM mit vier, maximal fünf Zuständen. Grüße, Harald
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.