关键问题
如果您在 MegaWi 从而界面中选择 VHDL 并生成 带有 UniPHY IP 核的 DDR2 或 DDR3 SDRAM 控制器(生成的) 内核在 Verilog HDL 中。
要生成 VHDL IP 内核,请按照以下步骤操作:
- 在文本编辑器中打开 Quartus II 目录>\ip\altera\uniphy\lib\common_ddrx.tcl。
- 搜索出现的字符串
LANGUAGE
" 在以下代码中:append param_str ",LANGUAGE=[get_generation_property HDL_LANGUAGE]
" - 将此行更改为以下代码:
append param_str ",LANGUAGE=vhdl"
- 继续搜索字符串的下一次发生
LANGUAGE
" 这出现在以下代码中: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\]" }
- 评论如果行, 其他行, 和块
条件部分中的代码使代码在
else
" block always 执行,与以下代码类似:# 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\]" # }
- 使用 MegaWi waitd 接口生成基于 UniPHY 的接口 IP 核。
要生成 Verilog HDL IP 内核,恢复原始内核 common_ddrx.tcl 文件。