diff --git a/projects/daq2/vc707/system_top.v b/projects/daq2/vc707/system_top.v index 8302687fd..f291ac4e1 100644 --- a/projects/daq2/vc707/system_top.v +++ b/projects/daq2/vc707/system_top.v @@ -34,8 +34,6 @@ // THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // *************************************************************************** // *************************************************************************** -// *************************************************************************** -// *************************************************************************** `timescale 1ns/100ps @@ -48,9 +46,12 @@ module system_top ( uart_sin, uart_sout, + ddr3_reset_n, ddr3_addr, ddr3_ba, ddr3_cas_n, + ddr3_ras_n, + ddr3_we_n, ddr3_ck_n, ddr3_ck_p, ddr3_cke, @@ -60,9 +61,6 @@ module system_top ( ddr3_dqs_n, ddr3_dqs_p, ddr3_odt, - ddr3_ras_n, - ddr3_reset_n, - ddr3_we_n, sgmii_rxp, sgmii_rxn, @@ -75,31 +73,22 @@ module system_top ( mdio_mdc, mdio_mdio, - fan_pwm, - linear_flash_addr, linear_flash_adv_ldn, linear_flash_ce_n, + linear_flash_dq_io, linear_flash_oen, linear_flash_wen, - linear_flash_dq_io, + + fan_pwm, gpio_lcd, - gpio_led, - gpio_sw, + gpio_bd, iic_rstn, iic_scl, iic_sda, - hdmi_out_clk, - hdmi_hsync, - hdmi_vsync, - hdmi_data_e, - hdmi_data, - - spdif, - rx_ref_clk_p, rx_ref_clk_n, rx_sysref_p, @@ -145,9 +134,12 @@ module system_top ( input uart_sin; output uart_sout; + output ddr3_reset_n; output [13:0] ddr3_addr; output [ 2:0] ddr3_ba; output ddr3_cas_n; + output ddr3_ras_n; + output ddr3_we_n; output [ 0:0] ddr3_ck_n; output [ 0:0] ddr3_ck_p; output [ 0:0] ddr3_cke; @@ -157,9 +149,6 @@ module system_top ( inout [ 7:0] ddr3_dqs_n; inout [ 7:0] ddr3_dqs_p; output [ 0:0] ddr3_odt; - output ddr3_ras_n; - output ddr3_reset_n; - output ddr3_we_n; input sgmii_rxp; input sgmii_rxn; @@ -172,31 +161,22 @@ module system_top ( output mdio_mdc; inout mdio_mdio; - output fan_pwm; - output [26:1] linear_flash_addr; output linear_flash_adv_ldn; output linear_flash_ce_n; + inout [15:0] linear_flash_dq_io; output linear_flash_oen; output linear_flash_wen; - inout [15:0] linear_flash_dq_io; - output [ 6:0] gpio_lcd; - output [ 7:0] gpio_led; - input [12:0] gpio_sw; + output fan_pwm; + + inout [ 6:0] gpio_lcd; + inout [20:0] gpio_bd; output iic_rstn; inout iic_scl; inout iic_sda; - output hdmi_out_clk; - output hdmi_hsync; - output hdmi_vsync; - output hdmi_data_e; - output [35:0] hdmi_data; - - output spdif; - input rx_ref_clk_p; input rx_ref_clk_n; input rx_sysref_p; @@ -248,6 +228,12 @@ module system_top ( // internal signals + wire [63:0] gpio_i; + wire [63:0] gpio_o; + wire [63:0] gpio_t; + wire [ 7:0] spi_csn; + wire spi_mosi; + wire spi_miso; wire trig; wire rx_ref_clk; wire rx_sysref; @@ -255,9 +241,6 @@ module system_top ( wire tx_ref_clk; wire tx_sysref; wire tx_sync; - wire [ 2:0] spi_csn; - wire spi_mosi; - wire spi_miso; wire dac_clk; wire [127:0] dac_ddata; wire dac_enable_0; @@ -275,13 +258,6 @@ module system_top ( wire adc_enable_1; wire adc_valid_0; wire adc_valid_1; - wire [ 5:0] gpio_ctl_i; - wire [ 5:0] gpio_ctl_o; - wire [ 5:0] gpio_ctl_t; - wire [ 4:0] gpio_status_i; - wire [ 4:0] gpio_status_o; - wire [ 4:0] gpio_status_t; - wire [31:0] mb_intrs; // adc-dac data @@ -399,6 +375,7 @@ module system_top ( // default logic assign fan_pwm = 1'b1; + assign iic_rstn = 1'b1; // instantiations @@ -437,7 +414,7 @@ module system_top ( .O (tx_sync)); daq2_spi i_spi ( - .spi_csn (spi_csn), + .spi_csn (spi_csn[2:0]), .spi_clk (spi_clk), .spi_mosi (spi_mosi), .spi_miso (spi_miso), @@ -449,22 +426,26 @@ module system_top ( .IB (trig_n), .O (trig)); - assign gpio_ctl_i[0] = trig; + assign gpio_i[43] = trig; ad_iobuf #(.DATA_WIDTH(9)) i_iobuf ( - .dt ({gpio_ctl_t[5:3], gpio_ctl_t[1], gpio_status_t[4:0]}), - .di ({gpio_ctl_o[5:3], gpio_ctl_o[1], gpio_status_o[4:0]}), - .do ({gpio_ctl_i[5:3], gpio_ctl_i[1], gpio_status_i[4:0]}), - .dio ({ adc_pd, // 10 - dac_txen, // 9 - dac_reset, // 8 - clkd_sync, // 6 - adc_fdb, // 4 - adc_fda, // 3 - dac_irq, // 2 - clkd_status})); // 0 + .dt ({gpio_t[42:40], gpio_t[38], gpio_t[36:32]}), + .di ({gpio_o[42:40], gpio_o[38], gpio_o[36:32]}), + .do ({gpio_i[42:40], gpio_i[38], gpio_i[36:32]}), + .dio ({ adc_pd, // 42 + dac_txen, // 41 + dac_reset, // 40 + clkd_sync, // 38 + adc_fdb, // 36 + adc_fda, // 35 + dac_irq, // 34 + clkd_status})); // 32 - // instantiations + ad_iobuf #(.DATA_WIDTH(17)) i_iobuf_bd ( + .dt (gpio_t[16:0]), + .di (gpio_o[16:0]), + .do (gpio_i[16:0]), + .dio (gpio_bd)); system_wrapper i_system_wrapper ( .adc_clk (adc_clk), @@ -477,21 +458,6 @@ module system_top ( .adc_enable_1 (adc_enable_1), .adc_valid_0 (adc_valid_0), .adc_valid_1 (adc_valid_1), - .ddr3_addr (ddr3_addr), - .ddr3_ba (ddr3_ba), - .ddr3_cas_n (ddr3_cas_n), - .ddr3_ck_n (ddr3_ck_n), - .ddr3_ck_p (ddr3_ck_p), - .ddr3_cke (ddr3_cke), - .ddr3_cs_n (ddr3_cs_n), - .ddr3_dm (ddr3_dm), - .ddr3_dq (ddr3_dq), - .ddr3_dqs_n (ddr3_dqs_n), - .ddr3_dqs_p (ddr3_dqs_p), - .ddr3_odt (ddr3_odt), - .ddr3_ras_n (ddr3_ras_n), - .ddr3_reset_n (ddr3_reset_n), - .ddr3_we_n (ddr3_we_n), .dac_clk (dac_clk), .dac_ddata (dac_ddata), .dac_ddata_0 (dac_ddata_0), @@ -507,65 +473,56 @@ module system_top ( .dac_valid_1 (dac_valid_1), .dac_valid_2 (dac_valid_2), .dac_valid_3 (dac_valid_3), - .gpio_ctl_i (gpio_ctl_i), - .gpio_ctl_o (gpio_ctl_o), - .gpio_ctl_t (gpio_ctl_t), + .ddr3_addr (ddr3_addr), + .ddr3_ba (ddr3_ba), + .ddr3_cas_n (ddr3_cas_n), + .ddr3_ck_n (ddr3_ck_n), + .ddr3_ck_p (ddr3_ck_p), + .ddr3_cke (ddr3_cke), + .ddr3_cs_n (ddr3_cs_n), + .ddr3_dm (ddr3_dm), + .ddr3_dq (ddr3_dq), + .ddr3_dqs_n (ddr3_dqs_n), + .ddr3_dqs_p (ddr3_dqs_p), + .ddr3_odt (ddr3_odt), + .ddr3_ras_n (ddr3_ras_n), + .ddr3_reset_n (ddr3_reset_n), + .ddr3_we_n (ddr3_we_n), + .gpio0_i (gpio_i[31:0]), + .gpio0_o (gpio_o[31:0]), + .gpio0_t (gpio_t[31:0]), + .gpio1_i (gpio_i[63:32]), + .gpio1_o (gpio_o[63:32]), + .gpio1_t (gpio_t[63:32]), + .gpio_lcd_tri_io (gpio_lcd), + .iic_main_scl_io (iic_scl), + .iic_main_sda_io (iic_sda), .linear_flash_addr (linear_flash_addr), .linear_flash_adv_ldn (linear_flash_adv_ldn), .linear_flash_ce_n (linear_flash_ce_n), + .linear_flash_dq_io (linear_flash_dq_io), .linear_flash_oen (linear_flash_oen), .linear_flash_wen (linear_flash_wen), - .linear_flash_dq_io(linear_flash_dq_io), - .gpio_lcd_tri_o (gpio_lcd), - .gpio_led_tri_o (gpio_led), - .gpio_status_i (gpio_status_i), - .gpio_status_o (gpio_status_o), - .gpio_status_t (gpio_status_t), - .gpio_sw_tri_i (gpio_sw), - .hdmi_data (hdmi_data), - .hdmi_data_e (hdmi_data_e), - .hdmi_hsync (hdmi_hsync), - .hdmi_out_clk (hdmi_out_clk), - .hdmi_vsync (hdmi_vsync), - .iic_main_scl_io (iic_scl), - .iic_main_sda_io (iic_sda), - .iic_rstn (iic_rstn), - .mb_intr_10 (mb_intrs[10]), - .mb_intr_11 (mb_intrs[11]), - .mb_intr_12 (mb_intrs[12]), - .mb_intr_13 (mb_intrs[13]), - .mb_intr_14 (mb_intrs[14]), - .mb_intr_15 (mb_intrs[15]), - .mb_intr_16 (mb_intrs[16]), - .mb_intr_17 (mb_intrs[17]), - .mb_intr_18 (mb_intrs[18]), - .mb_intr_19 (mb_intrs[19]), - .mb_intr_20 (mb_intrs[20]), - .mb_intr_21 (mb_intrs[21]), - .mb_intr_22 (mb_intrs[22]), - .mb_intr_23 (mb_intrs[23]), - .mb_intr_24 (mb_intrs[24]), - .mb_intr_25 (mb_intrs[25]), - .mb_intr_26 (mb_intrs[26]), - .mb_intr_27 (mb_intrs[27]), - .mb_intr_28 (mb_intrs[28]), - .mb_intr_29 (mb_intrs[29]), - .mb_intr_30 (mb_intrs[30]), - .mb_intr_31 (mb_intrs[31]), - .axi_ad9144_dma_intr (mb_intrs[13]), - .axi_ad9680_dma_intr (mb_intrs[12]), - .axi_daq2_gpio_intr (mb_intrs[11]), - .axi_daq2_spi_intr (mb_intrs[10]), + .mb_intr_06 (1'd0), + .mb_intr_07 (1'd0), + .mb_intr_08 (1'd0), + .mb_intr_14 (1'd0), + .mb_intr_15 (1'd0), + .mdio_mdc (mdio_mdc), + .mdio_mdio_io (mdio_mdio), + .mgt_clk_clk_n (mgt_clk_n), + .mgt_clk_clk_p (mgt_clk_p), + .phy_rstn (phy_rstn), + .phy_sd (1'b1), .rx_data_n (rx_data_n), .rx_data_p (rx_data_p), .rx_ref_clk (rx_ref_clk), .rx_sync (rx_sync), .rx_sysref (rx_sysref), - .tx_data_n (tx_data_n), - .tx_data_p (tx_data_p), - .tx_ref_clk (tx_ref_clk), - .tx_sync (tx_sync), - .tx_sysref (tx_sysref), + .sgmii_rxn (sgmii_rxn), + .sgmii_rxp (sgmii_rxp), + .sgmii_txn (sgmii_txn), + .sgmii_txp (sgmii_txp), .spi_clk_i (spi_clk), .spi_clk_o (spi_clk), .spi_csn_i (spi_csn), @@ -573,19 +530,14 @@ module system_top ( .spi_sdi_i (spi_miso), .spi_sdo_i (spi_mosi), .spi_sdo_o (spi_mosi), - .mdio_mdc (mdio_mdc), - .mdio_mdio_io (mdio_mdio), - .mgt_clk_clk_n (mgt_clk_n), - .mgt_clk_clk_p (mgt_clk_p), - .phy_rstn (phy_rstn), - .sgmii_rxn (sgmii_rxn), - .sgmii_rxp (sgmii_rxp), - .sgmii_txn (sgmii_txn), - .sgmii_txp (sgmii_txp), - .spdif (spdif), .sys_clk_n (sys_clk_n), .sys_clk_p (sys_clk_p), .sys_rst (sys_rst), + .tx_data_n (tx_data_n), + .tx_data_p (tx_data_p), + .tx_ref_clk (tx_ref_clk), + .tx_sync (tx_sync), + .tx_sysref (tx_sysref), .uart_sin (uart_sin), .uart_sout (uart_sout));