Forum: FPGA, VHDL & Co. Vivado MMCM VDHL Instanz erzeugen


von Michael (Gast)


Lesenswert?

Hallo Leute,

bisher habe ich immer mit ISE 14.7 gearbeitet. Nun möchte ich mal den
neuen Artix 7 FPGA ausprobieren und habe hierzu den VIVADO 2020.1
installiert. Nun habe ich ein Projekt erstellt und unter den
Projekteinstellungn VHDL ausgewähl.

Als nächste habe den IP-Core Generator gestartet und den IP-Core MMCM
gewählt. Dort habe ich alles konfiguriert und dann auf OK geklickt.
Anschließen erscheint das XCI-File in meinem Projekt. Jetzt möchte ich
den Core verwenden. Normalerweise kenne ich das so das es dann einen
VHDL-Wrapper gibt und ich somit die Instanz benutzen kann. Jedoch gibt
es nur einen Verilog-Wrapper mit dem ich mich leider nicht besonders gut
auskenne.

Wie kann ich den konfigurierten IO-Core denn jetzt verwenden?

von Gustl B. (-gb-)


Lesenswert?

Im Ordner des IPs liegt eine .vho Datei. Die ist genau das was du 
suchst.

von Michael (Gast)


Lesenswert?

Allein die neue Ordnerstruktur ist ja ein Horror und dann die ultra 
lange Namen und die ganzen Pfade. Wer soll da denn noch durchsehen.

von Michael (Gast)


Lesenswert?

Vielen Dank ich glaube ich habe es gefunden.



------------------------------------------------------------------------ 
------
--  Output     Output      Phase    Duty Cycle   Pk-to-Pk     Phase
--   Clock     Freq (MHz)  (degrees)    (%)     Jitter (ps)  Error (ps)
------------------------------------------------------------------------ 
------
-- clk_out1__50.00000______0.000______50.0______522.315____668.310
--
------------------------------------------------------------------------ 
------
-- Input Clock   Freq (MHz)    Input Jitter (UI)
------------------------------------------------------------------------ 
------
-- __primary__________12.000____________0.010


-- The following code must appear in the VHDL architecture header:
------------- Begin Cut here for COMPONENT Declaration ------ COMP_TAG
component MMCM_IP
port
 (-- Clock in ports
  -- Clock out ports
  clk_out1          : out    std_logic;
  -- Status and control signals
  reset             : in     std_logic;
  locked            : out    std_logic;
  clk_in1           : in     std_logic
 );
end component;

-- COMP_TAG_END ------ End COMPONENT Declaration ------------
-- The following code must appear in the VHDL architecture
-- body. Substitute your own instance name and net names.
------------- Begin Cut here for INSTANTIATION Template ----- INST_TAG
your_instance_name : MMCM_IP
   port map (
  -- Clock out ports
   clk_out1 => clk_out1,
  -- Status and control signals
   reset => reset,
   locked => locked,
   -- Clock in ports
   clk_in1 => clk_in1
 );

von Michael (Gast)


Lesenswert?

Auch die ganzen Ausgaben sind so eindeutig

export_simulation -of_objects [get_files {{d:/FPGA 
Firmware/Artix7_SDK_CMOD_A7/Artix7_SDK_CMOD_A7.srcs/sources_1/ip/MMCM_IP 
/MMCM_IP.xci}}]  -directory {D:/FPGA 
Firmware/Artix7_SDK_CMOD_A7/Artix7_SDK_CMOD_A7.ip_user_files/sim_scripts 
}  -ip_user_files_dir {D:/FPGA 
Firmware/Artix7_SDK_CMOD_A7/Artix7_SDK_CMOD_A7.ip_user_files} 
-ipstatic_source_dir {D:/FPGA 
Firmware/Artix7_SDK_CMOD_A7/Artix7_SDK_CMOD_A7.ip_user_files/ipstatic} 
-lib_map_path [list {modelsim=D:/FPGA 
Firmware/Artix7_SDK_CMOD_A7/Artix7_SDK_CMOD_A7.cache/compile_simlib/mode 
lsim}  {questa=D:/FPGA 
Firmware/Artix7_SDK_CMOD_A7/Artix7_SDK_CMOD_A7.cache/compile_simlib/ques 
ta}  {riviera=D:/FPGA 
Firmware/Artix7_SDK_CMOD_A7/Artix7_SDK_CMOD_A7.cache/compile_simlib/rivi 
era}  {activehdl=D:/FPGA 
Firmware/Artix7_SDK_CMOD_A7/Artix7_SDK_CMOD_A7.cache/compile_simlib/acti 
vehdl}]  -use_ip_compiled_libs -force -quiet

Länger gets kaum noch

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Die ganzen generierten Dateien sollte man bei Vivado auch nicht ändern, 
sondern sich seine eigene Quelltextstruktur außerhalb dieses Bereichs 
schaffen. Außerdem hat es sich als sehr praktikabel erwiesen, Projekte 
auf Basis eines Blockdesign zu erstellen und anschließend das Projekt 
samt Blockdesign als TCL-Skript zu exportieren.

Noch ein Hinweis: Mit Leerzeichen in Datei- oder Verzeichnisnamen kommst 
Du früher oder später in Teufels Küche...

von Michael (Gast)


Lesenswert?

Ich habe schon immer Blockdesigns in ISE benutzt und Components im 
Schematic minteinander verbunden. Dies war viel übersichtlicher als nur 
Code zu schreiben. Ich dachte jedoch das der "alte ISE" Schematic Editor 
schon schlecht war aber der neue ist ja noch viel schlimmer. Das sieht 
ja aus wie Kraut und Rüben alles durcheinander verbunden.

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
Noch kein Account? Hier anmelden.