Guten Morgen Zusammen, wenn ich eine TopLevelEntitiy habe , in der ich eine Komponente einfügen möchte und ich von dieser eingefügten Komponente Rückgabewerte wieder in meiner darüberliegenden Ebene benötige, wie realisiert man das am besten? Mit Hilfe eines buffer-Signals? Meine Komponente gibt mir ein Ausgangssignale, welche ich in der TLE als Eingangssignal brauche? Würde es funktionieren, wenn ich dem Ausgang einem buffer Signal zuordne und dieses buffersignal dann dem Eingang? Oder lassen sich buffer's nur intern, also innerhalb der Komponenten verwenden? Gruß und Dank, fred
> Mit Hilfe eines buffer-Signals? Nö, out reicht völlig... Ich glaube aber, dass dir das mit den Signalen und wo man in/out braucht, irgendwie noch etwas unklar ist. in/out&Co werden nur für den Modus von Ports benötigt, das steht dann auch in der entity/component-Deklaration. Daran "aussen" angeschlossene Signale werden in der Architecture drüber definiert und haben gar keinen Modus (ausser es sind wieder gleich Ports). > Oder lassen sich buffer's nur intern, also innerhalb der > Komponenten verwenden? buffer-Ports sind wie out, nur dass sie innerhalb der instanziierten Komponente auch gelesen werden können. Normalerweise geht das mit out ja nicht. Die Legende sagt, dass man sie aber eher vermeiden sollte, weil nicht alle Syntheseprogramme sie verstehen und das direkte Durchreichen an äussere Ports auch wieder buffer benötigt. Ob's stimmt, kann ich nicht sagen, habe sie noch nie benutzt, geht auch ohne.
Du kannst doch im Top-Level Modul auch Signale verwenden, die aus den Untermodulen getrieben werden und dann im Top Level beliebig verwendet werden können. Da wird gern ein _i hinten dran geschrieben, da sieht man sofort, dass es das gleiche Signal wie der Port ist, aber eben intern.
Georg A. schrieb: > Die Legende sagt, dass man sie aber eher vermeiden sollte, weil > nicht alle Syntheseprogramme sie verstehen und das direkte Durchreichen > an äussere Ports auch wieder buffer benötigt. Ob's stimmt, kann ich > nicht sagen, habe sie noch nie benutzt, geht auch ohne. Stimmt denn die Legende? :D Also ich habe auch gehört, dass man buffer eher vermeiden sollte, liegt das an der Synthesefähigkeit oder gibt es noch andere Gründe? Danke
Felix O. schrieb: > Weiß das jemand, bzw. hat jemand damit Erfahrungen gemacht? In den XST User guides steht einiges, bspw zum Thema mixed project (VHDL+verilog) im xst.pdf: "XST does not support VHDL buffer and linkage ports." an anderer Stelle (xst_v6s6.pdf) bei der es um VHDL only geht steht: "NOT RECOMMENDED Coding Example WITH Buffer Port Mode Xilinx does not recommend using buffer port mode. Although VHDL allows buffer port mode when a signal is used both internally and as an output port (when there is only one internal driver), buffer ports are a potential source of errors during synthesis, and complicate validation of post-synthesis results through simulation." Also mehr Fallstricke als Vorteile, MfG,
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.