diff --git a/docs/projects/ad4170_asdz/index.rst b/docs/projects/ad4170_asdz/index.rst index 5db8981d2e..d635503826 100644 --- a/docs/projects/ad4170_asdz/index.rst +++ b/docs/projects/ad4170_asdz/index.rst @@ -67,7 +67,6 @@ Instance Zynq*/DE10-Nano** ======================== ================= spi_ad4170_axi_regmap* 0x44A0_0000 axi_ad4170_dma* 0x44A3_0000 -axi_ad4170_iic* 0x44A4_0000 spi_clkgen* 0x44A7_0000 axi_dmac_0** 0x0002_0000 axi_spi_engine_0** 0x0003_0000 @@ -92,10 +91,10 @@ I2C connections - Address - I2C subordinate * - PL* - - axi_iic - - axi_ad4170_iic - - 0x44A4_0000 - - --- + - iic_ard + - axi_iic_ard + - 0x4160_0000 + - 24AA32A * - PS** - i2c1 - sys_hps_i2c1 @@ -184,8 +183,8 @@ Below are the Programmable Logic interrupts used in this project. Instance name HDL Linux Zynq Actual Zynq =================== === ========== =========== axi_ad4170_dma 13 57 89 -axi_ad4170_iic 12 56 88 -spi_ad4170 11 55 87 +spi_ad4170 12 56 88 +axi_iic_ard 11 55 87 =================== === ========== =========== ================ === =============== ================ diff --git a/docs/projects/ad57xx_ardz/index.rst b/docs/projects/ad57xx_ardz/index.rst index d7ba505fcd..7b0bbe419f 100644 --- a/docs/projects/ad57xx_ardz/index.rst +++ b/docs/projects/ad57xx_ardz/index.rst @@ -112,11 +112,11 @@ I2C connections - Alias - Address - I2C subordinate - * - PS* - - iic_0 - - iic_0_io - - --- - - --- + * - PL* + - iic_ard + - axi_ard_fmc + - 0x4160_0000 + - 24AA32A * - PS** - i2c1 - sys_hps_i2c1 @@ -212,8 +212,9 @@ Below are the Programmable Logic interrupts used in this project. =================== === ========== =========== Instance name HDL Linux Zynq Actual Zynq =================== === ========== =========== -ad57xx_tx_dma 12 56 88 -spi_ad57xx 11 55 87 +ad57xx_tx_dma 13 57 89 +spi_ad57xx 12 56 88 +axi_iic_ard 11 55 87 =================== === ========== =========== ================ === =============== ================ diff --git a/docs/projects/cn0540/index.rst b/docs/projects/cn0540/index.rst index 864b472c66..c50b40bf43 100644 --- a/docs/projects/cn0540/index.rst +++ b/docs/projects/cn0540/index.rst @@ -79,9 +79,9 @@ added to the base address from HDL (see more at :ref:`architecture cpu-intercon- ======================== ================= Instance Zynq*/DE10-Nano** ======================== ================= +axi_iic_ard* 0x4160_0000 spi_cn0540_axi_regmap* 0x44A0_0000 axi_cn0540_dma* 0x44A3_0000 -axi_iic_cn0540* 0x44A4_0000 xadc_in* 0x44A5_0000 spi_clkgen* 0x44A7_0000 axi_dmac_0** 0x0002_0000 @@ -109,8 +109,8 @@ I2C connections * - PL - axi_iic - axi_iic_cn0540 - - 0x44A4_0000 - - --- + - 0x4160_0000 + - LTC2606 * - PS - i2c1 - sys_hps_i2c1 @@ -249,8 +249,8 @@ Below are the Programmable Logic interrupts used in this project. Instance name HDL Linux Zynq Actual Zynq =================== === ========== =========== axi_cn0540_dma 13 57 89 -axi_iic_cn0540 12 56 88 -spi_cn0540 11 55 87 +spi_cn0540 12 56 88 +axi_iic_ard 11 55 87 =================== === ========== =========== ================ === =============== ================ diff --git a/docs/projects/cn0561/index.rst b/docs/projects/cn0561/index.rst index 4f1147d141..d41e005d61 100644 --- a/docs/projects/cn0561/index.rst +++ b/docs/projects/cn0561/index.rst @@ -118,6 +118,44 @@ odr_generator* 0x0004_0000 ``*`` instantiated only for DE10-Nano +I2C connections +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. list-table:: ZedBoard + :widths: 20 20 20 20 20 + :header-rows: 1 + + * - I2C type + - I2C manager instance + - Alias + - Address + - I2C subordinate + * - PL + - iic_fmc + - axi_iic_fmc + - 0x4162_0000 + - M24C02 + * - PL + - iic_main + - axi_iic_main + - 0x4160_0000 + - --- + +.. list-table:: CoraZ7S + :widths: 20 20 20 20 20 + :header-rows: 1 + + * - I2C type + - I2C manager instance + - Alias + - Address + - I2C subordinate + * - PL + - iic_ard + - axi_ard_fmc + - 0x4160_0000 + - M24C02 + SPI connections ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -188,6 +226,7 @@ Instance name HDL Linux Zynq Actual Zynq =============== === ========== =========== axi_cn0561_dma 13 57 89 spi_cn0561 12 56 88 +axi_iic_ard 11 55 87 =============== === ========== =========== Building the HDL project diff --git a/docs/projects/cn0579/index.rst b/docs/projects/cn0579/index.rst index 2e3ce270da..206ae1535c 100644 --- a/docs/projects/cn0579/index.rst +++ b/docs/projects/cn0579/index.rst @@ -175,8 +175,8 @@ Below are the Programmable Logic interrupts used in this project. ============= === ========== =========== =============== ================ Instance name HDL Linux Zynq Actual Zynq Linux Cyclone V Actual Cyclone V ============= === ========== =========== =============== ================ -cn0579_dma* 13 57 89 --- --- -axi_iic_dac* 12 56 88 --- --- +cn0579_dma* 12 56 88 --- --- +axi_iic_ard* 11 55 87 --- --- cn0579_dma** 5 --- --- 45 77 ============= === ========== =========== =============== ================ diff --git a/docs/projects/pulsar_adc/index.rst b/docs/projects/pulsar_adc/index.rst index 0b7747a366..05b6ae488f 100644 --- a/docs/projects/pulsar_adc/index.rst +++ b/docs/projects/pulsar_adc/index.rst @@ -203,7 +203,7 @@ pulsar_adc_trigger_gen 0x44B0_0000 I2C connections ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -.. list-table:: +.. list-table:: ZedBoard :widths: 20 20 20 20 20 :header-rows: 1 @@ -223,9 +223,24 @@ I2C connections - 0x4160_0000 - --- +.. list-table:: CoraZ7S + :widths: 20 20 20 20 20 + :header-rows: 1 + + * - I2C type + - I2C manager instance + - Alias + - Address + - I2C subordinate + * - PL + - iic_ard + - axi_ard_fmc + - 0x4160_0000 + - --- + .. note:: - Only for AD40xx/ADAQ40xx + Only for AD40xx/ADAQ40xx SPI connections ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -291,6 +306,7 @@ Instance name HDL Linux Zynq Actual Zynq ================== === ========== =========== axi_pulsar_adc_dma 13 57 89 spi_pulsar_adc 12 56 88 +iic_fmc/ard 11 55 87 ================== === ========== =========== Building the HDL project diff --git a/projects/ad4170_asdz/common/ad4170_asdz_bd.tcl b/projects/ad4170_asdz/common/ad4170_asdz_bd.tcl index ed2c72dab7..a89e1a3423 100644 --- a/projects/ad4170_asdz/common/ad4170_asdz_bd.tcl +++ b/projects/ad4170_asdz/common/ad4170_asdz_bd.tcl @@ -4,7 +4,6 @@ ############################################################################### create_bd_intf_port -mode Master -vlnv analog.com:interface:spi_engine_rtl:1.0 adc_spi -create_bd_intf_port -mode Master -vlnv xilinx.com:interface:iic_rtl:1.0 iic_ad4170 create_bd_port -dir I adc_data_ready @@ -22,9 +21,6 @@ set hier_spi_engine spi_ad4170 spi_engine_create $hier_spi_engine $data_width $async_spi_clk $num_cs $num_sdi $num_sdo $sdi_delay $echo_sclk -ad_ip_instance axi_iic axi_ad4170_iic -ad_connect iic_ad4170 axi_ad4170_iic/iic - # Generate a 80MHz spi_clk for the SPI Engine (targeted SCLK is 20MHz) ad_ip_instance axi_clkgen spi_clkgen @@ -76,14 +72,12 @@ ad_connect sys_cpu_resetn axi_ad4170_dma/m_dest_axi_aresetn ad_cpu_interconnect 0x44a00000 $hier_spi_engine/${hier_spi_engine}_axi_regmap ad_cpu_interconnect 0x44a30000 axi_ad4170_dma -ad_cpu_interconnect 0x44a40000 axi_ad4170_iic ad_cpu_interconnect 0x44a70000 spi_clkgen # interrupts ad_cpu_interrupt "ps-13" "mb-13" axi_ad4170_dma/irq -ad_cpu_interrupt "ps-12" "mb-12" axi_ad4170_iic/iic2intc_irpt -ad_cpu_interrupt "ps-11" "mb-11" $hier_spi_engine/irq +ad_cpu_interrupt "ps-12" "mb-12" $hier_spi_engine/irq # memory interconnects diff --git a/projects/ad4170_asdz/coraz7s/system_constr.xdc b/projects/ad4170_asdz/coraz7s/system_constr.xdc index 8860cb84f4..fa34e727ae 100644 --- a/projects/ad4170_asdz/coraz7s/system_constr.xdc +++ b/projects/ad4170_asdz/coraz7s/system_constr.xdc @@ -15,9 +15,6 @@ set_property -dict {PACKAGE_PIN U15 IOSTANDARD LVCMOS33} set_property -dict {PACKAGE_PIN R14 IOSTANDARD LVCMOS33} [get_ports ad4170_dig_aux[1]] ; ## CK_IO7 set_property -dict {PACKAGE_PIN T14 IOSTANDARD LVCMOS33} [get_ports ad4170_dig_aux[0]] ; ## CK_IO2 -set_property -dict {PACKAGE_PIN P16 IOSTANDARD LVCMOS33} [get_ports iic_eeprom_scl] ; ## CK_SCL -set_property -dict {PACKAGE_PIN P15 IOSTANDARD LVCMOS33} [get_ports iic_eeprom_sda] ; ## CK_SDA - # rename auto-generated clock for SPI Engine to spi_clk - 40MHz create_generated_clock -name spi_clk -source [get_pins -filter name=~*CLKIN1 -of [get_cells -hier -filter name=~*spi_clkgen*i_mmcm]] -master_clock clk_fpga_0 [get_pins -filter name=~*CLKOUT0 -of [get_cells -hier -filter name=~*spi_clkgen*i_mmcm]] diff --git a/projects/ad4170_asdz/coraz7s/system_top.v b/projects/ad4170_asdz/coraz7s/system_top.v index deb9876c82..97ab1a6f90 100644 --- a/projects/ad4170_asdz/coraz7s/system_top.v +++ b/projects/ad4170_asdz/coraz7s/system_top.v @@ -63,8 +63,8 @@ module system_top ( inout [1:0] btn, inout [5:0] led, - inout iic_eeprom_scl, - inout iic_eeprom_sda, + inout iic_ard_scl, + inout iic_ard_sda, // ad4170 input ad4170_spi_miso, @@ -141,8 +141,6 @@ module system_top ( .adc_spi_cs (ad4170_spi_csn), .adc_spi_sclk (ad4170_spi_sclk), .adc_data_ready (ad4170_dig_aux[0]), - .iic_ad4170_scl_io (iic_eeprom_scl), - .iic_ad4170_sda_io (iic_eeprom_sda), .spi0_clk_i (1'b0), .spi0_clk_o (), .spi0_csn_0_o (), @@ -160,6 +158,8 @@ module system_top ( .spi1_csn_i (1'b1), .spi1_sdi_i (1'b0), .spi1_sdo_i (1'b0), - .spi1_sdo_o()); + .spi1_sdo_o (), + .iic_ard_scl_io (iic_ard_scl), + .iic_ard_sda_io (iic_ard_sda)); endmodule diff --git a/projects/ad57xx_ardz/common/ad57xx_ardz_bd.tcl b/projects/ad57xx_ardz/common/ad57xx_ardz_bd.tcl index 4b0303bd34..35330a8288 100644 --- a/projects/ad57xx_ardz/common/ad57xx_ardz_bd.tcl +++ b/projects/ad57xx_ardz/common/ad57xx_ardz_bd.tcl @@ -71,8 +71,8 @@ ad_cpu_interconnect 0x44b10000 axi_ad57xx_clkgen # interrupts -ad_cpu_interrupt "ps-12" "mb-12" ad57xx_dma/irq -ad_cpu_interrupt "ps-11" "mb-11" $hier_spi_engine/irq +ad_cpu_interrupt "ps-13" "mb-13" ad57xx_dma/irq +ad_cpu_interrupt "ps-12" "mb-12" $hier_spi_engine/irq # memory interconnects diff --git a/projects/ad57xx_ardz/coraz7s/system_bd.tcl b/projects/ad57xx_ardz/coraz7s/system_bd.tcl index 0ae01ab4e8..7b0ac934e5 100644 --- a/projects/ad57xx_ardz/coraz7s/system_bd.tcl +++ b/projects/ad57xx_ardz/coraz7s/system_bd.tcl @@ -13,12 +13,4 @@ ad_ip_parameter rom_sys_0 CONFIG.ROM_ADDR_BITS 9 sysid_gen_sys_init_file -#the eval board requires an extra i2c channel for the coraz7s project -create_bd_intf_port -mode Master -vlnv xilinx.com:interface:iic_rtl:1.0 iic_0_io - -ad_ip_parameter sys_ps7 CONFIG.PCW_I2C0_PERIPHERAL_ENABLE 1 -ad_ip_parameter sys_ps7 CONFIG.PCW_I2C0_I2C0_IO EMIO - -ad_connect iic_0_io sys_ps7/IIC_0 - source ../common/ad57xx_ardz_bd.tcl diff --git a/projects/ad57xx_ardz/coraz7s/system_constr.xdc b/projects/ad57xx_ardz/coraz7s/system_constr.xdc index 06e500b439..a2aa826650 100644 --- a/projects/ad57xx_ardz/coraz7s/system_constr.xdc +++ b/projects/ad57xx_ardz/coraz7s/system_constr.xdc @@ -5,9 +5,6 @@ # ad57xx interface -set_property -dict {PACKAGE_PIN P16 IOSTANDARD LVCMOS33} [get_ports ad57xx_ardz_scl] -set_property -dict {PACKAGE_PIN P15 IOSTANDARD LVCMOS33} [get_ports ad57xx_ardz_sda] - set_property -dict {PACKAGE_PIN K18 IOSTANDARD LVCMOS33 IOB TRUE} [get_ports ad57xx_ardz_spi_mosi] set_property -dict {PACKAGE_PIN J18 IOSTANDARD LVCMOS33 IOB TRUE} [get_ports ad57xx_ardz_spi_miso] set_property -dict {PACKAGE_PIN G15 IOSTANDARD LVCMOS33 IOB TRUE} [get_ports ad57xx_ardz_spi_sclk] diff --git a/projects/ad57xx_ardz/coraz7s/system_top.v b/projects/ad57xx_ardz/coraz7s/system_top.v index 32a3273bcf..107cd1c060 100644 --- a/projects/ad57xx_ardz/coraz7s/system_top.v +++ b/projects/ad57xx_ardz/coraz7s/system_top.v @@ -63,9 +63,10 @@ module system_top ( inout [1:0] btn, inout [5:0] led, + inout iic_ard_scl, + inout iic_ard_sda, + // ad57xx ardz - inout ad57xx_ardz_scl, - inout ad57xx_ardz_sda, input ad57xx_ardz_spi_miso, output ad57xx_ardz_spi_mosi, output ad57xx_ardz_spi_sclk, @@ -137,8 +138,6 @@ module system_top ( .gpio_i (gpio_i), .gpio_o (gpio_o), .gpio_t (gpio_t), - .iic_0_io_scl_io (ad57xx_ardz_scl), - .iic_0_io_sda_io (ad57xx_ardz_sda), .spi0_clk_i (1'b0), .spi0_clk_o (), .spi0_csn_0_o (), @@ -157,6 +156,8 @@ module system_top ( .spi1_sdi_i (1'b0), .spi1_sdo_i (1'b0), .spi1_sdo_o (), + .iic_ard_scl_io (iic_ard_scl), + .iic_ard_sda_io (iic_ard_sda), .ad57xx_spi_sdo (ad57xx_ardz_spi_mosi), .ad57xx_spi_sdo_t (), .ad57xx_spi_sdi (ad57xx_ardz_spi_miso), diff --git a/projects/ad719x_asdz/coraz7s/system_top_pmod.v b/projects/ad719x_asdz/coraz7s/system_top_pmod.v index bc6d878783..c8f62044c6 100644 --- a/projects/ad719x_asdz/coraz7s/system_top_pmod.v +++ b/projects/ad719x_asdz/coraz7s/system_top_pmod.v @@ -63,6 +63,9 @@ module system_top ( inout [ 1:0] btn, inout [ 5:0] led, + inout iic_ard_scl, + inout iic_ard_sda, + // ad7190 spi pins output adc_spi_sclk, @@ -142,6 +145,9 @@ module system_top ( .spi0_sdo_i (1'b0), .spi0_sdo_o (adc_spi_mosi), + .iic_ard_scl_io (iic_ard_scl), + .iic_ard_sda_io (iic_ard_sda), + .spi1_clk_i (1'b0), .spi1_clk_o (), .spi1_csn_0_o (), diff --git a/projects/cn0540/common/cn0540_bd.tcl b/projects/cn0540/common/cn0540_bd.tcl index 3d056c604b..55f6d2c18f 100755 --- a/projects/cn0540/common/cn0540_bd.tcl +++ b/projects/cn0540/common/cn0540_bd.tcl @@ -4,7 +4,6 @@ ############################################################################### create_bd_intf_port -mode Master -vlnv analog.com:interface:spi_engine_rtl:1.0 adc_spi -create_bd_intf_port -mode Master -vlnv xilinx.com:interface:iic_rtl:1.0 iic_cn0540 create_bd_intf_port -mode Slave -vlnv xilinx.com:interface:diff_analog_io_rtl:1.0 xadc_mux create_bd_intf_port -mode Slave -vlnv xilinx.com:interface:diff_analog_io_rtl:1.0 xadc_vaux1 create_bd_intf_port -mode Slave -vlnv xilinx.com:interface:diff_analog_io_rtl:1.0 xadc_vaux9 @@ -29,9 +28,6 @@ set hier_spi_engine spi_cn0540 spi_engine_create $hier_spi_engine $data_width $async_spi_clk $num_cs $num_sdi $num_sdo $sdi_delay $echo_sclk -ad_ip_instance axi_iic axi_iic_cn0540 -ad_connect iic_cn0540 axi_iic_cn0540/iic - # Generate a 80MHz spi_clk for the SPI Engine (targeted SCLK is 20MHz) ad_ip_instance axi_clkgen spi_clkgen @@ -100,15 +96,13 @@ ad_connect xadc_in/Vaux15 xadc_vaux15 ad_cpu_interconnect 0x44a00000 $hier_spi_engine/${hier_spi_engine}_axi_regmap ad_cpu_interconnect 0x44a30000 axi_cn0540_dma -ad_cpu_interconnect 0x44a40000 axi_iic_cn0540 ad_cpu_interconnect 0x44a50000 xadc_in ad_cpu_interconnect 0x44a70000 spi_clkgen # interrupts ad_cpu_interrupt "ps-13" "mb-13" axi_cn0540_dma/irq -ad_cpu_interrupt "ps-12" "mb-12" axi_iic_cn0540/iic2intc_irpt -ad_cpu_interrupt "ps-11" "mb-11" $hier_spi_engine/irq +ad_cpu_interrupt "ps-12" "mb-12" $hier_spi_engine/irq # memory interconnects diff --git a/projects/cn0540/coraz7s/system_constr.xdc b/projects/cn0540/coraz7s/system_constr.xdc index 0bd2f4dc09..4b314f4a7a 100755 --- a/projects/cn0540/coraz7s/system_constr.xdc +++ b/projects/cn0540/coraz7s/system_constr.xdc @@ -25,9 +25,6 @@ set_property -dict {PACKAGE_PIN U14 IOSTANDARD LVCMOS33} set_property -dict {PACKAGE_PIN R17 IOSTANDARD LVCMOS33} [get_ports cn0540_sync_in] ; ## CK_IO6 set_property -dict {PACKAGE_PIN T14 IOSTANDARD LVCMOS33} [get_ports cn0540_drdy] ; ## CK_IO2 -set_property -dict {PACKAGE_PIN P16 IOSTANDARD LVCMOS33} [get_ports cn0540_scl] ; ## CK_SCL -set_property -dict {PACKAGE_PIN P15 IOSTANDARD LVCMOS33} [get_ports cn0540_sda] ; ## CK_SDA - # rename auto-generated clock for SPI Engine to spi_clk - 80MHz create_generated_clock -name spi_clk -source [get_pins -filter name=~*CLKIN1 -of [get_cells -hier -filter name=~*spi_clkgen*i_mmcm]] -master_clock clk_fpga_0 [get_pins -filter name=~*CLKOUT0 -of [get_cells -hier -filter name=~*spi_clkgen*i_mmcm]] diff --git a/projects/cn0540/coraz7s/system_top.v b/projects/cn0540/coraz7s/system_top.v index 6b319e4af8..f84ea84a98 100755 --- a/projects/cn0540/coraz7s/system_top.v +++ b/projects/cn0540/coraz7s/system_top.v @@ -63,6 +63,9 @@ module system_top ( inout [1:0] btn, inout [5:0] led, + inout iic_ard_scl, + inout iic_ard_sda, + input cn0540_xadc_mux_p, input cn0540_xadc_mux_n, input cn0540_ck_an0_p, @@ -78,9 +81,6 @@ module system_top ( input cn0540_ck_an5_p, input cn0540_ck_an5_n, - inout cn0540_scl, - inout cn0540_sda, - inout cn0540_shutdown, inout cn0540_reset_adc, inout cn0540_csb_aux, @@ -173,8 +173,6 @@ module system_top ( .adc_spi_cs (cn0540_spi_cs), .adc_spi_sclk (cn0540_spi_sclk), .adc_data_ready (cn0540_drdy), - .iic_cn0540_scl_io (cn0540_scl), - .iic_cn0540_sda_io (cn0540_sda), .spi0_clk_i (1'b0), .spi0_clk_o (), .spi0_csn_0_o (), @@ -193,6 +191,8 @@ module system_top ( .spi1_sdi_i (1'b0), .spi1_sdo_i (1'b0), .spi1_sdo_o(), + .iic_ard_scl_io (iic_ard_scl), + .iic_ard_sda_io (iic_ard_sda), .xadc_mux_v_p (cn0540_xadc_mux_p), .xadc_mux_v_n (cn0540_xadc_mux_n), .xadc_vaux1_v_p (cn0540_ck_an0_p), diff --git a/projects/cn0561/coraz7s/system_bd.tcl b/projects/cn0561/coraz7s/system_bd.tcl index f1b256fb83..5eee521f96 100644 --- a/projects/cn0561/coraz7s/system_bd.tcl +++ b/projects/cn0561/coraz7s/system_bd.tcl @@ -1,5 +1,5 @@ ############################################################################### -## Copyright (C) 2022-2023 Analog Devices, Inc. All rights reserved. +## Copyright (C) 2022-2024 Analog Devices, Inc. All rights reserved. ### SPDX short identifier: ADIBSD ############################################################################### @@ -18,12 +18,4 @@ ad_ip_parameter rom_sys_0 CONFIG.ROM_ADDR_BITS 9 sysid_gen_sys_init_file -#the eval board requires an extra i2c channel for the coraz7s project -create_bd_intf_port -mode Master -vlnv xilinx.com:interface:iic_rtl:1.0 iic_0_io - -ad_ip_parameter sys_ps7 CONFIG.PCW_I2C0_PERIPHERAL_ENABLE 1 -ad_ip_parameter sys_ps7 CONFIG.PCW_I2C0_I2C0_IO EMIO - -ad_connect iic_0_io sys_ps7/IIC_0 - source ../common/cn0561_bd.tcl diff --git a/projects/cn0561/coraz7s/system_constr.xdc b/projects/cn0561/coraz7s/system_constr.xdc index f7c4b71f36..4afe057002 100644 --- a/projects/cn0561/coraz7s/system_constr.xdc +++ b/projects/cn0561/coraz7s/system_constr.xdc @@ -1,11 +1,8 @@ ############################################################################### -## Copyright (C) 2022-2023 Analog Devices, Inc. All rights reserved. +## Copyright (C) 2022-2024 Analog Devices, Inc. All rights reserved. ### SPDX short identifier: ADIBSD ############################################################################### -set_property -dict {PACKAGE_PIN P16 IOSTANDARD LVCMOS33} [get_ports iic_scl] -set_property -dict {PACKAGE_PIN P15 IOSTANDARD LVCMOS33} [get_ports iic_sda] - set_property -dict {PACKAGE_PIN J18 IOSTANDARD LVCMOS33} [get_ports cn0561_spi_sdi] ; ## FMC_LPC_LA03_P set_property -dict {PACKAGE_PIN K18 IOSTANDARD LVCMOS33} [get_ports cn0561_spi_sdo] ; ## FMC_LPC_LA04_N set_property -dict {PACKAGE_PIN G15 IOSTANDARD LVCMOS33} [get_ports cn0561_spi_sclk] ; ## FMC_LPC_LA01_P_CC diff --git a/projects/cn0561/coraz7s/system_top.v b/projects/cn0561/coraz7s/system_top.v index 1e1e26fa57..ef27cce4fa 100644 --- a/projects/cn0561/coraz7s/system_top.v +++ b/projects/cn0561/coraz7s/system_top.v @@ -1,6 +1,6 @@ // *************************************************************************** // *************************************************************************** -// Copyright (C) 2022-2023 Analog Devices, Inc. All rights reserved. +// Copyright (C) 2022-2024 Analog Devices, Inc. All rights reserved. // // In this HDL repository, there are many different and unique modules, consisting // of various HDL (Verilog or VHDL) components. The individual modules are @@ -63,8 +63,8 @@ module system_top ( inout [1:0] btn, inout [5:0] led, - inout iic_scl, - inout iic_sda, + inout iic_ard_scl, + inout iic_ard_sda, // cn0561 SPI configuration interface @@ -142,8 +142,8 @@ module system_top ( .gpio_i (gpio_i), .gpio_o (gpio_o), .gpio_t (gpio_t), - .iic_0_io_scl_io (iic_scl), - .iic_0_io_sda_io (iic_sda), + .iic_ard_scl_io (iic_ard_scl), + .iic_ard_sda_io (iic_ard_sda), .spi0_clk_i (cn0561_spi_sclk), .spi0_clk_o (cn0561_spi_sclk), .spi0_csn_0_o (cn0561_spi_cs), diff --git a/projects/cn0579/common/cn0579_bd.tcl b/projects/cn0579/common/cn0579_bd.tcl index 5b0f91ee51..35e5f36214 100644 --- a/projects/cn0579/common/cn0579_bd.tcl +++ b/projects/cn0579/common/cn0579_bd.tcl @@ -3,18 +3,12 @@ ### SPDX short identifier: ADIBSD ############################################################################### -create_bd_intf_port -mode Master -vlnv xilinx.com:interface:iic_rtl:1.0 iic_dac # ad7768-4 interface create_bd_port -dir I clk_in create_bd_port -dir I ready_in create_bd_port -dir I -from 7 -to 0 data_in -#dac iic - -ad_ip_instance axi_iic axi_iic_dac -ad_connect iic_dac axi_iic_dac/iic - # adc(cn0579-dma) ad_ip_instance axi_dmac cn0579_dma @@ -62,14 +56,12 @@ ad_connect cn0579_dma/sync cn0579_adc_pack/packed_sync # interrupts -ad_cpu_interrupt "ps-13" "mb-13" cn0579_dma/irq -ad_cpu_interrupt "ps-12" "mb-12" axi_iic_dac/iic2intc_irpt +ad_cpu_interrupt "ps-12" "mb-12" cn0579_dma/irq # cpu / memory interconnects ad_cpu_interconnect 0x44a00000 axi_ad77684_adc ad_cpu_interconnect 0x44a30000 cn0579_dma -ad_cpu_interconnect 0x44a40000 axi_iic_dac ad_mem_hp1_interconnect $sys_cpu_clk sys_ps7/S_AXI_HP1 ad_mem_hp1_interconnect $sys_cpu_clk cn0579_dma/m_dest_axi diff --git a/projects/cn0579/coraz7s/system_constr.xdc b/projects/cn0579/coraz7s/system_constr.xdc index 6b70368d53..23f1411484 100644 --- a/projects/cn0579/coraz7s/system_constr.xdc +++ b/projects/cn0579/coraz7s/system_constr.xdc @@ -1,5 +1,5 @@ ############################################################################### -## Copyright (C) 2023 Analog Devices, Inc. All rights reserved. +## Copyright (C) 2023-2024 Analog Devices, Inc. All rights reserved. ### SPDX short identifier: ADIBSD ############################################################################### @@ -18,8 +18,6 @@ set_property -dict {PACKAGE_PIN K18 IOSTANDARD LVCMOS33} [get_ports spi_mosi ]; ## P12.7 IO11 set_property -dict {PACKAGE_PIN J18 IOSTANDARD LVCMOS33} [get_ports spi_miso ]; ## P12.6 IO12 set_property -dict {PACKAGE_PIN G15 IOSTANDARD LVCMOS33} [get_ports spi_clk ]; ## P12.5 IO13 - set_property -dict {PACKAGE_PIN P16 IOSTANDARD LVCMOS33} [get_ports dac_i2c_scl]; ## P12.1 CK_SCL - set_property -dict {PACKAGE_PIN P15 IOSTANDARD LVCMOS33} [get_ports dac_i2c_sda]; ## P12.2 CK_SDA set input_clock_period 30.51; # Period of input clock fMAX_DCLK=32.768MHz set hold_time 8.5; diff --git a/projects/cn0579/coraz7s/system_top.v b/projects/cn0579/coraz7s/system_top.v index a9a758e6b6..1a5c62e1ed 100644 --- a/projects/cn0579/coraz7s/system_top.v +++ b/projects/cn0579/coraz7s/system_top.v @@ -1,6 +1,6 @@ // *************************************************************************** // *************************************************************************** -// Copyright (C) 2023 Analog Devices, Inc. All rights reserved. +// Copyright (C) 2023-2024 Analog Devices, Inc. All rights reserved. // // In this HDL repository, there are many different and unique modules, consisting // of various HDL (Verilog or VHDL) components. The individual modules are @@ -62,6 +62,9 @@ module system_top ( inout [ 1:0] btn, inout [ 5:0] led, + inout iic_ard_scl, + inout iic_ard_sda, + input clk_in, input ready_in, input [ 3:0] data_in, @@ -71,12 +74,7 @@ module system_top ( output spi_mosi, input spi_miso, output shutdown_n, - output reset_n, - - // dac i2c - - inout dac_i2c_scl, - inout dac_i2c_sda + output reset_n ); // internal signals @@ -112,8 +110,6 @@ module system_top ( .clk_in (clk_in), .ready_in (ready_in), .data_in (data_in), - .iic_dac_scl_io (dac_i2c_scl), - .iic_dac_sda_io (dac_i2c_sda), .ddr_addr (ddr_addr), .ddr_ba (ddr_ba), .ddr_cas_n (ddr_cas_n), @@ -155,6 +151,8 @@ module system_top ( .spi1_csn_i (1'b1), .spi1_sdi_i (1'b0), .spi1_sdo_i (1'b0), - .spi1_sdo_o ()); + .spi1_sdo_o (), + .iic_ard_scl_io (iic_ard_scl), + .iic_ard_sda_io (iic_ard_sda)); endmodule diff --git a/projects/common/coraz7s/coraz7s_system_bd.tcl b/projects/common/coraz7s/coraz7s_system_bd.tcl index deb3a6727e..54f47d2bd4 100644 --- a/projects/common/coraz7s/coraz7s_system_bd.tcl +++ b/projects/common/coraz7s/coraz7s_system_bd.tcl @@ -1,5 +1,5 @@ ############################################################################### -## Copyright (C) 2019-2023 Analog Devices, Inc. All rights reserved. +## Copyright (C) 2019-2024 Analog Devices, Inc. All rights reserved. ### SPDX short identifier: ADIBSD ############################################################################### @@ -8,6 +8,7 @@ create_bd_intf_port -mode Master -vlnv xilinx.com:interface:ddrx_rtl:1.0 ddr create_bd_intf_port -mode Master -vlnv xilinx.com:display_processing_system7:fixedio_rtl:1.0 fixed_io +create_bd_intf_port -mode Master -vlnv xilinx.com:interface:iic_rtl:1.0 iic_ard create_bd_port -dir O spi0_csn_2_o create_bd_port -dir O spi0_csn_1_o @@ -59,6 +60,10 @@ ad_ip_parameter sys_rstgen CONFIG.C_EXT_RST_WIDTH 1 ad_ip_instance proc_sys_reset sys_dma_rstgen ad_ip_parameter sys_dma_rstgen CONFIG.C_EXT_RST_WIDTH 1 +# iic (arduino sda/scl) + +ad_ip_instance axi_iic axi_iic_ard + # system reset/clock definitions ad_connect sys_cpu_clk sys_ps7/FCLK_CLK0 @@ -92,6 +97,7 @@ ad_connect gpio_i sys_ps7/GPIO_I ad_connect gpio_o sys_ps7/GPIO_O ad_connect gpio_t sys_ps7/GPIO_T ad_connect fixed_io sys_ps7/FIXED_IO +ad_connect iic_ard axi_iic_ard/iic # spi connections @@ -131,7 +137,7 @@ ad_connect sys_concat_intc/In15 GND ad_connect sys_concat_intc/In14 GND ad_connect sys_concat_intc/In13 GND ad_connect sys_concat_intc/In12 GND -ad_connect sys_concat_intc/In11 GND +ad_connect sys_concat_intc/In11 axi_iic_ard/iic2intc_irpt ad_connect sys_concat_intc/In10 GND ad_connect sys_concat_intc/In9 GND ad_connect sys_concat_intc/In8 GND @@ -146,4 +152,5 @@ ad_connect sys_concat_intc/In0 GND # interconnects and address mapping +ad_cpu_interconnect 0x41600000 axi_iic_ard ad_cpu_interconnect 0x45000000 axi_sysid_0 diff --git a/projects/common/coraz7s/coraz7s_system_constr.xdc b/projects/common/coraz7s/coraz7s_system_constr.xdc index 544433fc07..dcfa5e325e 100644 --- a/projects/common/coraz7s/coraz7s_system_constr.xdc +++ b/projects/common/coraz7s/coraz7s_system_constr.xdc @@ -1,5 +1,5 @@ ############################################################################### -## Copyright (C) 2019-2023 Analog Devices, Inc. All rights reserved. +## Copyright (C) 2019-2024 Analog Devices, Inc. All rights reserved. ### SPDX short identifier: ADIBSD ############################################################################### @@ -16,3 +16,7 @@ set_property -dict {PACKAGE_PIN G14 IOSTANDARD LVCMOS33} [get_ports led[3]] set_property -dict {PACKAGE_PIN L14 IOSTANDARD LVCMOS33} [get_ports led[4]] ; ## LED1_R set_property -dict {PACKAGE_PIN M15 IOSTANDARD LVCMOS33} [get_ports led[5]] ; ## LED1_G +# iic + +set_property -dict {PACKAGE_PIN P16 IOSTANDARD LVCMOS33} [get_ports iic_ard_scl] ; ## Arduino_SCL +set_property -dict {PACKAGE_PIN P15 IOSTANDARD LVCMOS33} [get_ports iic_ard_sda] ; ## Arduino_SDA diff --git a/projects/common/coraz7s/system_top.v b/projects/common/coraz7s/system_top.v index b149d33779..0e2f9b0db7 100755 --- a/projects/common/coraz7s/system_top.v +++ b/projects/common/coraz7s/system_top.v @@ -1,6 +1,6 @@ // *************************************************************************** // *************************************************************************** -// Copyright (C) 2022-2023 Analog Devices, Inc. All rights reserved. +// Copyright (C) 2022-2024 Analog Devices, Inc. All rights reserved. // // In this HDL repository, there are many different and unique modules, consisting // of various HDL (Verilog or VHDL) components. The individual modules are @@ -61,7 +61,10 @@ module system_top ( inout fixed_io_ps_srstb, inout [ 1:0] btn, - inout [ 5:0] led + inout [ 5:0] led, + + inout iic_ard_scl, + inout iic_ard_sda ); // internal signals @@ -135,6 +138,8 @@ module system_top ( .spi1_csn_i (1'b1), .spi1_sdi_i (1'b0), .spi1_sdo_i (1'b0), - .spi1_sdo_o()); + .spi1_sdo_o (), + .iic_ard_scl_io (iic_ard_scl), + .iic_ard_sda_io (iic_ard_sda)); endmodule diff --git a/projects/pulsar_adc/coraz7s/system_top.v b/projects/pulsar_adc/coraz7s/system_top.v index 7c26537827..e4d33cb7bf 100644 --- a/projects/pulsar_adc/coraz7s/system_top.v +++ b/projects/pulsar_adc/coraz7s/system_top.v @@ -67,7 +67,10 @@ module system_top ( output pulsar_adc_spi_pd, inout [ 1:0] btn, - inout [ 5:0] led + inout [ 5:0] led, + + inout iic_ard_scl, + inout iic_ard_sda ); // internal signals @@ -148,6 +151,8 @@ module system_top ( .spi1_sdi_i (1'b0), .spi1_sdo_i (1'b0), .spi1_sdo_o (), + .iic_ard_scl_io (iic_ard_scl), + .iic_ard_sda_io (iic_ard_sda), .pulsar_adc_spi_cs(pulsar_adc_spi_cs), .pulsar_adc_spi_sclk(pulsar_adc_spi_sclk), .pulsar_adc_spi_sdi(pulsar_adc_spi_sdi),