Hallo allesamt, ich hoffe mal dass ich ne einfache Frage habe - aber aus den Ergebnissen die mir Google ausspuckt...werd ich nicht wirklich schlau. Ich habe ein Simulationsmodell welches in Verilog geschrieben wurde. Bisher habe ich die notwendigen ´define-Parameter via Modelsim .do-File übergeben (vlog ... +define+..). Da ich dieses Simulationsmodell nun für verschiedene Boards einsetzen möchte, finde ich es etwas umständlich die Parameter im do-File abzulegen, bzw. ich habe dann doppelte Datenhaltung da ich die gleichen Parameter in der VHDL-Testbench ebenfalls benötige. Gibt es eine Methode dem Verilog-Modul die entsprechenden Parameter aus der VHDL-Testbench heraus zu übergeben? Bzw. wie übergebe ich überhaupt Parameter an ein Verilogmodul aus VHDL heraus? Danke schon mal. Gruß
Abhängig vom Simulator sollte das über parameter (also das was in Verilog mit dem Schlüsselwort parameter gekennzeichnet ist; nicht `define) gehen. Denen kann dann aus einem übergeordneten VHDL-Modul über die Generic-Schnittstelle ein neuer Wert übergeben werden. Das müsste sich dann so verhalten, als würdest du bei einem reinen VHDL-Projekt Generics an ein Submodul übergeben. Mit define wirst du wohl nicht weit kommen. Hier ein Beispiel: VHDL Toplevel
1 | u_bla : bla |
2 | generic_map ( |
3 | par => x"BABEBABE" |
4 | )
|
5 | ...
|
Verilog Submodul
1 | module bla ( |
2 | ...); |
3 | |
4 | parameter par = 32'hAFFEAFFE; |
5 | ... |
Hi, danke für die schnelle Antwort. Leider die Antwort die ich befürchtet hab...so ein Mist, das ganze Simulationsmodell passt sich über `ifdef an. Tja, aus mit einem `ifdef werd ich vermutlich keinen Parameterwert abfragen können, oder? Ich vermute mal dass die `define und ´ifdef (usw) quasi Präprozesseranweisungen wie in C sind, oder?
Marc Schmitt schrieb: > da ich die gleichen > Parameter in der VHDL-Testbench ebenfalls benötige. Du könntest die Parameter per
1 | > vsim -help |
2 | ... |
3 | -g<Name>=<Value> Specify generic/parameter default Value for Name |
4 | ... |
der VHDL-Testbench zukommen lassen. Duke
Marc Schmitt schrieb: > Ich vermute mal dass die `define und ´ifdef (usw) > quasi Präprozesseranweisungen wie in C sind, oder? Ja. Deshalb müssen sie auch zur Übersetzungszeit definiert sein, und nicht erst bei der Simulation, bzw. Elaboration. -- Marcus
Duke Scarring schrieb: > Du könntest die Parameter per> vsim -help > ... > -g<Name>=<Value> Specify generic/parameter default Value for Name > ... > der VHDL-Testbench zukommen lassen. Leider auch nicht geeignet, da die unterschiedlichen Parametersätze aus Packages geladen werden...und ich diese Werte gerne an die das Verilog-Simulationsmodell (Micron-DDR2-Modell) weitergeleitet hätte. Marcus Harnisch schrieb: > Ja. Deshalb müssen sie auch zur Übersetzungszeit definiert sein, und > nicht erst bei der Simulation, bzw. Elaboration. Wie ich es befürchtet habe. Aber trotzdem danke für die Antwort.
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.