From 1e0fed82f766d20fcdecc44903d35865a1f52719 Mon Sep 17 00:00:00 2001 From: Rejeesh Kutty Date: Tue, 1 Nov 2016 12:40:48 -0400 Subject: [PATCH] alt_serdes- a10 ddio fixes --- library/altera/alt_serdes/alt_serdes_hw.tcl | 14 ++++++++++++-- library/altera/common/ad_cmos_out.v | 6 +++--- library/axi_ad9361/axi_ad9361_hw.tcl | 6 +++--- projects/fmcomms2/common/fmcomms2_qsys.tcl | 1 + 4 files changed, 19 insertions(+), 8 deletions(-) diff --git a/library/altera/alt_serdes/alt_serdes_hw.tcl b/library/altera/alt_serdes/alt_serdes_hw.tcl index a56e51f96..e66c515dc 100644 --- a/library/altera/alt_serdes/alt_serdes_hw.tcl +++ b/library/altera/alt_serdes/alt_serdes_hw.tcl @@ -64,24 +64,34 @@ proc p_alt_serdes {} { set m_ld_duty_cycle 25.0 } - ## arria 10, serdes clock, data-in and data-out + ## arria 10, cmos data-in and data-out if {($m_serdes_factor == 2) && ($m_device_family == "Arria 10")} { - add_hdl_instance alt_serdes_out altera_gpio + add_instance alt_serdes_out altera_gpio set_instance_parameter_value alt_serdes_out {PIN_TYPE_GUI} {Output} set_instance_parameter_value alt_serdes_out {SIZE} {1} set_instance_parameter_value alt_serdes_out {gui_diff_buff} {0} set_instance_parameter_value alt_serdes_out {gui_io_reg_mode} {DDIO} + add_interface clk conduit end + set_interface_property clk EXPORT_OF alt_serdes_out.ck + add_interface din conduit end + set_interface_property din EXPORT_OF alt_serdes_out.din + add_interface pad_out conduit end + set_interface_property pad_out EXPORT_OF alt_serdes_out.pad_out return } + ## cyclone v, cmos data-in and data-out + if {($m_serdes_factor == 2) && ($m_device_family == "Cyclone V")} { return } + ## arria 10, serdes clock, data-in and data-out + if {($m_mode == "CLK") && ($m_device_family == "Arria 10")} { add_instance alt_serdes_pll altera_iopll diff --git a/library/altera/common/ad_cmos_out.v b/library/altera/common/ad_cmos_out.v index edbc797fa..cdec954dd 100644 --- a/library/altera/common/ad_cmos_out.v +++ b/library/altera/common/ad_cmos_out.v @@ -80,9 +80,9 @@ module __ad_cmos_out__ #( generate if (DEVICE_TYPE == ARRIA10) begin __ad_cmos_out_1__ i_tx_data_oddr ( - .ck (tx_clk), - .din ({tx_data_p, tx_data_n}), - .pad_out (tx_data_out)); + .clk_export (tx_clk), + .din_export ({tx_data_p, tx_data_n}), + .pad_out_export (tx_data_out)); end endgenerate diff --git a/library/axi_ad9361/axi_ad9361_hw.tcl b/library/axi_ad9361/axi_ad9361_hw.tcl index 397e8a0ea..eb936d355 100644 --- a/library/axi_ad9361/axi_ad9361_hw.tcl +++ b/library/axi_ad9361/axi_ad9361_hw.tcl @@ -226,9 +226,9 @@ proc axi_ad9361_elab {} { proc axi_ad9361_fileset {entityName} { - ad_ip_modfile ad_cmos_out.v ad_cmos_out.v ad_cmos_out_core - ad_ip_modfile ad_serdes_in.v ad_serdes_in.v ad_serdes_in_core - ad_ip_modfile ad_serdes_out.v ad_serdes_out.v ad_serdes_out_core + ad_ip_modfile ad_cmos_out.v ad_cmos_out.v ad_cmos_out_core_a10 + ad_ip_modfile ad_serdes_in.v ad_serdes_in.v ad_serdes_in_core_a10 + ad_ip_modfile ad_serdes_out.v ad_serdes_out.v ad_serdes_out_core_a10 ad_ip_modfile ad_serdes_clk.v ad_serdes_clk.v ad_serdes_clk_core } diff --git a/projects/fmcomms2/common/fmcomms2_qsys.tcl b/projects/fmcomms2/common/fmcomms2_qsys.tcl index 2196c97b0..77b96aa51 100644 --- a/projects/fmcomms2/common/fmcomms2_qsys.tcl +++ b/projects/fmcomms2/common/fmcomms2_qsys.tcl @@ -5,6 +5,7 @@ add_instance axi_ad9361 axi_ad9361 1.0 set_instance_parameter_value axi_ad9361 {ID} {0} +set_instance_parameter_value axi_ad9361 {DEVICE_TYPE} {0} add_connection sys_clk.clk_reset axi_ad9361.s_axi_reset add_connection sys_clk.clk axi_ad9361.s_axi_clock