From 984346d8761e712490bb86009a2313eefd90915c Mon Sep 17 00:00:00 2001 From: AndreiGrozav Date: Mon, 18 Sep 2023 18:35:25 +0300 Subject: [PATCH 1/4] axi_adrv9001: Change the DDS sync structure The DDS for each channel was synchronized by the main channel. One problem with this aporoach is that when a user sets a DDS that is not from the main channel the sinchronization does not happend. This behavior is not user friendly in IIO-Oscilloscope or within other configuration methods. This commit keeps all channels in sync by triggering the sync on all channels from each individual channel. --- library/axi_adrv9001/axi_adrv9001_core.v | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/library/axi_adrv9001/axi_adrv9001_core.v b/library/axi_adrv9001/axi_adrv9001_core.v index 7168f7bcf5..279aac593d 100644 --- a/library/axi_adrv9001/axi_adrv9001_core.v +++ b/library/axi_adrv9001/axi_adrv9001_core.v @@ -221,6 +221,7 @@ module axi_adrv9001_core #( wire adc_sync_m; wire dac_sync_m; wire dac_sync_out_1; + wire dac_sync_out_2; reg tx1_data_valid_A_d; reg [15:0] tx1_data_i_A_d; @@ -533,7 +534,7 @@ module axi_adrv9001_core #( .up_dac_r1_mode (up_tx1_r1_mode), .tdd_tx_valid (tdd_tx1_valid), .dac_clk_ratio (dac_clk_ratio), - .dac_sync_in (external_dac_sync | dac_sync_out_1), + .dac_sync_in (external_dac_sync | dac_sync_out_1 | dac_sync_out_2), .dac_sync_out (dac_sync_out_1), .dac_ext_sync_arm (dac_ext_sync_arm), .dac_enable_i0 (dac_1_enable_i0), @@ -588,8 +589,8 @@ module axi_adrv9001_core #( .dac_sdr_ddr_n (tx2_sdr_ddr_n_loc), .dac_symb_op (tx2_symb_op_loc), .dac_symb_8_16b (tx2_symb_8_16b_loc), - .dac_sync_in (external_dac_sync | dac_sync_out_1), - .dac_sync_out (), + .dac_sync_in (external_dac_sync | dac_sync_out_1 | dac_sync_out_2), + .dac_sync_out (dac_sync_out_2), .dac_valid (dac_2_valid), .dac_enable_i0 (dac_2_enable_i0), .dac_data_i0 (dac_2_data_i0[15:0]), From a2da70a0a25094d0de6a578019882fa4f6b24b2b Mon Sep 17 00:00:00 2001 From: AndreiGrozav Date: Mon, 18 Sep 2023 18:43:02 +0300 Subject: [PATCH 2/4] jupiter_sdr: PL sysmon updates Monitor VCC through VUSER1. Disconnect the default redundant monitors. Connect the pl_sysmon interrupt. --- projects/jupiter_sdr/system_bd.tcl | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/projects/jupiter_sdr/system_bd.tcl b/projects/jupiter_sdr/system_bd.tcl index 50280339d4..67161aab5f 100644 --- a/projects/jupiter_sdr/system_bd.tcl +++ b/projects/jupiter_sdr/system_bd.tcl @@ -502,12 +502,11 @@ ad_connect tx2_enable axi_adrv9001/tx2_enable ad_connect system_sync axi_adrv9001/adc_sync_in ad_connect system_sync axi_adrv9001/dac_sync_in -# sysytem monitor +# system monitor ad_ip_instance system_management_wiz pl_sysmon set_property -dict [list \ - CONFIG.CHANNEL_ENABLE_VBRAM {true} \ CONFIG.CHANNEL_ENABLE_VP_VN {false} \ CONFIG.CHANNEL_ENABLE_VAUXP0_VAUXN0 {true} \ CONFIG.CHANNEL_ENABLE_VAUXP1_VAUXN1 {true} \ @@ -521,6 +520,20 @@ set_property -dict [list \ CONFIG.CHANNEL_ENABLE_VAUXP9_VAUXN9 {true} \ CONFIG.CHANNEL_ENABLE_VAUXP10_VAUXN10 {true} \ CONFIG.CHANNEL_ENABLE_VUSER0 {true} \ + CONFIG.CHANNEL_ENABLE_VUSER1 {true} \ + CONFIG.SELECT_USER_SUPPLY1 {VCCO} \ + CONFIG.USER_SUPPLY1_BANK {26} \ + CONFIG.CHANNEL_ENABLE_TEMPERATURE {true} \ + CONFIG.CHANNEL_ENABLE_VBRAM {false} \ + CONFIG.CHANNEL_ENABLE_VCCAUX {true} \ + CONFIG.CHANNEL_ENABLE_VCCINT {true} \ + CONFIG.ENABLE_VCCPSAUX_ALARM {false} \ + CONFIG.ENABLE_VCCPSINTFP_ALARM {false} \ + CONFIG.ENABLE_VCCPSINTLP_ALARM {false} \ + CONFIG.OT_ALARM {true} \ + CONFIG.USER_TEMP_ALARM {false} \ + CONFIG.VCCAUX_ALARM {false} \ + CONFIG.VCCINT_ALARM {false} \ CONFIG.USER_SUPPLY0_ALARM {false} \ CONFIG.USER_SUPPLY0_BANK {66} \ CONFIG.ANALOG_BANK_SELECTION {66} \ @@ -599,6 +612,7 @@ ad_cpu_interrupt ps-13 mb-12 axi_adrv9001_rx1_dma/irq ad_cpu_interrupt ps-12 mb-11 axi_adrv9001_rx2_dma/irq ad_cpu_interrupt ps-11 mb-6 axi_adrv9001_tx1_dma/irq ad_cpu_interrupt ps-10 mb-5 axi_adrv9001_tx2_dma/irq +ad_cpu_interrupt ps-9 mb-4 pl_sysmon/ip2intc_irpt set mem_init_sys_path [get_env_param ADI_PROJECT_DIR ""]mem_init_sys.txt; From 07c99a8634294cf95a6389bea1519983078b011a Mon Sep 17 00:00:00 2001 From: AndreiGrozav Date: Mon, 18 Sep 2023 18:44:25 +0300 Subject: [PATCH 3/4] jupiter_sdr: Change the SD ctrl config to autodir --- projects/jupiter_sdr/system_bd.tcl | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/projects/jupiter_sdr/system_bd.tcl b/projects/jupiter_sdr/system_bd.tcl index 67161aab5f..4e0cc8021c 100644 --- a/projects/jupiter_sdr/system_bd.tcl +++ b/projects/jupiter_sdr/system_bd.tcl @@ -54,7 +54,11 @@ ad_ip_parameter sys_ps8 CONFIG.PSU__QSPI__PERIPHERAL__ENABLE {1} ad_ip_parameter sys_ps8 CONFIG.PSU__QSPI__PERIPHERAL__MODE {Dual Parallel} ad_ip_parameter sys_ps8 CONFIG.PSU__QSPI__PERIPHERAL__DATA_MODE {x4} ad_ip_parameter sys_ps8 CONFIG.PSU__SD1__PERIPHERAL__ENABLE {1} -ad_ip_parameter sys_ps8 CONFIG.PSU__SD1__PERIPHERAL__IO {MIO 39 .. 51} +ad_ip_parameter sys_ps8 CONFIG.PSU__SD1__SLOT_TYPE {SD 3.0 AUTODIR} +ad_ip_parameter sys_ps8 CONFIG.PSU__SD1__GRP_CD__ENABLE {1} +ad_ip_parameter sys_ps8 CONFIG.PSU__SD1__GRP_POW__ENABLE {0} +ad_ip_parameter sys_ps8 CONFIG.PSU__SD1__GRP_WP__ENABLE {0} +ad_ip_parameter sys_ps8 CONFIG.PSU__SD1__PERIPHERAL__IO {MIO 39 46 .. 51} ad_ip_parameter sys_ps8 CONFIG.PSU__SWDT0__PERIPHERAL__ENABLE {1} ad_ip_parameter sys_ps8 CONFIG.PSU__SWDT1__PERIPHERAL__ENABLE {1} ad_ip_parameter sys_ps8 CONFIG.PSU__TTC0__PERIPHERAL__ENABLE {1} From ffdf092368da941027fa7ab9faf06e67de145bfb Mon Sep 17 00:00:00 2001 From: AndreiGrozav Date: Tue, 26 Sep 2023 09:58:56 +0300 Subject: [PATCH 4/4] jupiter_sdr: USB power delivery always on --- projects/jupiter_sdr/system_top.v | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/projects/jupiter_sdr/system_top.v b/projects/jupiter_sdr/system_top.v index bea7018d43..3208d70c42 100644 --- a/projects/jupiter_sdr/system_top.v +++ b/projects/jupiter_sdr/system_top.v @@ -196,8 +196,7 @@ module system_top ( assign mssi_sync = mcs_sync_busy | gpio_o[7]; - // TO-DO - //assign usb_pd_reset = gpio_o[8]; + assign usb_pd_reset = 1'b0; assign adrv9002_mcssrc = gpio_o[65]; assign usb_flash_prog_en = gpio_o[66]; assign fan_en = 1'b1;