Kritisches Problem
Wenn Sie VHDL in der MegaWi saharai-Schnittstelle wählen und generieren einen DDR2- oder DDR3-SDRAM-Controller mit UniPHY-IP-Kern, dem generierten Der Kern befindet sich in Verilog HDL.
Um einen VHDL-IP-Kern zu generieren, führen Sie die folgenden Schritte durch:
- Öffnen Sie in einem Texteditor <Quartus II Verzeichnis>\ip\altera\uniphy\lib\common_ddrx.tcl.
- Suchen Sie nach der angezeigten Zeichenkette "
LANGUAGE
". im folgenden Code:append param_str ",LANGUAGE=[get_generation_property HDL_LANGUAGE]
" - Ändern Sie diese Zeile in den folgenden Code:
append param_str ",LANGUAGE=vhdl"
- Fahren Sie mit der Suche nach dem nächsten Auftreten der Zeichenkette fort
"
LANGUAGE
", das im folgenden Code angezeigt wird:if {[string compare -nocase [get_generation_property HDL_LANGUAGE] verilog] == 0} { add_file /.v {SYNTHESIS SUBDIR} puts "set_global_assignment -name VERILOG_FILE \[file join $::quartus(qip_path) .v\]" } else { add_file /.vhd {SYNTHESIS SUBDIR} puts "set_global_assignment -name VHDL_FILE \[file join $::quartus(qip_path) .vhd\]" }
- Kommentieren Sie die if-Zeile, die else-Zeile und den Block
des Codes im Bedingungsabschnitt, damit der Code im "
else
" Der Block wird immer ausgeführt, ähnlich dem folgenden Code:# if {[string compare -nocase [get_generation_property HDL_LANGUAGE] verilog] == 0} { # add_file /.v {SYNTHESIS SUBDIR} # puts "set_global_assignment -name VERILOG_FILE \[file join $::quartus(qip_path) .v\]" # } else { add_file /.vhd {SYNTHESIS SUBDIR} puts "set_global_assignment -name VHDL_FILE \[file join $::quartus(qip_path) .vhd\]" # }
- Verwenden Sie die MegaWistellige Schnittstelle, um eine UniPHY-basiert zu generieren IP-Kern.
Um einen Verilog HDL IP-Kern zu generieren, stellen Sie das Original wieder her common_ddrx.tcl-Datei .