diff --git a/projects/ad9467_fmc/common/ad9467_bd.tcl b/projects/ad9467_fmc/common/ad9467_bd.tcl index b917e07d1..b00d6705a 100644 --- a/projects/ad9467_fmc/common/ad9467_bd.tcl +++ b/projects/ad9467_fmc/common/ad9467_bd.tcl @@ -21,6 +21,12 @@ if {$sys_zynq == 0} { set spi_sdo_i [create_bd_port -dir I spi_sdo_i] set spi_sdi_i [create_bd_port -dir I spi_sdi_i] + # interrupts + set ad9467_dma_irq [create_bd_port -dir O ad9467_dma_irq] +if {$sys_zynq == 0} { + set ad9467_spi_irq [create_bd_port -dir O ad9467_spi_irq] +} + # adc peripheral set axi_ad9467 [create_bd_cell -type ip -vlnv analog.com:user:axi_ad9467:1.0 axi_ad9467] @@ -64,7 +70,6 @@ if {$sys_zynq == 0} { } if {$sys_zynq == 0} { - set_property -dict [list CONFIG.NUM_PORTS {6}] $sys_concat_intc set_property -dict [list CONFIG.NUM_SI {9}] $axi_mem_interconnect } @@ -138,7 +143,7 @@ if {$sys_zynq == 0} { connect_bd_net -net axi_ad9467_dma_ddata [get_bd_pins axi_ad9467/adc_data] [get_bd_pins axi_ad9467_dma/fifo_wr_din] connect_bd_net -net axi_ad9467_dma_dovf [get_bd_pins axi_ad9467/adc_dovf] [get_bd_pins axi_ad9467_dma/fifo_wr_overflow] - connect_bd_net -net axi_ad9467_dma_irq [get_bd_pins axi_ad9467_dma/irq] [get_bd_pins sys_concat_intc/In13] + connect_bd_net -net axi_ad9467_dma_irq [get_bd_pins axi_ad9467_dma/irq] [get_bd_ports ad9467_dma_irq] # interconnect (cpu) @@ -164,7 +169,7 @@ if {$sys_zynq == 0} { connect_bd_net -net sys_100m_resetn [get_bd_pins axi_cpu_interconnect/M09_ARESETN] $sys_100m_resetn_source connect_bd_net -net sys_100m_resetn [get_bd_pins axi_ad9467_spi/s_axi_aresetn] - connect_bd_net -net axi_ad9467_spi_irq [get_bd_pins axi_ad9467_spi/ip2intc_irpt] [get_bd_pins sys_concat_intc/In5] + connect_bd_net -net axi_ad9467_spi_irq [get_bd_pins axi_ad9467_spi/ip2intc_irpt] [get_bd_ports ad9467_spi_irq] } # interconnect (mem/adc) diff --git a/projects/ad9467_fmc/kc705/system_top.v b/projects/ad9467_fmc/kc705/system_top.v index 424450c99..6a5b5841a 100644 --- a/projects/ad9467_fmc/kc705/system_top.v +++ b/projects/ad9467_fmc/kc705/system_top.v @@ -179,6 +179,7 @@ inout spi_sdio; wire [ 1:0] spi_csn; wire spi_miso; wire spi_mosi; +wire [31:0] mb_intrs; assign spi_csn_adc = spi_csn[0]; assign spi_csn_clk = spi_csn[1]; @@ -221,6 +222,30 @@ system_wrapper i_system_wrapper ( .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]), + .ad9467_dma_irq (mb_intr_13), + .ad9467_spi_irq (mb_intr_10), .mdio_mdc (mdio_mdc), .mdio_mdio_io (mdio_mdio_io), .mii_col (mii_col), @@ -239,8 +264,6 @@ system_wrapper i_system_wrapper ( .sys_rst (sys_rst), .uart_sin (uart_sin), .uart_sout (uart_sout), - .unc_int0 (1'b0), - .unc_int3 (1'b0), .adc_clk_in_n(adc_clk_in_n), .adc_clk_in_p(adc_clk_in_p), .adc_data_in_n(adc_data_in_n), diff --git a/projects/ad9467_fmc/zed/system_top.v b/projects/ad9467_fmc/zed/system_top.v index cc3a7d8ba..98f1746cf 100644 --- a/projects/ad9467_fmc/zed/system_top.v +++ b/projects/ad9467_fmc/zed/system_top.v @@ -171,6 +171,8 @@ wire [ 1:0] iic_mux_sda_i_s; wire [ 1:0] iic_mux_sda_o_s; wire iic_mux_sda_t_s; +wire [15:0] ps_intrs; + // instantiations genvar n; @@ -243,6 +245,21 @@ system_wrapper i_system_wrapper ( .iic_mux_sda_I (iic_mux_sda_i_s), .iic_mux_sda_O (iic_mux_sda_o_s), .iic_mux_sda_T (iic_mux_sda_t_s), + .ps_intr_0 (ps_intrs[0]), + .ps_intr_1 (ps_intrs[1]), + .ps_intr_10 (ps_intrs[10]), + .ps_intr_11 (ps_intrs[11]), + .ps_intr_12 (ps_intrs[12]), + .ps_intr_13 (ps_intrs[13]), + .ps_intr_2 (ps_intrs[2]), + .ps_intr_3 (ps_intrs[3]), + .ps_intr_4 (ps_intrs[4]), + .ps_intr_5 (ps_intrs[5]), + .ps_intr_6 (ps_intrs[6]), + .ps_intr_7 (ps_intrs[7]), + .ps_intr_8 (ps_intrs[8]), + .ps_intr_9 (ps_intrs[9]), + .ad9467_dma_irq (ps_intrs[13]), .otg_vbusoc (otg_vbusoc), .spdif (spdif), .adc_clk_in_n(adc_clk_in_n),