Commit Graph

3245 Commits (aac47463986e3e57a0d6788c519abdd366357228)

Author SHA1 Message Date
Laszlo Nagy 0b9631f1f7 ad9081_fmca_ebz: versal: Rename nets 2021-11-19 14:01:48 +02:00
Laszlo Nagy ca6248ba88 ad9081_fmca_ebz/common/versal_transceiver.tcl: Reset also PLL 2021-11-19 14:01:48 +02:00
Laszlo Nagy 731ed0a7a5 ad9081_fmca_ebz/vck190: Updated to hierarchical versal transceiver
Vivado cannot nest multiple block designs than two layers. This makes
replication of designs difficult.

Create a hierarchy around the Versal transceiver that includes also the
converters, this type of interface would match the util_adxcvr
interface.

Signed-off-by: Laszlo Nagy <laszlo.nagy@analog.com>
2021-11-19 14:01:48 +02:00
Laszlo Nagy 1d951cfbae ad9081_fmca_ebz/vck190: Change default profile to 2 lanes 2021-11-19 14:01:48 +02:00
sergiu arpadi 81c7d7475d ad463x: Fix readme 2021-11-17 16:48:59 +02:00
Laszlo Nagy 5795cf6720 ad9213_dual_ebz: Readme.md : Remove incorrect product page 2021-11-15 13:59:26 +02:00
Laszlo Nagy daba543797 ad9082_fmca_ebz: Readme.md: Remove AD9081 from parts 2021-11-15 13:59:26 +02:00
Laszlo Nagy fe9afd4392 ad9208_dual_ebz: Readme.md: Remove invalid product page
Product page on analog.com does not exists
2021-11-15 13:59:26 +02:00
Laszlo Nagy 2386abb89c ad_quadmxfe1_ebz : Add readme file 2021-11-12 14:08:56 +02:00
stefan.raus adad6c930d ad9081_fmca_ebz_qsys.tcl: Add RX_LANE_RATE and TX_LANE_RATE parameters
For ad9081/a10soc project, the RX_LANE_RATE and TX_LANE_RATE were computed
from SAMPLE_RATE. Remove SAMPLE_RATE and add RX_LANE_RATE and TX_LANE_RATE
as parameters. Update also computation examples from comments.

Signed-off-by: stefan.raus <stefan.raus@analog.com>
2021-11-12 13:04:57 +02:00
Laszlo Nagy fe58a5fb47 adrv9009zu11eg/adrv2crr_fmcomms8: Add clock buffers for core clocks
The IBUFGDS primitive is deprecated in UltraScale devices.

Signed-off-by: Laszlo Nagy <laszlo.nagy@analog.com>
2021-11-11 17:33:10 +02:00
Laszlo Nagy 1cd866445e ad_quadmxfe1_ebz: Initial version
Parametrizable project for the QUAD-MxFE platform ADQUADMXFE1EBZ,
ADQUADMXFE2EBZ, ADQUADMXFE3EBZ

Default mode set to:
  TX JESD204C MODE 11, M=16, L=4
  RX JESD204C MODE 4, M=8, L=2

For 204C 64B66B mode as physical layer the Xilinx Phy is uesd.
2021-11-10 14:03:34 +02:00
Robin Getz 63b6711cfa start adding some doc to the ./projects directory
This adds a Readme.md to each project directory with pointers to project
documentation in the wiki, and the drivers (if they exist). This will
help with some autogenerated doc in the wiki, that is generated with the
innovatily named "wiki_summary.sh" shell script that parses through
these Readme.md files, and generates a summary table.

Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Iacob Liviu Mihai <liviu.iacob@analog.com>
2021-11-10 14:01:06 +02:00
LIacob106 58c1d2e3b2 projects: fixed xcvr clocks that generated critical warning 2021-11-09 12:40:14 +02:00
Laszlo Nagy 5ad40b29e5 adrv9001/zed: Use global clock buffers for better fit the design
Occasionally with zed, the implementation failed at the placement stage where
the tool could not fit the logic cells inside a single clock region,
constraint required by the usage of regional clock buffers.

