From fe6d34d717fc304ed8126f015b44b48a39cb8eda Mon Sep 17 00:00:00 2001 From: Travis Collins Date: Thu, 23 May 2019 20:26:47 -0400 Subject: [PATCH 1/3] Initial updates for R2019a Signed-off-by: Travis Collins --- +adi/+common/DDS.m | 4 ++-- +adi/+common/RxTx.m | 4 ++-- .gitlab-ci.yml | 9 ++++++++- CI/scripts/bsp.tmpl | 6 +++--- CI/scripts/genTlbx.m | 5 ++++- 5 files changed, 19 insertions(+), 9 deletions(-) diff --git a/+adi/+common/DDS.m b/+adi/+common/DDS.m index 657f598..9623526 100644 --- a/+adi/+common/DDS.m +++ b/+adi/+common/DDS.m @@ -51,7 +51,7 @@ methods (Hidden, Access=protected) function ToggleDDS(obj,value) - chanPtr = getChan(obj,'altvoltage0',true); + chanPtr = getChan(obj,obj.iioDev,'altvoltage0',true); iio_channel_attr_write_bool(obj,chanPtr,'raw',value); end @@ -60,7 +60,7 @@ function DDSUpdate(obj) for g=1:obj.channelCount/2 for k=1:4 id = sprintf('altvoltage%d',k-1); - chanPtr = getChan(obj,id,true); + chanPtr = getChan(obj,obj.iioDev,id,true); iio_channel_attr_write_double(obj,chanPtr,'frequency',obj.DDSFrequencies(g,k)); iio_channel_attr_write_double(obj,chanPtr,'scale',obj.DDSScales(g,k)); iio_channel_attr_write_double(obj,chanPtr,'phase',obj.DDSPhases(g,k)); diff --git a/+adi/+common/RxTx.m b/+adi/+common/RxTx.m index e2da1d5..2bd8762 100644 --- a/+adi/+common/RxTx.m +++ b/+adi/+common/RxTx.m @@ -84,7 +84,7 @@ function releaseChanBuffers(obj) % Disable the channels if obj.enabledChannels for k=1:obj.channelCount - disableChannel(obj, obj.channel_names{k}, obj.isOutput); + disableChannel(obj, obj.iioDev, obj.channel_names{k}, obj.isOutput); end obj.enabledChannels = false; end @@ -101,7 +101,7 @@ function releaseChanBuffers(obj) % Enable the channel(s) for k=1:obj.channelCount - enableChannel(obj, obj.channel_names{k}, obj.isOutput); + enableChannel(obj, obj.iioDev, obj.channel_names{k}, obj.isOutput); end obj.enabledChannels = true; diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 750354f..9d8cd26 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,6 +11,7 @@ build:2018_R1: - matlab stage: build script: + - export MLRELEASE=R2019a - ./CI/scripts/dockermake build - ./CI/scripts/dockermake add_libad9361 - ./CI/scripts/dockermake gen_tlbx @@ -31,7 +32,7 @@ build:master: stage: build script: - export HDLBRANCH=hdl_2018_r2 - - export MLRELEASE=R2018b + - export MLRELEASE=R2019a - ./CI/scripts/dockermake build - export HDLBRANCH= - export MLRELEASE= @@ -49,6 +50,7 @@ test:2018_R1: dependencies: - build:2018_R1 script: + - export MLRELEASE=R2019a - ./CI/scripts/dockermake test - ./CI/scripts/dockermake zip artifacts: @@ -68,6 +70,7 @@ test_installer:2018_R1_Installer: dependencies: - build:2018_R1 script: + - export MLRELEASE=R2019a - cp mltbx/* . - pwd - ls @@ -91,6 +94,7 @@ test:2018_R1: dependencies: - build:2018_R1 script: + - export MLRELEASE=R2019a - ./CI/scripts/dockermake test - ./CI/scripts/dockermake zip artifacts: @@ -110,6 +114,7 @@ test:targeting_demos: dependencies: - build:2018_R1 script: + - export MLRELEASE=R2019a - ./CI/scripts/dockermake test_targeting_demos artifacts: when: always @@ -127,6 +132,7 @@ test_hardware:Streaming_Hardware: dependencies: - build:2018_R1 script: + - export MLRELEASE=R2019a - cd CI/scripts - make test_streaming artifacts: @@ -145,6 +151,7 @@ test_hardware:EVM_Hardware: dependencies: - build:2018_R1 script: + - export MLRELEASE=R2019a - cd CI/scripts - make test_evm artifacts: diff --git a/CI/scripts/bsp.tmpl b/CI/scripts/bsp.tmpl index 2eaf97e..1b911d5 100644 --- a/CI/scripts/bsp.tmpl +++ b/CI/scripts/bsp.tmpl @@ -60,8 +60,8 @@ mltbx/* false - R2018b - R2018b + __ML-RELEASE__ + __ML-RELEASE__ true true false @@ -116,7 +116,7 @@ mltbx/* - /usr/local/MATLAB/R2018b + /usr/local/MATLAB/__ML-RELEASE__ diff --git a/CI/scripts/genTlbx.m b/CI/scripts/genTlbx.m index 96ea73b..084e584 100644 --- a/CI/scripts/genTlbx.m +++ b/CI/scripts/genTlbx.m @@ -1,5 +1,7 @@ -version = '18.2.1'; +version = '19.1'; +ml = ver('MATLAB'); +ml = ml.Release(2:end-1); %% cd(fileparts((mfilename('fullpath')))); @@ -13,6 +15,7 @@ f = strrep(f,'__REPO-ROOT__',p); f = strrep(f,'__VERSION__',version); +f = strrep(f,'__ML-RELEASE__',ml); fid = fopen('../../bsp.prj','w'); fprintf(fid,'%s',f); From 43f2e739955de769fba45b27fb32547cd038acbe Mon Sep 17 00:00:00 2001 From: Travis Collins Date: Fri, 31 May 2019 23:21:45 -0400 Subject: [PATCH 2/3] Upgrade HDL to hdl_2018_r2 release which uses vivado 2018.2. MATLAB release has also been moved to R2019a. Targeting demos have been upgraded as well. Signed-off-by: Travis Collins --- .../adrv9361z7035/ccbob_cmos/system_bd.tcl | 6 +- .../ccbob_cmos/system_project_rx.tcl | 1 - .../ccbob_cmos/system_project_rx_tx.tcl | 1 - .../ccbob_cmos/system_project_tx.tcl | 1 - .../adrv9361z7035/ccbob_cmos/system_top.v | 15 +- .../adrv9361z7035/ccbob_lvds/system_bd.tcl | 4 +- .../ccbob_lvds/system_project_rx.tcl | 1 - .../ccbob_lvds/system_project_rx_tx.tcl | 1 - .../ccbob_lvds/system_project_tx.tcl | 1 - .../adrv9361z7035/ccbob_lvds/system_top.v | 15 +- .../adrv9361z7035/ccbox_lvds/system_bd.tcl | 9 +- .../adrv9361z7035/ccbox_lvds/system_top.v | 21 +- .../adrv9361z7035/ccfmc_lvds/system_bd.tcl | 5 +- .../adrv9361z7035/ccfmc_lvds/system_top.v | 26 +-- .../adrv9361z7035/common/adrv9361z7035_bd.tcl | 2 +- .../common/adrv9361z7035_constr.xdc | 2 +- .../common/adrv9361z7035_constr_cmos.xdc | 2 +- .../common/adrv9361z7035_constr_lvds.xdc | 2 +- CI/projects/adrv9361z7035/common/ccfmc_bd.tcl | 33 +-- .../adrv9364z7020/ccbob_cmos/system_bd.tcl | 6 +- .../ccbob_cmos/system_project_rx.tcl | 1 - .../ccbob_cmos/system_project_rx_tx.tcl | 1 - .../ccbob_cmos/system_project_tx.tcl | 1 - .../adrv9364z7020/ccbob_cmos/system_top.v | 15 +- .../adrv9364z7020/ccbob_lvds/system_bd.tcl | 6 +- .../ccbob_lvds/system_project_rx.tcl | 1 - .../ccbob_lvds/system_project_rx_tx.tcl | 1 - .../ccbob_lvds/system_project_tx.tcl | 1 - .../adrv9364z7020/ccbob_lvds/system_top.v | 15 +- .../adrv9364z7020/ccbox_lvds/system_bd.tcl | 9 +- .../adrv9364z7020/ccbox_lvds/system_top.v | 19 +- .../adrv9364z7020/common/adrv9364z7020_bd.tcl | 2 +- .../common/adrv9364z7020_constr.xdc | 2 +- .../common/adrv9364z7020_constr_cmos.xdc | 2 +- .../common/adrv9364z7020_constr_lvds.xdc | 2 +- CI/projects/common/zc702/zc702_system_bd.tcl | 78 +++---- .../common/zc706/zc706_plddr3_adcfifo_bd.tcl | 4 +- .../common/zc706/zc706_plddr3_dacfifo_bd.tcl | 4 +- CI/projects/common/zc706/zc706_plddr3_mig.prj | 203 ++++++++++++++++++ CI/projects/common/zc706/zc706_system_bd.tcl | 78 +++---- .../common/zcu102/zcu102_system_bd.tcl | 51 ++--- .../common/zcu102/zcu102_system_constr.xdc | 42 ++-- CI/projects/common/zed/zed_system_bd.tcl | 77 +++---- CI/projects/fmcomms2/common/fmcomms2_bd.tcl | 9 +- CI/projects/fmcomms2/zc702/Makefile | 101 ++------- CI/projects/fmcomms2/zc702/system_bd.tcl | 3 +- CI/projects/fmcomms2/zc702/system_top.v | 22 +- CI/projects/fmcomms2/zc706/Makefile | 100 ++------- CI/projects/fmcomms2/zc706/system_top.v | 18 +- CI/projects/fmcomms2/zed/Makefile | 109 ++-------- CI/projects/fmcomms2/zed/system_top.v | 19 +- CI/projects/fmcomms5/common/fmcomms5_bd.tcl | 6 +- CI/projects/fmcomms5/zc702/Makefile | 96 ++------- CI/projects/fmcomms5/zc702/system_bd.tcl | 5 +- CI/projects/fmcomms5/zc702/system_top.v | 40 +--- CI/projects/fmcomms5/zc706/Makefile | 96 ++------- CI/projects/fmcomms5/zc706/system_top.v | 45 ++-- CI/scripts/Makefile | 4 +- CI/scripts/adi_ip.tcl | 25 ++- CI/scripts/adi_project.tcl | 2 +- CI/scripts/bsp.prj | 184 ---------------- CI/scripts/bsp.tmpl | 1 - CI/scripts/build_bsp.sh | 54 ++++- CI/scripts/pack_all_ips.tcl | 4 +- .../+adrv9009/+common/plugin_rd.m | 2 +- .../+adrv9361z7035/+common/plugin_rd.m | 2 +- .../+adrv9364z7020/+common/plugin_rd.m | 2 +- .../+adrv9371x/+common/plugin_rd.m | 2 +- .../+fmcomms2/+common/plugin_rd.m | 2 +- .../+fmcomms5/+common/plugin_rd.m | 2 +- .../+AnalogDevices/+pluto/plugin_rd.m | 2 +- .../+adrv9361z7035/+common/plugin_rd.m | 2 +- .../frequency-hopping/build_kernel.sh | 4 +- .../frequency-hopping/hdlworkflow.m | 2 +- .../modem-qpsk/test/ReceiverModelTests.m | 3 +- test/BSPTestsBase.m | 17 +- test/DemoTests.m | 2 + 77 files changed, 665 insertions(+), 1091 deletions(-) create mode 100644 CI/projects/common/zc706/zc706_plddr3_mig.prj delete mode 100644 CI/scripts/bsp.prj diff --git a/CI/projects/adrv9361z7035/ccbob_cmos/system_bd.tcl b/CI/projects/adrv9361z7035/ccbob_cmos/system_bd.tcl index ccfbb21..0ffedf3 100644 --- a/CI/projects/adrv9361z7035/ccbob_cmos/system_bd.tcl +++ b/CI/projects/adrv9361z7035/ccbob_cmos/system_bd.tcl @@ -1,6 +1,6 @@ -source $ad_hdl_dir/projects/adrv9361z7035/common/adrv9361z7035_bd.tcl -source $ad_hdl_dir/projects/adrv9361z7035/common/ccbob_bd.tcl +source ../common/adrv9361z7035_bd.tcl +source ../common/ccbob_bd.tcl ad_ip_parameter util_ad9361_divclk CONFIG.SEL_0_DIV 2 ad_ip_parameter util_ad9361_divclk CONFIG.SEL_1_DIV 1 @@ -9,5 +9,3 @@ cfg_ad9361_interface CMOS ad_ip_parameter axi_ad9361 CONFIG.ADC_INIT_DELAY 29 - - diff --git a/CI/projects/adrv9361z7035/ccbob_cmos/system_project_rx.tcl b/CI/projects/adrv9361z7035/ccbob_cmos/system_project_rx.tcl index 6a3f514..787c059 100644 --- a/CI/projects/adrv9361z7035/ccbob_cmos/system_project_rx.tcl +++ b/CI/projects/adrv9361z7035/ccbob_cmos/system_project_rx.tcl @@ -14,7 +14,6 @@ adi_project_files adrv9361z7035_ccbob_cmos [list \ "$ad_hdl_dir/projects/adrv9361z7035/common/ccbob_constr.xdc" \ "system_top.v" ] -set_property is_enabled false [get_files *axi_gpreg_constr.xdc] adi_project_run adrv9361z7035_ccbob_cmos #source $ad_hdl_dir/library/analog.com_user_axi_ad9361_1.0/axi_ad9361_delay.tcl # Copy the boot file to the root directory diff --git a/CI/projects/adrv9361z7035/ccbob_cmos/system_project_rx_tx.tcl b/CI/projects/adrv9361z7035/ccbob_cmos/system_project_rx_tx.tcl index 6bad510..05e7adb 100644 --- a/CI/projects/adrv9361z7035/ccbob_cmos/system_project_rx_tx.tcl +++ b/CI/projects/adrv9361z7035/ccbob_cmos/system_project_rx_tx.tcl @@ -14,7 +14,6 @@ adi_project_files adrv9361z7035_ccbob_cmos [list \ "$ad_hdl_dir/projects/adrv9361z7035/common/ccbob_constr.xdc" \ "system_top.v" ] -set_property is_enabled false [get_files *axi_gpreg_constr.xdc] adi_project_run adrv9361z7035_ccbob_cmos #source $ad_hdl_dir/library/analog.com_user_axi_ad9361_1.0/axi_ad9361_delay.tcl # Copy the boot file to the root directory diff --git a/CI/projects/adrv9361z7035/ccbob_cmos/system_project_tx.tcl b/CI/projects/adrv9361z7035/ccbob_cmos/system_project_tx.tcl index 50a7132..680350d 100644 --- a/CI/projects/adrv9361z7035/ccbob_cmos/system_project_tx.tcl +++ b/CI/projects/adrv9361z7035/ccbob_cmos/system_project_tx.tcl @@ -14,7 +14,6 @@ adi_project_files adrv9361z7035_ccbob_cmos [list \ "$ad_hdl_dir/projects/adrv9361z7035/common/ccbob_constr.xdc" \ "system_top.v" ] -set_property is_enabled false [get_files *axi_gpreg_constr.xdc] adi_project_run adrv9361z7035_ccbob_cmos #source $ad_hdl_dir/library/analog.com_user_axi_ad9361_1.0/axi_ad9361_delay.tcl # Copy the boot file to the root directory diff --git a/CI/projects/adrv9361z7035/ccbob_cmos/system_top.v b/CI/projects/adrv9361z7035/ccbob_cmos/system_top.v index 6f70878..d82381d 100644 --- a/CI/projects/adrv9361z7035/ccbob_cmos/system_top.v +++ b/CI/projects/adrv9361z7035/ccbob_cmos/system_top.v @@ -8,7 +8,7 @@ // terms. // // The user should read each of these license terms, and understand the -// freedoms and responsabilities that he or she has by using this source/core. +// freedoms and responsibilities that he or she has by using this source/core. // // This core is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR @@ -188,6 +188,7 @@ module system_top ( .gpio_i (gpio_i), .gpio_o (gpio_o), .gpio_t (gpio_t), + .gps_pps (1'b0), .gt_ref_clk (gt_ref_clk), .gt_rx_n (gt_rx_n), .gt_rx_p (gt_rx_p), @@ -196,18 +197,6 @@ module system_top ( .iic_main_scl_io (iic_scl), .iic_main_sda_io (iic_sda), .otg_vbusoc (1'b0), - .ps_intr_00 (1'b0), - .ps_intr_01 (1'b0), - .ps_intr_02 (1'b0), - .ps_intr_03 (1'b0), - .ps_intr_04 (1'b0), - .ps_intr_05 (1'b0), - .ps_intr_06 (1'b0), - .ps_intr_07 (1'b0), - .ps_intr_08 (1'b0), - .ps_intr_09 (1'b0), - .ps_intr_10 (1'b0), - .ps_intr_15 (1'b0), .rx_clk_in (rx_clk_in), .rx_data_in (rx_data_in), .rx_frame_in (rx_frame_in), diff --git a/CI/projects/adrv9361z7035/ccbob_lvds/system_bd.tcl b/CI/projects/adrv9361z7035/ccbob_lvds/system_bd.tcl index d85fdba..373f129 100644 --- a/CI/projects/adrv9361z7035/ccbob_lvds/system_bd.tcl +++ b/CI/projects/adrv9361z7035/ccbob_lvds/system_bd.tcl @@ -1,6 +1,6 @@ -source $ad_hdl_dir/projects/adrv9361z7035/common/adrv9361z7035_bd.tcl -source $ad_hdl_dir/projects/adrv9361z7035/common/ccbob_bd.tcl +source ../common/adrv9361z7035_bd.tcl +source ../common/ccbob_bd.tcl cfg_ad9361_interface LVDS diff --git a/CI/projects/adrv9361z7035/ccbob_lvds/system_project_rx.tcl b/CI/projects/adrv9361z7035/ccbob_lvds/system_project_rx.tcl index 2342113..9c628f5 100644 --- a/CI/projects/adrv9361z7035/ccbob_lvds/system_project_rx.tcl +++ b/CI/projects/adrv9361z7035/ccbob_lvds/system_project_rx.tcl @@ -14,7 +14,6 @@ adi_project_files adrv9361z7035_ccbob_lvds [list \ "$ad_hdl_dir/projects/adrv9361z7035/common/ccbob_constr.xdc" \ "system_top.v" ] -set_property is_enabled false [get_files *axi_gpreg_constr.xdc] adi_project_run adrv9361z7035_ccbob_lvds #source $ad_hdl_dir/library/analog.com_user_axi_ad9361_1.0/axi_ad9361_delay.tcl # Copy the boot file to the root directory diff --git a/CI/projects/adrv9361z7035/ccbob_lvds/system_project_rx_tx.tcl b/CI/projects/adrv9361z7035/ccbob_lvds/system_project_rx_tx.tcl index 53d440b..f4ca135 100644 --- a/CI/projects/adrv9361z7035/ccbob_lvds/system_project_rx_tx.tcl +++ b/CI/projects/adrv9361z7035/ccbob_lvds/system_project_rx_tx.tcl @@ -14,7 +14,6 @@ adi_project_files adrv9361z7035_ccbob_lvds [list \ "$ad_hdl_dir/projects/adrv9361z7035/common/ccbob_constr.xdc" \ "system_top.v" ] -set_property is_enabled false [get_files *axi_gpreg_constr.xdc] adi_project_run adrv9361z7035_ccbob_lvds #source $ad_hdl_dir/library/analog.com_user_axi_ad9361_1.0/axi_ad9361_delay.tcl # Copy the boot file to the root directory diff --git a/CI/projects/adrv9361z7035/ccbob_lvds/system_project_tx.tcl b/CI/projects/adrv9361z7035/ccbob_lvds/system_project_tx.tcl index c8b6bb5..f1f8571 100644 --- a/CI/projects/adrv9361z7035/ccbob_lvds/system_project_tx.tcl +++ b/CI/projects/adrv9361z7035/ccbob_lvds/system_project_tx.tcl @@ -14,7 +14,6 @@ adi_project_files adrv9361z7035_ccbob_lvds [list \ "$ad_hdl_dir/projects/adrv9361z7035/common/ccbob_constr.xdc" \ "system_top.v" ] -set_property is_enabled false [get_files *axi_gpreg_constr.xdc] adi_project_run adrv9361z7035_ccbob_lvds #source $ad_hdl_dir/library/analog.com_user_axi_ad9361_1.0/axi_ad9361_delay.tcl # Copy the boot file to the root directory diff --git a/CI/projects/adrv9361z7035/ccbob_lvds/system_top.v b/CI/projects/adrv9361z7035/ccbob_lvds/system_top.v index 738d565..b2434a4 100644 --- a/CI/projects/adrv9361z7035/ccbob_lvds/system_top.v +++ b/CI/projects/adrv9361z7035/ccbob_lvds/system_top.v @@ -8,7 +8,7 @@ // terms. // // The user should read each of these license terms, and understand the -// freedoms and responsabilities that he or she has by using this source/core. +// freedoms and responsibilities that he or she has by using this source/core. // // This core is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR @@ -192,6 +192,7 @@ module system_top ( .gpio_i (gpio_i), .gpio_o (gpio_o), .gpio_t (gpio_t), + .gps_pps (1'b0), .gt_ref_clk (gt_ref_clk), .gt_rx_n (gt_rx_n), .gt_rx_p (gt_rx_p), @@ -200,18 +201,6 @@ module system_top ( .iic_main_scl_io (iic_scl), .iic_main_sda_io (iic_sda), .otg_vbusoc (1'b0), - .ps_intr_00 (1'b0), - .ps_intr_01 (1'b0), - .ps_intr_02 (1'b0), - .ps_intr_03 (1'b0), - .ps_intr_04 (1'b0), - .ps_intr_05 (1'b0), - .ps_intr_06 (1'b0), - .ps_intr_07 (1'b0), - .ps_intr_08 (1'b0), - .ps_intr_09 (1'b0), - .ps_intr_10 (1'b0), - .ps_intr_15 (1'b0), .rx_clk_in_n (rx_clk_in_n), .rx_clk_in_p (rx_clk_in_p), .rx_data_in_n (rx_data_in_n), diff --git a/CI/projects/adrv9361z7035/ccbox_lvds/system_bd.tcl b/CI/projects/adrv9361z7035/ccbox_lvds/system_bd.tcl index 94844cc..a874d19 100644 --- a/CI/projects/adrv9361z7035/ccbox_lvds/system_bd.tcl +++ b/CI/projects/adrv9361z7035/ccbox_lvds/system_bd.tcl @@ -1,10 +1,11 @@ -source $ad_hdl_dir/projects/adrv9361z7035/common/adrv9361z7035_bd.tcl -source $ad_hdl_dir/projects/adrv9361z7035/common/ccbox_bd.tcl +source ../common/adrv9361z7035_bd.tcl +source ../common/ccbox_bd.tcl cfg_ad9361_interface LVDS -set_property CONFIG.ADC_INIT_DELAY 29 [get_bd_cells axi_ad9361] - +create_bd_port -dir O sys_cpu_clk_out +ad_connect sys_cpu_clk sys_cpu_clk_out +set_property CONFIG.ADC_INIT_DELAY 29 [get_bd_cells axi_ad9361] diff --git a/CI/projects/adrv9361z7035/ccbox_lvds/system_top.v b/CI/projects/adrv9361z7035/ccbox_lvds/system_top.v index 66cf0c6..f00b46c 100644 --- a/CI/projects/adrv9361z7035/ccbox_lvds/system_top.v +++ b/CI/projects/adrv9361z7035/ccbox_lvds/system_top.v @@ -8,7 +8,7 @@ // terms. // // The user should read each of these license terms, and understand the -// freedoms and responsabilities that he or she has by using this source/core. +// freedoms and responsibilities that he or she has by using this source/core. // // This core is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR @@ -262,7 +262,7 @@ module system_top ( assign gpio_i[55:53] = gpio_o[55:53]; // rf & clock-select gpio - 52:51 - + ad_iobuf #(.DATA_WIDTH(2)) i_iobuf_rf_1 ( .dio_t (gpio_t[52:51]), .dio_i (gpio_o[52:51]), @@ -271,7 +271,7 @@ module system_top ( gpio_clksel})); // 51:51 // tact-scroll-wheel gpio - 50:47 - + ad_iobuf #(.DATA_WIDTH(4)) i_iobuf_tsw_1 ( .dio_t (gpio_t[50:47]), .dio_i (gpio_o[50:47]), @@ -282,7 +282,7 @@ module system_top ( tsw_s5})); // 47 // ad9361 gpio - 46:32 - + ad_iobuf #(.DATA_WIDTH(15)) i_iobuf_ad9361 ( .dio_t (gpio_t[46:32]), .dio_i (gpio_o[46:32]), @@ -341,18 +341,6 @@ module system_top ( .iic_main_scl_io (iic_scl), .iic_main_sda_io (iic_sda), .otg_vbusoc (1'b0), - .ps_intr_00 (1'b0), - .ps_intr_01 (1'b0), - .ps_intr_02 (1'b0), - .ps_intr_03 (1'b0), - .ps_intr_04 (1'b0), - .ps_intr_05 (1'b0), - .ps_intr_06 (1'b0), - .ps_intr_07 (1'b0), - .ps_intr_08 (1'b0), - .ps_intr_09 (1'b0), - .ps_intr_10 (1'b0), - .ps_intr_15 (1'b0), .rx_clk_in_n (rx_clk_in_n), .rx_clk_in_p (rx_clk_in_p), .rx_data_in_n (rx_data_in_n), @@ -381,6 +369,7 @@ module system_top ( .tdd_sync_o (), .tdd_sync_t (), .gps_pps (gps_pps), + .sys_cpu_clk_out (sys_cpu_clk), .tx_clk_out_n (tx_clk_out_n), .tx_clk_out_p (tx_clk_out_p), .tx_data_out_n (tx_data_out_n), diff --git a/CI/projects/adrv9361z7035/ccfmc_lvds/system_bd.tcl b/CI/projects/adrv9361z7035/ccfmc_lvds/system_bd.tcl index 5f9324b..1a582f5 100644 --- a/CI/projects/adrv9361z7035/ccfmc_lvds/system_bd.tcl +++ b/CI/projects/adrv9361z7035/ccfmc_lvds/system_bd.tcl @@ -1,6 +1,6 @@ -source $ad_hdl_dir/projects/adrv9361z7035/common/adrv9361z7035_bd.tcl -source $ad_hdl_dir/projects/adrv9361z7035/common/ccfmc_bd.tcl +source ../common/adrv9361z7035_bd.tcl +source ../common/ccfmc_bd.tcl cfg_ad9361_interface LVDS @@ -8,3 +8,4 @@ create_bd_port -dir O sys_cpu_clk_out ad_connect sys_cpu_clk sys_cpu_clk_out ad_ip_parameter axi_ad9361 CONFIG.ADC_INIT_DELAY 29 + diff --git a/CI/projects/adrv9361z7035/ccfmc_lvds/system_top.v b/CI/projects/adrv9361z7035/ccfmc_lvds/system_top.v index ad8769f..b1d2ab6 100644 --- a/CI/projects/adrv9361z7035/ccfmc_lvds/system_top.v +++ b/CI/projects/adrv9361z7035/ccfmc_lvds/system_top.v @@ -8,7 +8,7 @@ // terms. // // The user should read each of these license terms, and understand the -// freedoms and responsabilities that he or she has by using this source/core. +// freedoms and responsibilities that he or she has by using this source/core. // // This core is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR @@ -185,7 +185,7 @@ module system_top ( assign ad9517_csn = spi_csn_s[1]; assign ad9517_clk = spi_clk_s; assign ad9517_mosi = spi_mosi_s; - assign spi_miso_s = (~spi_csn_s[0] & spi_miso) | (~spi_csn_s[1] & ad9517_miso); + assign spi_miso_s = (~spi_csn_s[0] & spi_miso) | (~spi_csn_s[1] & ad9517_miso); // loopback signals @@ -240,7 +240,7 @@ module system_top ( assign gpio_i[63:61] = gpio_o[63:61]; // rf & ad9517 gpio - 60:56 - + ad_iobuf #(.DATA_WIDTH(5)) i_iobuf ( .dio_t (gpio_t[60:56]), .dio_i (gpio_o[60:56]), @@ -252,11 +252,11 @@ module system_top ( gpio_rf0})); // 56:56 // unused gpio - 55:53 - + assign gpio_i[55:53] = gpio_o[55:53]; // rf & clock-select gpio - 52:51 - + ad_iobuf #(.DATA_WIDTH(2)) i_iobuf_rf_1 ( .dio_t (gpio_t[52:51]), .dio_i (gpio_o[52:51]), @@ -265,11 +265,11 @@ module system_top ( gpio_clksel})); // 51:51 // unused gpio - 50:47 - + assign gpio_i[50:47] = gpio_o[50:47]; // ad9361 gpio - 46:32 - + ad_iobuf #(.DATA_WIDTH(15)) i_iobuf_ad9361 ( .dio_t (gpio_t[46:32]), .dio_i (gpio_o[46:32]), @@ -335,6 +335,7 @@ module system_top ( .gpio_i (gpio_i), .gpio_o (gpio_o), .gpio_t (gpio_t), + .gps_pps (1'b0), .gt_ref_clk_0 (gt_ref_clk_0), .gt_ref_clk_1 (gt_ref_clk_1), .gt_rx_n (gt_rx_n), @@ -354,17 +355,6 @@ module system_top ( .iic_main_scl_io (iic_scl), .iic_main_sda_io (iic_sda), .otg_vbusoc (1'b0), - .ps_intr_00 (1'b0), - .ps_intr_01 (1'b0), - .ps_intr_02 (1'b0), - .ps_intr_03 (1'b0), - .ps_intr_04 (1'b0), - .ps_intr_05 (1'b0), - .ps_intr_06 (1'b0), - .ps_intr_07 (1'b0), - .ps_intr_08 (1'b0), - .ps_intr_09 (1'b0), - .ps_intr_10 (1'b0), .rx_clk_in_n (rx_clk_in_n), .rx_clk_in_p (rx_clk_in_p), .rx_data_in_n (rx_data_in_n), diff --git a/CI/projects/adrv9361z7035/common/adrv9361z7035_bd.tcl b/CI/projects/adrv9361z7035/common/adrv9361z7035_bd.tcl index 0db503a..ecb26d1 100644 --- a/CI/projects/adrv9361z7035/common/adrv9361z7035_bd.tcl +++ b/CI/projects/adrv9361z7035/common/adrv9361z7035_bd.tcl @@ -62,6 +62,7 @@ ad_ip_parameter sys_ps7 CONFIG.PCW_GPIO_MIO_GPIO_ENABLE 1 ad_ip_parameter sys_ps7 CONFIG.PCW_ENET0_PERIPHERAL_ENABLE 1 ad_ip_parameter sys_ps7 CONFIG.PCW_ENET0_ENET0_IO "MIO 16 .. 27" ad_ip_parameter sys_ps7 CONFIG.PCW_ENET0_GRP_MDIO_ENABLE 1 +ad_ip_parameter sys_ps7 CONFIG.PCW_ENET0_GRP_MDIO_IO "MIO 52 .. 53" ad_ip_parameter sys_ps7 CONFIG.PCW_ENET1_PERIPHERAL_ENABLE 1 ad_ip_parameter sys_ps7 CONFIG.PCW_ENET_RESET_SELECT "Separate reset pins" ad_ip_parameter sys_ps7 CONFIG.PCW_ENET0_RESET_ENABLE 1 @@ -364,7 +365,6 @@ ad_ip_instance axi_dmac axi_ad9361_dac_dma ad_ip_parameter axi_ad9361_dac_dma CONFIG.DMA_TYPE_SRC 0 ad_ip_parameter axi_ad9361_dac_dma CONFIG.DMA_TYPE_DEST 2 ad_ip_parameter axi_ad9361_dac_dma CONFIG.CYCLIC 1 -ad_ip_parameter axi_ad9361_dac_dma CONFIG.SYNC_TRANSFER_START 0 ad_ip_parameter axi_ad9361_dac_dma CONFIG.AXI_SLICE_SRC 0 ad_ip_parameter axi_ad9361_dac_dma CONFIG.AXI_SLICE_DEST 1 ad_ip_parameter axi_ad9361_dac_dma CONFIG.DMA_2D_TRANSFER 0 diff --git a/CI/projects/adrv9361z7035/common/adrv9361z7035_constr.xdc b/CI/projects/adrv9361z7035/common/adrv9361z7035_constr.xdc index 54b98ab..f7c98d2 100644 --- a/CI/projects/adrv9361z7035/common/adrv9361z7035_constr.xdc +++ b/CI/projects/adrv9361z7035/common/adrv9361z7035_constr.xdc @@ -1,5 +1,5 @@ -# constraints (adrv9361z7035.e) +# constraints (pzsdr2.e) # ad9361 set_property -dict {PACKAGE_PIN G14 IOSTANDARD LVCMOS18} [get_ports enable] ; ## IO_L11P_T1_SRCC_35 U1,G14,IO_L11_35_ENABLE diff --git a/CI/projects/adrv9361z7035/common/adrv9361z7035_constr_cmos.xdc b/CI/projects/adrv9361z7035/common/adrv9361z7035_constr_cmos.xdc index 99aeff4..530511b 100644 --- a/CI/projects/adrv9361z7035/common/adrv9361z7035_constr_cmos.xdc +++ b/CI/projects/adrv9361z7035/common/adrv9361z7035_constr_cmos.xdc @@ -1,5 +1,5 @@ -# constraints (adrv9361z7035.e) +# constraints (pzsdr2.e) # ad9361 (SWAP == 0x1) set_property -dict {PACKAGE_PIN J14 IOSTANDARD LVCMOS18} [get_ports rx_clk_in] ; ## IO_L12P_T1_MRCC_35 U1,J14,IO_L12_MRCC_35_DATA_CLK_P diff --git a/CI/projects/adrv9361z7035/common/adrv9361z7035_constr_lvds.xdc b/CI/projects/adrv9361z7035/common/adrv9361z7035_constr_lvds.xdc index e63457e..febfb59 100644 --- a/CI/projects/adrv9361z7035/common/adrv9361z7035_constr_lvds.xdc +++ b/CI/projects/adrv9361z7035/common/adrv9361z7035_constr_lvds.xdc @@ -1,5 +1,5 @@ -# constraints (adrv9361z7035.e) +# constraints (pzsdr2.e) # ad9361 set_property -dict {PACKAGE_PIN J14 IOSTANDARD LVDS DIFF_TERM TRUE} [get_ports rx_clk_in_p] ; ## IO_L12P_T1_MRCC_35 U1,J14,IO_L12_MRCC_35_DATA_CLK_P diff --git a/CI/projects/adrv9361z7035/common/ccfmc_bd.tcl b/CI/projects/adrv9361z7035/common/ccfmc_bd.tcl index 6f414ac..61c2087 100644 --- a/CI/projects/adrv9361z7035/common/ccfmc_bd.tcl +++ b/CI/projects/adrv9361z7035/common/ccfmc_bd.tcl @@ -44,11 +44,17 @@ ad_ip_parameter sys_rgmii_rstgen CONFIG.C_EXT_RST_WIDTH 1 ad_ip_instance axi_clkgen axi_hdmi_clkgen ad_ip_instance axi_hdmi_tx axi_hdmi_core ad_ip_parameter axi_hdmi_core CONFIG.OUT_CLK_POLARITY 1 - -ad_ip_instance axi_vdma axi_hdmi_dma -ad_ip_parameter axi_hdmi_dma CONFIG.c_m_axis_mm2s_tdata_width 64 -ad_ip_parameter axi_hdmi_dma CONFIG.c_use_mm2s_fsync 1 -ad_ip_parameter axi_hdmi_dma CONFIG.c_include_s2mm 0 +ad_ip_parameter axi_hdmi_core CONFIG.INTERFACE 16_BIT + +ad_ip_instance axi_dmac axi_hdmi_dma +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_TYPE_SRC 0 +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_TYPE_DEST 1 +ad_ip_parameter axi_hdmi_dma CONFIG.CYCLIC true +ad_ip_parameter axi_hdmi_dma CONFIG.SYNC_TRANSFER_START 0 +ad_ip_parameter axi_hdmi_dma CONFIG.AXI_SLICE_SRC 0 +ad_ip_parameter axi_hdmi_dma CONFIG.AXI_SLICE_DEST 0 +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_2D_TRANSFER true +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_DATA_WIDTH_SRC 64 # audio peripherals @@ -85,18 +91,19 @@ ad_connect sys_rgmii_rstgen/peripheral_reset sys_rgmii/rx_reset # hdmi ad_connect sys_cpu_clk axi_hdmi_core/vdma_clk -ad_connect sys_cpu_clk axi_hdmi_dma/m_axis_mm2s_aclk ad_connect axi_hdmi_core/hdmi_clk axi_hdmi_clkgen/clk_0 ad_connect axi_hdmi_core/hdmi_out_clk hdmi_out_clk ad_connect axi_hdmi_core/hdmi_16_hsync hdmi_hsync ad_connect axi_hdmi_core/hdmi_16_vsync hdmi_vsync ad_connect axi_hdmi_core/hdmi_16_data_e hdmi_data_e ad_connect axi_hdmi_core/hdmi_16_data hdmi_data -ad_connect axi_hdmi_core/vdma_valid axi_hdmi_dma/m_axis_mm2s_tvalid -ad_connect axi_hdmi_core/vdma_data axi_hdmi_dma/m_axis_mm2s_tdata -ad_connect axi_hdmi_core/vdma_ready axi_hdmi_dma/m_axis_mm2s_tready -ad_connect axi_hdmi_core/vdma_fs axi_hdmi_dma/mm2s_fsync -ad_connect axi_hdmi_core/vdma_fs axi_hdmi_core/vdma_fs_ret + +ad_connect axi_hdmi_dma/m_axis axi_hdmi_core/s_axis +ad_connect sys_cpu_resetn axi_hdmi_dma/s_axi_aresetn +ad_connect sys_cpu_resetn axi_hdmi_dma/m_src_axi_aresetn +ad_connect sys_cpu_clk axi_hdmi_dma/s_axi_aclk +ad_connect sys_cpu_clk axi_hdmi_dma/m_src_axi_aclk +ad_connect sys_cpu_clk axi_hdmi_dma/m_axis_aclk # spdif audio @@ -128,7 +135,7 @@ ad_connect i2s axi_i2s_adi/I2S # interrupts -ad_cpu_interrupt ps-15 mb-15 axi_hdmi_dma/mm2s_introut +ad_cpu_interrupt ps-15 mb-15 axi_hdmi_dma/irq # interconnects @@ -138,7 +145,7 @@ ad_cpu_interconnect 0x70e00000 axi_hdmi_core ad_cpu_interconnect 0x75c00000 axi_spdif_tx_core ad_cpu_interconnect 0x77600000 axi_i2s_adi ad_mem_hp0_interconnect sys_cpu_clk sys_ps7/S_AXI_HP0 -ad_mem_hp0_interconnect sys_cpu_clk axi_hdmi_dma/M_AXI_MM2S +ad_mem_hp0_interconnect sys_cpu_clk axi_hdmi_dma/m_src_axi # un-used io (gt) diff --git a/CI/projects/adrv9364z7020/ccbob_cmos/system_bd.tcl b/CI/projects/adrv9364z7020/ccbob_cmos/system_bd.tcl index a1bacdc..08f4205 100644 --- a/CI/projects/adrv9364z7020/ccbob_cmos/system_bd.tcl +++ b/CI/projects/adrv9364z7020/ccbob_cmos/system_bd.tcl @@ -1,6 +1,6 @@ -source $ad_hdl_dir/projects/adrv9364z7020/common/adrv9364z7020_bd.tcl -source $ad_hdl_dir/projects/adrv9364z7020/common/ccbob_bd.tcl +source ../common/adrv9364z7020_bd.tcl +source ../common/ccbob_bd.tcl ad_ip_parameter util_ad9361_divclk CONFIG.SEL_0_DIV 2 ad_ip_parameter util_ad9361_divclk CONFIG.SEL_1_DIV 1 @@ -9,5 +9,3 @@ cfg_ad9361_interface CMOS set_property CONFIG.ADC_INIT_DELAY 30 [get_bd_cells axi_ad9361] - - diff --git a/CI/projects/adrv9364z7020/ccbob_cmos/system_project_rx.tcl b/CI/projects/adrv9364z7020/ccbob_cmos/system_project_rx.tcl index 81af52b..42a9e36 100644 --- a/CI/projects/adrv9364z7020/ccbob_cmos/system_project_rx.tcl +++ b/CI/projects/adrv9364z7020/ccbob_cmos/system_project_rx.tcl @@ -14,7 +14,6 @@ adi_project_files adrv9364z7020_ccbob_cmos [list \ "$ad_hdl_dir/projects/adrv9364z7020/common/ccbob_constr.xdc" \ "system_top.v" ] -set_property is_enabled false [get_files *axi_gpreg_constr.xdc] adi_project_run adrv9364z7020_ccbob_cmos #source $ad_hdl_dir/library/analog.com_user_axi_ad9361_1.0/axi_ad9361_delay.tcl # Copy the boot file to the root directory diff --git a/CI/projects/adrv9364z7020/ccbob_cmos/system_project_rx_tx.tcl b/CI/projects/adrv9364z7020/ccbob_cmos/system_project_rx_tx.tcl index 91ac3c7..5d4603c 100644 --- a/CI/projects/adrv9364z7020/ccbob_cmos/system_project_rx_tx.tcl +++ b/CI/projects/adrv9364z7020/ccbob_cmos/system_project_rx_tx.tcl @@ -14,7 +14,6 @@ adi_project_files adrv9364z7020_ccbob_cmos [list \ "$ad_hdl_dir/projects/adrv9364z7020/common/ccbob_constr.xdc" \ "system_top.v" ] -set_property is_enabled false [get_files *axi_gpreg_constr.xdc] adi_project_run adrv9364z7020_ccbob_cmos #source $ad_hdl_dir/library/analog.com_user_axi_ad9361_1.0/axi_ad9361_delay.tcl # Copy the boot file to the root directory diff --git a/CI/projects/adrv9364z7020/ccbob_cmos/system_project_tx.tcl b/CI/projects/adrv9364z7020/ccbob_cmos/system_project_tx.tcl index f683fa8..12ae4b6 100644 --- a/CI/projects/adrv9364z7020/ccbob_cmos/system_project_tx.tcl +++ b/CI/projects/adrv9364z7020/ccbob_cmos/system_project_tx.tcl @@ -14,7 +14,6 @@ adi_project_files adrv9364z7020_ccbob_cmos [list \ "$ad_hdl_dir/projects/adrv9364z7020/common/ccbob_constr.xdc" \ "system_top.v" ] -set_property is_enabled false [get_files *axi_gpreg_constr.xdc] adi_project_run adrv9364z7020_ccbob_cmos #source $ad_hdl_dir/library/analog.com_user_axi_ad9361_1.0/axi_ad9361_delay.tcl # Copy the boot file to the root directory diff --git a/CI/projects/adrv9364z7020/ccbob_cmos/system_top.v b/CI/projects/adrv9364z7020/ccbob_cmos/system_top.v index 7ee7eb0..fd587de 100644 --- a/CI/projects/adrv9364z7020/ccbob_cmos/system_top.v +++ b/CI/projects/adrv9364z7020/ccbob_cmos/system_top.v @@ -8,7 +8,7 @@ // terms. // // The user should read each of these license terms, and understand the -// freedoms and responsabilities that he or she has by using this source/core. +// freedoms and responsibilities that he or she has by using this source/core. // // This core is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR @@ -166,21 +166,10 @@ module system_top ( .gpio_i (gpio_i), .gpio_o (gpio_o), .gpio_t (gpio_t), + .gps_pps (1'b0), .iic_main_scl_io (iic_scl), .iic_main_sda_io (iic_sda), .otg_vbusoc (1'b0), - .ps_intr_00 (1'b0), - .ps_intr_01 (1'b0), - .ps_intr_02 (1'b0), - .ps_intr_03 (1'b0), - .ps_intr_04 (1'b0), - .ps_intr_05 (1'b0), - .ps_intr_06 (1'b0), - .ps_intr_07 (1'b0), - .ps_intr_08 (1'b0), - .ps_intr_09 (1'b0), - .ps_intr_10 (1'b0), - .ps_intr_15 (1'b0), .rx_clk_in (rx_clk_in), .rx_data_in (rx_data_in), .rx_frame_in (rx_frame_in), diff --git a/CI/projects/adrv9364z7020/ccbob_lvds/system_bd.tcl b/CI/projects/adrv9364z7020/ccbob_lvds/system_bd.tcl index 1aef6db..eae7e85 100644 --- a/CI/projects/adrv9364z7020/ccbob_lvds/system_bd.tcl +++ b/CI/projects/adrv9364z7020/ccbob_lvds/system_bd.tcl @@ -1,10 +1,8 @@ -source $ad_hdl_dir/projects/adrv9364z7020/common/adrv9364z7020_bd.tcl -source $ad_hdl_dir/projects/adrv9364z7020/common/ccbob_bd.tcl +source ../common/adrv9364z7020_bd.tcl +source ../common/ccbob_bd.tcl cfg_ad9361_interface LVDS set_property CONFIG.ADC_INIT_DELAY 30 [get_bd_cells axi_ad9361] - - diff --git a/CI/projects/adrv9364z7020/ccbob_lvds/system_project_rx.tcl b/CI/projects/adrv9364z7020/ccbob_lvds/system_project_rx.tcl index 0aee476..ee10883 100644 --- a/CI/projects/adrv9364z7020/ccbob_lvds/system_project_rx.tcl +++ b/CI/projects/adrv9364z7020/ccbob_lvds/system_project_rx.tcl @@ -14,7 +14,6 @@ adi_project_files adrv9364z7020_ccbob_lvds [list \ "$ad_hdl_dir/projects/adrv9364z7020/common/ccbob_constr.xdc" \ "system_top.v" ] -set_property is_enabled false [get_files *axi_gpreg_constr.xdc] adi_project_run adrv9364z7020_ccbob_lvds #source $ad_hdl_dir/library/analog.com_user_axi_ad9361_1.0/axi_ad9361_delay.tcl # Copy the boot file to the root directory diff --git a/CI/projects/adrv9364z7020/ccbob_lvds/system_project_rx_tx.tcl b/CI/projects/adrv9364z7020/ccbob_lvds/system_project_rx_tx.tcl index 8d43964..8b156ea 100644 --- a/CI/projects/adrv9364z7020/ccbob_lvds/system_project_rx_tx.tcl +++ b/CI/projects/adrv9364z7020/ccbob_lvds/system_project_rx_tx.tcl @@ -14,7 +14,6 @@ adi_project_files adrv9364z7020_ccbob_lvds [list \ "$ad_hdl_dir/projects/adrv9364z7020/common/ccbob_constr.xdc" \ "system_top.v" ] -set_property is_enabled false [get_files *axi_gpreg_constr.xdc] adi_project_run adrv9364z7020_ccbob_lvds #source $ad_hdl_dir/library/analog.com_user_axi_ad9361_1.0/axi_ad9361_delay.tcl # Copy the boot file to the root directory diff --git a/CI/projects/adrv9364z7020/ccbob_lvds/system_project_tx.tcl b/CI/projects/adrv9364z7020/ccbob_lvds/system_project_tx.tcl index c945a89..bfb5e03 100644 --- a/CI/projects/adrv9364z7020/ccbob_lvds/system_project_tx.tcl +++ b/CI/projects/adrv9364z7020/ccbob_lvds/system_project_tx.tcl @@ -14,7 +14,6 @@ adi_project_files adrv9364z7020_ccbob_lvds [list \ "$ad_hdl_dir/projects/adrv9364z7020/common/ccbob_constr.xdc" \ "system_top.v" ] -set_property is_enabled false [get_files *axi_gpreg_constr.xdc] adi_project_run adrv9364z7020_ccbob_lvds #source $ad_hdl_dir/library/analog.com_user_axi_ad9361_1.0/axi_ad9361_delay.tcl # Copy the boot file to the root directory diff --git a/CI/projects/adrv9364z7020/ccbob_lvds/system_top.v b/CI/projects/adrv9364z7020/ccbob_lvds/system_top.v index 1499a0b..2cb8822 100644 --- a/CI/projects/adrv9364z7020/ccbob_lvds/system_top.v +++ b/CI/projects/adrv9364z7020/ccbob_lvds/system_top.v @@ -8,7 +8,7 @@ // terms. // // The user should read each of these license terms, and understand the -// freedoms and responsabilities that he or she has by using this source/core. +// freedoms and responsibilities that he or she has by using this source/core. // // This core is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR @@ -170,21 +170,10 @@ module system_top ( .gpio_i (gpio_i), .gpio_o (gpio_o), .gpio_t (gpio_t), + .gps_pps (1'b0), .iic_main_scl_io (iic_scl), .iic_main_sda_io (iic_sda), .otg_vbusoc (1'b0), - .ps_intr_00 (1'b0), - .ps_intr_01 (1'b0), - .ps_intr_02 (1'b0), - .ps_intr_03 (1'b0), - .ps_intr_04 (1'b0), - .ps_intr_05 (1'b0), - .ps_intr_06 (1'b0), - .ps_intr_07 (1'b0), - .ps_intr_08 (1'b0), - .ps_intr_09 (1'b0), - .ps_intr_10 (1'b0), - .ps_intr_15 (1'b0), .rx_clk_in_n (rx_clk_in_n), .rx_clk_in_p (rx_clk_in_p), .rx_data_in_n (rx_data_in_n), diff --git a/CI/projects/adrv9364z7020/ccbox_lvds/system_bd.tcl b/CI/projects/adrv9364z7020/ccbox_lvds/system_bd.tcl index 070377c..40a4a2d 100644 --- a/CI/projects/adrv9364z7020/ccbox_lvds/system_bd.tcl +++ b/CI/projects/adrv9364z7020/ccbox_lvds/system_bd.tcl @@ -1,10 +1,11 @@ -source $ad_hdl_dir/projects/adrv9364z7020/common/adrv9364z7020_bd.tcl -source $ad_hdl_dir/projects/adrv9364z7020/common/ccbox_bd.tcl +source ../common/adrv9364z7020_bd.tcl +source ../common/ccbox_bd.tcl cfg_ad9361_interface LVDS -set_property CONFIG.ADC_INIT_DELAY 30 [get_bd_cells axi_ad9361] - +create_bd_port -dir O sys_cpu_clk_out +ad_connect sys_cpu_clk sys_cpu_clk_out +set_property CONFIG.ADC_INIT_DELAY 30 [get_bd_cells axi_ad9361] diff --git a/CI/projects/adrv9364z7020/ccbox_lvds/system_top.v b/CI/projects/adrv9364z7020/ccbox_lvds/system_top.v index 8e1965c..908a929 100644 --- a/CI/projects/adrv9364z7020/ccbox_lvds/system_top.v +++ b/CI/projects/adrv9364z7020/ccbox_lvds/system_top.v @@ -8,7 +8,7 @@ // terms. // // The user should read each of these license terms, and understand the -// freedoms and responsabilities that he or she has by using this source/core. +// freedoms and responsibilities that he or she has by using this source/core. // // This core is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR @@ -255,7 +255,7 @@ module system_top ( assign gpio_i[55:53] = gpio_o[55:53]; // rf & clock-select gpio - 52:51 - + ad_iobuf #(.DATA_WIDTH(2)) i_iobuf_rf_1 ( .dio_t (gpio_t[52:51]), .dio_i (gpio_o[52:51]), @@ -275,7 +275,7 @@ module system_top ( tsw_s5})); // 47 // ad9361 gpio - 46:32 - + ad_iobuf #(.DATA_WIDTH(15)) i_iobuf_ad9361 ( .dio_t (gpio_t[46:32]), .dio_i (gpio_o[46:32]), @@ -334,18 +334,6 @@ module system_top ( .iic_main_scl_io (iic_scl), .iic_main_sda_io (iic_sda), .otg_vbusoc (1'b0), - .ps_intr_00 (1'b0), - .ps_intr_01 (1'b0), - .ps_intr_02 (1'b0), - .ps_intr_03 (1'b0), - .ps_intr_04 (1'b0), - .ps_intr_05 (1'b0), - .ps_intr_06 (1'b0), - .ps_intr_07 (1'b0), - .ps_intr_08 (1'b0), - .ps_intr_09 (1'b0), - .ps_intr_10 (1'b0), - .ps_intr_15 (1'b0), .rx_clk_in_n (rx_clk_in_n), .rx_clk_in_p (rx_clk_in_p), .rx_data_in_n (rx_data_in_n), @@ -374,6 +362,7 @@ module system_top ( .tdd_sync_o (), .tdd_sync_t (), .gps_pps (gps_pps), + .sys_cpu_clk_out (sys_cpu_clk), .tx_clk_out_n (tx_clk_out_n), .tx_clk_out_p (tx_clk_out_p), .tx_data_out_n (tx_data_out_n), diff --git a/CI/projects/adrv9364z7020/common/adrv9364z7020_bd.tcl b/CI/projects/adrv9364z7020/common/adrv9364z7020_bd.tcl index c5bb3aa..82c6708 100644 --- a/CI/projects/adrv9364z7020/common/adrv9364z7020_bd.tcl +++ b/CI/projects/adrv9364z7020/common/adrv9364z7020_bd.tcl @@ -62,6 +62,7 @@ ad_ip_parameter sys_ps7 CONFIG.PCW_GPIO_MIO_GPIO_ENABLE 1 ad_ip_parameter sys_ps7 CONFIG.PCW_ENET0_PERIPHERAL_ENABLE 1 ad_ip_parameter sys_ps7 CONFIG.PCW_ENET0_ENET0_IO "MIO 16 .. 27" ad_ip_parameter sys_ps7 CONFIG.PCW_ENET0_GRP_MDIO_ENABLE 1 +ad_ip_parameter sys_ps7 CONFIG.PCW_ENET0_GRP_MDIO_IO "MIO 52 .. 53" ad_ip_parameter sys_ps7 CONFIG.PCW_ENET1_PERIPHERAL_ENABLE 1 ad_ip_parameter sys_ps7 CONFIG.PCW_ENET_RESET_SELECT "Separate reset pins" ad_ip_parameter sys_ps7 CONFIG.PCW_ENET0_RESET_ENABLE 1 @@ -364,7 +365,6 @@ ad_ip_instance axi_dmac axi_ad9361_dac_dma ad_ip_parameter axi_ad9361_dac_dma CONFIG.DMA_TYPE_SRC 0 ad_ip_parameter axi_ad9361_dac_dma CONFIG.DMA_TYPE_DEST 2 ad_ip_parameter axi_ad9361_dac_dma CONFIG.CYCLIC 1 -ad_ip_parameter axi_ad9361_dac_dma CONFIG.SYNC_TRANSFER_START 0 ad_ip_parameter axi_ad9361_dac_dma CONFIG.AXI_SLICE_SRC 0 ad_ip_parameter axi_ad9361_dac_dma CONFIG.AXI_SLICE_DEST 1 ad_ip_parameter axi_ad9361_dac_dma CONFIG.DMA_2D_TRANSFER 0 diff --git a/CI/projects/adrv9364z7020/common/adrv9364z7020_constr.xdc b/CI/projects/adrv9364z7020/common/adrv9364z7020_constr.xdc index 66b74c5..05191a6 100644 --- a/CI/projects/adrv9364z7020/common/adrv9364z7020_constr.xdc +++ b/CI/projects/adrv9364z7020/common/adrv9364z7020_constr.xdc @@ -1,5 +1,5 @@ -# constraints (adrv9364z7020.b) +# constraints (pzsdr1.b) # ad9361 set_property -dict {PACKAGE_PIN K19 IOSTANDARD LVCMOS25} [get_ports enable] ; ## IO_L10P_T1_AD11P_35 U1,K19,IO_L10_35_ENABLE diff --git a/CI/projects/adrv9364z7020/common/adrv9364z7020_constr_cmos.xdc b/CI/projects/adrv9364z7020/common/adrv9364z7020_constr_cmos.xdc index eb8805d..1b2d855 100644 --- a/CI/projects/adrv9364z7020/common/adrv9364z7020_constr_cmos.xdc +++ b/CI/projects/adrv9364z7020/common/adrv9364z7020_constr_cmos.xdc @@ -1,5 +1,5 @@ -# constraints (adrv9364z7020.b) +# constraints (pzsdr1.b) # ad9361 (SWAP == 0x0) set_property -dict {PACKAGE_PIN K17 IOSTANDARD LVCMOS25} [get_ports rx_clk_in] ; ## IO_L12P_T1_MRCC_35 U1,K17,IO_L12_MRCC_35_DATA_CLK_P diff --git a/CI/projects/adrv9364z7020/common/adrv9364z7020_constr_lvds.xdc b/CI/projects/adrv9364z7020/common/adrv9364z7020_constr_lvds.xdc index 49a2fc8..da996fe 100644 --- a/CI/projects/adrv9364z7020/common/adrv9364z7020_constr_lvds.xdc +++ b/CI/projects/adrv9364z7020/common/adrv9364z7020_constr_lvds.xdc @@ -1,5 +1,5 @@ -# constraints (adrv9364z7020.b) +# constraints (pzsdr1.b) # ad9361 set_property -dict {PACKAGE_PIN K17 IOSTANDARD LVDS_25 DIFF_TERM TRUE} [get_ports rx_clk_in_p] ; ## IO_L12P_T1_MRCC_35 U1,K17,IO_L12_MRCC_35_DATA_CLK_P diff --git a/CI/projects/common/zc702/zc702_system_bd.tcl b/CI/projects/common/zc702/zc702_system_bd.tcl index da1af9f..ac2a63e 100644 --- a/CI/projects/common/zc702/zc702_system_bd.tcl +++ b/CI/projects/common/zc702/zc702_system_bd.tcl @@ -42,23 +42,6 @@ create_bd_port -dir O -from 15 -to 0 hdmi_data create_bd_port -dir O spdif -# interrupts - -create_bd_port -dir I -type intr ps_intr_00 -create_bd_port -dir I -type intr ps_intr_01 -create_bd_port -dir I -type intr ps_intr_02 -create_bd_port -dir I -type intr ps_intr_03 -create_bd_port -dir I -type intr ps_intr_04 -create_bd_port -dir I -type intr ps_intr_05 -create_bd_port -dir I -type intr ps_intr_06 -create_bd_port -dir I -type intr ps_intr_07 -create_bd_port -dir I -type intr ps_intr_08 -create_bd_port -dir I -type intr ps_intr_09 -create_bd_port -dir I -type intr ps_intr_10 -create_bd_port -dir I -type intr ps_intr_11 -create_bd_port -dir I -type intr ps_intr_12 -create_bd_port -dir I -type intr ps_intr_13 - # instance: sys_ps7 ad_ip_instance processing_system7 sys_ps7 @@ -93,11 +76,17 @@ ad_ip_parameter sys_rstgen CONFIG.C_EXT_RST_WIDTH 1 ad_ip_instance axi_clkgen axi_hdmi_clkgen ad_ip_instance axi_hdmi_tx axi_hdmi_core - -ad_ip_instance axi_vdma axi_hdmi_dma -ad_ip_parameter axi_hdmi_dma CONFIG.c_m_axis_mm2s_tdata_width 64 -ad_ip_parameter axi_hdmi_dma CONFIG.c_use_mm2s_fsync 1 -ad_ip_parameter axi_hdmi_dma CONFIG.c_include_s2mm 0 +ad_ip_parameter axi_hdmi_core CONFIG.INTERFACE 16_BIT + +ad_ip_instance axi_dmac axi_hdmi_dma +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_TYPE_SRC 0 +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_TYPE_DEST 1 +ad_ip_parameter axi_hdmi_dma CONFIG.CYCLIC true +ad_ip_parameter axi_hdmi_dma CONFIG.SYNC_TRANSFER_START 0 +ad_ip_parameter axi_hdmi_dma CONFIG.AXI_SLICE_SRC 0 +ad_ip_parameter axi_hdmi_dma CONFIG.AXI_SLICE_DEST 0 +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_2D_TRANSFER true +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_DATA_WIDTH_SRC 64 # audio peripherals @@ -157,18 +146,19 @@ ad_connect spi1_sdi_i sys_ps7/SPI1_MISO_I # hdmi ad_connect sys_cpu_clk axi_hdmi_core/vdma_clk -ad_connect sys_cpu_clk axi_hdmi_dma/m_axis_mm2s_aclk ad_connect axi_hdmi_core/hdmi_clk axi_hdmi_clkgen/clk_0 ad_connect axi_hdmi_core/hdmi_out_clk hdmi_out_clk ad_connect axi_hdmi_core/hdmi_16_hsync hdmi_hsync ad_connect axi_hdmi_core/hdmi_16_vsync hdmi_vsync ad_connect axi_hdmi_core/hdmi_16_data_e hdmi_data_e ad_connect axi_hdmi_core/hdmi_16_data hdmi_data -ad_connect axi_hdmi_core/vdma_valid axi_hdmi_dma/m_axis_mm2s_tvalid -ad_connect axi_hdmi_core/vdma_data axi_hdmi_dma/m_axis_mm2s_tdata -ad_connect axi_hdmi_core/vdma_ready axi_hdmi_dma/m_axis_mm2s_tready -ad_connect axi_hdmi_core/vdma_fs axi_hdmi_dma/mm2s_fsync -ad_connect axi_hdmi_core/vdma_fs axi_hdmi_core/vdma_fs_ret + +ad_connect axi_hdmi_dma/m_axis axi_hdmi_core/s_axis +ad_connect sys_cpu_resetn axi_hdmi_dma/s_axi_aresetn +ad_connect sys_cpu_resetn axi_hdmi_dma/m_src_axi_aresetn +ad_connect sys_cpu_clk axi_hdmi_dma/s_axi_aclk +ad_connect sys_cpu_clk axi_hdmi_dma/m_src_axi_aclk +ad_connect sys_cpu_clk axi_hdmi_dma/m_axis_aclk # spdif audio @@ -185,22 +175,22 @@ ad_connect spdif axi_spdif_tx_core/spdif_tx_o # match up interconnects ad_connect sys_concat_intc/dout sys_ps7/IRQ_F2P -ad_connect sys_concat_intc/In15 axi_hdmi_dma/mm2s_introut +ad_connect sys_concat_intc/In15 axi_hdmi_dma/irq ad_connect sys_concat_intc/In14 axi_iic_main/iic2intc_irpt -ad_connect sys_concat_intc/In13 ps_intr_13 -ad_connect sys_concat_intc/In12 ps_intr_12 -ad_connect sys_concat_intc/In11 ps_intr_11 -ad_connect sys_concat_intc/In10 ps_intr_10 -ad_connect sys_concat_intc/In9 ps_intr_09 -ad_connect sys_concat_intc/In8 ps_intr_08 -ad_connect sys_concat_intc/In7 ps_intr_07 -ad_connect sys_concat_intc/In6 ps_intr_06 -ad_connect sys_concat_intc/In5 ps_intr_05 -ad_connect sys_concat_intc/In4 ps_intr_04 -ad_connect sys_concat_intc/In3 ps_intr_03 -ad_connect sys_concat_intc/In2 ps_intr_02 -ad_connect sys_concat_intc/In1 ps_intr_01 -ad_connect sys_concat_intc/In0 ps_intr_00 +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/In10 GND +ad_connect sys_concat_intc/In9 GND +ad_connect sys_concat_intc/In8 GND +ad_connect sys_concat_intc/In7 GND +ad_connect sys_concat_intc/In6 GND +ad_connect sys_concat_intc/In5 GND +ad_connect sys_concat_intc/In4 GND +ad_connect sys_concat_intc/In3 GND +ad_connect sys_concat_intc/In2 GND +ad_connect sys_concat_intc/In1 GND +ad_connect sys_concat_intc/In0 GND # address map @@ -210,4 +200,4 @@ ad_cpu_interconnect 0x43000000 axi_hdmi_dma ad_cpu_interconnect 0x70e00000 axi_hdmi_core ad_cpu_interconnect 0x75c00000 axi_spdif_tx_core ad_mem_hp0_interconnect sys_cpu_clk sys_ps7/S_AXI_HP0 -ad_mem_hp0_interconnect sys_cpu_clk axi_hdmi_dma/M_AXI_MM2S +ad_mem_hp0_interconnect sys_cpu_clk axi_hdmi_dma/m_src_axi diff --git a/CI/projects/common/zc706/zc706_plddr3_adcfifo_bd.tcl b/CI/projects/common/zc706/zc706_plddr3_adcfifo_bd.tcl index dc02741..f19c039 100644 --- a/CI/projects/common/zc706/zc706_plddr3_adcfifo_bd.tcl +++ b/CI/projects/common/zc706/zc706_plddr3_adcfifo_bd.tcl @@ -4,9 +4,9 @@ ad_ip_instance proc_sys_reset axi_rstgen ad_ip_instance mig_7series axi_ddr_cntrl -file copy -force $ad_hdl_dir/projects/common/zc706/zc706_plddr3_mig.mk [get_property IP_DIR \ +file copy -force $ad_hdl_dir/projects/common/zc706/zc706_plddr3_mig.prj [get_property IP_DIR \ [get_ips [get_property CONFIG.Component_Name [get_bd_cells axi_ddr_cntrl]]]] -ad_ip_parameter axi_ddr_cntrl CONFIG.XML_INPUT_FILE zc706_plddr3_mig.mk +ad_ip_parameter axi_ddr_cntrl CONFIG.XML_INPUT_FILE zc706_plddr3_mig.prj create_bd_port -dir I -type rst sys_rst set_property CONFIG.POLARITY ACTIVE_HIGH [get_bd_ports sys_rst] diff --git a/CI/projects/common/zc706/zc706_plddr3_dacfifo_bd.tcl b/CI/projects/common/zc706/zc706_plddr3_dacfifo_bd.tcl index 76727c2..31153fc 100644 --- a/CI/projects/common/zc706/zc706_plddr3_dacfifo_bd.tcl +++ b/CI/projects/common/zc706/zc706_plddr3_dacfifo_bd.tcl @@ -4,9 +4,9 @@ ad_ip_instance proc_sys_reset axi_rstgen ad_ip_instance mig_7series axi_ddr_cntrl -file copy -force $ad_hdl_dir/projects/common/zc706/zc706_plddr3_mig.mk [get_property IP_DIR \ +file copy -force $ad_hdl_dir/projects/common/zc706/zc706_plddr3_mig.prj [get_property IP_DIR \ [get_ips [get_property CONFIG.Component_Name [get_bd_cells axi_ddr_cntrl]]]] -ad_ip_parameter axi_ddr_cntrl CONFIG.XML_INPUT_FILE zc706_plddr3_mig.mk +ad_ip_parameter axi_ddr_cntrl CONFIG.XML_INPUT_FILE zc706_plddr3_mig.prj create_bd_port -dir I -type rst sys_rst set_property CONFIG.POLARITY ACTIVE_HIGH [get_bd_ports sys_rst] diff --git a/CI/projects/common/zc706/zc706_plddr3_mig.prj b/CI/projects/common/zc706/zc706_plddr3_mig.prj new file mode 100644 index 0000000..e56ffb6 --- /dev/null +++ b/CI/projects/common/zc706/zc706_plddr3_mig.prj @@ -0,0 +1,203 @@ + + + + system_axi_ddr_cntrl_0 + 1 + 1 + OFF + 1024 + ON + Disabled + xc7z045-ffg900/-2 + 4.0 + Differential + Use System Clock + ACTIVE HIGH + FALSE + 0 + 50 Ohms + 1 + + DDR3_SDRAM/SODIMMs/MT8JTF12864HZ-1G6 + 1250 + 2.0V + 4:1 + 200 + 1 + 800 + 1.000 + 1 + 1 + 1 + 1 + 64 + 1 + 1 + Disabled + Normal + FALSE + + 14 + 10 + 3 + 1.5V + 1073741824 + BANK_ROW_COLUMN + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 8 - Fixed + Sequential + 11 + Normal + No + Slow Exit + Enable + RZQ/7 + Disable + Enable + RZQ/6 + 0 + Disabled + Enabled + Output Buffer Enabled + Full Array + 8 + Enabled + Normal + Dynamic ODT off + AXI + + RD_PRI_REG + 30 + 512 + 4 + 1 + + + + diff --git a/CI/projects/common/zc706/zc706_system_bd.tcl b/CI/projects/common/zc706/zc706_system_bd.tcl index f9f3b3f..b885ac6 100644 --- a/CI/projects/common/zc706/zc706_system_bd.tcl +++ b/CI/projects/common/zc706/zc706_system_bd.tcl @@ -41,23 +41,6 @@ create_bd_port -dir O -from 23 -to 0 hdmi_data create_bd_port -dir O spdif -# interrupts - -create_bd_port -dir I -type intr ps_intr_00 -create_bd_port -dir I -type intr ps_intr_01 -create_bd_port -dir I -type intr ps_intr_02 -create_bd_port -dir I -type intr ps_intr_03 -create_bd_port -dir I -type intr ps_intr_04 -create_bd_port -dir I -type intr ps_intr_05 -create_bd_port -dir I -type intr ps_intr_06 -create_bd_port -dir I -type intr ps_intr_07 -create_bd_port -dir I -type intr ps_intr_08 -create_bd_port -dir I -type intr ps_intr_09 -create_bd_port -dir I -type intr ps_intr_10 -create_bd_port -dir I -type intr ps_intr_11 -create_bd_port -dir I -type intr ps_intr_12 -create_bd_port -dir I -type intr ps_intr_13 - # instance: sys_ps7 ad_ip_instance processing_system7 sys_ps7 @@ -94,11 +77,17 @@ ad_ip_parameter sys_rstgen CONFIG.C_EXT_RST_WIDTH 1 ad_ip_instance axi_clkgen axi_hdmi_clkgen ad_ip_instance axi_hdmi_tx axi_hdmi_core - -ad_ip_instance axi_vdma axi_hdmi_dma -ad_ip_parameter axi_hdmi_dma CONFIG.C_M_AXIS_MM2S_TDATA_WIDTH 64 -ad_ip_parameter axi_hdmi_dma CONFIG.C_USE_MM2S_FSYNC 1 -ad_ip_parameter axi_hdmi_dma CONFIG.C_INCLUDE_S2MM 0 +ad_ip_parameter axi_hdmi_core CONFIG.INTERFACE 24_BIT + +ad_ip_instance axi_dmac axi_hdmi_dma +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_TYPE_SRC 0 +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_TYPE_DEST 1 +ad_ip_parameter axi_hdmi_dma CONFIG.CYCLIC true +ad_ip_parameter axi_hdmi_dma CONFIG.SYNC_TRANSFER_START 0 +ad_ip_parameter axi_hdmi_dma CONFIG.AXI_SLICE_SRC 0 +ad_ip_parameter axi_hdmi_dma CONFIG.AXI_SLICE_DEST 0 +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_2D_TRANSFER true +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_DATA_WIDTH_SRC 64 # audio peripherals @@ -158,18 +147,19 @@ ad_connect spi1_sdi_i sys_ps7/SPI1_MISO_I # hdmi ad_connect sys_cpu_clk axi_hdmi_core/vdma_clk -ad_connect sys_cpu_clk axi_hdmi_dma/m_axis_mm2s_aclk ad_connect axi_hdmi_core/hdmi_clk axi_hdmi_clkgen/clk_0 ad_connect axi_hdmi_core/hdmi_out_clk hdmi_out_clk ad_connect axi_hdmi_core/hdmi_24_hsync hdmi_hsync ad_connect axi_hdmi_core/hdmi_24_vsync hdmi_vsync ad_connect axi_hdmi_core/hdmi_24_data_e hdmi_data_e ad_connect axi_hdmi_core/hdmi_24_data hdmi_data -ad_connect axi_hdmi_core/vdma_valid axi_hdmi_dma/m_axis_mm2s_tvalid -ad_connect axi_hdmi_core/vdma_data axi_hdmi_dma/m_axis_mm2s_tdata -ad_connect axi_hdmi_core/vdma_ready axi_hdmi_dma/m_axis_mm2s_tready -ad_connect axi_hdmi_core/vdma_fs axi_hdmi_dma/mm2s_fsync -ad_connect axi_hdmi_core/vdma_fs axi_hdmi_core/vdma_fs_ret + +ad_connect axi_hdmi_dma/m_axis axi_hdmi_core/s_axis +ad_connect sys_cpu_resetn axi_hdmi_dma/s_axi_aresetn +ad_connect sys_cpu_resetn axi_hdmi_dma/m_src_axi_aresetn +ad_connect sys_cpu_clk axi_hdmi_dma/s_axi_aclk +ad_connect sys_cpu_clk axi_hdmi_dma/m_src_axi_aclk +ad_connect sys_cpu_clk axi_hdmi_dma/m_axis_aclk # spdif audio @@ -186,22 +176,22 @@ ad_connect spdif axi_spdif_tx_core/spdif_tx_o # interrupts ad_connect sys_concat_intc/dout sys_ps7/IRQ_F2P -ad_connect sys_concat_intc/In15 axi_hdmi_dma/mm2s_introut +ad_connect sys_concat_intc/In15 axi_hdmi_dma/irq ad_connect sys_concat_intc/In14 axi_iic_main/iic2intc_irpt -ad_connect sys_concat_intc/In13 ps_intr_13 -ad_connect sys_concat_intc/In12 ps_intr_12 -ad_connect sys_concat_intc/In11 ps_intr_11 -ad_connect sys_concat_intc/In10 ps_intr_10 -ad_connect sys_concat_intc/In9 ps_intr_09 -ad_connect sys_concat_intc/In8 ps_intr_08 -ad_connect sys_concat_intc/In7 ps_intr_07 -ad_connect sys_concat_intc/In6 ps_intr_06 -ad_connect sys_concat_intc/In5 ps_intr_05 -ad_connect sys_concat_intc/In4 ps_intr_04 -ad_connect sys_concat_intc/In3 ps_intr_03 -ad_connect sys_concat_intc/In2 ps_intr_02 -ad_connect sys_concat_intc/In1 ps_intr_01 -ad_connect sys_concat_intc/In0 ps_intr_00 +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/In10 GND +ad_connect sys_concat_intc/In9 GND +ad_connect sys_concat_intc/In8 GND +ad_connect sys_concat_intc/In7 GND +ad_connect sys_concat_intc/In6 GND +ad_connect sys_concat_intc/In5 GND +ad_connect sys_concat_intc/In4 GND +ad_connect sys_concat_intc/In3 GND +ad_connect sys_concat_intc/In2 GND +ad_connect sys_concat_intc/In1 GND +ad_connect sys_concat_intc/In0 GND # interconnects @@ -211,5 +201,5 @@ ad_cpu_interconnect 0x43000000 axi_hdmi_dma ad_cpu_interconnect 0x70e00000 axi_hdmi_core ad_cpu_interconnect 0x75c00000 axi_spdif_tx_core ad_mem_hp0_interconnect sys_cpu_clk sys_ps7/S_AXI_HP0 -ad_mem_hp0_interconnect sys_cpu_clk axi_hdmi_dma/M_AXI_MM2S +ad_mem_hp0_interconnect sys_cpu_clk axi_hdmi_dma/m_src_axi diff --git a/CI/projects/common/zcu102/zcu102_system_bd.tcl b/CI/projects/common/zcu102/zcu102_system_bd.tcl index 58dac4c..00acef4 100644 --- a/CI/projects/common/zcu102/zcu102_system_bd.tcl +++ b/CI/projects/common/zcu102/zcu102_system_bd.tcl @@ -16,25 +16,6 @@ create_bd_port -dir I -from 94 -to 0 gpio_i create_bd_port -dir O -from 94 -to 0 gpio_o create_bd_port -dir O -from 94 -to 0 gpio_t -# interrupts - -create_bd_port -dir I -type intr ps_intr_00 -create_bd_port -dir I -type intr ps_intr_01 -create_bd_port -dir I -type intr ps_intr_02 -create_bd_port -dir I -type intr ps_intr_03 -create_bd_port -dir I -type intr ps_intr_04 -create_bd_port -dir I -type intr ps_intr_05 -create_bd_port -dir I -type intr ps_intr_06 -create_bd_port -dir I -type intr ps_intr_07 -create_bd_port -dir I -type intr ps_intr_08 -create_bd_port -dir I -type intr ps_intr_09 -create_bd_port -dir I -type intr ps_intr_10 -create_bd_port -dir I -type intr ps_intr_11 -create_bd_port -dir I -type intr ps_intr_12 -create_bd_port -dir I -type intr ps_intr_13 -create_bd_port -dir I -type intr ps_intr_14 -create_bd_port -dir I -type intr ps_intr_15 - # instance: sys_ps8 ad_ip_instance zynq_ultra_ps_e sys_ps8 @@ -125,20 +106,20 @@ ad_ip_parameter sys_concat_intc_1 CONFIG.NUM_PORTS 8 ad_connect sys_concat_intc_0/dout sys_ps8/pl_ps_irq0 ad_connect sys_concat_intc_1/dout sys_ps8/pl_ps_irq1 -ad_connect sys_concat_intc_1/In7 ps_intr_15 -ad_connect sys_concat_intc_1/In6 ps_intr_14 -ad_connect sys_concat_intc_1/In5 ps_intr_13 -ad_connect sys_concat_intc_1/In4 ps_intr_12 -ad_connect sys_concat_intc_1/In3 ps_intr_11 -ad_connect sys_concat_intc_1/In2 ps_intr_10 -ad_connect sys_concat_intc_1/In1 ps_intr_09 -ad_connect sys_concat_intc_1/In0 ps_intr_08 -ad_connect sys_concat_intc_0/In7 ps_intr_07 -ad_connect sys_concat_intc_0/In6 ps_intr_06 -ad_connect sys_concat_intc_0/In5 ps_intr_05 -ad_connect sys_concat_intc_0/In4 ps_intr_04 -ad_connect sys_concat_intc_0/In3 ps_intr_03 -ad_connect sys_concat_intc_0/In2 ps_intr_02 -ad_connect sys_concat_intc_0/In1 ps_intr_01 -ad_connect sys_concat_intc_0/In0 ps_intr_00 +ad_connect sys_concat_intc_1/In7 GND +ad_connect sys_concat_intc_1/In6 GND +ad_connect sys_concat_intc_1/In5 GND +ad_connect sys_concat_intc_1/In4 GND +ad_connect sys_concat_intc_1/In3 GND +ad_connect sys_concat_intc_1/In2 GND +ad_connect sys_concat_intc_1/In1 GND +ad_connect sys_concat_intc_1/In0 GND +ad_connect sys_concat_intc_0/In7 GND +ad_connect sys_concat_intc_0/In6 GND +ad_connect sys_concat_intc_0/In5 GND +ad_connect sys_concat_intc_0/In4 GND +ad_connect sys_concat_intc_0/In3 GND +ad_connect sys_concat_intc_0/In2 GND +ad_connect sys_concat_intc_0/In1 GND +ad_connect sys_concat_intc_0/In0 GND diff --git a/CI/projects/common/zcu102/zcu102_system_constr.xdc b/CI/projects/common/zcu102/zcu102_system_constr.xdc index 1974060..9ea35c4 100644 --- a/CI/projects/common/zcu102/zcu102_system_constr.xdc +++ b/CI/projects/common/zcu102/zcu102_system_constr.xdc @@ -2,26 +2,26 @@ # constraints # gpio (switches, leds and such) -set_property -dict {PACKAGE_PIN AN14 IOSTANDARD LVCMOS25} [get_ports gpio_bd_i[0]] ; ## GPIO_DIP_SW0 -set_property -dict {PACKAGE_PIN AP14 IOSTANDARD LVCMOS25} [get_ports gpio_bd_i[1]] ; ## GPIO_DIP_SW1 -set_property -dict {PACKAGE_PIN AM14 IOSTANDARD LVCMOS25} [get_ports gpio_bd_i[2]] ; ## GPIO_DIP_SW2 -set_property -dict {PACKAGE_PIN AN13 IOSTANDARD LVCMOS25} [get_ports gpio_bd_i[3]] ; ## GPIO_DIP_SW3 -set_property -dict {PACKAGE_PIN AN12 IOSTANDARD LVCMOS25} [get_ports gpio_bd_i[4]] ; ## GPIO_DIP_SW4 -set_property -dict {PACKAGE_PIN AP12 IOSTANDARD LVCMOS25} [get_ports gpio_bd_i[5]] ; ## GPIO_DIP_SW5 -set_property -dict {PACKAGE_PIN AL13 IOSTANDARD LVCMOS25} [get_ports gpio_bd_i[6]] ; ## GPIO_DIP_SW6 -set_property -dict {PACKAGE_PIN AK13 IOSTANDARD LVCMOS25} [get_ports gpio_bd_i[7]] ; ## GPIO_DIP_SW7 -set_property -dict {PACKAGE_PIN AE14 IOSTANDARD LVCMOS25} [get_ports gpio_bd_i[8]] ; ## GPIO_SW_E -set_property -dict {PACKAGE_PIN AE15 IOSTANDARD LVCMOS25} [get_ports gpio_bd_i[9]] ; ## GPIO_SW_S -set_property -dict {PACKAGE_PIN AG15 IOSTANDARD LVCMOS25} [get_ports gpio_bd_i[10]] ; ## GPIO_SW_N -set_property -dict {PACKAGE_PIN AF15 IOSTANDARD LVCMOS25} [get_ports gpio_bd_i[11]] ; ## GPIO_SW_W -set_property -dict {PACKAGE_PIN AG13 IOSTANDARD LVCMOS25} [get_ports gpio_bd_i[12]] ; ## GPIO_SW_C +set_property -dict {PACKAGE_PIN AN14 IOSTANDARD LVCMOS33} [get_ports gpio_bd_i[0]] ; ## GPIO_DIP_SW0 +set_property -dict {PACKAGE_PIN AP14 IOSTANDARD LVCMOS33} [get_ports gpio_bd_i[1]] ; ## GPIO_DIP_SW1 +set_property -dict {PACKAGE_PIN AM14 IOSTANDARD LVCMOS33} [get_ports gpio_bd_i[2]] ; ## GPIO_DIP_SW2 +set_property -dict {PACKAGE_PIN AN13 IOSTANDARD LVCMOS33} [get_ports gpio_bd_i[3]] ; ## GPIO_DIP_SW3 +set_property -dict {PACKAGE_PIN AN12 IOSTANDARD LVCMOS33} [get_ports gpio_bd_i[4]] ; ## GPIO_DIP_SW4 +set_property -dict {PACKAGE_PIN AP12 IOSTANDARD LVCMOS33} [get_ports gpio_bd_i[5]] ; ## GPIO_DIP_SW5 +set_property -dict {PACKAGE_PIN AL13 IOSTANDARD LVCMOS33} [get_ports gpio_bd_i[6]] ; ## GPIO_DIP_SW6 +set_property -dict {PACKAGE_PIN AK13 IOSTANDARD LVCMOS33} [get_ports gpio_bd_i[7]] ; ## GPIO_DIP_SW7 +set_property -dict {PACKAGE_PIN AE14 IOSTANDARD LVCMOS33} [get_ports gpio_bd_i[8]] ; ## GPIO_SW_E +set_property -dict {PACKAGE_PIN AE15 IOSTANDARD LVCMOS33} [get_ports gpio_bd_i[9]] ; ## GPIO_SW_S +set_property -dict {PACKAGE_PIN AG15 IOSTANDARD LVCMOS33} [get_ports gpio_bd_i[10]] ; ## GPIO_SW_N +set_property -dict {PACKAGE_PIN AF15 IOSTANDARD LVCMOS33} [get_ports gpio_bd_i[11]] ; ## GPIO_SW_W +set_property -dict {PACKAGE_PIN AG13 IOSTANDARD LVCMOS33} [get_ports gpio_bd_i[12]] ; ## GPIO_SW_C -set_property -dict {PACKAGE_PIN AG14 IOSTANDARD LVCMOS25} [get_ports gpio_bd_o[0]] ; ## GPIO_LED_0 -set_property -dict {PACKAGE_PIN AF13 IOSTANDARD LVCMOS25} [get_ports gpio_bd_o[1]] ; ## GPIO_LED_1 -set_property -dict {PACKAGE_PIN AE13 IOSTANDARD LVCMOS25} [get_ports gpio_bd_o[2]] ; ## GPIO_LED_2 -set_property -dict {PACKAGE_PIN AJ14 IOSTANDARD LVCMOS25} [get_ports gpio_bd_o[3]] ; ## GPIO_LED_3 -set_property -dict {PACKAGE_PIN AJ15 IOSTANDARD LVCMOS25} [get_ports gpio_bd_o[4]] ; ## GPIO_LED_4 -set_property -dict {PACKAGE_PIN AH13 IOSTANDARD LVCMOS25} [get_ports gpio_bd_o[5]] ; ## GPIO_LED_5 -set_property -dict {PACKAGE_PIN AH14 IOSTANDARD LVCMOS25} [get_ports gpio_bd_o[6]] ; ## GPIO_LED_6 -set_property -dict {PACKAGE_PIN AL12 IOSTANDARD LVCMOS25} [get_ports gpio_bd_o[7]] ; ## GPIO_LED_7 +set_property -dict {PACKAGE_PIN AG14 IOSTANDARD LVCMOS33} [get_ports gpio_bd_o[0]] ; ## GPIO_LED_0 +set_property -dict {PACKAGE_PIN AF13 IOSTANDARD LVCMOS33} [get_ports gpio_bd_o[1]] ; ## GPIO_LED_1 +set_property -dict {PACKAGE_PIN AE13 IOSTANDARD LVCMOS33} [get_ports gpio_bd_o[2]] ; ## GPIO_LED_2 +set_property -dict {PACKAGE_PIN AJ14 IOSTANDARD LVCMOS33} [get_ports gpio_bd_o[3]] ; ## GPIO_LED_3 +set_property -dict {PACKAGE_PIN AJ15 IOSTANDARD LVCMOS33} [get_ports gpio_bd_o[4]] ; ## GPIO_LED_4 +set_property -dict {PACKAGE_PIN AH13 IOSTANDARD LVCMOS33} [get_ports gpio_bd_o[5]] ; ## GPIO_LED_5 +set_property -dict {PACKAGE_PIN AH14 IOSTANDARD LVCMOS33} [get_ports gpio_bd_o[6]] ; ## GPIO_LED_6 +set_property -dict {PACKAGE_PIN AL12 IOSTANDARD LVCMOS33} [get_ports gpio_bd_o[7]] ; ## GPIO_LED_7 diff --git a/CI/projects/common/zed/zed_system_bd.tcl b/CI/projects/common/zed/zed_system_bd.tcl index def5ccd..57cf017 100644 --- a/CI/projects/common/zed/zed_system_bd.tcl +++ b/CI/projects/common/zed/zed_system_bd.tcl @@ -58,22 +58,6 @@ create_bd_port -dir I otg_vbusoc create_bd_port -dir O spdif -# interrupts - -create_bd_port -dir I -type intr ps_intr_00 -create_bd_port -dir I -type intr ps_intr_01 -create_bd_port -dir I -type intr ps_intr_02 -create_bd_port -dir I -type intr ps_intr_03 -create_bd_port -dir I -type intr ps_intr_04 -create_bd_port -dir I -type intr ps_intr_05 -create_bd_port -dir I -type intr ps_intr_06 -create_bd_port -dir I -type intr ps_intr_07 -create_bd_port -dir I -type intr ps_intr_08 -create_bd_port -dir I -type intr ps_intr_09 -create_bd_port -dir I -type intr ps_intr_10 -create_bd_port -dir I -type intr ps_intr_12 -create_bd_port -dir I -type intr ps_intr_13 - # instance: sys_ps7 ad_ip_instance processing_system7 sys_ps7 @@ -117,11 +101,17 @@ ad_ip_parameter sys_logic_inv CONFIG.C_OPERATION not ad_ip_instance axi_clkgen axi_hdmi_clkgen ad_ip_instance axi_hdmi_tx axi_hdmi_core - -ad_ip_instance axi_vdma axi_hdmi_dma -ad_ip_parameter axi_hdmi_dma CONFIG.C_M_AXIS_MM2S_TDATA_WIDTH 64 -ad_ip_parameter axi_hdmi_dma CONFIG.C_USE_MM2S_FSYNC 1 -ad_ip_parameter axi_hdmi_dma CONFIG.C_INCLUDE_S2MM 0 +ad_ip_parameter axi_hdmi_core CONFIG.INTERFACE 16_BIT + +ad_ip_instance axi_dmac axi_hdmi_dma +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_TYPE_SRC 0 +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_TYPE_DEST 1 +ad_ip_parameter axi_hdmi_dma CONFIG.CYCLIC true +ad_ip_parameter axi_hdmi_dma CONFIG.SYNC_TRANSFER_START 0 +ad_ip_parameter axi_hdmi_dma CONFIG.AXI_SLICE_SRC 0 +ad_ip_parameter axi_hdmi_dma CONFIG.AXI_SLICE_DEST 0 +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_2D_TRANSFER true +ad_ip_parameter axi_hdmi_dma CONFIG.DMA_DATA_WIDTH_SRC 64 # audio peripherals @@ -201,18 +191,21 @@ ad_connect spi1_sdi_i sys_ps7/SPI1_MISO_I # hdmi ad_connect sys_cpu_clk axi_hdmi_core/vdma_clk -ad_connect sys_cpu_clk axi_hdmi_dma/m_axis_mm2s_aclk ad_connect axi_hdmi_core/hdmi_clk axi_hdmi_clkgen/clk_0 ad_connect axi_hdmi_core/hdmi_out_clk hdmi_out_clk ad_connect axi_hdmi_core/hdmi_16_hsync hdmi_hsync ad_connect axi_hdmi_core/hdmi_16_vsync hdmi_vsync ad_connect axi_hdmi_core/hdmi_16_data_e hdmi_data_e ad_connect axi_hdmi_core/hdmi_16_data hdmi_data -ad_connect axi_hdmi_core/vdma_valid axi_hdmi_dma/m_axis_mm2s_tvalid -ad_connect axi_hdmi_core/vdma_data axi_hdmi_dma/m_axis_mm2s_tdata -ad_connect axi_hdmi_core/vdma_ready axi_hdmi_dma/m_axis_mm2s_tready -ad_connect axi_hdmi_core/vdma_fs axi_hdmi_dma/mm2s_fsync -ad_connect axi_hdmi_core/vdma_fs axi_hdmi_core/vdma_fs_ret + +ad_connect axi_hdmi_dma/m_axis axi_hdmi_core/s_axis + +ad_connect sys_cpu_resetn axi_hdmi_dma/s_axi_aresetn +ad_connect sys_cpu_resetn axi_hdmi_dma/m_src_axi_aresetn + +ad_connect sys_cpu_clk axi_hdmi_dma/s_axi_aclk +ad_connect sys_cpu_clk axi_hdmi_dma/m_src_axi_aclk +ad_connect sys_cpu_clk axi_hdmi_dma/m_axis_aclk # spdif audio @@ -249,22 +242,22 @@ ad_connect sys_cpu_resetn axi_i2s_adi/DMA_REQ_RX_RSTN # interrupts ad_connect sys_concat_intc/dout sys_ps7/IRQ_F2P -ad_connect sys_concat_intc/In15 axi_hdmi_dma/mm2s_introut +ad_connect sys_concat_intc/In15 axi_hdmi_dma/irq ad_connect sys_concat_intc/In14 axi_iic_main/iic2intc_irpt -ad_connect sys_concat_intc/In13 ps_intr_13 -ad_connect sys_concat_intc/In12 ps_intr_12 +ad_connect sys_concat_intc/In13 GND +ad_connect sys_concat_intc/In12 GND ad_connect sys_concat_intc/In11 axi_iic_fmc/iic2intc_irpt -ad_connect sys_concat_intc/In10 ps_intr_10 -ad_connect sys_concat_intc/In9 ps_intr_09 -ad_connect sys_concat_intc/In8 ps_intr_08 -ad_connect sys_concat_intc/In7 ps_intr_07 -ad_connect sys_concat_intc/In6 ps_intr_06 -ad_connect sys_concat_intc/In5 ps_intr_05 -ad_connect sys_concat_intc/In4 ps_intr_04 -ad_connect sys_concat_intc/In3 ps_intr_03 -ad_connect sys_concat_intc/In2 ps_intr_02 -ad_connect sys_concat_intc/In1 ps_intr_01 -ad_connect sys_concat_intc/In0 ps_intr_00 +ad_connect sys_concat_intc/In10 GND +ad_connect sys_concat_intc/In9 GND +ad_connect sys_concat_intc/In8 GND +ad_connect sys_concat_intc/In7 GND +ad_connect sys_concat_intc/In6 GND +ad_connect sys_concat_intc/In5 GND +ad_connect sys_concat_intc/In4 GND +ad_connect sys_concat_intc/In3 GND +ad_connect sys_concat_intc/In2 GND +ad_connect sys_concat_intc/In1 GND +ad_connect sys_concat_intc/In0 GND # interconnects and address mapping @@ -276,5 +269,5 @@ ad_cpu_interconnect 0x75c00000 axi_spdif_tx_core ad_cpu_interconnect 0x77600000 axi_i2s_adi ad_cpu_interconnect 0x41620000 axi_iic_fmc ad_mem_hp0_interconnect sys_cpu_clk sys_ps7/S_AXI_HP0 -ad_mem_hp0_interconnect sys_cpu_clk axi_hdmi_dma/M_AXI_MM2S +ad_mem_hp0_interconnect sys_cpu_clk axi_hdmi_dma/m_src_axi diff --git a/CI/projects/fmcomms2/common/fmcomms2_bd.tcl b/CI/projects/fmcomms2/common/fmcomms2_bd.tcl index b7becea..f0e09ef 100644 --- a/CI/projects/fmcomms2/common/fmcomms2_bd.tcl +++ b/CI/projects/fmcomms2/common/fmcomms2_bd.tcl @@ -28,6 +28,10 @@ create_bd_port -dir O tdd_sync_t ad_ip_instance axi_ad9361 axi_ad9361 ad_ip_parameter axi_ad9361 CONFIG.ID 0 + +# set to 1 for CORDIC or 2 for POLYNOMIAL +ad_ip_parameter axi_ad9361 CONFIG.DAC_DDS_TYPE 1 +ad_ip_parameter axi_ad9361 CONFIG.DAC_DDS_CORDIC_DW 14 ad_connect sys_200m_clk axi_ad9361/delay_clk ad_connect axi_ad9361/l_clk axi_ad9361/clk ad_connect rx_clk_in_p axi_ad9361/rx_clk_in_p @@ -72,13 +76,13 @@ ad_ip_parameter util_ad9361_divclk_sel CONFIG.C_SIZE 2 ad_connect util_ad9361_divclk_sel_concat/dout util_ad9361_divclk_sel/Op1 ad_ip_instance util_clkdiv util_ad9361_divclk -ad_connect util_ad9361_divclk_sel/Res util_ad9361_divclk/clk_sel +ad_connect util_ad9361_divclk_sel/Res util_ad9361_divclk/clk_sel ad_connect axi_ad9361/l_clk util_ad9361_divclk/clk # resets at divided clock ad_ip_instance proc_sys_reset util_ad9361_divclk_reset -ad_connect sys_rstgen/peripheral_aresetn util_ad9361_divclk_reset/ext_reset_in +ad_connect sys_rstgen/peripheral_aresetn util_ad9361_divclk_reset/ext_reset_in ad_connect util_ad9361_divclk/clk_out util_ad9361_divclk_reset/slowest_sync_clk # adc-path wfifo @@ -197,7 +201,6 @@ ad_ip_instance axi_dmac axi_ad9361_dac_dma ad_ip_parameter axi_ad9361_dac_dma CONFIG.DMA_TYPE_SRC 0 ad_ip_parameter axi_ad9361_dac_dma CONFIG.DMA_TYPE_DEST 2 ad_ip_parameter axi_ad9361_dac_dma CONFIG.CYCLIC 1 -ad_ip_parameter axi_ad9361_dac_dma CONFIG.SYNC_TRANSFER_START 0 ad_ip_parameter axi_ad9361_dac_dma CONFIG.AXI_SLICE_SRC 0 ad_ip_parameter axi_ad9361_dac_dma CONFIG.AXI_SLICE_DEST 1 ad_ip_parameter axi_ad9361_dac_dma CONFIG.DMA_2D_TRANSFER 0 diff --git a/CI/projects/fmcomms2/zc702/Makefile b/CI/projects/fmcomms2/zc702/Makefile index 4bc0b07..75938d5 100644 --- a/CI/projects/fmcomms2/zc702/Makefile +++ b/CI/projects/fmcomms2/zc702/Makefile @@ -1,91 +1,26 @@ #################################################################################### -#################################################################################### -## Copyright 2011(c) Analog Devices, Inc. +## Copyright 2018(c) Analog Devices, Inc. ## Auto-generated, do not modify! #################################################################################### -#################################################################################### -M_DEPS += system_top.v -M_DEPS += system_project.tcl -M_DEPS += system_constr.xdc -M_DEPS += system_bd.tcl +PROJECT_NAME := fmcomms2_zc702 + M_DEPS += ../common/fmcomms2_bd.tcl -M_DEPS += ../../scripts/adi_project.tcl -M_DEPS += ../../scripts/adi_env.tcl -M_DEPS += ../../scripts/adi_board.tcl M_DEPS += ../../common/zc702/zc702_system_constr.xdc M_DEPS += ../../common/zc702/zc702_system_bd.tcl -M_DEPS += ../../common/xilinx/sys_wfifo.tcl M_DEPS += ../../../library/xilinx/common/ad_iobuf.v -M_DEPS += ../../../library/axi_ad9361/axi_ad9361.xpr -M_DEPS += ../../../library/axi_clkgen/axi_clkgen.xpr -M_DEPS += ../../../library/axi_dmac/axi_dmac.xpr -M_DEPS += ../../../library/axi_hdmi_tx/axi_hdmi_tx.xpr -M_DEPS += ../../../library/axi_spdif_tx/axi_spdif_tx.xpr -M_DEPS += ../../../library/util_clkdiv/util_clkdiv.xpr -M_DEPS += ../../../library/util_cpack/util_cpack.xpr -M_DEPS += ../../../library/util_rfifo/util_rfifo.xpr -M_DEPS += ../../../library/util_tdd_sync/util_tdd_sync.xpr -M_DEPS += ../../../library/util_upack/util_upack.xpr -M_DEPS += ../../../library/util_wfifo/util_wfifo.xpr - -M_VIVADO := vivado -mode batch -source - -M_FLIST := *.cache -M_FLIST += *.data -M_FLIST += *.xpr -M_FLIST += *.log -M_FLIST += *.jou -M_FLIST += xgui -M_FLIST += *.runs -M_FLIST += *.srcs -M_FLIST += *.sdk -M_FLIST += *.hw -M_FLIST += *.sim -M_FLIST += .Xil -M_FLIST += *.ip_user_files - - - -.PHONY: all lib clean clean-all -all: lib fmcomms2_zc702.sdk/system_top.hdf - - -clean: - rm -rf $(M_FLIST) - - -clean-all:clean - make -C ../../../library/axi_ad9361 clean - make -C ../../../library/axi_clkgen clean - make -C ../../../library/axi_dmac clean - make -C ../../../library/axi_hdmi_tx clean - make -C ../../../library/axi_spdif_tx clean - make -C ../../../library/util_clkdiv clean - make -C ../../../library/util_cpack clean - make -C ../../../library/util_rfifo clean - make -C ../../../library/util_tdd_sync clean - make -C ../../../library/util_upack clean - make -C ../../../library/util_wfifo clean - - -fmcomms2_zc702.sdk/system_top.hdf: $(M_DEPS) - -rm -rf $(M_FLIST) - $(M_VIVADO) system_project.tcl >> fmcomms2_zc702_vivado.log 2>&1 - - -lib: - make -C ../../../library/axi_ad9361 - make -C ../../../library/axi_clkgen - make -C ../../../library/axi_dmac - make -C ../../../library/axi_hdmi_tx - make -C ../../../library/axi_spdif_tx - make -C ../../../library/util_clkdiv - make -C ../../../library/util_cpack - make -C ../../../library/util_rfifo - make -C ../../../library/util_tdd_sync - make -C ../../../library/util_upack - make -C ../../../library/util_wfifo - -#################################################################################### -#################################################################################### +M_DEPS += ../../../library/axi_ad9361/axi_ad9361_delay.tcl + +LIB_DEPS += axi_ad9361 +LIB_DEPS += axi_clkgen +LIB_DEPS += axi_dmac +LIB_DEPS += axi_hdmi_tx +LIB_DEPS += axi_spdif_tx +LIB_DEPS += util_clkdiv +LIB_DEPS += util_cpack +LIB_DEPS += util_rfifo +LIB_DEPS += util_tdd_sync +LIB_DEPS += util_upack +LIB_DEPS += util_wfifo + +include ../../scripts/project-xilinx.mk diff --git a/CI/projects/fmcomms2/zc702/system_bd.tcl b/CI/projects/fmcomms2/zc702/system_bd.tcl index aad07f0..2560ea4 100644 --- a/CI/projects/fmcomms2/zc702/system_bd.tcl +++ b/CI/projects/fmcomms2/zc702/system_bd.tcl @@ -2,4 +2,5 @@ source $ad_hdl_dir/projects/common/zc702/zc702_system_bd.tcl source $ad_hdl_dir/projects/fmcomms2/common/fmcomms2_bd.tcl -ad_ip_parameter axi_ad9361 CONFIG.ADC_INIT_DELAY 23 \ No newline at end of file +ad_ip_parameter axi_ad9361 CONFIG.ADC_INIT_DELAY 23 + diff --git a/CI/projects/fmcomms2/zc702/system_top.v b/CI/projects/fmcomms2/zc702/system_top.v index 776bb78..1c8936a 100644 --- a/CI/projects/fmcomms2/zc702/system_top.v +++ b/CI/projects/fmcomms2/zc702/system_top.v @@ -8,7 +8,7 @@ // terms. // // The user should read each of these license terms, and understand the -// freedoms and responsabilities that he or she has by using this source/core. +// freedoms and responsibilities that he or she has by using this source/core. // // This core is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR @@ -137,6 +137,11 @@ module system_top ( .dio_o ({gpio_i[15:12], gpio_i[7:0]}), .dio_p ({gpio_bd[7:4], gpio_bd[11:8], gpio_bd[3:0]})); + assign gpio_i[63:51] = gpio_o[63:51]; + assign gpio_i[48:47] = gpio_o[48:47]; + assign gpio_i[31:16] = gpio_o[31:16]; + assign gpio_i[11: 8] = gpio_o[11: 8]; + system_wrapper i_system_wrapper ( .ddr_addr (ddr_addr), .ddr_ba (ddr_ba), @@ -169,18 +174,6 @@ module system_top ( .hdmi_vsync (hdmi_vsync), .iic_main_scl_io (iic_scl), .iic_main_sda_io (iic_sda), - .ps_intr_00 (1'b0), - .ps_intr_01 (1'b0), - .ps_intr_10 (1'b0), - .ps_intr_11 (1'b0), - .ps_intr_02 (1'b0), - .ps_intr_03 (1'b0), - .ps_intr_04 (1'b0), - .ps_intr_05 (1'b0), - .ps_intr_06 (1'b0), - .ps_intr_07 (1'b0), - .ps_intr_08 (1'b0), - .ps_intr_09 (1'b0), .rx_clk_in_n (rx_clk_in_n), .rx_clk_in_p (rx_clk_in_p), .rx_data_in_n (rx_data_in_n), @@ -203,6 +196,9 @@ module system_top ( .tx_data_out_p (tx_data_out_p), .tx_frame_out_n (tx_frame_out_n), .tx_frame_out_p (tx_frame_out_p), + .tdd_sync_i (1'b0), + .tdd_sync_o (), + .tdd_sync_t (), .spi1_clk_i (1'b0), .spi1_clk_o (spi_udc_sclk), .spi1_csn_i (1'b1), diff --git a/CI/projects/fmcomms2/zc706/Makefile b/CI/projects/fmcomms2/zc706/Makefile index 0c6fab0..e641f50 100644 --- a/CI/projects/fmcomms2/zc706/Makefile +++ b/CI/projects/fmcomms2/zc706/Makefile @@ -1,90 +1,26 @@ #################################################################################### -#################################################################################### -## Copyright 2011(c) Analog Devices, Inc. +## Copyright 2018(c) Analog Devices, Inc. ## Auto-generated, do not modify! #################################################################################### -#################################################################################### -M_DEPS += system_top.v -M_DEPS += system_project.tcl -M_DEPS += system_constr.xdc -M_DEPS += system_bd.tcl +PROJECT_NAME := fmcomms2_zc706 + M_DEPS += ../common/fmcomms2_bd.tcl -M_DEPS += ../../scripts/adi_project.tcl -M_DEPS += ../../scripts/adi_env.tcl -M_DEPS += ../../scripts/adi_board.tcl M_DEPS += ../../common/zc706/zc706_system_constr.xdc M_DEPS += ../../common/zc706/zc706_system_bd.tcl M_DEPS += ../../../library/xilinx/common/ad_iobuf.v -M_DEPS += ../../../library/axi_ad9361/axi_ad9361.xpr -M_DEPS += ../../../library/axi_clkgen/axi_clkgen.xpr -M_DEPS += ../../../library/axi_dmac/axi_dmac.xpr -M_DEPS += ../../../library/axi_hdmi_tx/axi_hdmi_tx.xpr -M_DEPS += ../../../library/axi_spdif_tx/axi_spdif_tx.xpr -M_DEPS += ../../../library/util_clkdiv/util_clkdiv.xpr -M_DEPS += ../../../library/util_cpack/util_cpack.xpr -M_DEPS += ../../../library/util_rfifo/util_rfifo.xpr -M_DEPS += ../../../library/util_tdd_sync/util_tdd_sync.xpr -M_DEPS += ../../../library/util_upack/util_upack.xpr -M_DEPS += ../../../library/util_wfifo/util_wfifo.xpr - -M_VIVADO := vivado -mode batch -source - -M_FLIST := *.cache -M_FLIST += *.data -M_FLIST += *.xpr -M_FLIST += *.log -M_FLIST += *.jou -M_FLIST += xgui -M_FLIST += *.runs -M_FLIST += *.srcs -M_FLIST += *.sdk -M_FLIST += *.hw -M_FLIST += *.sim -M_FLIST += .Xil -M_FLIST += *.ip_user_files - - - -.PHONY: all lib clean clean-all -all: lib fmcomms2_zc706.sdk/system_top.hdf - - -clean: - rm -rf $(M_FLIST) - - -clean-all:clean - make -C ../../../library/axi_ad9361 clean - make -C ../../../library/axi_clkgen clean - make -C ../../../library/axi_dmac clean - make -C ../../../library/axi_hdmi_tx clean - make -C ../../../library/axi_spdif_tx clean - make -C ../../../library/util_clkdiv clean - make -C ../../../library/util_cpack clean - make -C ../../../library/util_rfifo clean - make -C ../../../library/util_tdd_sync clean - make -C ../../../library/util_upack clean - make -C ../../../library/util_wfifo clean - - -fmcomms2_zc706.sdk/system_top.hdf: $(M_DEPS) - -rm -rf $(M_FLIST) - $(M_VIVADO) system_project.tcl >> fmcomms2_zc706_vivado.log 2>&1 - - -lib: - make -C ../../../library/axi_ad9361 - make -C ../../../library/axi_clkgen - make -C ../../../library/axi_dmac - make -C ../../../library/axi_hdmi_tx - make -C ../../../library/axi_spdif_tx - make -C ../../../library/util_clkdiv - make -C ../../../library/util_cpack - make -C ../../../library/util_rfifo - make -C ../../../library/util_tdd_sync - make -C ../../../library/util_upack - make -C ../../../library/util_wfifo - -#################################################################################### -#################################################################################### +M_DEPS += ../../../library/axi_ad9361/axi_ad9361_delay.tcl + +LIB_DEPS += axi_ad9361 +LIB_DEPS += axi_clkgen +LIB_DEPS += axi_dmac +LIB_DEPS += axi_hdmi_tx +LIB_DEPS += axi_spdif_tx +LIB_DEPS += util_clkdiv +LIB_DEPS += util_cpack +LIB_DEPS += util_rfifo +LIB_DEPS += util_tdd_sync +LIB_DEPS += util_upack +LIB_DEPS += util_wfifo + +include ../../scripts/project-xilinx.mk diff --git a/CI/projects/fmcomms2/zc706/system_top.v b/CI/projects/fmcomms2/zc706/system_top.v index 89822d5..d56a252 100644 --- a/CI/projects/fmcomms2/zc706/system_top.v +++ b/CI/projects/fmcomms2/zc706/system_top.v @@ -8,7 +8,7 @@ // terms. // // The user should read each of these license terms, and understand the -// freedoms and responsabilities that he or she has by using this source/core. +// freedoms and responsibilities that he or she has by using this source/core. // // This core is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR @@ -159,6 +159,10 @@ module system_top ( .dio_o (gpio_i[14:0]), .dio_p (gpio_bd)); + assign gpio_i[63:51] = gpio_o[63:51]; + assign gpio_i[48:47] = gpio_o[48:47]; + assign gpio_i[31:15] = gpio_o[31:15]; + ad_iobuf #(.DATA_WIDTH(1)) i_iobuf_tdd_sync ( .dio_t (tdd_sync_t), .dio_i (tdd_sync_o), @@ -198,18 +202,6 @@ module system_top ( .hdmi_vsync (hdmi_vsync), .iic_main_scl_io (iic_scl), .iic_main_sda_io (iic_sda), - .ps_intr_00 (1'b0), - .ps_intr_01 (1'b0), - .ps_intr_02 (1'b0), - .ps_intr_03 (1'b0), - .ps_intr_04 (1'b0), - .ps_intr_05 (1'b0), - .ps_intr_06 (1'b0), - .ps_intr_07 (1'b0), - .ps_intr_08 (1'b0), - .ps_intr_09 (1'b0), - .ps_intr_10 (1'b0), - .ps_intr_11 (1'b0), .rx_clk_in_n (rx_clk_in_n), .rx_clk_in_p (rx_clk_in_p), .rx_data_in_n (rx_data_in_n), diff --git a/CI/projects/fmcomms2/zed/Makefile b/CI/projects/fmcomms2/zed/Makefile index c6cca6d..53ea64f 100644 --- a/CI/projects/fmcomms2/zed/Makefile +++ b/CI/projects/fmcomms2/zed/Makefile @@ -1,97 +1,28 @@ #################################################################################### -#################################################################################### -## Copyright 2011(c) Analog Devices, Inc. +## Copyright 2018(c) Analog Devices, Inc. ## Auto-generated, do not modify! #################################################################################### -#################################################################################### -M_DEPS += system_top.v -M_DEPS += system_project.tcl -M_DEPS += system_constr.xdc -M_DEPS += system_bd.tcl +PROJECT_NAME := fmcomms2_zed + M_DEPS += ../common/fmcomms2_bd.tcl -M_DEPS += ../../scripts/adi_project.tcl -M_DEPS += ../../scripts/adi_env.tcl -M_DEPS += ../../scripts/adi_board.tcl M_DEPS += ../../common/zed/zed_system_constr.xdc M_DEPS += ../../common/zed/zed_system_bd.tcl -M_DEPS += ../../common/xilinx/sys_wfifo.tcl M_DEPS += ../../../library/xilinx/common/ad_iobuf.v -M_DEPS += ../../../library/axi_ad9361/axi_ad9361.xpr -M_DEPS += ../../../library/axi_clkgen/axi_clkgen.xpr -M_DEPS += ../../../library/axi_dmac/axi_dmac.xpr -M_DEPS += ../../../library/axi_hdmi_tx/axi_hdmi_tx.xpr -M_DEPS += ../../../library/axi_i2s_adi/axi_i2s_adi.xpr -M_DEPS += ../../../library/axi_spdif_tx/axi_spdif_tx.xpr -M_DEPS += ../../../library/util_clkdiv/util_clkdiv.xpr -M_DEPS += ../../../library/util_cpack/util_cpack.xpr -M_DEPS += ../../../library/util_i2c_mixer/util_i2c_mixer.xpr -M_DEPS += ../../../library/util_rfifo/util_rfifo.xpr -M_DEPS += ../../../library/util_tdd_sync/util_tdd_sync.xpr -M_DEPS += ../../../library/util_upack/util_upack.xpr -M_DEPS += ../../../library/util_wfifo/util_wfifo.xpr - -M_VIVADO := vivado -mode batch -source - -M_FLIST := *.cache -M_FLIST += *.data -M_FLIST += *.xpr -M_FLIST += *.log -M_FLIST += *.jou -M_FLIST += xgui -M_FLIST += *.runs -M_FLIST += *.srcs -M_FLIST += *.sdk -M_FLIST += *.hw -M_FLIST += *.sim -M_FLIST += .Xil -M_FLIST += *.ip_user_files - - - -.PHONY: all lib clean clean-all -all: lib fmcomms2_zed.sdk/system_top.hdf - - -clean: - rm -rf $(M_FLIST) - - -clean-all:clean - make -C ../../../library/axi_ad9361 clean - make -C ../../../library/axi_clkgen clean - make -C ../../../library/axi_dmac clean - make -C ../../../library/axi_hdmi_tx clean - make -C ../../../library/axi_i2s_adi clean - make -C ../../../library/axi_spdif_tx clean - make -C ../../../library/util_clkdiv clean - make -C ../../../library/util_cpack clean - make -C ../../../library/util_i2c_mixer clean - make -C ../../../library/util_rfifo clean - make -C ../../../library/util_tdd_sync clean - make -C ../../../library/util_upack clean - make -C ../../../library/util_wfifo clean - - -fmcomms2_zed.sdk/system_top.hdf: $(M_DEPS) - -rm -rf $(M_FLIST) - $(M_VIVADO) system_project.tcl >> fmcomms2_zed_vivado.log 2>&1 - - -lib: - make -C ../../../library/axi_ad9361 - make -C ../../../library/axi_clkgen - make -C ../../../library/axi_dmac - make -C ../../../library/axi_hdmi_tx - make -C ../../../library/axi_i2s_adi - make -C ../../../library/axi_spdif_tx - make -C ../../../library/util_clkdiv - make -C ../../../library/util_cpack - make -C ../../../library/util_i2c_mixer - make -C ../../../library/util_rfifo - make -C ../../../library/util_tdd_sync - make -C ../../../library/util_upack - make -C ../../../library/util_wfifo - -#################################################################################### -#################################################################################### +M_DEPS += ../../../library/axi_ad9361/axi_ad9361_delay.tcl + +LIB_DEPS += axi_ad9361 +LIB_DEPS += axi_clkgen +LIB_DEPS += axi_dmac +LIB_DEPS += axi_hdmi_tx +LIB_DEPS += axi_i2s_adi +LIB_DEPS += axi_spdif_tx +LIB_DEPS += util_clkdiv +LIB_DEPS += util_cpack +LIB_DEPS += util_i2c_mixer +LIB_DEPS += util_rfifo +LIB_DEPS += util_tdd_sync +LIB_DEPS += util_upack +LIB_DEPS += util_wfifo + +include ../../scripts/project-xilinx.mk diff --git a/CI/projects/fmcomms2/zed/system_top.v b/CI/projects/fmcomms2/zed/system_top.v index 29e20dd..7892fa2 100644 --- a/CI/projects/fmcomms2/zed/system_top.v +++ b/CI/projects/fmcomms2/zed/system_top.v @@ -8,7 +8,7 @@ // terms. // // The user should read each of these license terms, and understand the -// freedoms and responsabilities that he or she has by using this source/core. +// freedoms and responsibilities that he or she has by using this source/core. // // This core is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR @@ -144,6 +144,9 @@ module system_top ( gpio_status, gpio_bd})); + assign gpio_i[63:51] = gpio_o[63:51]; + assign gpio_i[48:47] = gpio_o[48:47]; + ad_iobuf #(.DATA_WIDTH(2)) i_iobuf_iic_scl ( .dio_t ({iic_mux_scl_t_s,iic_mux_scl_t_s}), .dio_i (iic_mux_scl_o_s), @@ -199,17 +202,6 @@ module system_top ( .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_00 (1'b0), - .ps_intr_01 (1'b0), - .ps_intr_02 (1'b0), - .ps_intr_03 (1'b0), - .ps_intr_04 (1'b0), - .ps_intr_05 (1'b0), - .ps_intr_06 (1'b0), - .ps_intr_07 (1'b0), - .ps_intr_08 (1'b0), - .ps_intr_09 (1'b0), - .ps_intr_10 (1'b0), .otg_vbusoc (otg_vbusoc), .rx_clk_in_n (rx_clk_in_n), .rx_clk_in_p (rx_clk_in_p), @@ -217,6 +209,9 @@ module system_top ( .rx_data_in_p (rx_data_in_p), .rx_frame_in_n (rx_frame_in_n), .rx_frame_in_p (rx_frame_in_p), + .tdd_sync_i (1'b0), + .tdd_sync_o (), + .tdd_sync_t (), .spdif (spdif), .spi0_clk_i (1'b0), .spi0_clk_o (spi_clk), diff --git a/CI/projects/fmcomms5/common/fmcomms5_bd.tcl b/CI/projects/fmcomms5/common/fmcomms5_bd.tcl index 1b4a48e..b2647c7 100644 --- a/CI/projects/fmcomms5/common/fmcomms5_bd.tcl +++ b/CI/projects/fmcomms5/common/fmcomms5_bd.tcl @@ -252,8 +252,8 @@ ad_ip_parameter util_ad9361_dac_upack CONFIG.CHANNEL_DATA_WIDTH 16 ad_ip_parameter util_ad9361_dac_upack CONFIG.NUM_OF_CHANNELS 8 ad_connect util_ad9361_divclk/clk_out util_ad9361_dac_upack/dac_clk ad_connect util_ad9361_dac_upack/dac_enable_0 axi_ad9361_dac_fifo/din_enable_0 -ad_connect util_ad9361_dac_upack/dac_valid_0 axi_ad9361_dac_fifo/din_valid_0 -ad_connect util_ad9361_dac_upack/dac_valid_out_0 axi_ad9361_dac_fifo/din_valid_in_0 +ad_connect util_ad9361_dac_upack/dac_valid_0 axi_ad9361_dac_fifo/din_valid_0 +ad_connect util_ad9361_dac_upack/dac_valid_out_0 axi_ad9361_dac_fifo/din_valid_in_0 ad_connect util_ad9361_dac_upack/dac_data_0 axi_ad9361_dac_fifo/din_data_0 ad_connect util_ad9361_dac_upack/dac_enable_1 axi_ad9361_dac_fifo/din_enable_1 ad_connect util_ad9361_dac_upack/dac_valid_1 axi_ad9361_dac_fifo/din_valid_1 @@ -290,7 +290,6 @@ ad_ip_instance axi_dmac axi_ad9361_dac_dma ad_ip_parameter axi_ad9361_dac_dma CONFIG.DMA_TYPE_SRC 0 ad_ip_parameter axi_ad9361_dac_dma CONFIG.DMA_TYPE_DEST 2 ad_ip_parameter axi_ad9361_dac_dma CONFIG.CYCLIC 1 -ad_ip_parameter axi_ad9361_dac_dma CONFIG.SYNC_TRANSFER_START 0 ad_ip_parameter axi_ad9361_dac_dma CONFIG.AXI_SLICE_SRC 0 ad_ip_parameter axi_ad9361_dac_dma CONFIG.AXI_SLICE_DEST 1 ad_ip_parameter axi_ad9361_dac_dma CONFIG.DMA_2D_TRANSFER 0 @@ -299,6 +298,7 @@ ad_ip_parameter axi_ad9361_dac_dma CONFIG.DMA_DATA_WIDTH_SRC 64 ad_connect util_ad9361_divclk/clk_out axi_ad9361_dac_dma/fifo_rd_clk ad_connect axi_ad9361_dac_dma/fifo_rd_en util_ad9361_dac_upack/dac_valid ad_connect axi_ad9361_dac_dma/fifo_rd_dout util_ad9361_dac_upack/dac_data +ad_connect axi_ad9361_dac_dma/fifo_rd_underflow axi_ad9361_dac_fifo/din_unf ad_connect sys_cpu_resetn axi_ad9361_dac_dma/m_src_axi_aresetn # address map diff --git a/CI/projects/fmcomms5/zc702/Makefile b/CI/projects/fmcomms5/zc702/Makefile index 86ae994..5191508 100644 --- a/CI/projects/fmcomms5/zc702/Makefile +++ b/CI/projects/fmcomms5/zc702/Makefile @@ -1,87 +1,25 @@ #################################################################################### -#################################################################################### -## Copyright 2011(c) Analog Devices, Inc. +## Copyright 2018(c) Analog Devices, Inc. ## Auto-generated, do not modify! #################################################################################### -#################################################################################### -M_DEPS += system_top.v -M_DEPS += system_project.tcl -M_DEPS += system_constr.xdc -M_DEPS += system_bd.tcl +PROJECT_NAME := fmcomms5_zc702 + M_DEPS += ../common/fmcomms5_bd.tcl -M_DEPS += ../../scripts/adi_project.tcl -M_DEPS += ../../scripts/adi_env.tcl -M_DEPS += ../../scripts/adi_board.tcl M_DEPS += ../../common/zc702/zc702_system_constr.xdc M_DEPS += ../../common/zc702/zc702_system_bd.tcl M_DEPS += ../../../library/xilinx/common/ad_iobuf.v -M_DEPS += ../../../library/axi_ad9361/axi_ad9361.xpr -M_DEPS += ../../../library/axi_clkgen/axi_clkgen.xpr -M_DEPS += ../../../library/axi_dmac/axi_dmac.xpr -M_DEPS += ../../../library/axi_hdmi_tx/axi_hdmi_tx.xpr -M_DEPS += ../../../library/axi_spdif_tx/axi_spdif_tx.xpr -M_DEPS += ../../../library/util_clkdiv/util_clkdiv.xpr -M_DEPS += ../../../library/util_cpack/util_cpack.xpr -M_DEPS += ../../../library/util_rfifo/util_rfifo.xpr -M_DEPS += ../../../library/util_upack/util_upack.xpr -M_DEPS += ../../../library/util_wfifo/util_wfifo.xpr - -M_VIVADO := vivado -mode batch -source - -M_FLIST := *.cache -M_FLIST += *.data -M_FLIST += *.xpr -M_FLIST += *.log -M_FLIST += *.jou -M_FLIST += xgui -M_FLIST += *.runs -M_FLIST += *.srcs -M_FLIST += *.sdk -M_FLIST += *.hw -M_FLIST += *.sim -M_FLIST += .Xil -M_FLIST += *.ip_user_files - - - -.PHONY: all lib clean clean-all -all: lib fmcomms5_zc702.sdk/system_top.hdf - - -clean: - rm -rf $(M_FLIST) - - -clean-all:clean - make -C ../../../library/axi_ad9361 clean - make -C ../../../library/axi_clkgen clean - make -C ../../../library/axi_dmac clean - make -C ../../../library/axi_hdmi_tx clean - make -C ../../../library/axi_spdif_tx clean - make -C ../../../library/util_clkdiv clean - make -C ../../../library/util_cpack clean - make -C ../../../library/util_rfifo clean - make -C ../../../library/util_upack clean - make -C ../../../library/util_wfifo clean - - -fmcomms5_zc702.sdk/system_top.hdf: $(M_DEPS) - -rm -rf $(M_FLIST) - $(M_VIVADO) system_project.tcl >> fmcomms5_zc702_vivado.log 2>&1 - - -lib: - make -C ../../../library/axi_ad9361 - make -C ../../../library/axi_clkgen - make -C ../../../library/axi_dmac - make -C ../../../library/axi_hdmi_tx - make -C ../../../library/axi_spdif_tx - make -C ../../../library/util_clkdiv - make -C ../../../library/util_cpack - make -C ../../../library/util_rfifo - make -C ../../../library/util_upack - make -C ../../../library/util_wfifo - -#################################################################################### -#################################################################################### +M_DEPS += ../../../library/axi_ad9361/axi_ad9361_delay.tcl + +LIB_DEPS += axi_ad9361 +LIB_DEPS += axi_clkgen +LIB_DEPS += axi_dmac +LIB_DEPS += axi_hdmi_tx +LIB_DEPS += axi_spdif_tx +LIB_DEPS += util_clkdiv +LIB_DEPS += util_cpack +LIB_DEPS += util_rfifo +LIB_DEPS += util_upack +LIB_DEPS += util_wfifo + +include ../../scripts/project-xilinx.mk diff --git a/CI/projects/fmcomms5/zc702/system_bd.tcl b/CI/projects/fmcomms5/zc702/system_bd.tcl index bb4e238..0a19736 100644 --- a/CI/projects/fmcomms5/zc702/system_bd.tcl +++ b/CI/projects/fmcomms5/zc702/system_bd.tcl @@ -7,4 +7,7 @@ ad_connect sys_dma_clk sys_ps7/FCLK_CLK2 source $ad_hdl_dir/projects/fmcomms5/common/fmcomms5_bd.tcl ad_ip_parameter axi_ad9361_0 CONFIG.ADC_INIT_DELAY 24 -ad_ip_parameter axi_ad9361_1 CONFIG.ADC_INIT_DELAY 24 \ No newline at end of file +ad_ip_parameter axi_ad9361_1 CONFIG.ADC_INIT_DELAY 24 +ad_ip_parameter axi_ad9361_adc_dma CONFIG.AXI_SLICE_DEST 1 +ad_ip_parameter axi_ad9361_dac_dma CONFIG.AXI_SLICE_SRC 1 + diff --git a/CI/projects/fmcomms5/zc702/system_top.v b/CI/projects/fmcomms5/zc702/system_top.v index 1f7f39d..c5af21f 100644 --- a/CI/projects/fmcomms5/zc702/system_top.v +++ b/CI/projects/fmcomms5/zc702/system_top.v @@ -8,7 +8,7 @@ // terms. // // The user should read each of these license terms, and understand the -// freedoms and responsabilities that he or she has by using this source/core. +// freedoms and responsibilities that he or she has by using this source/core. // // This core is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR @@ -144,8 +144,6 @@ module system_top ( wire [ 63:0] gpio_i; wire [ 63:0] gpio_o; wire [ 63:0] gpio_t; - wire gpio_open_45_45; - wire gpio_open_44_44; wire [ 2:0] spi0_csn; wire spi0_clk; wire spi0_mosi; @@ -154,10 +152,6 @@ module system_top ( wire spi1_clk; wire spi1_mosi; wire spi1_miso; - wire txnrx_0; - wire enable_0; - wire txnrx_1; - wire enable_1; // multi-chip synchronization @@ -184,10 +178,10 @@ module system_top ( .I (ref_clk_s), .O (ref_clk)); - ad_iobuf #(.DATA_WIDTH(44)) i_iobuf ( - .dio_t (gpio_t[59:16]), - .dio_i (gpio_o[59:16]), - .dio_o (gpio_i[59:16]), + ad_iobuf #(.DATA_WIDTH(42)) i_iobuf ( + .dio_t ({gpio_t[59:46], gpio_t[43:16]}), + .dio_i ({gpio_o[59:46], gpio_o[43:16]}), + .dio_o ({gpio_i[59:46], gpio_i[43:16]}), .dio_p ({ gpio_resetb_1, // 59 gpio_ad5355_lock, // 58 gpio_ad5355_rfen, // 57 @@ -202,16 +196,14 @@ module system_top ( gpio_enable_0, // 48 gpio_en_agc_0, // 47 gpio_resetb_0, // 46 - gpio_open_45_45, // 45 - gpio_open_44_44, // 44 gpio_debug_4_1, // 43 gpio_debug_3_1, // 42 gpio_debug_2_0, // 41 gpio_debug_1_0, // 40 - gpio_ctl_1, // 36 - gpio_ctl_0, // 32 - gpio_status_1, // 24 - gpio_status_0})); // 16 + gpio_ctl_1, // 39:36 + gpio_ctl_0, // 35:32 + gpio_status_1, // 31:24 + gpio_status_0})); // 23:16 ad_iobuf #(.DATA_WIDTH(16)) i_gpio_bd ( .dio_t (gpio_t[15:0]), @@ -225,6 +217,8 @@ module system_top ( assign spi_clk = spi0_clk; assign spi_mosi = spi0_mosi; assign spi0_miso = spi_miso; + assign gpio_i[63:60] = gpio_o[63:60]; + assign gpio_i[45:44] = gpio_o[45:44]; system_wrapper i_system_wrapper ( .ddr_addr (ddr_addr), @@ -258,18 +252,6 @@ module system_top ( .hdmi_vsync (hdmi_vsync), .iic_main_scl_io (iic_scl), .iic_main_sda_io (iic_sda), - .ps_intr_00 (1'b0), - .ps_intr_01 (1'b0), - .ps_intr_02 (1'b0), - .ps_intr_03 (1'b0), - .ps_intr_04 (1'b0), - .ps_intr_05 (1'b0), - .ps_intr_06 (1'b0), - .ps_intr_07 (1'b0), - .ps_intr_08 (1'b0), - .ps_intr_09 (1'b0), - .ps_intr_10 (1'b0), - .ps_intr_11 (1'b0), .rx_clk_in_0_n (rx_clk_in_0_n), .rx_clk_in_0_p (rx_clk_in_0_p), .rx_clk_in_1_n (rx_clk_in_1_n), diff --git a/CI/projects/fmcomms5/zc706/Makefile b/CI/projects/fmcomms5/zc706/Makefile index d580527..d8fbae7 100644 --- a/CI/projects/fmcomms5/zc706/Makefile +++ b/CI/projects/fmcomms5/zc706/Makefile @@ -1,87 +1,25 @@ #################################################################################### -#################################################################################### -## Copyright 2011(c) Analog Devices, Inc. +## Copyright 2018(c) Analog Devices, Inc. ## Auto-generated, do not modify! #################################################################################### -#################################################################################### -M_DEPS += system_top.v -M_DEPS += system_project.tcl -M_DEPS += system_constr.xdc -M_DEPS += system_bd.tcl +PROJECT_NAME := fmcomms5_zc706 + M_DEPS += ../common/fmcomms5_bd.tcl -M_DEPS += ../../scripts/adi_project.tcl -M_DEPS += ../../scripts/adi_env.tcl -M_DEPS += ../../scripts/adi_board.tcl M_DEPS += ../../common/zc706/zc706_system_constr.xdc M_DEPS += ../../common/zc706/zc706_system_bd.tcl M_DEPS += ../../../library/xilinx/common/ad_iobuf.v -M_DEPS += ../../../library/axi_ad9361/axi_ad9361.xpr -M_DEPS += ../../../library/axi_clkgen/axi_clkgen.xpr -M_DEPS += ../../../library/axi_dmac/axi_dmac.xpr -M_DEPS += ../../../library/axi_hdmi_tx/axi_hdmi_tx.xpr -M_DEPS += ../../../library/axi_spdif_tx/axi_spdif_tx.xpr -M_DEPS += ../../../library/util_clkdiv/util_clkdiv.xpr -M_DEPS += ../../../library/util_cpack/util_cpack.xpr -M_DEPS += ../../../library/util_rfifo/util_rfifo.xpr -M_DEPS += ../../../library/util_upack/util_upack.xpr -M_DEPS += ../../../library/util_wfifo/util_wfifo.xpr - -M_VIVADO := vivado -mode batch -source - -M_FLIST := *.cache -M_FLIST += *.data -M_FLIST += *.xpr -M_FLIST += *.log -M_FLIST += *.jou -M_FLIST += xgui -M_FLIST += *.runs -M_FLIST += *.srcs -M_FLIST += *.sdk -M_FLIST += *.hw -M_FLIST += *.sim -M_FLIST += .Xil -M_FLIST += *.ip_user_files - - - -.PHONY: all lib clean clean-all -all: lib fmcomms5_zc706.sdk/system_top.hdf - - -clean: - rm -rf $(M_FLIST) - - -clean-all:clean - make -C ../../../library/axi_ad9361 clean - make -C ../../../library/axi_clkgen clean - make -C ../../../library/axi_dmac clean - make -C ../../../library/axi_hdmi_tx clean - make -C ../../../library/axi_spdif_tx clean - make -C ../../../library/util_clkdiv clean - make -C ../../../library/util_cpack clean - make -C ../../../library/util_rfifo clean - make -C ../../../library/util_upack clean - make -C ../../../library/util_wfifo clean - - -fmcomms5_zc706.sdk/system_top.hdf: $(M_DEPS) - -rm -rf $(M_FLIST) - $(M_VIVADO) system_project.tcl >> fmcomms5_zc706_vivado.log 2>&1 - - -lib: - make -C ../../../library/axi_ad9361 - make -C ../../../library/axi_clkgen - make -C ../../../library/axi_dmac - make -C ../../../library/axi_hdmi_tx - make -C ../../../library/axi_spdif_tx - make -C ../../../library/util_clkdiv - make -C ../../../library/util_cpack - make -C ../../../library/util_rfifo - make -C ../../../library/util_upack - make -C ../../../library/util_wfifo - -#################################################################################### -#################################################################################### +M_DEPS += ../../../library/axi_ad9361/axi_ad9361_delay.tcl + +LIB_DEPS += axi_ad9361 +LIB_DEPS += axi_clkgen +LIB_DEPS += axi_dmac +LIB_DEPS += axi_hdmi_tx +LIB_DEPS += axi_spdif_tx +LIB_DEPS += util_clkdiv +LIB_DEPS += util_cpack +LIB_DEPS += util_rfifo +LIB_DEPS += util_upack +LIB_DEPS += util_wfifo + +include ../../scripts/project-xilinx.mk diff --git a/CI/projects/fmcomms5/zc706/system_top.v b/CI/projects/fmcomms5/zc706/system_top.v index eebfc28..d092f82 100644 --- a/CI/projects/fmcomms5/zc706/system_top.v +++ b/CI/projects/fmcomms5/zc706/system_top.v @@ -8,7 +8,7 @@ // terms. // // The user should read each of these license terms, and understand the -// freedoms and responsabilities that he or she has by using this source/core. +// freedoms and responsibilities that he or she has by using this source/core. // // This core is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR @@ -144,9 +144,6 @@ module system_top ( wire [ 63:0] gpio_i; wire [ 63:0] gpio_o; wire [ 63:0] gpio_t; - wire gpio_open_45_45; - wire gpio_open_44_44; - wire gpio_open_15_15; wire [ 2:0] spi0_csn; wire spi0_clk; wire spi0_mosi; @@ -155,10 +152,6 @@ module system_top ( wire spi1_clk; wire spi1_mosi; wire spi1_miso; - wire txnrx_0; - wire enable_0; - wire txnrx_1; - wire enable_1; // multi-chip synchronization @@ -185,10 +178,10 @@ module system_top ( .I (ref_clk_s), .O (ref_clk)); - ad_iobuf #(.DATA_WIDTH(60)) i_iobuf ( - .dio_t (gpio_t[59:0]), - .dio_i (gpio_o[59:0]), - .dio_o (gpio_i[59:0]), + ad_iobuf #(.DATA_WIDTH(57)) i_iobuf ( + .dio_t ({gpio_t[59:46], gpio_t[43:16], gpio_t[14:0]}), + .dio_i ({gpio_o[59:46], gpio_o[43:16], gpio_o[14:0]}), + .dio_o ({gpio_i[59:46], gpio_i[43:16], gpio_i[14:0]}), .dio_p ({ gpio_resetb_1, // 59 gpio_ad5355_lock, // 58 gpio_ad5355_rfen, // 57 @@ -203,18 +196,15 @@ module system_top ( gpio_enable_0, // 48 gpio_en_agc_0, // 47 gpio_resetb_0, // 46 - gpio_open_45_45, // 45 - gpio_open_44_44, // 44 gpio_debug_4_1, // 43 gpio_debug_3_1, // 42 gpio_debug_2_0, // 41 gpio_debug_1_0, // 40 - gpio_ctl_1, // 36 - gpio_ctl_0, // 32 - gpio_status_1, // 24 - gpio_status_0, // 16 - gpio_open_15_15, // 15 - gpio_bd})); // 0 + gpio_ctl_1, // 39:36 + gpio_ctl_0, // 35:32 + gpio_status_1, // 31:24 + gpio_status_0, // 23:16 + gpio_bd})); // 14: 0 assign spi_ad9361_0 = spi0_csn[0]; assign spi_ad9361_1 = spi0_csn[1]; @@ -222,6 +212,9 @@ module system_top ( assign spi_clk = spi0_clk; assign spi_mosi = spi0_mosi; assign spi0_miso = spi_miso; + assign gpio_i[63:60] = gpio_o[63:60]; + assign gpio_i[45:44] = gpio_o[45:44]; + assign gpio_i[15] = gpio_o[15]; system_wrapper i_system_wrapper ( .ddr_addr (ddr_addr), @@ -255,18 +248,6 @@ module system_top ( .hdmi_vsync (hdmi_vsync), .iic_main_scl_io (iic_scl), .iic_main_sda_io (iic_sda), - .ps_intr_00 (1'b0), - .ps_intr_01 (1'b0), - .ps_intr_02 (1'b0), - .ps_intr_03 (1'b0), - .ps_intr_04 (1'b0), - .ps_intr_05 (1'b0), - .ps_intr_06 (1'b0), - .ps_intr_07 (1'b0), - .ps_intr_08 (1'b0), - .ps_intr_09 (1'b0), - .ps_intr_10 (1'b0), - .ps_intr_11 (1'b0), .rx_clk_in_0_n (rx_clk_in_0_n), .rx_clk_in_0_p (rx_clk_in_0_p), .rx_clk_in_1_n (rx_clk_in_1_n), diff --git a/CI/scripts/Makefile b/CI/scripts/Makefile index 601dd25..e16057f 100644 --- a/CI/scripts/Makefile +++ b/CI/scripts/Makefile @@ -8,11 +8,11 @@ SHELL := /bin/bash MLFLAGS := -nodisplay -nodesktop -nosplash ifeq ($(MLRELEASE),) -MLRELEASE := R2018b +MLRELEASE := R2019a endif ifeq ($(HDLBRANCH),) -HDLBRANCH := hdl_2018_r1 +HDLBRANCH := hdl_2018_r2 endif ifeq ($(OS),Windows_NT) diff --git a/CI/scripts/adi_ip.tcl b/CI/scripts/adi_ip.tcl index 5477c85..2ccd9b1 100644 --- a/CI/scripts/adi_ip.tcl +++ b/CI/scripts/adi_ip.tcl @@ -3,7 +3,7 @@ ## check tool version if {![info exists REQUIRED_VIVADO_VERSION]} { - set REQUIRED_VIVADO_VERSION "2017.4.1" + set REQUIRED_VIVADO_VERSION "2018.2" } if {[info exists ::env(ADI_IGNORE_VERSION_CHECK)]} { @@ -36,6 +36,17 @@ proc adi_ip_ttcl {ip_name ip_constr_files} { ipx::reorder_files -front $ip_constr_files $proj_filegroup } +# add ttcl file to the simulation file set +proc adi_ip_sim_ttcl {ip_name ip_files} { + + set proj_filegroup [ipx::get_file_groups -of_objects [ipx::current_core] -filter {NAME =~ *simulation*}] + set f [ipx::add_file $ip_files $proj_filegroup] + set_property -dict [list \ + type ttcl \ + ] $f + ipx::reorder_files -front $ip_files $proj_filegroup +} + proc adi_ip_bd {ip_name ip_bd_files} { set proj_filegroup [ipx::get_file_groups xilinx_blockdiagram -of_objects [ipx::current_core]] if {$proj_filegroup == {}} { @@ -70,7 +81,7 @@ proc adi_set_ports_dependency {port_prefix dependency {driver_value {}}} { proc adi_set_bus_dependency {bus prefix dependency} { set_property ENABLEMENT_DEPENDENCY $dependency [ipx::get_bus_interfaces $bus -of_objects [ipx::current_core]] - adi_set_ports_dependency $prefix $dependency + adi_set_ports_dependency $prefix $dependency 0 } proc adi_add_port_map {bus phys logic} { @@ -198,7 +209,7 @@ proc adi_ip_create {ip_name} { proc adi_ip_files {ip_name ip_files} { global ip_constr_files - + set cdir [pwd] set ip_constr_files "" set ip_files_clean "" @@ -214,11 +225,9 @@ proc adi_ip_files {ip_name ip_files} { set ip_files $ip_files_clean - set cdir [pwd] set proj_fileset [get_filesets sources_1] add_files -norecurse -scan_for_includes -fileset $proj_fileset $ip_files add_files -norecurse -copy_to $cdir -force -fileset $proj_fileset $ip_files - set_property "top" "$ip_name" $proj_fileset } @@ -310,11 +319,7 @@ proc adi_ip_properties {ip_name} { ipx::add_address_block {axi_lite} [ipx::get_memory_maps s_axi -of_objects [ipx::current_core]] set_property range $range [ipx::get_address_blocks axi_lite \ -of_objects [ipx::get_memory_maps s_axi -of_objects [ipx::current_core]]] - ipx::add_bus_parameter ASSOCIATED_BUSIF [ipx::get_bus_interfaces s_axi_aclk \ - -of_objects [ipx::current_core]] - set_property value s_axi [ipx::get_bus_parameters ASSOCIATED_BUSIF \ - -of_objects [ipx::get_bus_interfaces s_axi_aclk \ - -of_objects [ipx::current_core]]] + ipx::associate_bus_interfaces -clock s_axi_aclk -reset s_axi_aresetn [ipx::current_core] ipx::save_core } diff --git a/CI/scripts/adi_project.tcl b/CI/scripts/adi_project.tcl index 83428e0..f777ff2 100644 --- a/CI/scripts/adi_project.tcl +++ b/CI/scripts/adi_project.tcl @@ -7,7 +7,7 @@ variable p_prcfg_list variable p_prcfg_status if {![info exists REQUIRED_VIVADO_VERSION]} { - set REQUIRED_VIVADO_VERSION "2017.4" + set REQUIRED_VIVADO_VERSION "2018.2" } if {[info exists ::env(ADI_IGNORE_VERSION_CHECK)]} { diff --git a/CI/scripts/bsp.prj b/CI/scripts/bsp.prj deleted file mode 100644 index 2ce9591..0000000 --- a/CI/scripts/bsp.prj +++ /dev/null @@ -1,184 +0,0 @@ - - - Analog Devices Board Support Packages - Travis Collins - travis.collins@analog.com - Analog Devices, Inc - Board support packages for HDL targeting and data streaming from Analog Devices hardware. - Scripts and tools created by ADI to be used with MATLAB and Simulink with ADI products -Documentation: https://wiki.analog.com/resources/eval/user-guides/ad-fmcomms2-ebz/software/matlab_bsp -Support: https://ez.analog.com/ - /home/tcollins/Downloads/ADI-logos/ADI/ADI_Logo_AWP_Large.png - 18.1 - ${PROJECT_ROOT}/Analog Devices Board Support Packages.mltbx - - MATLAB - Simulink - Communications Toolbox - DSP System Toolbox - HDL Coder - Signal Processing Toolbox - Simulink Coder - - - 1 - 2 - 36 - 24 - 101 - 8 - 14 - - - 9.5 - 9.2 - 7.0 - 9.7 - 3.13 - 8.1 - 9.0 - - - 40075943-d2d1-4d90-8e59-b3eff5f58180 - % List files contained in your toolbox folder that you would like to exclude -% from packaging. Excludes should be listed relative to the toolbox folder. -% Some examples of how to specify excludes are provided below: -% -% A single file in the toolbox folder: -% .svn -% -% A single file in a subfolder of the toolbox folder: -% example/.svn -% -% All files in a subfolder of the toolbox folder: -% example/* -% -% All files of a certain name in all subfolders of the toolbox folder: -% **/.svn -% -% All files matching a pattern in all subfolders of the toolbox folder: -% **/*.bak -% - -CI/* -hdl_prj/* -slprj/* -.git/* -test/* -*~ -.Xil/* - true - - - - - /work/code/MathWorks_tools/info.xml - - - - false - R2018b - R2018b - true - true - false - true - false - - - - - - - - - - - - - - - - - - - - - - - - - - - - - /work/code/MathWorks_tools - - - /work/code/MathWorks_tools/.Xil - /work/code/MathWorks_tools/.git - /work/code/MathWorks_tools/.gitignore - /work/code/MathWorks_tools/CI - /work/code/MathWorks_tools/LICENSE - /work/code/MathWorks_tools/README.md - /work/code/MathWorks_tools/doc - /work/code/MathWorks_tools/hdl_wa_bsp - /work/code/MathWorks_tools/hil_models - /work/code/MathWorks_tools/info.xml - /work/code/MathWorks_tools/targeting_models - /work/code/MathWorks_tools/test - - - - - - - /work/code/MathWorks_tools/CI/scripts/Analog Devices Board Support Packages.mltbx - - - - /usr/local/MATLAB/R2018b - - - - - - - - - true - - - - - true - - - - - true - - - - - true - - - - - true - false - false - false - false - false - true - false - 4.15.0-34-generic - false - true - glnxa64 - true - - - diff --git a/CI/scripts/bsp.tmpl b/CI/scripts/bsp.tmpl index 1b911d5..61b8d88 100644 --- a/CI/scripts/bsp.tmpl +++ b/CI/scripts/bsp.tmpl @@ -108,7 +108,6 @@ mltbx/* - /mlhsp/toolbox/shared/sdr/sdrplug/sdrplugins/plutoradio/findPlutoRadio.p diff --git a/CI/scripts/build_bsp.sh b/CI/scripts/build_bsp.sh index e62995e..1f2b610 100644 --- a/CI/scripts/build_bsp.sh +++ b/CI/scripts/build_bsp.sh @@ -1,6 +1,6 @@ #!/bin/bash if [ -z "${HDLBRANCH}" ]; then -HDLBRANCH='hdl_2018_r1' +HDLBRANCH='hdl_2018_r2' fi @@ -10,6 +10,9 @@ cd $scriptdir cd .. # Get HDL +if [ -d "hdl" ]; then + rm -rf "hdl" +fi git clone --single-branch -b $HDLBRANCH https://github.com/analogdevicesinc/hdl.git # Get required vivado version needed for HDL @@ -30,13 +33,42 @@ cp scripts/adi_ip.tcl hdl/library/scripts/ VERTMP=$(awk '/set REQUIRED_VIVADO_VERSION/ {print $3}' hdl/library/scripts/adi_ip.tcl | sed 's/"//g') grep -rl ${VERTMP} hdl/library/scripts | xargs sed -i -e "s/${VERTMP}/${VIVADOFULL}/g" +# Update relative paths +FILES=$(grep -lrnw hdl/projects -e "\.\.\/common" | grep -v Makefile) +for f in $FILES +do + echo "Updating relative paths of: $f" + DEVICE=$(echo "$f"| cut -d "/" -f 3) + STR="\$ad_hdl_dir\/projects\/$DEVICE" + sed -i "s/\.\.\/common/$STR\/common/g" "$f" +done + +# Rename .prj files since MATLAB ignores then during packaging +FILES=$(grep -lrn hdl/projects/common -e '.prj' | grep -v Makefile | grep -v .git) +for f in $FILES +do + echo "Updating prj reference in: $f" + sed -i "s/\.prj/\.mk/g" "$f" +done +FILES=$(find hdl/projects/common -name "*.prj") +for f in $FILES +do + DEST="${f::-3}mk" + echo "Renaming: $f to $DEST" + mv "$f" "$DEST" +done + + + # Pack IP cores -vivado -mode batch -source scripts/pack_all_ips.tcl +echo "Starting IP core packaging" +vivado -mode batch -source scripts/pack_all_ips.tcl > /dev/null 2>&1 # Repack i2s and i2c cores to include xml files cd hdl/library/axi_i2s_adi/ unzip analog.com_user_axi_i2s_adi_1.0.zip -d tmp rm analog.com_user_axi_i2s_adi_1.0.zip +ls cp *.xml tmp/ cd tmp zip -r analog.com_user_axi_i2s_adi_1.0.zip * @@ -52,13 +84,24 @@ zip -r analog.com_user_util_i2c_mixer_1.0.zip * cp analog.com_user_util_i2c_mixer_1.0.zip ../ cd ../../../.. + # Move all cores -vivado -mode batch -source scripts/copy_all_packed_ips.tcl +echo "Moving all cores" +vivado -mode batch -source scripts/copy_all_packed_ips.tcl > /dev/null 2>&1 cp -r hdl/library/jesd204/*.zip hdl/library/ cp -r hdl/library/xilinx/*.zip hdl/library/ -rm -rf hdl/projects +cp -r hdl/projects/common common +cp -r hdl/projects/scripts/adi_board.tcl . + +mv hdl/projects projects_premerge cp -r projects hdl/ +cp -R projects_premerge/* hdl/projects/ +rm -rf projects_premerge + +cp -R common/* hdl/projects/common/ +rm -rf common +mv adi_board.tcl hdl/projects/scripts/ # Update tcl scripts and additional IP cores (MUX) cp scripts/adi_project.tcl hdl/projects/scripts/ @@ -68,8 +111,10 @@ cp ip/*.zip hdl/library/ # Update vivado version in MATLAB API and build script DEFAULT_V_VERSION='2017.4' cd .. +echo "SED 1" grep -rl ${DEFAULT_V_VERSION} hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices | grep -v MODEM | xargs sed -i "s/${DEFAULT_V_VERSION}/$VIVADO/g" cd CI +echo "SED 2" grep -rl ${DEFAULT_V_VERSION} hdl/projects/scripts | xargs sed -i "s/${DEFAULT_V_VERSION}/$VIVADOFULL/g" # Remove git directory move to bsp folder @@ -85,4 +130,3 @@ rm vivado_* rm vivado.jou rm vivado.log rm -rf hdl - diff --git a/CI/scripts/pack_all_ips.tcl b/CI/scripts/pack_all_ips.tcl index b6bbe68..f749efe 100644 --- a/CI/scripts/pack_all_ips.tcl +++ b/CI/scripts/pack_all_ips.tcl @@ -1,6 +1,6 @@ # Create zip of IP cores -proc pack_ip_cores {} { +proc pack_ip_core {} { set folder_list [glob -types d *] @@ -15,7 +15,7 @@ proc pack_ip_cores {} { close $fp set fp [open ${dir}_ip.tcl a+] - puts -nonewline $fp "ipx::archive_core {analog.com_user_" + puts -nonewline $fp "ipx::archive_core -verbose {analog.com_user_" puts -nonewline $fp "$dir" puts -nonewline $fp "_1.0.zip} \[ipx::current_core\]" close $fp diff --git a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9009/+common/plugin_rd.m b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9009/+common/plugin_rd.m index 3e7af02..dd27ad9 100644 --- a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9009/+common/plugin_rd.m +++ b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9009/+common/plugin_rd.m @@ -11,7 +11,7 @@ hRD.BoardName = sprintf('AnalogDevices ADRV9009 %s', upper(board)); % Tool information -hRD.SupportedToolVersion = {'2017.4'}; +hRD.SupportedToolVersion = {'2018.2'}; % Get the root directory rootDir = fileparts(strtok(mfilename('fullpath'), '+')); diff --git a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9361z7035/+common/plugin_rd.m b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9361z7035/+common/plugin_rd.m index 436a685..bac2024 100644 --- a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9361z7035/+common/plugin_rd.m +++ b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9361z7035/+common/plugin_rd.m @@ -17,7 +17,7 @@ if contains(upper(design),'MODEM') hRD.SupportedToolVersion = {'2016.4'};%MODEM else - hRD.SupportedToolVersion = {'2017.4'}; + hRD.SupportedToolVersion = {'2018.2'}; end % Get the root directory diff --git a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9364z7020/+common/plugin_rd.m b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9364z7020/+common/plugin_rd.m index 4bcd159..81b4881 100644 --- a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9364z7020/+common/plugin_rd.m +++ b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9364z7020/+common/plugin_rd.m @@ -14,7 +14,7 @@ hRD.BoardName = sprintf('AnalogDevices ADRV9364-Z7020'); % Tool information -hRD.SupportedToolVersion = {'2017.4'}; +hRD.SupportedToolVersion = {'2018.2'}; % Get the root directory rootDir = fileparts(strtok(mfilename('fullpath'), '+')); diff --git a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9371x/+common/plugin_rd.m b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9371x/+common/plugin_rd.m index 0194605..60498f3 100644 --- a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9371x/+common/plugin_rd.m +++ b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+adrv9371x/+common/plugin_rd.m @@ -12,7 +12,7 @@ hRD.BoardName = sprintf('AnalogDevices ADRV9371 %s', upper(board)); % Tool information -hRD.SupportedToolVersion = {'2017.4'}; +hRD.SupportedToolVersion = {'2018.2'}; % Get the root directory rootDir = fileparts(strtok(mfilename('fullpath'), '+')); diff --git a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+fmcomms2/+common/plugin_rd.m b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+fmcomms2/+common/plugin_rd.m index 38f0a55..681e4cb 100644 --- a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+fmcomms2/+common/plugin_rd.m +++ b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+fmcomms2/+common/plugin_rd.m @@ -14,7 +14,7 @@ hRD.BoardName = sprintf('AnalogDevices FMCOMMS2/3 %s', upper(board)); % Tool information -hRD.SupportedToolVersion = {'2017.4'}; +hRD.SupportedToolVersion = {'2018.2'}; % Get the root directory rootDir = fileparts(strtok(mfilename('fullpath'), '+')); diff --git a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+fmcomms5/+common/plugin_rd.m b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+fmcomms5/+common/plugin_rd.m index 7fd7102..01f30f8 100644 --- a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+fmcomms5/+common/plugin_rd.m +++ b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+fmcomms5/+common/plugin_rd.m @@ -14,7 +14,7 @@ hRD.BoardName = sprintf('AnalogDevices FMCOMMS5 %s', upper(board)); % Tool information -hRD.SupportedToolVersion = {'2017.4'}; +hRD.SupportedToolVersion = {'2018.2'}; % Get the root directory rootDir = fileparts(strtok(mfilename('fullpath'), '+')); diff --git a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+pluto/plugin_rd.m b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+pluto/plugin_rd.m index b80a8fb..75dfb9f 100644 --- a/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+pluto/plugin_rd.m +++ b/hdl_wa_bsp/vendor/AnalogDevices/+AnalogDevices/+pluto/plugin_rd.m @@ -14,7 +14,7 @@ hRD.BoardName = 'AnalogDevices ADALM-PLUTO'; % Tool information -hRD.SupportedToolVersion = {'2017.4'}; +hRD.SupportedToolVersion = {'2018.2'}; % Get the root directory rootDir = fileparts(strtok(mfilename('fullpath'), '+')); diff --git a/targeting_models/frequency-hopping/+AnalogDevicesDemo/+adrv9361z7035/+common/plugin_rd.m b/targeting_models/frequency-hopping/+AnalogDevicesDemo/+adrv9361z7035/+common/plugin_rd.m index 771a0a9..95791b0 100644 --- a/targeting_models/frequency-hopping/+AnalogDevicesDemo/+adrv9361z7035/+common/plugin_rd.m +++ b/targeting_models/frequency-hopping/+AnalogDevicesDemo/+adrv9361z7035/+common/plugin_rd.m @@ -14,7 +14,7 @@ hRD.BoardName = sprintf('AnalogDevices ADRV9361-Z7035 Frequency Hopping'); % Tool information -hRD.SupportedToolVersion = {'2017.4'}; +hRD.SupportedToolVersion = {'2018.2'}; % DMA Configuration hRD.addParameter( ... diff --git a/targeting_models/frequency-hopping/build_kernel.sh b/targeting_models/frequency-hopping/build_kernel.sh index d9d4ce9..c2509f9 100755 --- a/targeting_models/frequency-hopping/build_kernel.sh +++ b/targeting_models/frequency-hopping/build_kernel.sh @@ -3,10 +3,10 @@ # Build kernel git clone https://github.com/analogdevicesinc/linux.git cd linux -git checkout 2018_R1 +git checkout 2018_R2 export ARCH=arm export CROSS_COMPILE=arm-linux-gnueabihf- -source /opt/Xilinx/Vivado/2017.4/settings64.sh +source /opt/Xilinx/Vivado/2018.2/settings64.sh cp ../hopper.patch . git apply hopper.patch make zynq_xcomm_adv7511_defconfig diff --git a/targeting_models/frequency-hopping/hdlworkflow.m b/targeting_models/frequency-hopping/hdlworkflow.m index 486022f..add0d07 100644 --- a/targeting_models/frequency-hopping/hdlworkflow.m +++ b/targeting_models/frequency-hopping/hdlworkflow.m @@ -134,7 +134,7 @@ % Specify the top level project directory hWC.ProjectFolder = 'hdl_prj'; -hWC.ReferenceDesignToolVersion = '2017.4'; +hWC.ReferenceDesignToolVersion = '2018.2'; hWC.IgnoreToolVersionMismatch = false; % Set Workflow tasks to run diff --git a/targeting_models/modem-qpsk/test/ReceiverModelTests.m b/targeting_models/modem-qpsk/test/ReceiverModelTests.m index db15b39..02ad4d0 100644 --- a/targeting_models/modem-qpsk/test/ReceiverModelTests.m +++ b/targeting_models/modem-qpsk/test/ReceiverModelTests.m @@ -50,7 +50,8 @@ function DisableWarnings(testCase) function findRadio(testCase) try d1 = sdrdev('Pluto'); setupSession(d1); - r = findPlutoRadio; + %r = findPlutoRadio;% (Remove untested) + r = sdrrx('Pluto');r(); catch r = []; end diff --git a/test/BSPTestsBase.m b/test/BSPTestsBase.m index 8761928..09b5c6c 100644 --- a/test/BSPTestsBase.m +++ b/test/BSPTestsBase.m @@ -51,22 +51,25 @@ function loadTestCount(testCase) methods - function CollectLogs(testCase,~) + function CollectLogs(testCase,cfgb) disp('Log collector called'); - system(["find '",testCase.Folder,"' -name 'workflow_task_VivadoIPPackager.log' | xargs -I '{}' cp {} ."]); + rdn = strrep(cfgb.ReferenceDesignName,'/','_'); + rdn = strrep(rdn,'(',''); + rdn = strrep(rdn,')',''); + system(join(["find '",testCase.Folder,"' -name 'workflow_task_VivadoIPPackager.log' | xargs -I '{}' cp {} ."],'')); if exist('workflow_task_VivadoIPPackager.log','file') disp('Found workflow_task_VivadoIPPackager... copying'); - %movefile('workflow_task_VivadoIPPackager.log',[cfgb.ReferenceDesignName,'_VivadoIPPackager_',cfgb.mode,'.log']); + movefile('workflow_task_VivadoIPPackager.log',[rdn,'_VivadoIPPackager_',cfgb.mode,'.log']); end - system(["find '",testCase.Folder,"' -name 'workflow_task_CreateProject.log' | xargs -I '{}' cp {} ."]); + system(join(["find '",testCase.Folder,"' -name 'workflow_task_CreateProject.log' | xargs -I '{}' cp {} ."],'')); if exist('workflow_task_CreateProject.log','file') disp('Found workflow_task_CreateProject... copying'); - %movefile('workflow_task_CreateProject.log',[cfgb.ReferenceDesignName,'_CreateProject_',cfgb.mode,'.log']); + movefile('workflow_task_CreateProject.log',[rdn,'_CreateProject_',cfgb.mode,'.log']); end - system(["find '",testCase.Folder,"' -name 'workflow_task_BuildFPGABitstream.log' | xargs -I '{}' cp {} ."]); + system(join(["find '",testCase.Folder,"' -name 'workflow_task_BuildFPGABitstream.log' | xargs -I '{}' cp {} ."],'')); if exist('workflow_task_BuildFPGABitstream.log','file') disp('Found workflow_task_BuildFPGABitstream... copying'); - %movefile('workflow_task_BuildFPGABitstream.log',[cfgb.ReferenceDesignName,'_BuildFPGABitstream_',cfgb.mode,'.log']); + movefile('workflow_task_BuildFPGABitstream.log',[rdn,'_BuildFPGABitstream_',cfgb.mode,'.log']); end end diff --git a/test/DemoTests.m b/test/DemoTests.m index a2c415b..b85cc75 100644 --- a/test/DemoTests.m +++ b/test/DemoTests.m @@ -22,6 +22,8 @@ function setupVivado(~) vivado = '2017.4'; case '(R2018b)' vivado = '2017.4'; + case '(R2019a)' + vivado = '2018.2'; end if ispc hdlsetuptoolpath('ToolName', 'Xilinx Vivado', ... From 15f34f6cc5cf4895e5d8d81f1cdf27c8a97926df Mon Sep 17 00:00:00 2001 From: Travis Collins Date: Thu, 27 Jun 2019 11:26:21 -0400 Subject: [PATCH 3/3] Update CI to 2018_R2 and add manual synthesis job Signed-off-by: Travis Collins --- .gitlab-ci.yml | 42 ++++++++++++++++++++++++++++++------------ 1 file changed, 30 insertions(+), 12 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9d8cd26..67eae5b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -5,7 +5,7 @@ stages: - deploy # Default build -build:2018_R1: +build:2018_R2: tags: - vivado - matlab @@ -42,13 +42,13 @@ build:master: - hdl_wa_bsp/ # Test HWA no install -test:2018_R1: +test:2018_R2: tags: - vivado - matlab stage: test dependencies: - - build:2018_R1 + - build:2018_R2 script: - export MLRELEASE=R2019a - ./CI/scripts/dockermake test @@ -62,13 +62,13 @@ test:2018_R1: junit: test/BSPTestResults.xml # Test HWA with install -test_installer:2018_R1_Installer: +test_installer:2018_R2_Installer: tags: - vivado - matlab stage: test dependencies: - - build:2018_R1 + - build:2018_R2 script: - export MLRELEASE=R2019a - cp mltbx/* . @@ -86,13 +86,13 @@ test_installer:2018_R1_Installer: junit: test/BSPTestResults.xml # Test HWA no install -test:2018_R1: +test:2018_R2: tags: - vivado - matlab stage: test dependencies: - - build:2018_R1 + - build:2018_R2 script: - export MLRELEASE=R2019a - ./CI/scripts/dockermake test @@ -105,6 +105,24 @@ test:2018_R1: reports: junit: test/BSPTestResults.xml +# Test weekly fully sythesized design +test:Synthesize: + when: manual + tags: + - matlab + - vivado + stage: test + dependencies: + - build:2018_R2 + script: + - ./CI/scripts/dockermake test_synth + artifacts: + when: always + name: "$CI_COMMIT_REF_NAME" + paths: + - test/ + - Report.pdf + # Test targeting demos (no hardware) test:targeting_demos: tags: @@ -112,7 +130,7 @@ test:targeting_demos: - vivado stage: test dependencies: - - build:2018_R1 + - build:2018_R2 script: - export MLRELEASE=R2019a - ./CI/scripts/dockermake test_targeting_demos @@ -130,7 +148,7 @@ test_hardware:Streaming_Hardware: - hardware stage: test_hardware dependencies: - - build:2018_R1 + - build:2018_R2 script: - export MLRELEASE=R2019a - cd CI/scripts @@ -149,7 +167,7 @@ test_hardware:EVM_Hardware: - hardware stage: test_hardware dependencies: - - build:2018_R1 + - build:2018_R2 script: - export MLRELEASE=R2019a - cd CI/scripts @@ -165,8 +183,8 @@ deploy: - matlab stage: deploy dependencies: - - test:2018_R1 - - test_installer:2018_R1_Installer + - test:2018_R2 + - test_installer:2018_R2_Installer script: - echo "Complete" artifacts: