diff --git a/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/compile_ip.tcl b/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/compile_ip.tcl new file mode 100644 index 0000000000000000000000000000000000000000..0287e1c1f8a6268f67d2fb5d1edc10946ab4c8dc --- /dev/null +++ b/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/compile_ip.tcl @@ -0,0 +1,155 @@ +#------------------------------------------------------------------------------ +# +# Copyright (C) 2014 +# ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/> +# JIVE (Joint Institute for VLBI in Europe) <http://www.jive.nl/> +# P.O.Box 2, 7990 AA Dwingeloo, The Netherlands +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# +#------------------------------------------------------------------------------ + +# This file is based on Megawizard-generated file msim_setup.tcl. + +set IP_DIR "$env(RADIOHDL)/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/generated/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_sim" + +# Assume library work already exists + +# Compile the design files in correct order and map them all to library work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_mm_st_converter.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_addr_cmd.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_addr_cmd_wrap.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_ddr2_odt_gen.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_ddr3_odt_gen.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_lpddr2_addr_cmd.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_odt_gen.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_rdwr_data_tmg.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_arbiter.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_burst_gen.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_cmd_gen.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_csr.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_buffer.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_buffer_manager.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_burst_tracking.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_dataid_manager.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_fifo.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_list.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_rdata_path.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_wdata_path.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_ecc_decoder.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_ecc_decoder_32_syn.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_ecc_decoder_64_syn.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_ecc_encoder.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_ecc_encoder_32_syn.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_ecc_encoder_64_syn.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_ecc_encoder_decoder_wrapper.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_axi_st_converter.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_input_if.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_rank_timer.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_sideband.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_tbp.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_timing_param.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_controller.v" -work work +vlog +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_ddrx_controller_st_top.v" -work work +vlog -sv +incdir+$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/alt_mem_if_nextgen_ddr3_controller_core.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_mem_if_dll_stratixiv.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_mem_if_oct_stratixiv.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_c0.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_ram.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_avalon_sc_fifo.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_merlin_master_translator.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_mem_if_sequencer_cpu_no_ifdef_params_sim_cpu_inst_test_bench.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/sequencer_scc_sv_wrapper.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_inst_ROM_no_ifdef_params.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_reset_synchronizer.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_write_decoder.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_bitcheck.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_read_datapath.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_reset_controller.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_ddr3.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_di_buffer_wrap.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_jumplogic.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_ac_ROM_reg.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/sequencer_data_mgr.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/sequencer_scc_siii_wrapper.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0_addr_router.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_merlin_master_agent.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0_cmd_xbar_demux.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_data_decoder.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/sequencer_scc_siii_phase_decode.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0_cmd_xbar_mux_003.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0_cmd_xbar_demux_001.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_pattern_fifo.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_dm_decoder.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_merlin_slave_agent.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/sequencer_phy_mgr.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_mem_if_sequencer_cpu_no_ifdef_params_sim_cpu_inst.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/sequencer_scc_sv_phase_decode.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0_id_router.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_merlin_slave_translator.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_inst_ROM_reg.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/sequencer_scc_reg_file.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_lfsr12.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0_rsp_xbar_demux_003.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_ac_ROM_no_ifdef_params.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_lfsr72.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0_rsp_xbar_mux.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_datamux.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_data_broadcast.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/sequencer_scc_mgr.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_ram_csr.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_lfsr36.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_generic.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0_addr_router_001.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_core.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_merlin_burst_uncompressor.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_merlin_arbitrator.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/sequencer_scc_acv_wrapper.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/sequencer_scc_acv_phase_decode.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/rw_manager_di_buffer.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altera_mem_if_sequencer_mem_no_ifdef_params.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0_id_router_003.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/sequencer_reg_file.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0_irq_mapper.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/afi_mux_ddr3_ddrx.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_clock_pair_generator.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_read_valid_selector.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_addr_cmd_datapath.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_reset.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_acv_ldc.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_addr_cmd_pads.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_addr_cmd_ldc_pads.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_addr_cmd_ldc_pad.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/addr_cmd_non_ldc_pad.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_memphy.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_reset_sync.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_new_io_pads.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_fr_cycle_shifter.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_read_datapath.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_write_datapath.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_hr_to_fr.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_simple_ddio_out.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_sequencer_mux_bridge.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_phy_csr.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_iss_probe.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_flop_mem.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_p0_altdqdqs.v" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altdq_dqs2_ddio_3reg_stratixiv.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altdq_dqs2_abstract.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/altdq_dqs2_cal_delays.sv" -work work +vlog -sv "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_pll0.sv" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_0002.v" -work work +vlog "$IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800.v" diff --git a/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/copy_hex_files.tcl b/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/copy_hex_files.tcl new file mode 100644 index 0000000000000000000000000000000000000000..140a87ea3a8911407ef9f48f8e6b16e6eae83e59 --- /dev/null +++ b/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/copy_hex_files.tcl @@ -0,0 +1,32 @@ +#------------------------------------------------------------------------------ +# +# Copyright (C) 2014 +# ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/> +# JIVE (Joint Institute for VLBI in Europe) <http://www.jive.nl/> +# P.O.Box 2, 7990 AA Dwingeloo, The Netherlands +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# +#------------------------------------------------------------------------------ + +# This file is based on Megawizard-generated file msim_setup.tcl. + +set IP_DIR "$env(RADIOHDL)/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/generated/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_sim" + +# Copy ROM/RAM files to simulation directory +if {[file isdirectory $IP_DIR]} { + file copy -force $IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0_sequencer_mem.hex ./ + file copy -force $IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0_AC_ROM.hex ./ + file copy -force $IP_DIR/ip_stratixiv_ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800_s0_inst_ROM.hex ./ +} diff --git a/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/generate_ip.sh b/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/generate_ip.sh new file mode 100755 index 0000000000000000000000000000000000000000..606a1e3bef94fd9f737b521a308dde83061061f0 --- /dev/null +++ b/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/generate_ip.sh @@ -0,0 +1,50 @@ +#!/bin/bash +# -------------------------------------------------------------------------- # +# +# Copyright (C) 2014 +# ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/> +# JIVE (Joint Institute for VLBI in Europe) <http://www.jive.nl/> +# P.O.Box 2, 7990 AA Dwingeloo, The Netherlands +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# +# -------------------------------------------------------------------------- # +# +# Purpose: Generate ddr3 uniphy IP with MegaWizard +# Description: +# Generate the IP in a separate generated/ subdirectory. Therefore first copy the MegaWizard variation file in the 'generated' output dir, because: +# 1) setting the output dir is not an option in the MegaWizard +# 2) The MegaWizard overwrites the variation file sometimes - we don't want that as it could be hand-modified with e.g. added generics +# +# Usage: +# +# ./generate_ip.sh +# +# Remarks: +# . This dedicated script is derived from the generic script $UNB/Firmware/software/build/unb_mgw +# + +# Tool settings for selected target "unb1" with stratixiv +. ${RADIOHDL}/tools/quartus/set_quartus unb1 + +# Generate IP +if ! [ -d "generated" ]; then + mkdir generated +fi +cd generated +cp ../ip_stratixiv_ddr3_uphy_16g_dual_rank_800.v . + +qmegawiz -silent -f:$UNB/Firmware/software/build/unb_mgw_params.txt ip_stratixiv_ddr3_uphy_16g_dual_rank_800.v + +#rm ip_stratixiv_ddr3_uphy_16g_dual_rank_800.v diff --git a/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/hdllib.cfg b/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/hdllib.cfg new file mode 100644 index 0000000000000000000000000000000000000000..8c7e30a9beabbeff86521480f20ebfb673e2c3ad --- /dev/null +++ b/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/hdllib.cfg @@ -0,0 +1,17 @@ +hdl_lib_name = ip_stratixiv_ddr3_uphy_16g_dual_rank_800 +hdl_library_clause_name = ip_stratixiv_ddr3_uphy_16g_dual_rank_800_lib +hdl_lib_uses_synth = +hdl_lib_uses_sim = + +hdl_lib_technology = ip_stratixiv + +modelsim_compile_ip_files = + $RADIOHDL/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/compile_ip.tcl + $RADIOHDL/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/copy_hex_files.tcl + +synth_files = + +test_bench_files = + +quartus_qip_files = + generated/ip_stratixiv_ddr3_uphy_16g_dual_rank_800.qip diff --git a/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800.v b/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800.v new file mode 100644 index 0000000000000000000000000000000000000000..e90756b1160c9a6c0fecf3b2d4da3e84edc80e45 --- /dev/null +++ b/libraries/technology/ip_stratixiv/ddr3_uphy_16g_dual_rank_800/ip_stratixiv_ddr3_uphy_16g_dual_rank_800.v @@ -0,0 +1,390 @@ +// megafunction wizard: %DDR3 SDRAM Controller with UniPHY v11.1% +// GENERATION: XML +// ip_stratixiv_ddr3_uphy_16g_dual_rank_800.v + +// Generated using ACDS version 11.1sp2 259 at 2015.08.17.16:33:44 + +`timescale 1 ps / 1 ps +module ip_stratixiv_ddr3_uphy_16g_dual_rank_800 ( + input wire pll_ref_clk, // pll_ref_clk.clk + input wire global_reset_n, // global_reset.reset_n + input wire soft_reset_n, // soft_reset.reset_n + output wire afi_clk, // afi_clk.clk + output wire afi_half_clk, // afi_half_clk.clk + output wire afi_reset_n, // afi_reset.reset_n + output wire [15:0] mem_a, // memory.mem_a + output wire [2:0] mem_ba, // .mem_ba + output wire [1:0] mem_ck, // .mem_ck + output wire [1:0] mem_ck_n, // .mem_ck_n + output wire [1:0] mem_cke, // .mem_cke + output wire [1:0] mem_cs_n, // .mem_cs_n + output wire [7:0] mem_dm, // .mem_dm + output wire mem_ras_n, // .mem_ras_n + output wire mem_cas_n, // .mem_cas_n + output wire mem_we_n, // .mem_we_n + output wire mem_reset_n, // .mem_reset_n + inout wire [63:0] mem_dq, // .mem_dq + inout wire [7:0] mem_dqs, // .mem_dqs + inout wire [7:0] mem_dqs_n, // .mem_dqs_n + output wire [1:0] mem_odt, // .mem_odt + output wire avl_ready, // avl.waitrequest_n + input wire avl_burstbegin, // .beginbursttransfer + input wire [28:0] avl_addr, // .address + output wire avl_rdata_valid, // .readdatavalid + output wire [255:0] avl_rdata, // .readdata + input wire [255:0] avl_wdata, // .writedata + input wire [31:0] avl_be, // .byteenable + input wire avl_read_req, // .read + input wire avl_write_req, // .write + input wire [6:0] avl_size, // .burstcount + output wire local_init_done, // status.local_init_done + output wire local_cal_success, // .local_cal_success + output wire local_cal_fail, // .local_cal_fail + input wire oct_rdn, // oct.rdn + input wire oct_rup, // .rup + output wire pll_mem_clk, // pll_sharing.pll_mem_clk + output wire pll_write_clk, // .pll_write_clk + output wire pll_write_clk_pre_phy_clk, // .pll_write_clk_pre_phy_clk + output wire pll_addr_cmd_clk, // .pll_addr_cmd_clk + output wire pll_locked, // .pll_locked + output wire pll_avl_clk, // .pll_avl_clk + output wire pll_config_clk, // .pll_config_clk + output wire [5:0] dll_delayctrl // dll_sharing.dll_delayctrl + ); + + ip_stratixiv_ddr3_uphy_16g_dual_rank_800_0002 ip_stratixiv_ddr3_uphy_16g_dual_rank_800_inst ( + .pll_ref_clk (pll_ref_clk), // pll_ref_clk.clk + .global_reset_n (global_reset_n), // global_reset.reset_n + .soft_reset_n (soft_reset_n), // soft_reset.reset_n + .afi_clk (afi_clk), // afi_clk.clk + .afi_half_clk (afi_half_clk), // afi_half_clk.clk + .afi_reset_n (afi_reset_n), // afi_reset.reset_n + .mem_a (mem_a), // memory.mem_a + .mem_ba (mem_ba), // .mem_ba + .mem_ck (mem_ck), // .mem_ck + .mem_ck_n (mem_ck_n), // .mem_ck_n + .mem_cke (mem_cke), // .mem_cke + .mem_cs_n (mem_cs_n), // .mem_cs_n + .mem_dm (mem_dm), // .mem_dm + .mem_ras_n (mem_ras_n), // .mem_ras_n + .mem_cas_n (mem_cas_n), // .mem_cas_n + .mem_we_n (mem_we_n), // .mem_we_n + .mem_reset_n (mem_reset_n), // .mem_reset_n + .mem_dq (mem_dq), // .mem_dq + .mem_dqs (mem_dqs), // .mem_dqs + .mem_dqs_n (mem_dqs_n), // .mem_dqs_n + .mem_odt (mem_odt), // .mem_odt + .avl_ready (avl_ready), // avl.waitrequest_n + .avl_burstbegin (avl_burstbegin), // .beginbursttransfer + .avl_addr (avl_addr), // .address + .avl_rdata_valid (avl_rdata_valid), // .readdatavalid + .avl_rdata (avl_rdata), // .readdata + .avl_wdata (avl_wdata), // .writedata + .avl_be (avl_be), // .byteenable + .avl_read_req (avl_read_req), // .read + .avl_write_req (avl_write_req), // .write + .avl_size (avl_size), // .burstcount + .local_init_done (local_init_done), // status.local_init_done + .local_cal_success (local_cal_success), // .local_cal_success + .local_cal_fail (local_cal_fail), // .local_cal_fail + .oct_rdn (oct_rdn), // oct.rdn + .oct_rup (oct_rup), // .rup + .pll_mem_clk (pll_mem_clk), // pll_sharing.pll_mem_clk + .pll_write_clk (pll_write_clk), // .pll_write_clk + .pll_write_clk_pre_phy_clk (pll_write_clk_pre_phy_clk), // .pll_write_clk_pre_phy_clk + .pll_addr_cmd_clk (pll_addr_cmd_clk), // .pll_addr_cmd_clk + .pll_locked (pll_locked), // .pll_locked + .pll_avl_clk (pll_avl_clk), // .pll_avl_clk + .pll_config_clk (pll_config_clk), // .pll_config_clk + .dll_delayctrl (dll_delayctrl) // dll_sharing.dll_delayctrl + ); + +endmodule +// Retrieval info: <?xml version="1.0"?> +//<!-- +// Generated by Altera MegaWizard Launcher Utility version 1.0 +// ************************************************************ +// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE! +// ************************************************************ +// Copyright (C) 1991-2015 Altera Corporation +// Any megafunction design, and related net list (encrypted or decrypted), +// support information, device programming or simulation file, and any other +// associated documentation or information provided by Altera or a partner +// under Altera's Megafunction Partnership Program may be used only to +// program PLD devices (but not masked PLD devices) from Altera. Any other +// use of such megafunction design, net list, support information, device +// programming or simulation file, or any other related documentation or +// information is prohibited for any other purpose, including, but not +// limited to modification, reverse engineering, de-compiling, or use with +// any other silicon devices, unless such use is explicitly licensed under +// a separate agreement with Altera or a megafunction partner. Title to +// the intellectual property, including patents, copyrights, trademarks, +// trade secrets, or maskworks, embodied in any such megafunction design, +// net list, support information, device programming or simulation file, or +// any other related documentation or information provided by Altera or a +// megafunction partner, remains with Altera, the megafunction partner, or +// their respective licensors. No other licenses, including any licenses +// needed under any third party's intellectual property, are provided herein. +//--> +// Retrieval info: <instance entity-name="altera_mem_if_ddr3_emif" version="11.1" > +// Retrieval info: <generic name="MEM_VENDOR" value="Micron" /> +// Retrieval info: <generic name="MEM_FORMAT" value="UNBUFFERED" /> +// Retrieval info: <generic name="AC_PARITY" value="false" /> +// Retrieval info: <generic name="RDIMM_CONFIG" value="0" /> +// Retrieval info: <generic name="DISCRETE_FLY_BY" value="true" /> +// Retrieval info: <generic name="DEVICE_DEPTH" value="1" /> +// Retrieval info: <generic name="MEM_MIRROR_ADDRESSING" value="0" /> +// Retrieval info: <generic name="MEM_CLK_FREQ_MAX" value="800.0" /> +// Retrieval info: <generic name="MEM_ROW_ADDR_WIDTH" value="16" /> +// Retrieval info: <generic name="MEM_COL_ADDR_WIDTH" value="11" /> +// Retrieval info: <generic name="MEM_DQ_WIDTH" value="64" /> +// Retrieval info: <generic name="MEM_DQ_PER_DQS" value="8" /> +// Retrieval info: <generic name="MEM_BANKADDR_WIDTH" value="3" /> +// Retrieval info: <generic name="MEM_IF_DM_PINS_EN" value="true" /> +// Retrieval info: <generic name="MEM_IF_DQSN_EN" value="true" /> +// Retrieval info: <generic name="MEM_NUMBER_OF_DIMMS" value="1" /> +// Retrieval info: <generic name="MEM_NUMBER_OF_RANKS_PER_DIMM" value="2" /> +// Retrieval info: <generic name="MEM_NUMBER_OF_RANKS_PER_DEVICE" value="1" /> +// Retrieval info: <generic name="MEM_CK_WIDTH" value="2" /> +// Retrieval info: <generic name="ALTMEMPHY_COMPATIBLE_MODE" value="false" /> +// Retrieval info: <generic name="NEXTGEN" value="true" /> +// Retrieval info: <generic name="MEM_IF_BOARD_BASE_DELAY" value="10" /> +// Retrieval info: <generic name="MEM_IF_SIM_VALID_WINDOW" value="0" /> +// Retrieval info: <generic name="MEM_GUARANTEED_WRITE_INIT" value="false" /> +// Retrieval info: <generic name="MEM_VERBOSE" value="true" /> +// Retrieval info: <generic name="MEM_BL" value="OTF" /> +// Retrieval info: <generic name="MEM_BT" value="Sequential" /> +// Retrieval info: <generic name="MEM_ASR" value="Manual" /> +// Retrieval info: <generic name="MEM_SRT" value="Normal" /> +// Retrieval info: <generic name="MEM_PD" value="DLL off" /> +// Retrieval info: <generic name="MEM_DRV_STR" value="RZQ/7" /> +// Retrieval info: <generic name="MEM_DLL_EN" value="true" /> +// Retrieval info: <generic name="MEM_RTT_NOM" value="RZQ/4" /> +// Retrieval info: <generic name="MEM_RTT_WR" value="RZQ/4" /> +// Retrieval info: <generic name="MEM_WTCL" value="5" /> +// Retrieval info: <generic name="MEM_ATCL" value="Disabled" /> +// Retrieval info: <generic name="MEM_TCL" value="6" /> +// Retrieval info: <generic name="MEM_AUTO_LEVELING_MODE" value="true" /> +// Retrieval info: <generic name="MEM_USER_LEVELING_MODE" value="Leveling" /> +// Retrieval info: <generic name="MEM_INIT_EN" value="false" /> +// Retrieval info: <generic name="MEM_INIT_FILE" value="" /> +// Retrieval info: <generic name="DAT_DATA_WIDTH" value="32" /> +// Retrieval info: <generic name="TIMING_TIS" value="215" /> +// Retrieval info: <generic name="TIMING_TIH" value="285" /> +// Retrieval info: <generic name="TIMING_TDS" value="90" /> +// Retrieval info: <generic name="TIMING_TDH" value="160" /> +// Retrieval info: <generic name="TIMING_TDQSQ" value="200" /> +// Retrieval info: <generic name="TIMING_TQH" value="0.38" /> +// Retrieval info: <generic name="TIMING_TDQSCK" value="400" /> +// Retrieval info: <generic name="TIMING_TDQSS" value="0.25" /> +// Retrieval info: <generic name="TIMING_TQSH" value="0.38" /> +// Retrieval info: <generic name="TIMING_TDSH" value="0.2" /> +// Retrieval info: <generic name="TIMING_TDSS" value="0.2" /> +// Retrieval info: <generic name="MEM_TINIT_US" value="640" /> +// Retrieval info: <generic name="MEM_TMRD_CK" value="4" /> +// Retrieval info: <generic name="MEM_TRAS_NS" value="37.5" /> +// Retrieval info: <generic name="MEM_TRCD_NS" value="15.0" /> +// Retrieval info: <generic name="MEM_TRP_NS" value="15.0" /> +// Retrieval info: <generic name="MEM_TREFI_US" value="7.8" /> +// Retrieval info: <generic name="MEM_TRFC_NS" value="350.0" /> +// Retrieval info: <generic name="CFG_TCCD_NS" value="2.5" /> +// Retrieval info: <generic name="MEM_TWR_NS" value="15.0" /> +// Retrieval info: <generic name="MEM_TWTR" value="4" /> +// Retrieval info: <generic name="MEM_TFAW_NS" value="40.0" /> +// Retrieval info: <generic name="MEM_TRRD_NS" value="10.0" /> +// Retrieval info: <generic name="MEM_TRTP_NS" value="10.0" /> +// Retrieval info: <generic name="POWER_OF_TWO_BUS" value="false" /> +// Retrieval info: <generic name="SOPC_COMPAT_RESET" value="false" /> +// Retrieval info: <generic name="AVL_MAX_SIZE" value="64" /> +// Retrieval info: <generic name="BYTE_ENABLE" value="true" /> +// Retrieval info: <generic name="ENABLE_CTRL_AVALON_INTERFACE" value="true" /> +// Retrieval info: <generic name="CTL_DEEP_POWERDN_EN" value="false" /> +// Retrieval info: <generic name="CTL_SELF_REFRESH_EN" value="false" /> +// Retrieval info: <generic name="AUTO_POWERDN_EN" value="false" /> +// Retrieval info: <generic name="MEM_AUTO_PD_CYCLES" value="0" /> +// Retrieval info: <generic name="CTL_USR_REFRESH_EN" value="false" /> +// Retrieval info: <generic name="CTL_AUTOPCH_EN" value="false" /> +// Retrieval info: <generic name="ADDR_ORDER" value="1" /> +// Retrieval info: <generic name="CTL_LOOK_AHEAD_DEPTH" value="4" /> +// Retrieval info: <generic name="CONTROLLER_LATENCY" value="5" /> +// Retrieval info: <generic name="CFG_REORDER_DATA" value="false" /> +// Retrieval info: <generic name="CFG_STARVE_LIMIT" value="10" /> +// Retrieval info: <generic name="CTL_CSR_ENABLED" value="false" /> +// Retrieval info: <generic name="CTL_CSR_CONNECTION" value="INTERNAL_JTAG" /> +// Retrieval info: <generic name="CTL_ECC_ENABLED" value="false" /> +// Retrieval info: <generic name="CTL_HRB_ENABLED" value="false" /> +// Retrieval info: <generic name="CTL_ECC_AUTO_CORRECTION_ENABLED" value="false" /> +// Retrieval info: <generic name="MULTICAST_EN" value="false" /> +// Retrieval info: <generic name="CTL_DYNAMIC_BANK_ALLOCATION" value="false" /> +// Retrieval info: <generic name="CTL_DYNAMIC_BANK_NUM" value="4" /> +// Retrieval info: <generic name="DEBUG_MODE" value="false" /> +// Retrieval info: <generic name="ENABLE_BURST_MERGE" value="false" /> +// Retrieval info: <generic name="CTL_ENABLE_BURST_INTERRUPT" value="false" /> +// Retrieval info: <generic name="CTL_ENABLE_BURST_TERMINATE" value="false" /> +// Retrieval info: <generic name="LOCAL_ID_WIDTH" value="8" /> +// Retrieval info: <generic name="WRBUFFER_ADDR_WIDTH" value="6" /> +// Retrieval info: <generic name="USE_MM_ADAPTOR" value="true" /> +// Retrieval info: <generic name="USE_AXI_ADAPTOR" value="false" /> +// Retrieval info: <generic name="HCX_COMPAT_MODE" value="false" /> +// Retrieval info: <generic name="CTL_CMD_QUEUE_DEPTH" value="8" /> +// Retrieval info: <generic name="CTL_CSR_READ_ONLY" value="1" /> +// Retrieval info: <generic name="CFG_DATA_REORDERING_TYPE" value="INTER_BANK" /> +// Retrieval info: <generic name="NUM_OF_PORTS" value="1" /> +// Retrieval info: <generic name="ENABLE_BONDING" value="false" /> +// Retrieval info: <generic name="ENABLE_USER_ECC" value="false" /> +// Retrieval info: <generic name="AVL_DATA_WIDTH_PORT" value="32,32,32,32,32,32" /> +// Retrieval info: <generic name="PRIORITY_PORT" value="0,0,0,0,0,0" /> +// Retrieval info: <generic name="WEIGHT_PORT" value="0,0,0,0,0,0" /> +// Retrieval info: <generic name="CPORT_TYPE_PORT" value="Bidirectional,Bidirectional,Bidirectional,Bidirectional,Bidirectional,Bidirectional" /> +// Retrieval info: <generic name="ENABLE_EMIT_BFM_MASTER" value="false" /> +// Retrieval info: <generic name="REF_CLK_FREQ" value="200.0" /> +// Retrieval info: <generic name="REF_CLK_FREQ_PARAM_VALID" value="false" /> +// Retrieval info: <generic name="REF_CLK_FREQ_MIN_PARAM" value="0.0" /> +// Retrieval info: <generic name="REF_CLK_FREQ_MAX_PARAM" value="0.0" /> +// Retrieval info: <generic name="PLL_DR_CLK_FREQ_PARAM" value="0.0" /> +// Retrieval info: <generic name="PLL_DR_CLK_FREQ_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_DR_CLK_PHASE_PS_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_DR_CLK_PHASE_PS_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_DR_CLK_MULT_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_DR_CLK_DIV_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_MEM_CLK_FREQ_PARAM" value="0.0" /> +// Retrieval info: <generic name="PLL_MEM_CLK_FREQ_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_MEM_CLK_PHASE_PS_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_MEM_CLK_PHASE_PS_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_MEM_CLK_MULT_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_MEM_CLK_DIV_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_AFI_CLK_FREQ_PARAM" value="0.0" /> +// Retrieval info: <generic name="PLL_AFI_CLK_FREQ_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_AFI_CLK_PHASE_PS_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_AFI_CLK_PHASE_PS_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_AFI_CLK_MULT_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_AFI_CLK_DIV_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_WRITE_CLK_FREQ_PARAM" value="0.0" /> +// Retrieval info: <generic name="PLL_WRITE_CLK_FREQ_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_WRITE_CLK_PHASE_PS_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_WRITE_CLK_PHASE_PS_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_WRITE_CLK_MULT_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_WRITE_CLK_DIV_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_ADDR_CMD_CLK_FREQ_PARAM" value="0.0" /> +// Retrieval info: <generic name="PLL_ADDR_CMD_CLK_FREQ_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_ADDR_CMD_CLK_PHASE_PS_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_ADDR_CMD_CLK_PHASE_PS_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_ADDR_CMD_CLK_MULT_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_ADDR_CMD_CLK_DIV_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_AFI_HALF_CLK_FREQ_PARAM" value="0.0" /> +// Retrieval info: <generic name="PLL_AFI_HALF_CLK_FREQ_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_AFI_HALF_CLK_PHASE_PS_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_AFI_HALF_CLK_PHASE_PS_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_AFI_HALF_CLK_MULT_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_AFI_HALF_CLK_DIV_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_NIOS_CLK_FREQ_PARAM" value="0.0" /> +// Retrieval info: <generic name="PLL_NIOS_CLK_FREQ_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_NIOS_CLK_PHASE_PS_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_NIOS_CLK_PHASE_PS_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_NIOS_CLK_MULT_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_NIOS_CLK_DIV_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_CONFIG_CLK_FREQ_PARAM" value="0.0" /> +// Retrieval info: <generic name="PLL_CONFIG_CLK_FREQ_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_CONFIG_CLK_PHASE_PS_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_CONFIG_CLK_PHASE_PS_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_CONFIG_CLK_MULT_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_CONFIG_CLK_DIV_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_P2C_READ_CLK_FREQ_PARAM" value="0.0" /> +// Retrieval info: <generic name="PLL_P2C_READ_CLK_FREQ_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_P2C_READ_CLK_PHASE_PS_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_P2C_READ_CLK_PHASE_PS_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_P2C_READ_CLK_MULT_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_P2C_READ_CLK_DIV_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_C2P_WRITE_CLK_FREQ_PARAM" value="0.0" /> +// Retrieval info: <generic name="PLL_C2P_WRITE_CLK_FREQ_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_C2P_WRITE_CLK_PHASE_PS_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_C2P_WRITE_CLK_PHASE_PS_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_C2P_WRITE_CLK_MULT_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_C2P_WRITE_CLK_DIV_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_HR_CLK_FREQ_PARAM" value="0.0" /> +// Retrieval info: <generic name="PLL_HR_CLK_FREQ_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_HR_CLK_PHASE_PS_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_HR_CLK_PHASE_PS_SIM_STR_PARAM" value="" /> +// Retrieval info: <generic name="PLL_HR_CLK_MULT_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_HR_CLK_DIV_PARAM" value="0" /> +// Retrieval info: <generic name="PLL_CLK_PARAM_VALID" value="false" /> +// Retrieval info: <generic name="ENABLE_EXTRA_REPORTING" value="false" /> +// Retrieval info: <generic name="NUM_EXTRA_REPORT_PATH" value="10" /> +// Retrieval info: <generic name="ENABLE_ISS_PROBES" value="false" /> +// Retrieval info: <generic name="CALIB_REG_WIDTH" value="8" /> +// Retrieval info: <generic name="USE_SEQUENCER_BFM" value="false" /> +// Retrieval info: <generic name="HHP_HPS" value="false" /> +// Retrieval info: <generic name="HHP_REMAP_ADDR" value="true" /> +// Retrieval info: <generic name="USE_SEQUENCER_APB_BRIDGE" value="false" /> +// Retrieval info: <generic name="DEFAULT_FAST_SIM_MODEL" value="true" /> +// Retrieval info: <generic name="PLL_SHARING_MODE" value="Master" /> +// Retrieval info: <generic name="DLL_SHARING_MODE" value="Master" /> +// Retrieval info: <generic name="OCT_SHARING_MODE" value="None" /> +// Retrieval info: <generic name="ABSTRACT_REAL_COMPARE_TEST" value="false" /> +// Retrieval info: <generic name="INCLUDE_BOARD_DELAY_MODEL" value="false" /> +// Retrieval info: <generic name="USE_FAKE_PHY" value="false" /> +// Retrieval info: <generic name="PHY_ONLY" value="false" /> +// Retrieval info: <generic name="EXTRA_SETTINGS" value="" /> +// Retrieval info: <generic name="MEM_DEVICE" value="MISSING_MODEL" /> +// Retrieval info: <generic name="FORCE_SYNTHESIS_LANGUAGE" value="" /> +// Retrieval info: <generic name="SEQUENCER_TYPE" value="NIOS" /> +// Retrieval info: <generic name="ADVERTIZE_SEQUENCER_SW_BUILD_FILES" value="false" /> +// Retrieval info: <generic name="SEQ_MODE" value="0" /> +// Retrieval info: <generic name="ADVANCED_CK_PHASES" value="false" /> +// Retrieval info: <generic name="COMMAND_PHASE" value="0.0" /> +// Retrieval info: <generic name="MEM_CK_PHASE" value="0.0" /> +// Retrieval info: <generic name="P2C_READ_CLOCK_ADD_PHASE" value="0.0" /> +// Retrieval info: <generic name="C2P_WRITE_CLOCK_ADD_PHASE" value="0.0" /> +// Retrieval info: <generic name="MEM_VOLTAGE" value="1.5V DDR3" /> +// Retrieval info: <generic name="PLL_LOCATION" value="Top_Bottom" /> +// Retrieval info: <generic name="SKIP_MEM_INIT" value="true" /> +// Retrieval info: <generic name="READ_DQ_DQS_CLOCK_SOURCE" value="INVERTED_DQS_BUS" /> +// Retrieval info: <generic name="DQ_INPUT_REG_USE_CLKN" value="false" /> +// Retrieval info: <generic name="DQS_DQSN_MODE" value="DIFFERENTIAL" /> +// Retrieval info: <generic name="AFI_DEBUG_INFO_WIDTH" value="32" /> +// Retrieval info: <generic name="CALIBRATION_MODE" value="Quick" /> +// Retrieval info: <generic name="NIOS_ROM_DATA_WIDTH" value="32" /> +// Retrieval info: <generic name="READ_FIFO_SIZE" value="8" /> +// Retrieval info: <generic name="PHY_CSR_ENABLED" value="false" /> +// Retrieval info: <generic name="PHY_CSR_CONNECTION" value="INTERNAL_JTAG" /> +// Retrieval info: <generic name="USER_DEBUG_LEVEL" value="0" /> +// Retrieval info: <generic name="TIMING_BOARD_DERATE_METHOD" value="SLEW_RATE" /> +// Retrieval info: <generic name="TIMING_BOARD_CK_CKN_SLEW_RATE" value="2.0" /> +// Retrieval info: <generic name="TIMING_BOARD_AC_SLEW_RATE" value="1.0" /> +// Retrieval info: <generic name="TIMING_BOARD_DQS_DQSN_SLEW_RATE" value="2.0" /> +// Retrieval info: <generic name="TIMING_BOARD_DQ_SLEW_RATE" value="1.0" /> +// Retrieval info: <generic name="TIMING_BOARD_TIS" value="0.0" /> +// Retrieval info: <generic name="TIMING_BOARD_TIH" value="0.0" /> +// Retrieval info: <generic name="TIMING_BOARD_TDS" value="0.0" /> +// Retrieval info: <generic name="TIMING_BOARD_TDH" value="0.0" /> +// Retrieval info: <generic name="TIMING_BOARD_ISI_METHOD" value="AUTO" /> +// Retrieval info: <generic name="TIMING_BOARD_AC_EYE_REDUCTION_SU" value="0.0" /> +// Retrieval info: <generic name="TIMING_BOARD_AC_EYE_REDUCTION_H" value="0.0" /> +// Retrieval info: <generic name="TIMING_BOARD_DQ_EYE_REDUCTION" value="0.0" /> +// Retrieval info: <generic name="TIMING_BOARD_DELTA_DQS_ARRIVAL_TIME" value="0.0" /> +// Retrieval info: <generic name="PACKAGE_DESKEW" value="false" /> +// Retrieval info: <generic name="TIMING_BOARD_MAX_CK_DELAY" value="0.2" /> +// Retrieval info: <generic name="TIMING_BOARD_MAX_DQS_DELAY" value="0.3" /> +// Retrieval info: <generic name="TIMING_BOARD_SKEW_CKDQS_DIMM_MIN" value="-0.01" /> +// Retrieval info: <generic name="TIMING_BOARD_SKEW_CKDQS_DIMM_MAX" value="0.01" /> +// Retrieval info: <generic name="TIMING_BOARD_SKEW_BETWEEN_DIMMS" value="0.05" /> +// Retrieval info: <generic name="TIMING_BOARD_SKEW_WITHIN_DQS" value="0.02" /> +// Retrieval info: <generic name="TIMING_BOARD_SKEW_BETWEEN_DQS" value="0.02" /> +// Retrieval info: <generic name="TIMING_BOARD_DQ_TO_DQS_SKEW" value="0.0" /> +// Retrieval info: <generic name="TIMING_BOARD_AC_SKEW" value="0.02" /> +// Retrieval info: <generic name="TIMING_BOARD_AC_TO_CK_SKEW" value="0.0" /> +// Retrieval info: <generic name="RATE" value="Half" /> +// Retrieval info: <generic name="MEM_CLK_FREQ" value="400.0" /> +// Retrieval info: <generic name="FORCE_DQS_TRACKING" value="AUTO" /> +// Retrieval info: <generic name="SYS_INFO_DEVICE_FAMILY" value="Stratix IV" /> +// Retrieval info: <generic name="PARSE_FRIENDLY_DEVICE_FAMILY_PARAM_VALID" value="false" /> +// Retrieval info: <generic name="PARSE_FRIENDLY_DEVICE_FAMILY_PARAM" value="" /> +// Retrieval info: <generic name="DEVICE_FAMILY_PARAM" value="" /> +// Retrieval info: <generic name="DISABLE_CHILD_MESSAGING" value="false" /> +// Retrieval info: <generic name="SPEED_GRADE" value="2" /> +// Retrieval info: <generic name="HARD_EMIF" value="false" /> +// Retrieval info: <generic name="ADD_EFFICIENCY_MONITOR" value="false" /> +// Retrieval info: <generic name="ENABLE_ABS_RAM_MEM_INIT" value="false" /> +// Retrieval info: <generic name="ABS_RAM_MEM_INIT_FILENAME" value="meminit" /> +// Retrieval info: </instance> +// IPFS_FILES : NONE