This commit allows the usage of the global clock buffers which help the tool
in such cases and allow a larger application logic to be implemented in fabric.
2021-11-08 13:53:51 +02:00
Dan Hotoleanu 457c5f7d86 fmcjesdadc1: Fix ad9250 core parameters settings
Fix CONVERTER_RESOLUTION parameter setting for ad9250. Also deleted the
setting of BITS_PER_SAMPLE and DMA_BITS_PER_SAMPLE for ad9250 since they
are set by default to the desired values.

Signed-off-by: Dan Hotoleanu <dan.hotoleanu@analog.com>
2021-11-04 12:18:06 +02:00
Stanca Pop bcf5abb2fe xmicrowave: Initial commit 2021-11-02 15:44:47 +02:00
hotoleanudan 1bc8a41aea
vc709_carrier: Add vc709 carrier (#788)
Added vc709 carrier to the projects/common folder location.

Signed-off-by: Dan Hotoleanu <dan.hotoleanu@analog.com>
2021-11-02 12:05:42 +02:00
Laszlo Nagy c5d216bba9 adrv9001/zcu102: Enable independent TX mode in CMOS
For CMOS case, lane rates are so low that reference clock of the source
synchronous interface can be routed on non-clock routes. The delays on
the clock line are adjusted by the digital interface tuning controlled
through software.

Lock down clock buffers on Rx and Tx interfaces, this avoids suboptimal
placement which causes large skew between clocks at the serdes pins.
2021-10-27 14:40:08 +03:00
Laszlo Nagy 03682f6193 projects/adrv9001/zcu102/lvds_constr.xdc: Fix timing constraints
1. Reduce max allowed skew between source synchronous clocks that can
occur due PCB differences. 250ps represents a difference more than an
inch.

2. In order to reduce skew between source synchronous clock and the
divided clock instruct the tool to use a common clock root for them.
2021-10-27 14:40:08 +03:00
LIacob106 d4126739b4 projects: remove hardcoded div_clk from xcvr 2021-10-27 12:11:22 +03:00
sergiu arpadi cb861f5299 ad463x: Fix readme 2021-10-26 15:42:57 +03:00
Istvan Csomortani 15a6480601 ad4630_fmc: Initial commit 2021-10-18 16:13:31 +03:00
Mihaita Nagy ff090b60ef daq2/zcu102: Fix the ad9144 data offload to use internal BRAM 2021-10-15 15:03:22 +03:00
Mihaita Nagy 3640c2b584 daq2/kcu105: Fix the ad9144 data offload to use internal BRAM 2021-10-15 15:03:22 +03:00
Mihaita Nagy 6ad54c1056 daq2/kc705: Fix the ad9144 data offload to use internal bram 2021-10-15 15:03:22 +03:00
Mihaita Nagy 907cd613aa daq2/zc706: Increase BRAM utilization to 52% 2021-10-15 15:03:22 +03:00
LIacob106 e34346360d scripts: Add logic for vivado version check 2021-10-12 14:34:11 +03:00
Laszlo Nagy 5db7574dce scripts/adi_board.tcl: For older families stick with axi_interconnect
SmartConnect has higher resource utilization and worse timing closure
that makes several zed based projects to fail timing.
2021-10-07 14:18:49 +03:00
Filip Gherman 9295218a64 projects/ad9081_fmca_ebz: Updated makefiles 2021-10-05 16:56:57 +03:00
Laszlo Nagy 51b643b978 Makefile: Fix misc makefiles from projects and library 2021-10-05 14:24:48 +03:00
Laszlo Nagy 3a1babe366 ad9081_fmca_ebz/vck190: Reset GT with HMC7044 lock
Reset transceiver with a pulse
2021-10-05 14:09:51 +03:00
Laszlo Nagy 2562aead32 ad9081_fmca_ebz/common: Drive Rx DMA system side with DMA clock 2021-10-05 14:09:51 +03:00
Laszlo Nagy 8d547f31e1 ad9081_fmca_ebz/vck190: Initial version 2021-10-05 14:09:51 +03:00
Laszlo Nagy 6c58a8d1ab ad9081_fmca_ebz/common: Add Versal transceiver support 2021-10-05 14:09:51 +03:00
Laszlo Nagy 56a25afa68 common/vck190: Initial version 2021-10-05 14:09:51 +03:00
Laszlo Nagy 6a681b9e8d common/vmk180_es1: Initial version 2021-10-05 14:09:51 +03:00
Laszlo Nagy 833e5f0aff common/vmk180: Initial version 2021-10-05 14:09:51 +03:00
Laszlo Nagy 2fec1356d6 scripts/adi_project_xilinx.tcl: VCK190 support 2021-10-05 14:09:51 +03:00
Laszlo Nagy 222c5782b6 scripts/adi_project_xilinx.tcl: Install ES1 board from XHUB, make project compile in batch mode 2021-10-05 14:09:51 +03:00
Laszlo Nagy 011c8c1f36 scripts/adi_project_xilinx.tcl: Add VMK180 & VMK180_ES1 support 2021-10-05 14:09:51 +03:00
Laszlo Nagy c22f622599 scripts/adi_board.tcl: Versal support for memory interconnect and irq interconnect 2021-10-05 14:09:51 +03:00
Laszlo Nagy 08c2ce75fe scripts/adi_board.tcl: Switch cpu_interconnect to SmartConnect 2021-10-05 14:09:51 +03:00
Laszlo Nagy aaaba50f83 scripts/project-xilinx.mk: Update target to xsa and cleanup list 2021-10-05 14:09:51 +03:00
LIacob106 0a986f76b8 scripts: QUARTUS_VERSION and PRO_ISUSED can be set in system_project.tcl 2021-10-02 12:34:10 +03:00
Adrian Costina 0a3724e04c s10soc: Update base desgin from ES to production, H-Tile version 2021-09-30 17:40:13 +03:00
Istvan Csomortani 5a3c3c878b ad9213_dual_ebz: Initial commit
Used ADF4377 SPI configuration CPOL/CPHA 1 for increasing the reliability of the level translators
ad9213_dual_ebz/s10soc: Redesign the address layout

avl_peripheral_mm_bridge 0x0000000 0x0001FFFF
  * sys_gpio_in  0x00000000
  * sys_gpio_out 0x00000020
  * sys_spi      0x00000040
  * sys_gpio_bd  0x000000D0
  * sys_id       0x000000E0

avl_mm_bridge_0 0x00040000 0x0007FFFF
  * ad9213_rx_0.phy_reconfig_0     0x00000000
  * ad9213_rx_0.phy_reconfig_1     0x00002000
  * ad9213_rx_0.phy_reconfig_2     0x00004000
  * ad9213_rx_0.phy_reconfig_3     0x00006000
  * ad9213_rx_0.phy_reconfig_4     0x00008000
  * ad9213_rx_0.phy_reconfig_5     0x0000A000
  * ad9213_rx_0.phy_reconfig_6     0x0000C000
  * ad9213_rx_0.phy_reconfig_7     0x0000E000
  * ad9213_rx_0.phy_reconfig_8     0x00010000
  * ad9213_rx_0.phy_reconfig_9     0x00012000
  * ad9213_rx_0.phy_reconfig_10    0x00014000
  * ad9213_rx_0.phy_reconfig_11    0x00016000
  * ad9213_rx_0.phy_reconfig_12    0x00018000
  * ad9213_rx_0.phy_reconfig_13    0x0001A000
  * ad9213_rx_0.phy_reconfig_14    0x0001C000
  * ad9213_rx_0.phy_reconfig_15    0x0001E000
  * ad9213_rx_0.link_pll_reconfig  0x00020000

avl_mm_bridge_1 0x00080000 0x000BFFFF
  * ad9213_rx_1.phy_reconfig_0     0x00000000
  * ad9213_rx_1.phy_reconfig_1     0x00002000
  * ad9213_rx_1.phy_reconfig_2     0x00004000
  * ad9213_rx_1.phy_reconfig_3     0x00006000
  * ad9213_rx_1.phy_reconfig_4     0x00008000
  * ad9213_rx_1.phy_reconfig_5     0x0000A000
  * ad9213_rx_1.phy_reconfig_6     0x0000C000
  * ad9213_rx_1.phy_reconfig_7     0x0000E000
  * ad9213_rx_1.phy_reconfig_8     0x00010000
  * ad9213_rx_1.phy_reconfig_9     0x00012000
  * ad9213_rx_1.phy_reconfig_10    0x00014000
  * ad9213_rx_1.phy_reconfig_11    0x00016000
  * ad9213_rx_1.phy_reconfig_12    0x00018000
  * ad9213_rx_1.phy_reconfig_13    0x0001A000
  * ad9213_rx_1.phy_reconfig_14    0x0001C000
  * ad9213_rx_1.phy_reconfig_15    0x0001E000
  * ad9213_rx_1.link_pll_reconfig  0x00020000

Connected directly to the h2s_lw_axi_master
  * ad9213_rx_0.link_reconfig      0x000C0000
  * ad9213_rx_0.link_management    0x000C4000
  * ad9213_rx_1.link_reconfig      0x000C8000
  * ad9213_rx_1.link_management    0x000CC000
  * axi_ad9213_0.s_axi             0x000D0000
  * axi_ad9213_1.s_axi             0x000D1000
  * axi_ad9213_dma_0.s_axi         0x000D2000
  * axi_ad9213_dma_1.s_axi         0x000D3800
2021-09-30 17:40:13 +03:00
Istvan Csomortani 8acf0296af s10soc:ad_cpu_interconnect: Add an avl_address_width attribute
The default address space for a new bridge is 256 Kbytes. Add an
avl_address_width attribute to the ad_cpu_interoconnect porecess to
define other address space sizes if needed.

The avl_peripheral_mm_bridge will have an 128 Kbyte address space from
address 0x0000.
2021-09-30 17:40:13 +03:00
David Winter edd2956d58 data_offload: Fix util_[cu]pack offset to TDD syncs
Signed-off-by: David Winter <david.winter@analog.com>
2021-09-30 14:45:54 +03:00
David Winter b9554a9a5a ad9081_fmca_ebz: Integrate axi_tdd into zcu102 design
Signed-off-by: David Winter <david.winter@analog.com>
2021-09-30 14:45:54 +03:00
stefan.raus 58737e09ba adi_project_intel.tcl: update quartus to 21.2
Update Quartus version to 21.2.0.

Signed-off-by: stefan.raus <stefan.raus@analog.com>
2021-09-30 09:53:53 +03:00
stefan.raus cfe0c0ced5 adi_project_xilinx.tcl, adi_ip_xilinx.tcl: update version to 2021.1
Update vivado version from 2020.2 to 2021.1 in projects and library scripts.
2021-09-24 12:11:11 +03:00
Adrian Costina 591a23156b Makefiles: Update header with the appropriate license 2021-09-16 16:50:53 +03:00
Robin Getz b38747cefc Make system: Be explicit in license that cover the make/build system
The build system is covered under a 1 Clause BSD license. Make sure
users are aware.

Signed-off-by: Robin Getz <robin.getz@analog.com>
2021-09-16 16:50:53 +03:00
David Winter 1766b42a93 ad_mem_asym: Add option to control cascade layout
Signed-off-by: David Winter <david.winter@analog.com>
2021-09-15 12:27:49 +03:00
sergiu arpadi 12b7fbb3a3 scripts: Add *.gen to clean list 2021-09-14 16:44:23 +03:00
hotoleanudan cc68bd5198
fmcjesdadc1: Update block design (#743)
Modified the project such that there is only one data path for the ADC data: deleted one of the JESD tpl instances, one of the cpack instances and one of the dma instances.

Signed-off-by: Dan Hotoleanu <dan.hotoleanu@analog.com>
2021-09-08 17:19:57 +03:00
David Winter 7423ecae14 data_offload: Improve external synchronization
This commit adds a new synthesis option to the design, that controls
whether an internal clock domain crossing will be generated. Disabling
this option allows you to use a synchronization signal that is
synchronized to the write clock domain externally, and possibly shared
between multiple devices.

The default value retains the old behavior.

Signed-off-by: David Winter <david.winter@analog.com>
2021-09-08 11:58:01 +03:00
LIacob106 16a93a804b adrv9001[intel]: Add second pair of DMAs
fix observations for PR
2021-09-01 15:04:14 +03:00
Iacob_Liviu fec4137046 ad400xx_fmc: Parametrize board select, sampling rate and adc resolution
fix comments
2021-09-01 15:03:10 +03:00
Laszlo Nagy b7f34f7bd9 adrv9009zu11eg & common/zcu102 : Fix zynqmp ref clock definition
The derived clocks of the zynqmp core are not calculated correctly due
rounding issues, instead of 100MHz the value of 99999001 is received
causing warnings during system validation.

This can be fixed/worked around with the proper reference clock
definition.
2021-08-20 10:46:09 +03:00
Mihaita Nagy b354d517f5 daq2: Connected loose ad9144 dunf flag that fixes the critical warning 2021-08-20 10:38:52 +03:00
Adrian Costina 4cf53f373b Revert "adrv9009zu11eg: Integrate data_offload"
This reverts commit 78999e154e.
The integration wasn't properly tested
2021-08-19 21:43:09 +03:00
stefan.raus 1f24344620 Update Quartus version to 20.4
Update quartus compilation tools from 20.1 to 20.4.
Remove hardcoded version from axi_adrv9001 ip.
2021-08-12 11:15:01 +03:00
AndreiGrozav b1d2a069e8 adi_make: Update bin build flow for 2020.1 tools
The 2020.1 Xilinx tools have a different tcl procedures to build the boot.bin
file.
This commit updates the adi_make tcl flow for the new tools. The new
process is not backwards compatible with tools older than 2020 version.
2021-08-10 17:44:30 +03:00
David Winter e9e278c898 ad9081_fmca_ebz: Remove bypass gpio
Signed-off-by: David Winter <david.winter@analog.com>
2021-08-06 11:55:24 +03:00
David Winter 2178191610 ad9081_fmca_ebz: Switch util_dacfifo to data_offload engine
Memory requirements are the same as with the dacfifo (1 MiB).

Signed-off-by: David Winter <david.winter@analog.com>
2021-08-06 11:55:24 +03:00
Istvan Csomortani 564ef77588 data_offload: Calculate AXI_ADDRESS_LIMIT automatically 2021-08-06 11:55:24 +03:00
Istvan Csomortani c82b0fb420 data_offload: Delete fifo_dst_rlast 2021-08-06 11:55:24 +03:00
Istvan Csomortani 4026f2d414 daq2/zc706: PL DDR size is 1GByte 2021-08-06 11:55:24 +03:00
Istvan Csomortani 703cc8a17e data_offload_bd: Calculate the address limit from the address width 2021-08-06 11:55:24 +03:00
Istvan Csomortani 78999e154e adrv9009zu11eg: Integrate data_offload 2021-08-06 11:55:24 +03:00
Istvan Csomortani dc910420bd daq2: Integrate data_offload 2021-08-06 11:55:24 +03:00
Istvan Csomortani 4c03580156 data_offload: Add integration process for Xilinx carriers 2021-08-06 11:55:24 +03:00
Adrian Costina f2ca956d23 pluto: Fix dunf connection 2021-08-05 18:08:12 +03:00
stefan.raus bbb151f9f5 adi_project_xilinx.tcl: Set default value of ADI_USE_OOC_SYNTHESIS to 1
In order to workaround optimization issues hit in Vivado 2020.2,
set ADI_USE_OOC_SYTHESIS variable by default to 1. This will build
projects in Out Of Context mode.
Projects can be build in Project Mode by exporting ADI_USE_OOC_SYTHESIS=n.
2021-07-29 14:06:42 +03:00
stefan.raus 9d5de2fc21 Update Vivado version to 2020.2
Update vivado version to 2020.2:
 - update default vivado version from 2020.1 to 2020.2
 - add conditions to apply specific contraints only in Out Of Context mode.
 - update DDR controler parameters for vcu118 and kcu105 dev boards
2021-07-29 14:06:42 +03:00
Adrian Costina 907b750943 ad9083: Removed FIFO and increased DMAC transfer length 2021-07-28 12:45:20 +03:00
Iacob_Liviu 8343c03f5c adrv9371x: remove IOB attribute from rx and rx_os 2021-07-26 12:42:21 +01:00
David Winter 1158538753 adi_board: Fix ad_connect command tracing
Signed-off-by: David Winter <david.winter@analog.com>
2021-07-22 15:02:36 +03:00
David Winter 796af696da ad_fmclidar1_ebz: Remove invalid ad_connect invocations
This commit removes two invalid ad_connect invocations, which weren't
caught in the original tests for commit cdda184007.

Signed-off-by: David Winter <david.winter@analog.com>
2021-07-22 15:02:25 +03:00
Laszlo Nagy a3e049ae03 scripts/adi_project_xilinx: Set number of parallel OOC jobs through environment variable 2021-07-13 10:09:08 +03:00
David Winter cdda184007 adi_board: Rewrite ad_connect to support all input permutations
The goal of this commit is to make sure there isn't any significance to
the order in which parameters of ad_connect are specified.

As an example, previously you could only `ad_connect target VCC`, while
`ad_connect VCC target` would fail.

Note: This code intentionally ignores bd_{,intf_}ports, because
these can all be treated as bd_pins.

Signed-off-by: David Winter <david.winter@analog.com>
2021-07-09 12:43:31 +03:00
stefan.raus 63ac142874 adrv9001:a10soc:system_qsys.tcl: set clock polarity to 0
For fixing "Failed to reset the device and set SPI Config"
error, both clockPolarity and clockPhase should be disabled
or both enabled. By default both are unset.

Signed-off-by: Stefan Raus <stefan.raus@analog.com>
2021-06-16 11:42:50 +03:00
Laszlo Nagy 75b965e87f ad9081_fmca_ebz/zcu102: Enable 204C modes 2021-06-10 09:53:43 +03:00
Laszlo Nagy 6637436c2e scripts/adi_board.tcl: Use div2 out clock from xcvr in case of GTH and 204C 2021-06-10 09:53:43 +03:00
Laszlo Nagy 27465ce9c0 ad9081_fmca_ebz/zcu102: Fix spaces 2021-06-10 09:53:43 +03:00
sergiu arpadi 7b7609d21a ad469x: Clean system_project.tcl 2021-06-03 15:41:58 +03:00
Laszlo Nagy d9bc014c98 adrv9001/zcu102: Enable independent Tx from Rx in CMOS mode 2021-05-26 15:44:45 +03:00
Laszlo Nagy 568bef4a38 adrv9001/a10soc: Initial version
This project supports CMOS mode only.
2021-05-26 15:44:45 +03:00
Owen McAree 5d008c3eca Correct constraints file pin mapping 2021-05-25 16:27:58 +03:00
Laszlo Nagy 0ad691a603 ad9081_fmca_ebz/zcu102: Differentiate parameters based on lane rate 2021-05-14 15:39:40 +03:00
Laszlo Nagy 8183599b51 ad9081_fmca_ebz/zcu102: Fix typo 2021-05-14 15:39:40 +03:00
Laszlo Nagy cf7f45ffcc ad9081_fmca_ebz: Fix for F=8 2021-05-14 15:39:40 +03:00
Laszlo Nagy 7b2ba41bdd ad9081_fmca_ebz/vcu118: Adjust QPLL params and diff swing
This commit fixes the 16.5Gbps lane rate case where the link drops
after few seconds an initial successful link up happens.
A few seconds delayed calibration process can workaround this but with
having the differential drivers swing increased this is no longer
required.
2021-05-14 15:39:40 +03:00
Laszlo Nagy eba3409d78 ad9082_fmca_ebz: Use 9081 system_bd, updated comments 2021-05-14 15:39:40 +03:00
Laszlo Nagy 0d9e38bdbe ad9081_fmca_ebz: Update path to common block design
Use absolute paths so ad9082 wrapper project can include the
system_bd.tcl instead of duplicating code.
2021-05-14 15:39:40 +03:00
Laszlo Nagy 680d28476c ad9081_fmca_ebz: Add LANE_RATE param to all projects
The block design expects a lane rate to be set in the system project.
2021-05-14 15:39:40 +03:00
Laszlo Nagy bd6ec360e2 ad9081_fmca_ebz/vcu118: Set XCVR params for 204C link
Set XCVR parameter for 204C 24.75 Gbps with a  dynamic range of 10Gbps..24.75Gpbs

Organize XCVR params based on lane rate
2021-05-14 15:39:40 +03:00
Laszlo Nagy 693c002668 ad9081_fmca_ebz/common/ad9081_fmca_ebz_bd: Add 204C support for XCVR
Remove Xilinx PHY and simplify project
2021-05-14 15:39:40 +03:00