From 12e37460870f7f9e90db6ab3f952e421db2958ee Mon Sep 17 00:00:00 2001 From: Ioan-daniel Pop Date: Mon, 25 Sep 2023 14:49:08 +0300 Subject: [PATCH 1/5] Update ad469x spi engine I replaced the SPI Engine connections in the ad469x_bd.tcl with the spi_engine_create procedure found in the spi_engine.tcl script. Through these changes, a more generic instantiation for the spi_engine can be achieved. I also created the ad469x_fmc.txt file for generating the system_constr.xdc file. Signed-off-by: Ioan-daniel Pop --- projects/ad469x_fmc/common/ad469x_fmc.txt | 11 +++++++++++ projects/ad469x_fmc/zed/Makefile | 2 ++ projects/ad469x_fmc/zed/system_constr.xdc | 14 +++++++------- 3 files changed, 20 insertions(+), 7 deletions(-) create mode 100644 projects/ad469x_fmc/common/ad469x_fmc.txt diff --git a/projects/ad469x_fmc/common/ad469x_fmc.txt b/projects/ad469x_fmc/common/ad469x_fmc.txt new file mode 100644 index 0000000000..478e8ad4c5 --- /dev/null +++ b/projects/ad469x_fmc/common/ad469x_fmc.txt @@ -0,0 +1,11 @@ +# ad469x + +FMC_pin FMC_port Schematic_name System_top_name IOSTANDARD Termination + +D8 FMC_LA01_CC_P SDO ad469x_spi_sdi LVCMOS25 #N/A +D9 FMC_LA01_CC_N SCK ad469x_spi_sclk LVCMOS25 #N/A +G6 FMC_LA00_CC_P CS_N ad469x_spi_cs LVCMOS25 #N/A +G7 FMC_LA00_CC_N CNV_FMC ad469x_spi_cnv LVCMOS25 #N/A +H7 FMC_LA02_P SDI ad469x_spi_sdo LVCMOS25 #N/A +H10 FMC_LA04_P RESET ad469x_resetn LVCMOS25 #N/A +H8 FMC_LA02_N GP0 ad469x_busy_alt_gp0 LVCMOS25 #N/A diff --git a/projects/ad469x_fmc/zed/Makefile b/projects/ad469x_fmc/zed/Makefile index f882d2113c..5e95164d4c 100644 --- a/projects/ad469x_fmc/zed/Makefile +++ b/projects/ad469x_fmc/zed/Makefile @@ -28,5 +28,7 @@ LIB_DEPS += spi_engine/spi_engine_interconnect LIB_DEPS += spi_engine/spi_engine_offload LIB_DEPS += sysid_rom LIB_DEPS += util_i2c_mixer +LIB_DEPS += util_axis_upscale +LIB_DEPS += util_pulse_gen include ../../scripts/project-xilinx.mk diff --git a/projects/ad469x_fmc/zed/system_constr.xdc b/projects/ad469x_fmc/zed/system_constr.xdc index fb2ccb94c3..c16de4be70 100644 --- a/projects/ad469x_fmc/zed/system_constr.xdc +++ b/projects/ad469x_fmc/zed/system_constr.xdc @@ -4,14 +4,14 @@ ############################################################################### # ad4696_fmc SPI interface -set_property -dict {PACKAGE_PIN N19 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_sdi] ; ## D08 FMC_LPC_LA01_CC_P -set_property -dict {PACKAGE_PIN P17 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_sdo] ; ## H07 FMC_LPC_LA02_P -set_property -dict {PACKAGE_PIN N20 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_sclk] ; ## D09 FMC_LPC_LA01_CC_N -set_property -dict {PACKAGE_PIN M19 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_cs] ; ## G06 FMC_LPC_LA00_CC_P -set_property -dict {PACKAGE_PIN M20 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_cnv] ; ## G07 FMC_LPC_LA00_CC_N +set_property -dict {PACKAGE_PIN N19 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_sdi] ; ## D08 FMC_LA01_CC_P +set_property -dict {PACKAGE_PIN P17 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_sdo] ; ## H07 FMC_LA02_P +set_property -dict {PACKAGE_PIN N20 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_sclk] ; ## D09 FMC_LA01_CC_N +set_property -dict {PACKAGE_PIN M19 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_cs] ; ## G06 FMC_LA00_CC_P +set_property -dict {PACKAGE_PIN M20 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_cnv] ; ## G07 FMC_LA00_CC_N -set_property -dict {PACKAGE_PIN M21 IOSTANDARD LVCMOS25} [get_ports ad469x_resetn] ; ## H10 FMC_LPC_LA04_P -set_property -dict {PACKAGE_PIN P18 IOSTANDARD LVCMOS25} [get_ports ad469x_busy_alt_gp0] ; ## H08 FMC_LPC_LA02_N +set_property -dict {PACKAGE_PIN M21 IOSTANDARD LVCMOS25} [get_ports ad469x_resetn] ; ## H10 FMC_LA04_P +set_property -dict {PACKAGE_PIN P18 IOSTANDARD LVCMOS25} [get_ports ad469x_busy_alt_gp0] ; ## H08 FMC_LA02_N # rename auto-generated clock for SPIEngine to spi_clk - 160MHz # NOTE: clk_fpga_0 is the first PL fabric clock, also called $sys_cpu_clk From eb34defe2ca07fd17a1b173b50222327c6abe120 Mon Sep 17 00:00:00 2001 From: Ioan-daniel Pop Date: Wed, 27 Sep 2023 11:15:30 +0300 Subject: [PATCH 2/5] v2: Update ad469x spi engine The system_constr.xdc file is made based on the fmc_constr.xdc file generated by the adi_fmc_constr_generator.tcl script. Signed-off-by: Ioan-daniel Pop --- projects/ad469x_fmc/zed/system_constr.xdc | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/projects/ad469x_fmc/zed/system_constr.xdc b/projects/ad469x_fmc/zed/system_constr.xdc index c16de4be70..40b95e434b 100644 --- a/projects/ad469x_fmc/zed/system_constr.xdc +++ b/projects/ad469x_fmc/zed/system_constr.xdc @@ -4,14 +4,14 @@ ############################################################################### # ad4696_fmc SPI interface -set_property -dict {PACKAGE_PIN N19 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_sdi] ; ## D08 FMC_LA01_CC_P -set_property -dict {PACKAGE_PIN P17 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_sdo] ; ## H07 FMC_LA02_P -set_property -dict {PACKAGE_PIN N20 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_sclk] ; ## D09 FMC_LA01_CC_N -set_property -dict {PACKAGE_PIN M19 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_cs] ; ## G06 FMC_LA00_CC_P -set_property -dict {PACKAGE_PIN M20 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_cnv] ; ## G07 FMC_LA00_CC_N +set_property -dict {PACKAGE_PIN N19 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_sdi] ; ## D08 FMC_LA01_CC_P IO_L14P_T2_SRCC_34 +set_property -dict {PACKAGE_PIN P17 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_sdo] ; ## H07 FMC_LA02_P IO_L20P_T3_34 +set_property -dict {PACKAGE_PIN N20 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_sclk] ; ## D09 FMC_LA01_CC_N IO_L14N_T2_SRCC_34 +set_property -dict {PACKAGE_PIN M19 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_cs] ; ## G06 FMC_LA00_CC_P IO_L13P_T2_MRCC_34 +set_property -dict {PACKAGE_PIN M20 IOSTANDARD LVCMOS25} [get_ports ad469x_spi_cnv] ; ## G07 FMC_LA00_CC_N IO_L13N_T2_MRCC_34 -set_property -dict {PACKAGE_PIN M21 IOSTANDARD LVCMOS25} [get_ports ad469x_resetn] ; ## H10 FMC_LA04_P -set_property -dict {PACKAGE_PIN P18 IOSTANDARD LVCMOS25} [get_ports ad469x_busy_alt_gp0] ; ## H08 FMC_LA02_N +set_property -dict {PACKAGE_PIN M21 IOSTANDARD LVCMOS25} [get_ports ad469x_resetn] ; ## H10 FMC_LA04_P IO_L15P_T2_DQS_34 +set_property -dict {PACKAGE_PIN P18 IOSTANDARD LVCMOS25} [get_ports ad469x_busy_alt_gp0] ; ## H08 FMC_LA02_N IO_L20N_T3_34 # rename auto-generated clock for SPIEngine to spi_clk - 160MHz # NOTE: clk_fpga_0 is the first PL fabric clock, also called $sys_cpu_clk From 63aee98f1c40cc859d9c049b46c2d52bd38f8813 Mon Sep 17 00:00:00 2001 From: Ioan-daniel Pop Date: Mon, 2 Oct 2023 10:04:47 +0300 Subject: [PATCH 3/5] V3: Update ad469x spi engine I modified the Readme.md file Signed-off-by: Ioan-daniel Pop --- projects/ad469x_fmc/Readme.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/projects/ad469x_fmc/Readme.md b/projects/ad469x_fmc/Readme.md index d598bb9783..2a7737123a 100755 --- a/projects/ad469x_fmc/Readme.md +++ b/projects/ad469x_fmc/Readme.md @@ -2,10 +2,10 @@ Here are some pointers to help you: * [Board Product Page](https://www.analog.com/eval-ad4696) - * Parts : [16-Bit, 16-Channel, 1 MSPS, Easy Drive Multiplexed SAR ADC](https://www.analog.com/ad4696) - [16-Bit, 16-Channel, 500 kSPS, Easy Drive Multiplexed SAR ADC](https://www.analog.com/ad4695) - [16-Bit, 8-Channel, 500 kSPS, Easy Drive Multiplexed SAR ADC](https://www.analog.com/ad4697) - [16-Bit, 8-Channel, 1 MSPS, Easy Drive Multiplexed SAR ADC](https://www.analog.com/ad4696) + * Parts : [AD4696, 16-Bit, 16-Channel, 1 MSPS, Easy Drive Multiplexed SAR ADC](https://www.analog.com/ad4696) + * Parts : [AD4695, 16-Bit, 16-Channel, 500 kSPS, Easy Drive Multiplexed SAR ADC](https://www.analog.com/ad4695) + * Parts : [AD4697, 16-Bit, 8-Channel, 500 kSPS, Easy Drive Multiplexed SAR ADC](https://www.analog.com/ad4697) + * Parts : [AD4696, 16-Bit, 8-Channel, 1 MSPS, Easy Drive Multiplexed SAR ADC](https://www.analog.com/ad4696) * Project Doc: https://wiki.analog.com/resources/eval/user-guides/ad469x * HDL Doc: https://wiki.analog.com/resources/eval/user-guides/ad469x * Linux Drivers: https://wiki.analog.com/resources/tools-software/linux-drivers-all From d00478fb7dcf192f665aeaa9d9c952c1a3838a45 Mon Sep 17 00:00:00 2001 From: Ioan-daniel Pop Date: Mon, 2 Oct 2023 13:04:33 +0300 Subject: [PATCH 4/5] V4: Update ad469x spi engine Regenerated the Makefile and updated the Readme.md file. Signed-off-by: Ioan-daniel Pop --- projects/ad469x_fmc/Readme.md | 2 +- projects/ad469x_fmc/zed/Makefile | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/projects/ad469x_fmc/Readme.md b/projects/ad469x_fmc/Readme.md index 2a7737123a..fd277f4828 100755 --- a/projects/ad469x_fmc/Readme.md +++ b/projects/ad469x_fmc/Readme.md @@ -5,7 +5,7 @@ Here are some pointers to help you: * Parts : [AD4696, 16-Bit, 16-Channel, 1 MSPS, Easy Drive Multiplexed SAR ADC](https://www.analog.com/ad4696) * Parts : [AD4695, 16-Bit, 16-Channel, 500 kSPS, Easy Drive Multiplexed SAR ADC](https://www.analog.com/ad4695) * Parts : [AD4697, 16-Bit, 8-Channel, 500 kSPS, Easy Drive Multiplexed SAR ADC](https://www.analog.com/ad4697) - * Parts : [AD4696, 16-Bit, 8-Channel, 1 MSPS, Easy Drive Multiplexed SAR ADC](https://www.analog.com/ad4696) + * Parts : [AD4698, 16-Bit, 8-Channel, 1 MSPS, Easy Drive Multiplexed SAR ADC](https://www.analog.com/ad4698) * Project Doc: https://wiki.analog.com/resources/eval/user-guides/ad469x * HDL Doc: https://wiki.analog.com/resources/eval/user-guides/ad469x * Linux Drivers: https://wiki.analog.com/resources/tools-software/linux-drivers-all diff --git a/projects/ad469x_fmc/zed/Makefile b/projects/ad469x_fmc/zed/Makefile index 5e95164d4c..f882d2113c 100644 --- a/projects/ad469x_fmc/zed/Makefile +++ b/projects/ad469x_fmc/zed/Makefile @@ -28,7 +28,5 @@ LIB_DEPS += spi_engine/spi_engine_interconnect LIB_DEPS += spi_engine/spi_engine_offload LIB_DEPS += sysid_rom LIB_DEPS += util_i2c_mixer -LIB_DEPS += util_axis_upscale -LIB_DEPS += util_pulse_gen include ../../scripts/project-xilinx.mk From 38e65643662173711e3deff99cb18fd61dbeffdf Mon Sep 17 00:00:00 2001 From: Ioan-daniel Pop Date: Thu, 5 Oct 2023 16:21:44 +0300 Subject: [PATCH 5/5] V5: Update ad469x spi engine I edited the ad469x_fmc.txt file. Signed-off-by: Ioan-daniel Pop --- projects/ad469x_fmc/common/ad469x_fmc.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/projects/ad469x_fmc/common/ad469x_fmc.txt b/projects/ad469x_fmc/common/ad469x_fmc.txt index 478e8ad4c5..d5cb7a7f7f 100644 --- a/projects/ad469x_fmc/common/ad469x_fmc.txt +++ b/projects/ad469x_fmc/common/ad469x_fmc.txt @@ -1,7 +1,7 @@ -# ad469x - FMC_pin FMC_port Schematic_name System_top_name IOSTANDARD Termination +# ad469x + D8 FMC_LA01_CC_P SDO ad469x_spi_sdi LVCMOS25 #N/A D9 FMC_LA01_CC_N SCK ad469x_spi_sclk LVCMOS25 #N/A G6 FMC_LA00_CC_P CS_N ad469x_spi_cs LVCMOS25 #N/A