Commit Graph

3336 Commits (88f48cba619f281fc2b2f4102ad309391e9fa5ab)

Author SHA1 Message Date
Sergiu Arpadi ead4513ad6 adi_xilinx_msg: Downgrade Synth 8-2490 2021-01-15 13:50:53 +02:00
Arpadi 51b5e4f58b tcl: Change Vivado version to 2020.1
handoff is now exported as .xsa
2021-01-15 13:50:53 +02:00
Adrian Costina fbb2a0e1a0 de10nano: Add hps_conv_usb_n signal to stabilize UART lines
Without defining this signal, the UART lines receive garbage data
when no cable is connected to the J4 USB UART port.
The GPIO9 is enabled in the reference base design along with the
4MA CURRENT_STRENGTH constraint on the UART pins
2021-01-13 15:36:45 +02:00
Istvan Csomortani dee108ba22 fmcomms8/intel: Fix fPLL configuration
When phase alignment is active, the PFD frequency value should be used
as outclk1 actual frequency.

The configuration interface of the fPLL does not support fractional values.
If the reference clock is fractional, the tool will throw an error that requirement
above is not respected.

Round up the reference clock for the SERDES and the lane rate in order to
overcome this issue, until it's not fixed by Intel.
2021-01-12 19:34:44 +02:00
Istvan Csomortani 85f5dc8230 ad9371x/intel: Fix fPLL configuration
When phase alignment is active, the PFD frequency value should be used
as outclk1 actual frequency.

The configuration interface of the fPLL does not support fractional values.
If the reference clock is fractional, the tool will throw an error that requirement
above is not respected.

Round up the reference clock for the SERDES and the lane rate in order to
overcome this issue, until it's not fixed by Intel.
2021-01-12 19:34:44 +02:00
Istvan Csomortani d539a8119c adrv9009/intel: Fix fPLL configuration
When phase alignment is active, the PFD frequency value should be used
as outclk1 actual frequency.

The configuration interface of the fPLL does not support fractional values.
If the reference clock is fractional, the tool will throw an error that requirement
above is not respected.

Round up the reference clock for the SERDES and the lane rate in order to
overcome this issue, until it's not fixed by Intel.
2021-01-12 19:34:44 +02:00
aholtzma bab3426f91 scripts: allow directly specifying a device when creating a project
Add a layer under adi_project that allows you to directly specify a device/board combination without determining it from the project name.
2021-01-12 14:13:07 +02:00
Istvan Csomortani b989ba36d1 axi_spi_engine: Fix util_axis_fifo instance related issues 2021-01-08 12:29:26 +02:00
sergiu arpadi 5c87e5b1a7 cn0501: Initial commit for Coraz7s 2020-12-18 14:05:56 +02:00
Sergiu Arpadi 71009e74ff ad7768_if: Remove buffers, add parallel data path 2020-12-15 15:16:14 +02:00
AndreiGrozav fa67eb5532 adv7513_de10nano: Fix gpio_bd assignments 2020-12-08 14:38:04 +02:00
AndreiGrozav e331abedc6 common/de10nano: Cosmetic updates only 2020-12-08 14:38:04 +02:00
AndreiGrozav 8d378c56bf common/de10nano: Full HD 60 FPS support
-change the video memory interfacing from f2h_axi_slave to
f2h_sdram0
- add f2h_sdram1 port as the default interface for converter DMA
- set as default the full HD resolution at 60 FPS (pixel clock 148.5MHz)
- use a second 200MHz(198MHz) clock from the pixel_clk_pll, as DMA source
to destination clock.
2020-12-08 14:38:04 +02:00
Laszlo Nagy 3dd370a27c ad9081_fmca_ebz: enable xbar in DAC TPL 2020-11-27 09:45:11 +02:00
Laszlo Nagy ad755788a0 ad9081_fmca_ebz/zc706: Initial version
M=8 L=4 SampleRate=250 MSPS
LaneRate=10 Gbps
2020-11-12 15:46:27 +02:00
Laszlo Nagy e9f319e3d7 ad9081_fmca_ebz: HP0 is already initialized in ZC706
On carriers like ZC706 the HP0 interconnect is in already in use so it must
not be initialized here.
2020-11-12 15:46:27 +02:00
Adrian Costina b080b52a14 daq3:zcu102: Connect overflow pins for the AD9680 TPL 2020-11-11 14:24:02 +02:00
Istvan Csomortani 2799777657 adrv9009zu11eg/adrv2crr_fmc: Fix hmc7044_car_gpio connections 2020-11-11 07:07:29 -05:00
Adrian Costina ecd880d44c adrv9009zu11eg:fmcomms8: Fix SPI timing constraint 2020-11-05 17:42:41 +02:00
stefan.raus 685ca91f19 ad_fmclidar1_ebz/a10soc: Fix a typo
Fixing a typo in projects/ad_fmclidar1_ebz/a10soc/system_top.v.
2020-11-05 12:53:50 +02:00
aholtzma 2ff5420630 Update system_top.v
Add a comment that the spi CS decoding is tied to a setting in the device tree.
2020-11-02 16:59:08 +02:00
IMoldovan 78b2ae02a1 ad9434_fmc,ad9467_fmc,fmcadc5: Update projects to use ad_iobuf, not IOBUF 2020-11-02 16:13:35 +02:00
Adrian Costina a3a610728c intel: Update projects to use ad_iobuf instead of ALT_IOBUF 2020-11-02 16:13:35 +02:00
Adrian Costina ae7ec82334 adrv9009zu11eg: Update spi module to use generic verilog 2020-11-02 16:13:35 +02:00
Adrian Costina 9093a8c428 library: Move ad_iobuf to the common library, as it's not Xilinx specific
Updated all system_project and Makefiles
2020-11-02 16:13:35 +02:00
AndreiGrozav 912e09ad18 m2k: Add DAC last sample connections 2020-11-02 15:50:12 +02:00
Istvan Csomortani d676cfd64f adv7513/de10nano: Define the USB clock 2020-10-30 10:55:01 +02:00
Istvan Csomortani c048a9243a de10nano: Fix IO assignments
- define IO assignments for HPS SPI master
  - delete unused GPIO ports
2020-10-30 10:55:01 +02:00
sergiu arpadi 7cc5716ea8 ad469x: Remove sysid custom string init 2020-10-28 11:31:50 +02:00
sergiu arpadi 5359d991b2 ad469x_zed: Update bd.tcl with new port names 2020-10-28 11:31:50 +02:00
Istvan Csomortani ad4adddbe5 ad469x_fmc: Minor cosmetic update on the config file 2020-10-27 10:09:50 +02:00
Adrian Costina 0644edb389 fmcomms8: a10soc: Move RX and Observation to second SDRAM interface
This is an attempt to get full bandwidth without a FIFO
2020-10-26 18:12:14 +02:00
Adrian Costina 3a5097875f common: a10soc: Allow for the second SDRAM interface to be used at a different clock 2020-10-26 18:12:14 +02:00
Adrian Costina 6621fbec61 fmcomms8: a10soc: Initial commit 2020-10-26 18:12:14 +02:00
sergiu arpadi 35e4eb6a7b ad469x: Add reference design for ad469x eval board 2020-10-22 19:17:10 +03:00
Adrian Costina 83cebe899f daq3: Update projects to the new TPL
Also modified the FIFO ports to have the same widths so that in a
future commit the bypass would be available for cases when the
sampling rate won't be the maximum rate or the number of channels
active will be less than maximum number of channels
2020-10-21 18:59:37 +03:00
Istvan Csomortani 9f58b465ea adaq7980: Add AXI pulse generator to generate the offload trigger 2020-10-21 09:59:26 +03:00
Istvan Csomortani 37254358dd makefile: Regenerate make files 2020-10-20 12:51:10 +03:00
Sergiu Arpadi 1f6bba0aa1 ad77681: Add axi_clkgen ip for spi engine
spi_clk changed from 40MHz to 80MHz
2020-10-19 10:42:21 +03:00
Istvan Csomortani d6b23d5149 scripts/adi_pd_intel: Delete noisy print outs 2020-10-17 08:02:33 +03:00
Istvan Csomortani 66672932d5 adv7513/de10nano: Fix connection of ltc2308 SPI's interface 2020-10-14 10:37:14 +03:00
Sergiu Arpadi 72635d73e3 cn0540: Add axi_clkgen to Makefile 2020-10-14 00:05:57 +03:00
Adrian Costina 9364c8501a adrv9009_zu11eg: Add synchronization at application layer
Switch RX path reset to be controlled by the TPL and use
RX SYSREF as external synchronization for the ADC TPL
Use TX SYSREF for synchornizing the TX DDS
2020-10-07 09:04:21 +03:00
Laszlo Nagy 4026eaa19b ad9081_fmca_ebz: Fix device clocks termination
The device clocks are AC coupled LVDS lines without external termination.
For proper operation internal differential termination must be enabled,
the DQS_BIAS will DC bias the AC coupled signal to VCCO/2 (1.8/2) 0.9V
2020-10-06 16:13:21 +03:00
hotoleanudan 1c208c01d6
ad9656:Add reference design for the ad9656 eval board (#494)
Added reference design for the ad9656 evaluation board coupled with the
zcu102 carrier board. The JESD204 communication link that transfers data
from the 4 ADCs to the FPGA has the following paramenters : L=4, M=4, S=1,
F=2, HD=0, N=16, NP=16. The JESD204 line rate is configured to be 2.5GHz.

Signed-off-by: Dan Hotoleanu <dan.hotoleanu@analog.com>
2020-10-06 09:53:40 +03:00
sergiu arpadi 23cd6d2f91 sysid: Remove cstring init string
These two projects were originally missed by the find/replace command
2020-10-02 23:34:40 +03:00
Sergiu Cuciurean da6d9da4f0 projects: cn0540: coraz7s: Add XADC support
The coraz7s has an Arduino/chipKIT Shield connector with 6 Single-ended
and 8 Differential Analog inputs tied to Xilinx's XADC.
The CN0540 uses the A0-5 pins as single-ended ADC channels to monitor
the differential input, ADC driver, and buffer voltages.

Signed-off-by: Sergiu Cuciurean <sergiu.cuciurean@analog.com>
2020-10-02 11:14:21 +03:00
Istvan Csomortani 11822e2824 cn0540/coraz7s: Set and input delay of one spi_clk cycle for the MISO line
Note, the current SCLK to spi_clk ratio is four. That means, the input
delay in the MISO line is 25% of the SCLK period.

If the SCLK to spi_clk ratio is changing, this constraint must be
updated.
2020-10-02 10:50:06 +03:00
Istvan Csomortani dae1de0405 cn0540/bd: Generate a 80MHz spi_clk
Generate a higher frequency of spi_clk using an axi_clkgen. (MMCM)

CAUTION: ad7768-1 is still violating the standard SPI timing,
reducing the timing window significantly for the last bit (or last high
bit).
2020-10-02 10:50:06 +03:00
Sergiu Arpadi c656a2e29b sysid: Initialize parameter 2020-09-30 19:12:24 +03:00
Sergiu Arpadi d8ab27b2af sysid: Remove cstring init string 2020-09-30 19:12:24 +03:00
Sergiu Arpadi bd2126fd2f cn0363: Remove iobuf for spi sdo
iobuf was generating drc warning because it was not fully connected.
2020-09-25 16:40:41 +03:00
Istvan Csomortani 9c827d6b03 cn0540/de10nano: Ignore 15003 critical warning
Ignore the following critical warning on DMAC instance:

Critical Warning (15003):  "mixed_port_feed_through_mode" parameter of RAM atom
system_bd:i_system_bd|axi_dmac:axi_dmac_0|axi_dmac_transfer:i_transfer| \
dmac_request_arb:i_request_arb|dmac_dest_mm_axi:i_dest_dma_mm| \
altsyncram:bl_mem_rtl_0|altsyncram_0tp1:auto_generated|ram_block1a1
cannot have value "old" when different read and write clocks are used.
2020-09-25 12:56:53 +03:00
Istvan Csomortani 9cac38017b daq2/a10soc: Set optimization mode to high performance effort 2020-09-25 12:56:14 +03:00
Istvan Csomortani 230c579339 common/s10soc: Input ports do not have a current strength property 2020-09-25 12:56:14 +03:00
Istvan Csomortani 5644907f75 adi_intel_msg: Dissable "unused TX/RX channel" critical warning for Stratix 10 2020-09-25 12:56:14 +03:00
Stanca Pop a738879fa0 ad77681evb: Remove redundant ad_data_clk 2020-09-25 12:20:41 +03:00
Adrian Costina 144fcc2965 adrv9009: Fix typo for number of samples calculation for observation channel 2020-09-25 11:58:58 +03:00
Adrian Costina bde2d1d66d fmcomms8: zcu102: Leave the SPI constraint at 25 MHz 2020-09-25 11:54:12 +03:00
Adrian Costina 4d2e05d5dd fmcomms8: common: In the SPI module, use ad_iobuf instead of a Xilinx primitive 2020-09-25 11:54:12 +03:00
Adrian Costina f8c2eb12d4 fmcomms8: zcu102: Remove the test pins, as they are not connected 2020-09-25 11:54:12 +03:00
stefan.raus 1e31b9dd97 arradio: Remove unused signals
Remove 'ad9361_clk_out' since is not used anymore, fixing in this way 'Warning (21074): Design contains 1 input pin that do not drive logic'
2020-09-23 09:16:48 +03:00
sergiu arpadi f2f6422751 sysid: Fix board/project name underscore issue 2020-09-17 10:32:58 +03:00
AndreiGrozav 6ae822d42c cn0506_rmii: Fix no defined clock warnings 2020-09-16 10:57:15 +03:00
Istvan Csomortani 49d4286459 cn0540/de10nano: Delete GPIO connection to DRDY 2020-09-15 18:14:23 +03:00
Istvan Csomortani 4838ac0ac2 cn0540/coraz7s: Time the SPI interface of AD7768-1 2020-09-15 18:14:23 +03:00
AndreiGrozav 0933949ad7 adv7513: Add initial project for de10nano 2020-09-15 18:14:23 +03:00
Stanca Pop 043ddbaf9f cn0540: Add de10nano reference design 2020-09-15 18:14:23 +03:00
Istvan Csomortani ad8d2d225f de10: Delete redundant base design 2020-09-15 18:14:23 +03:00
Stanca.Pop fd1c3c7cdd common/de10nano: Add de10nano base design 2020-09-15 18:14:23 +03:00
Stanca Pop 6cea8ce777 adi_project_intel: Add de10nano support 2020-09-15 18:14:23 +03:00
Istvan Csomortani 40772a8b2c ad40xx_fmc/zed: Fix constraints, to avoid critical warnings in synthesis 2020-09-15 13:08:39 +03:00
Sergiu Arpadi 3241924d14 sysid_intel: Added sysid to intel projects 2020-09-11 15:46:06 +03:00
Sergiu Arpadi f57643b451 sysid_intel: Added adi_pd_intel.tcl 2020-09-11 15:46:06 +03:00
AndreiGrozav 0152b645a6 m2k: Fix Warnings
Fix warnings caused by attempting to set a value to a disabled parameter.
2020-09-11 10:23:26 +03:00
Istvan Csomortani 9ee0f09078 daq3:qsys: Activate input pipeline stage for AD9680's JESD interface 2020-09-09 14:15:37 +03:00
Dragos Bogdan c8e0a1ec04 projects: adrv9009: intel: Update JESD204 LANE_RATE and REFCLK_FREQUENCY
To match the Linux default setup.

Signed-off-by: Dragos Bogdan <dragos.bogdan@analog.com>
2020-09-09 14:15:37 +03:00
Istvan Csomortani 61ece1f1e9 s10soc: Insert an additional bridge between DMA and HPS
Due to the interface differences between HPS's AXI4 and DMA's AXI4, the
tool will try to automaticaly add some bridges between the two
interface. Unfortunatly it does generate timing issues at the f2sdram0
interface of the HPS instance. By explicitly instantiating an AXI
bridge, these timing issues disappears.
2020-09-09 14:15:37 +03:00
Istvan Csomortani 46b6bf8f8a adrv9009/qsys: input pipline active for jesd204_rx and jesd204_rx_os 2020-09-09 14:15:37 +03:00
Istvan Csomortani 5a8f277253 adrv9009/s10soc: Add support for Stratix10 SOC 2020-09-09 14:15:37 +03:00
Istvan Csomortani 2b5136db98 scripts/project_intel.mk: Update CLEAN targets 2020-09-09 14:15:37 +03:00
Istvan Csomortani eb8e1142cd adrv9009/intel: Fix the register address layout
The reconfiguration interface for the Stratix10 XCVR has a different
address width. Prepare the register map layout of the project to support
this new architecture.
2020-09-09 14:15:37 +03:00
Istvan Csomortani 8818089015 a10soc: Reconfiguration interface address width improvement
The reconfiguration interface's address width is different in various
architectures. Define the required address width in system_qsys.tcl.
2020-09-09 14:15:37 +03:00
Istvan Csomortani 91b199a907 s10soc: Add new feature for ad_cpu_interconnect
If we have a lot of peripherals connected to the CPU's memory interface,
the generated interconnect can grow to much decreasing the timing
margin.

One solution is to group the peripherals by its interface types and
functions and use bridges to connect them to the memory interface.

This commit adds the possibility to insert an Avalon Memory Mapped
bridge when we create the connection between the peripheral and CPU.
Should be used just with Avalaon Memory Mapped interfaces.
2020-09-09 14:15:37 +03:00
Istvan Csomortani f9c4283f45 stratix10soc: Initial commit of base design
Note: Currently we have a engineering sample version 2 board.
2020-09-09 14:15:37 +03:00
Laszlo Nagy 24090fafd8 adrv9001/zcu102: Loopback VADJ error to the FMC board 2020-08-31 14:14:03 +03:00
Laszlo Nagy d14376547f adrv9001/zed: Refactor VADJ test in VADJ error
The ADRV9002 uses in the digital interface 1.8V, however the Zed VADJ is
selectable by a jumper can go up to 3.3V . Voltage levels higher than 1.8V
are detected by the EVAL-ADRV9002 board, asserting the VADJ_ERR pin.
If VADJ error is set high keep all drivers in high-z state and signalize
it to the software layer through a gpio line.
2020-08-31 14:14:03 +03:00
Laszlo Nagy 72f916fcf5 adrv9001/zcu102: Update interface signal names based on direction
Let the names of signals from source synchronous interface match the
direction of the signals.
2020-08-28 13:23:00 +03:00
Laszlo Nagy a212ad6e58 adrv9001/zed: Update interface signal names based on direction
Let the names of signals from source synchronous interface match the
direction of the signals.
2020-08-28 13:23:00 +03:00
Istvan Csomortani eb2f211d30 scripts/intel: Add message severity definition file 2020-08-25 14:46:52 +03:00
Adrian Costina 9c4df588bb fmcomms2: a10soc remove project
Starting from Quartus 18.1 the project won't build as LVDS SERDES needs to be
driven by a dedicated reference clock pin and A10SOC doesn't have dedicated pins
routed at the _CC FMC location.
Prior to version 18.0 this was reported as a critical warning.
See https://community.intel.com/t5/Intel-Quartus-Prime-Software/LVDS-SERDES-reference-clock-enforcement-change-in-18-1/td-p/196078
2020-08-25 14:19:48 +03:00
Laszlo Nagy 118e1f9e8b adrv9001/zed: Initial support for Zed
CMOS only support for ADRV9001 on ZedBoard
2020-08-24 17:49:12 +03:00
Laszlo Nagy b27f3ac18f adrv9001:zcu102: Initial version
Generic project that supports CMOS or LVDS interface for the ADRV9001 transceiver.
2020-08-24 17:49:12 +03:00
Istvan Csomortani d8c98c9904 cn0540/coraz7s: Relax timing in SPI Engine 2020-08-24 16:45:02 +03:00
Istvan Csomortani fa0b39fa20 adi_project_intel: Update QSYS generation
In Quartus Prime in place of the set_domain_assignment command, the
set_interconnect_requirement command is used.
2020-08-17 12:02:49 +03:00
Istvan Csomortani b54effc9c9 daq2/a10gx: Set optimization mode to aggressive performance 2020-08-17 10:43:03 +03:00
Istvan Csomortani fb7da01498 adrv9371x/a10gx: Set optimization mode to aggressive performance 2020-08-17 10:43:03 +03:00
Istvan Csomortani 738f7af23b ad40xx_fmc: SDI delay should be set to 1
In general we have to add a delay of half SCLK cycle.
(latch the MISO on the next consecutive SCLK edge)
2020-08-13 10:01:16 +03:00
AndreiGrozav 4766d01915 m2k: Update constraints 2020-08-13 07:01:19 +03:00
AndreiGrozav 4d39a3595f m2k: Connect signals for instrument sync 2020-08-13 07:01:19 +03:00
Istvan Csomortani f3b69c15c9 scripts/intel: Update version check 2020-08-12 10:33:29 +03:00
Istvan Csomortani 218f45a0df scripts/intel: Set supported Quartus version to 19.3 2020-08-12 10:33:29 +03:00
Istvan Csomortani 62eb5a067d fmcomms2/a10soc: Unused outputs should be left hanging 2020-08-11 10:14:18 +03:00
Istvan Csomortani a66029aef3 adrv9009/a10gx: Delete redundant timing constraints 2020-08-11 10:14:18 +03:00
Istvan Csomortani 02ada3bbf7 a10gx: Delete input/output delay definitions
All input and output delays should be referenced to a virtual clock.

If the input and output delays reference base clocks or PLL clocks rather than
virtual clocks, the intra- and inter-clock transfer clock uncertainties,
determined by derive_clock_uncertainty, are incorrectly applied to the I/O ports.
See mnl_timequest_cookbook.pdf for more info.
2020-08-11 10:14:18 +03:00
Istvan Csomortani f1a0946a5d daq3: Delete redundant timing constraint
Delete none generic timing constarints related to the memory interface.
Set optimization mode to default.
2020-08-11 10:14:18 +03:00
Istvan Csomortani 1c907b9248 daq2/a10gx: Use the default optimization mode 2020-08-11 10:14:18 +03:00
Istvan Csomortani 9043f3737b Revert "a10gx: Optimise the base design"
This reverts commit 9afc871b70.
2020-08-11 10:14:18 +03:00
Istvan Csomortani 4af0c98c56 a10gx: Fix exceptionSlave interface definition for HPS 2020-08-11 10:14:18 +03:00
Istvan Csomortani 5ba3448987 scripts/project-intel: Update CLEAN target 2020-08-11 10:14:18 +03:00
Istvan Csomortani 0b51c474a1 a10gx: Add a Avalon Pipeline Bridge between EMIF and DMA's 2020-08-11 10:14:18 +03:00
Istvan Csomortani 6d19041b21 dac_fmc_ebz: QPRO is using apply_instance_preset 2020-08-11 10:14:18 +03:00
Istvan Csomortani 0de5039b96 avl_dacfifo: add_intance command must have a version attribute 2020-08-11 10:14:18 +03:00
Istvan Csomortani 8fd1ad64d6 quartus: Increase tool version to 19.2 2020-08-11 10:14:18 +03:00
Istvan Csomortani f3142a6a7a adi_project_intel: set_interconnect_requirment command is deprecated
Use set_domain_assignment to set up the maximum pipeline stages for the
main interconnect.
2020-08-11 10:14:18 +03:00
Istvan Csomortani a39fa831d0 ad9371:a10gx: Relax interconnect requirements 2020-08-11 10:14:18 +03:00
Istvan Csomortani 7e22f91429 adrv9371:a10gx: Remove constraint from DDR 2020-08-11 10:14:18 +03:00
Istvan Csomortani 359e5d94ec a10gx: Remove constraint from eth_ref_clk 2020-08-11 10:14:18 +03:00
Istvan Csomortani 967a138d0f adi_project_intel: Add support for Quartus Pro
By defualt the supported tool chain is Quartus PRO. If you want to
build the project with Quartus Standard, you need to define an environment
variable called QUARTUS_PRO_ISUSED with the value 0. (e.g. export
QUARTUS_PRO_ISUSED=0 )

Note: Not all projects going to build on Quartus Standard, you should
fix the errors if there is any.
2020-08-11 10:14:18 +03:00
Istvan Csomortani 054193e083 adi_project_intel: Delete all MESSAGE_DISABLE assignment
These kind of assignments should be placed into file like
~/projects/scripts/adi_xilinx_msg.tcl
2020-08-11 10:14:18 +03:00
Istvan Csomortani 4ca1311d57 quartus_pro: Global assignment ENABLE_ADVANCED_IO_TIMING is not supported 2020-08-11 10:14:18 +03:00
AndreiGrozav 8d6b8fc631 Add cn0506_rmii/zcu102 support on revB 2020-08-10 18:32:44 +03:00
AndreiGrozav 7e96514230 Add cn0506_rmii/zc706 support on revB 2020-08-10 18:32:44 +03:00
AndreiGrozav 321b82398b Add cn0506_rmii/zed support on revB 2020-08-10 18:32:44 +03:00
Istvan Csomortani 6c2b1b1634 fmcomms5/zc702: Fix the sys_dma_clk connections 2020-06-19 12:53:18 +03:00
Istvan Csomortani 137c31db1d daq2/xilinx: Update project to use generic JESD204 TPL 2020-06-18 15:45:19 +03:00
Istvan Csomortani 299273f5a1 daq2/intel: Update project to use generic JESD204B TPL 2020-06-18 15:45:19 +03:00
Stanca Pop 847f0f22e6 cn0540: Fix typo 2020-06-04 18:38:14 +03:00
Stanca Pop 193fce338d cn0540: Initial commit 2020-05-28 18:49:35 +03:00
Stanca Pop 03ab28d7bf ad77681evb: Remove coraz7s project 2020-05-28 18:49:35 +03:00
Istvan Csomortani 71d500bdd4 adrv9009/intel: Use generic TPL cores 2020-05-26 16:22:30 +03:00
Laszlo Nagy 9c8190f709 adi_project_xilinx.tcl: discover all timing failures
Look for an overall indicator of timing failure.
Create critical warning if timing is failed.
2020-05-26 14:47:38 +03:00
Istvan Csomortani 47a97aac7c adrv9371x/intel: Update project to use generic JESD204B TPL 2020-05-25 11:55:40 +03:00
Laszlo Nagy e8f6523197 ad9081_fmca_ebz: adapt to renamed tpl core 2020-05-20 19:08:25 +03:00
Laszlo Nagy db6af63583 scripts/adi_env.tcl: print in logs system variables are used 2020-05-20 19:07:23 +03:00
Istvan Csomortani e7600eb552 ad7616_sdz: Fix the project, after SDI ports were merged
Update the project to support the SDI port merge patch: 4d54c7e
2020-05-20 11:44:22 +03:00
Istvan Csomortani 4d54c7e2d6 spi_engine_execution: Merge the SDI lines into one vector
This modification will help to support multiple SPI engine
execution setups (e.g. different NUM_OF_SDI) for the same project.
2020-05-19 09:28:02 +03:00
Istvan Csomortani 6535e5b2ba scripts/xilinx: Version mismatch is upgraded to ERROR
There is a major compatibility issue between 2019.1 and 2019.2.

The file system_top.hdf got a different file extention. This will
cause a compilation failer in the end of the build. To save time
and fail earlier, upgrade the version mismatch message to ERROR.

If user still wants to build a branch with different tool version
the variable ADI_IGNORE_VERSION_CHECK should be set to 1.
2020-05-15 12:16:35 +03:00
Istvan Csomortani 32eeedb660 makefile: Update makefiles 2020-05-07 08:41:49 +01:00
Laszlo Nagy cbb23c7b67 ad9081_fmca_ebz: fix Xilinx PHY resets
Avoid clock domain crossing on resets.
2020-04-23 17:21:05 +03:00
Laszlo Nagy e112a03d85 ad9081_fmca_ebz: Whitespace cleanup
Clear extra lines and whitespaces at end of lines.
2020-04-23 17:21:05 +03:00
Laszlo Nagy 7df4caf8b0 ad9081_fmca_ebz: Added parameter description
Add parameter description to project and common block design file
2020-04-23 17:21:05 +03:00
Laszlo Nagy e433d3f808 ad9081_fmca_ebz: expose PLL selection as a parameter
On the Xilinx PHY the available PLL options depends on the lane rate.
Encoding is:
  0 - CPLL
  1 - QPLL0
  2 - QPLL1

Since the selection of line rate is available from the project also the
PLL selection must be exposed.
2020-04-23 17:21:05 +03:00
Laszlo Nagy b774e1ca7d ad9081_fmca_ebz: enable IQ rotation 2020-04-03 11:16:37 +03:00
Istvan Csomortani 4684dc03ce dac_fmc_ebz/a10soc: Use balanced optimization mode
Always a good idea to start from default, and change optimization mode
of the tool if it's strict necessary.
2020-03-17 17:25:02 +00:00
Istvan Csomortani 253a8cb6ee dac_fmc_ebz/a10soc: Tool expect that all config parameters exists on top entity 2020-03-17 17:25:02 +00:00
Istvan Csomortani 522aacf6d8 ad_fmclidar1_ebz/a10soc: Fix AFE's I2C interface
The AFE's I2C interface should be pin-multiplexed to the FPGA. Also, add
a bidirectional IO buffer for the interface, and make sure it has weak
pull-up resistors.
2020-03-17 07:27:49 +00:00
Adrian Costina 19b7986486 fmcomms8: Fix SPI timing
The maximum SPI rate set to 10MHz
2020-03-16 13:26:20 +02:00
Istvan Csomortani fde79a2272 ad_fmclidar1_ebz: Fix AFE's SPI polarity 2020-03-10 16:37:18 +00:00
Laszlo Nagy b1f62f09ac ad9081_fmca_ebz:vcu118: initial version
Use over-writable parameters from the environment.

      e.g.
        make JESD_MODE=64B66B RX_RATE=24.75 TX_RATE=12.375 REF_CLK_RATE=375 RX_JESD_L=4 TX_JESD_L=4
        make JESD_MODE=64B66B RX_RATE=16.22016 TX_RATE=16.22016 REF_CLK_RATE=245.76 RX_JESD_M=8 RX_JESD_L=2 TX_JESD_M=16 TX_JESD_L=4
        make JESD_MODE=8B10B  RX_JESD_L=4 RX_JESD_M=8 TX_JESD_L=4 TX_JESD_M=8
2020-03-10 18:19:03 +02:00
Laszlo Nagy f3a7fd8b0d ad9081_fmca_ebz:zcu102: initial version 2020-03-10 18:19:03 +02:00
Laszlo Nagy f3630dd95b ad9081_fmca_ebz: common block design
Parametrizable block design with selectable JESD physical layer between
Xilinx Phy and ad_utilxcvr.
2020-03-10 18:19:03 +02:00
Laszlo Nagy 1f7671cb36 scripts/adi_env.tcl: helper function for environment variables
Ease the access of the environment variables.
2020-03-10 18:19:03 +02:00
Adrian Costina fad52175d1 fmcomms8: Fix spi connection 2020-03-06 16:07:02 +02:00
Adrian Costina 50d904934a fmcomms8: Changed the interrupt addresses to be similar with adrv9009zu11eg project 2020-03-06 16:07:02 +02:00
AndreiGrozav e1353d5291 m2k: use DMA streaming interface
The previous mechanism was "probing" the DMAs for valid data. Better said,
each interpolation channel enabled it's DMA until a valid data was received,
then it disabled the DMA read and waited for the adjacent channel(DMA) to
receive a valid data. Only when for both channels had valid data on the
DMAs interfaces was the transmission started. This added an undesired and
redundant complexity to the interpolation channels. Furthermore, for continuous
transmission, using the above mechanism lead to a fixed phase(sample)
shift between the two channels at each start.

By using the streaming mechanism the interface is simplified and the
above problems are solved.
2020-03-06 15:57:43 +02:00
sarpadi dd47e30431 ad7768_evb_sync: Fixed sync issue
fixed sync inside ad7768_if module;
2020-03-04 18:21:55 +02:00
Laszlo Nagy 35412c81a9 dac_fmc_ebz: drive spi_en pin automatically based on FMC board selected
spi_en is active ...
   ... high for AD9135-FMC-EBZ, AD9136-FMC-EBZ, AD9144-FMC-EBZ,
   ... low for AD9171-FMC-EBZ, AD9172-FMC-EBZ, AD9173-FMC-EBZ
2020-03-03 15:49:30 +02:00
Laszlo Nagy ef15757d9e common:vcu118: support for plddr4 adc and dac fifo
Use 1GB from the DDR4 for either ADC or DAC sample buffering.
Max theoretical bandwidth of 19.2 GB/s
2020-03-03 15:49:11 +02:00
StancaPop 48a91796e2
ad77681evb: Set spi_clk to 40MHz (#435) 2020-02-24 12:55:06 +02:00
Laszlo Nagy 37188b01d8 fmcomms2:a10soc: use non DPA mode 2020-02-24 11:31:01 +02:00
AndreiGrozav 96b7b3fa5f fmcomms2: Add support for a10soc
Because fmcomms2 was not supported on a Intel carriers the
fmcomms2_qsys.tcl file got outdated.
The  arradio project has the same hdl design. Hence the update is
merely a copy of the arradio_qsys.tcl with small changes.
2020-02-24 11:31:01 +02:00
AndreiGrozav 2bca2e156c cn0506_rgmii: Fix no clock defined warnings
This commit fixes the critical warning regarding the missing clock
definitions.
- Defined MDC(MDIO) clocks
- Set false path on(to) the ps8 MDIO input pins. There are synchronization
stages in the GMII to RGMII converter for the CDC between the 375M refclk
and 2.5M MDC clock domains.
2020-02-21 18:22:49 +02:00
Arpadi 6d91e2e54f coraz7s_fix: Tied drdy to gpio
removed IOB attribute for drdy
2020-02-18 13:24:43 +02:00
Arpadi 501abfd53a common/coraz7s: Fixed ethernet issue
fixed coraz7s preset; cleaned up lines which generated warnings
2020-02-18 13:24:43 +02:00
Adrian Costina c4b94fc564 adrv9009zu11eg: Add S JESD204 parameter for the projects 2020-02-18 11:19:02 +02:00
Adrian Costina 645696e5b4 adrv9009zu11eg: Extend SPI connection to the PL HD PINS expansion 2020-02-18 11:19:02 +02:00
Adrian Costina d2817863a1 adrv9009zu11eg: Add FMCOMMS8 support 2020-02-18 11:19:02 +02:00
Adrian Costina 29f18e501e adrv9009zu11eg: Cleanup bd file 2020-02-18 11:19:02 +02:00
Sergiu Arpadi 3192807f22 adi_project_xilinx: Fixed variable name 2020-02-14 11:22:46 +02:00
Sergiu Arpadi c5e03eb196 adi_project_xilinx: Added power analysis procedure 2020-02-14 11:22:46 +02:00
Arpadi 74fc68d4c3 axi_fan_control: Changed temperature thresholds to registers
implemented mux for temp reading either from internal or external
source; updated regmap; added param to identify source for temp
information; updated tacho measurements; added AVG_POW param used
for tacho measuremet average useful for simulations; defaults for
tacho measurements changed to params and added registers; added
prescaler for fsm control, FSM updated; changed register write
process; connected INTERNAL_SYSMONE to regmap, value can now be
read by software;
2020-02-14 11:21:12 +02:00
sraus 78a1e54a33 adi_project_xilinx.tcl: Generate resource utilization for IPs 2020-02-13 11:33:02 +02:00
Laszlo Nagy 46a413d9a5 dac_fmc_ebz/common/config.tcl: fix typo 2020-02-13 11:32:38 +02:00
Adrian Costina e51d9372cd fmcomms8: ZCU102: Added DAC FIFO 2020-02-10 11:23:52 +02:00
Adrian Costina 016a1d540d fmcomms8: ZCU102: Initial commit 2020-02-10 11:23:52 +02:00
Laszlo Nagy 10a808b504 ad9208_dual_ebz/vcu118: remove GTY prefix from parameters 2020-02-10 09:48:17 +02:00
StancaPop 05c20af988
Merge pull request #430 from analogdevicesinc/update_tcl
Rename projects for consistency
2020-02-06 16:32:40 +02:00
AndreiGrozav e00ee136f6 cn0506_mii Updates for Rev B board
Because of the rmii mode requirements(external 50MHz clock) the
board will have the rx_err signal replaced on the FMC connector with the
50MHz external clock (D08/D20).
The rx_er will be shifted to the D9/D21 pins.
2020-02-03 11:20:18 +02:00
Istvan Csomortani b3e475cb8b ad_fmclidar1_ebz: Update the IO constraints to revB
The IO location of the laser_driver_otw_n was moved from FMC_HPC_LA27_N
to FMC_HPC_LA31 (laser_gpio[12]).
laser_gpio[11:0] assignments were shifted with one bit to MSB, and laser_gpio[0]
got the old location of the laser_driver_otw_n.
2020-01-31 18:47:37 +02:00
Sergiu Arpadi 135538b521 adi_project: Fixed kcu105 board file selection 2020-01-16 17:16:58 +02:00
AndreiGrozav db5e21cfb9 pluto revC: Add second RF channel
-add second RF channel (without fir filters)
-use a more generic instantiation of the fir filters
-add util_cpack2 and util_upack2
2020-01-16 11:40:28 +02:00
AndreiGrozav f9c8ff26cf pluto rev C hardware updates
-connect axi_spi to board GPIOs
-connect axi IIC to board GPIOs

MIO49 SPI_CS   (PS MIO49)
L10P  SPI_MOSI (AXI_SPI)
L12N  SPI_MISO (AXI_SPI)
L24N  SPI_CLK  (AXI_SPI)
L7N   iic_sda  (AXI_IIC)
L9N   iic_scl  (AXI_IIC)
2020-01-16 11:40:28 +02:00
Sergiu Arpadi e773b22087 adi_project: Updated board files version selection
vivado will automatically select the latest version for a given board
2020-01-14 17:16:01 +02:00
Stanca Pop fcf7bb035a ad40xx: Fix data_width definition 2020-01-14 15:24:43 +02:00
Arpadi d86fbb2a08 adi_board: fixed ddr memory mapping for microblaze projects 2020-01-13 12:25:23 +02:00
Istvan Csomortani 34ea5efdff adi_project_xilinx: Use the latest board files 2020-01-13 12:25:23 +02:00
Istvan Csomortani adfeb435a4 scripts: Update Vivado version to 2019.1 2020-01-13 12:25:23 +02:00
Stanca Pop fa259c7975 ad40xx: Fix a typo 2020-01-10 10:20:06 +02:00
Stanca Pop 9497b1cace ad40xx: Remove redundant upscaler IP, Add timing constraints 2020-01-09 11:32:31 +02:00
István Csomortáni 8db77d8f3a ad_fmclidar1_ebz/README: Add Known Issues section
Add  description of the power-up issue and its solution.
2019-12-20 13:20:42 +02:00
István Csomortáni d4b3a3f640 ad_fmclidar1_ebz/README: A10SOC rework guide 2019-12-18 14:47:00 +02:00
Prasahnt Sivarajah 9ab4c0c783 dac_fmc_ebz: Passthrough GPIO signal for bypass 2019-12-06 11:04:45 +02:00
Prasahnt Sivarajah 8b45d17eb9 dac_fmc_ebz: Only create dummy ports for unused
lanes
2019-12-06 11:04:45 +02:00
Adrian Costina 09ad67bfd7 adrv9009zu11eg: Make the project more parametrizable 2019-12-04 14:59:18 +02:00
Istvan Csomortani 2e4ac278eb ad_fmclidar1_ebz: Add documentation 2019-12-03 18:23:57 +02:00
AndreiGrozav 3c83694755 adi_fir_filter_bd.tcl: Synchronize the control GPIO input to the core clock 2019-12-03 17:27:56 +02:00
Laszlo Nagy 82021edffe adi_board.tcl:ad_xcvrcon: do not reorder common control
When channels are not swapped in groups of four but are completely out of order
the common control channel can't be reordered based on the index of the
channel.
2019-11-30 12:29:32 +02:00
Laszlo Nagy c2726ceac9 common:vcu118: move system memory to DDR C2
The DDR controller for C2 for is much closer to the transceivers which
connect to the FMCp connector so designs does not have to span over all
three SLRs just over two reducing implementation and timing closure effort.
2019-11-28 16:17:44 +02:00
Adrian Costina 0cb5c0bdaf adv9009zu11eg: Update FPGA to -2. Update DDR4 clock frequency 2019-11-27 16:27:44 +02:00
Istvan Csomortani c44b4957b5 ad7134_fmc/zed: Fix IO definitions for SDI lines 2019-11-27 10:04:37 +02:00
Laszlo Nagy 88e80f604e daq3:zcu102: fix GPIO double drive 2019-11-26 14:41:19 +02:00
Adrian Costina 8c39cf8560 scripts: adi_board.tcl: Update the axi_adxcvr to util_adxcvr connections 2019-11-26 12:57:53 +02:00
AndreiGrozav 8131c86f75 m2k: Connect the adc_trigger reset 2019-11-25 13:14:18 +00:00
Stanca Pop a06c74edc7 fmcjesdadc1: Change rx_div_clk to 125MHz 2019-11-20 10:50:18 +02:00
Sergiu Arpadi 9260979b15 adrv9364: Added sysid to all projects 2019-11-20 10:43:54 +02:00
Sergiu Arpadi 570dae7df6 adrv9361: Added sysid to all projects 2019-11-20 10:43:54 +02:00
Adrian Costina dfe3258a4f adrv9009zu11eg: Add axi_sysid 2019-11-19 10:29:57 +02:00
Adrian Costina 81d3a9eb66 adrv9009zu11eg: Reduce SPI Clock speed to meet timing 2019-11-19 10:29:57 +02:00
Stanca Pop 4b380fe640 ad7768-1evb: Add coraz7s support 2019-11-15 14:35:00 +02:00
Stanca Pop 40d839df5f coraz7s: Initial commit 2019-11-15 14:35:00 +02:00
AndreiGrozav 514aadb54e m2k: Use dac trigger 2019-11-15 12:23:01 +00:00
Adrian Costina a589a2c7eb adrv9009_zu11eg_som: Change design partitioning
Create a structure similar with ADRV936x projects
2019-11-14 15:25:23 +02:00
Adrian Costina eab1e86544 adrv9364z7020: Rename *box project to *packrf 2019-10-29 16:07:08 +02:00
Adrian Costina de324526e3 adrv9361z7035: Rename *box project to *packrf 2019-10-29 16:07:08 +02:00
Stanca Pop fba7cac0c6 ad7768-1evb: Remove ADC2, update spi engine framework
The second ADC was removed from the project, as the EV-AD7768-1FMCZ evaluation
board contains only one ADC. Therefore, all the IPs related to the
second ADC have been removed, too.

The data width supported by the spi IPs has been changed from 8 bits to
32 bits, therefore the axis_upscaler(util_axis_upscale_v1_0) and the
m_axis_samples_24(AXI4-Stream Data Width Converter) are no more necessary,
so they have been removed from the design.

The 24 bits width data transfer between the s_axis of axi_ad77681_dma
(AXI DMA Controller) and the offload_sdi of the spi_engine_offload is now made
directly.
2019-10-28 12:00:23 +02:00
AndreiGrozav 4941d89fff cn0506_mii: Add support on a10soc 2019-10-18 19:09:04 +03:00
AndreiGrozav fbb3a154ff cn0506_mii: Add support on zcu102 2019-10-18 19:09:04 +03:00
AndreiGrozav 3cb2392711 cn0506_mii: Add support on zc706 2019-10-18 19:09:04 +03:00
AndreiGrozav e98951d282 cn0506_mii: Add support on zed 2019-10-18 19:09:04 +03:00
AndreiGrozav 8202c0025c cn0506_mii: Common design initial commit 2019-10-18 19:09:04 +03:00
AndreiGrozav 9323f4193c m2k: Clean old interrupt connection style 2019-10-18 18:28:01 +03:00
AndreiGrozav a4547a32b6 pluto: Clean old interrupt connections style 2019-10-18 18:28:01 +03:00
Stefan Raus fd4d32c408 projects/scripts/*xilinx*: Generate report utilization extra files
Add commands to generate one extra file with resource utilization, in CSV format.
New commands executes only if ADI_GENERATE_UTILIZATION env variable is set.
2019-10-18 13:42:34 +03:00
Istvan Csomortani 5a4726b356 adrv9364z7020: Fix interrupt concatenation 2019-10-17 15:09:48 +03:00
Istvan Csomortani f0f314f24b adrv9361z7035: Fix interrupt concatenation
None functional change, main goal is to increase consistancy in our
code base.
2019-10-17 15:09:48 +03:00
Istvan Csomortani 80333573c7 ad_fmclidar1_ebz/zcu102: Fix SYSREF input delay constraint
Add one clock cycle input delay for the SYSREF input,
to compensate the high propegation delay of device_clk_BUFG.
2019-10-17 09:59:23 +03:00
Istvan Csomortani 03bec4b49c ad_fmclidar1_ebz: Interchange SYSREF and DEV_CLK ports location
In ZCU102 LA01_CC_P|N are connected to regional clock, but in order to
receive a device clock properly we have to use pin which is connected
to a  global clock buffer. Luckily SYSREF is connected to global clock
pin; swap to port to receive the device clock correctly.

Also, swap the ports in both ZC706 and A10SOC carriers.
2019-10-17 09:59:23 +03:00
Istvan Csomortani 2cabf8d224 ad_fmclidar1_ebz: Move afe_iic definition to system_bd.tcl
In order to prevent platform specific variable usage in the common tcl
script, move the AFE I2C interface definition to system_bd.tcl
2019-10-17 09:59:23 +03:00
Istvan Csomortani b3e1cd2a15 ad_fmclidar1_ebz: Add support for ZCU102 2019-10-17 09:59:23 +03:00
Istvan Csomortani 3084a5d9aa ad_fmclidar1_ebz/a10soc: Fix the comment about the carrier re-work
The project is using the FMCA connector of the board. Make sure that all
the carrier re-work is related to the FMCA connector.
2019-10-17 09:58:52 +03:00
Stanca Pop 12c474ba13 ad7134: Change maximum data width from 24b to 32b 2019-10-16 17:35:24 +03:00
AndreiGrozav 3c46cc9347 dac_fmc_ebz: Add project info to sys_id
Add project device and mode info to sys_id custom string
2019-10-15 17:08:53 +03:00
AndreiGrozav 58b846faae dac_fmc_ebz: Add build time config option 2019-10-15 17:08:53 +03:00
Laszlo Nagy e22016de4c adrv9371/daq2/daq3:kcu105: patch GTH3 CPLL parameters
Update GTH3 parameters according to a 10Gbps link from the Transceiver
Wizard.
2019-10-08 10:38:46 +03:00
Arpadi 8895b08eb1 adrv9009_zu11eg_som: i2s mclk fix
mclk now generated by ps not axi clkgen ip. ADAU1761 expects a free
running clock and the i2s driver was switching the axi clkgen ip off
which was causing issues.
2019-10-03 17:30:57 +03:00
Istvan Csomortani 2344778dd8 ad_fmclidar1_ebz/a10soc: Initial commit
Add initial support for Arria 10 SOC carrier.
2019-10-02 15:32:17 +03:00
Istvan Csomortani 23d29e7a15 a10soc_system_qsys: sys_dma_clk clock_source inherit its clock frequency from its source 2019-10-02 15:32:17 +03:00
Istvan Csomortani af94487f57 adi_project_intel: Enable HPS internal timing
It's recommended to use this global assignment so the tool can make a
more in-depth timing analysis.
2019-10-02 15:32:17 +03:00
Istvan Csomortani bc2f916dfc a10soc: Synchronize resets to the reset source
Resets de-assertion should be synchronized to its associated clock.
2019-10-02 15:32:17 +03:00
StancaPop 9c9ce928d8
Merge pull request #346 from analogdevicesinc/spi_engine_trigger_update
spi_engine: Update pulse generation
2019-10-02 14:42:41 +03:00
Istvan Csomortani 75d263afc5 adi_project_xilinx: Add constraint files to constr_1 file set 2019-09-27 18:21:25 +03:00
Laszlo Nagy 64e54fda8d fmcomms5: remove clock skew handling
Use SSI clock from master as SSI clock of slave.
2019-09-27 17:52:10 +03:00
Stanca Pop 994bb6d0cf adaq7980: Software configurable trigger 2019-09-27 17:02:52 +03:00
Istvan Csomortani b174333fa2 project-xilinx.mk: Clean generated file by sysid 2019-09-27 13:16:19 +03:00
AndreiGrozav 7a685dd443 cn0506_rgmii/zcu102: Fix README typo 2019-09-26 16:33:45 +03:00
sarpadi 442b38033a sys_id: added catch to git status check
made error checking more general
2019-09-26 16:26:02 +03:00
AndreiGrozav 447434ace0 cn0506_rgmii: Add support for a10soc 2019-09-20 18:03:27 +03:00
AndreiGrozav 1138c48270 cn0506_rgmii: Add support for zcu102 2019-09-20 18:03:27 +03:00
AndreiGrozav f4f547715e cn0506_rgmii: Add support for zc706 2019-09-20 18:03:27 +03:00
AndreiGrozav 98fba87d8f cn0506_rgmii: Add support for zed 2019-09-20 18:03:27 +03:00
AndreiGrozav afd9420dab cn0506_rgmii: base design initial commit 2019-09-20 18:03:27 +03:00
Laszlo Nagy 7c3b4a5c73 ad9208_dual_ebz: Cleanup workarounds
Cleanup placement constraints and let the tool have more freedom to
place and route the design. This is possible only after balancing the
memory and system clocks.
2019-09-16 10:00:14 +03:00
Laszlo Nagy b7d48b8c74 common/vcu118: Balance clocks
Minimize skew on synchronous CDC timing paths between clocks originating
from the same MMCM source. (sys_mem_clk and sys_cpu_clk)
This is required mostly by the smart interconnect.
The CLOCK_DELAY_GROUP property must be applied directly to the output net of BUFGs.
2019-09-16 10:00:14 +03:00
AndreiGrozav 9f112640f3 m2k: Change constraint to match the new LA path 2019-09-13 11:55:11 +03:00
AndreiGrozav 5e08e2d548 project-xilinx.mk: Fix build condition
"prepare_incremental_compile" is defined as a phony target, but is also a
prerequisite of a real target. This will lead to a complete project build
every time make is called.
To fix the issue the functionality of prepare_incremental_compile target
was included in the generic project build target.
2019-09-12 13:23:09 +03:00
Istvan Csomortani 16a797198f ad_fmclidar1_ebz/common: Fix m_dest_axi_aresetn source 2019-08-29 08:59:56 +03:00
Istvan Csomortani 78815435d2 ad_fmclidar1_ebz/common: Connect adc_dovf to GND 2019-08-29 08:59:56 +03:00
Istvan Csomortani f14bea2b7e ad_fmclidar1_ebz/zc706: Add sys_id support 2019-08-29 08:59:56 +03:00
Arpadi 63942a6b9b talise_fan_control: updated ip with new fan parameters 2019-08-26 19:01:48 +03:00
Istvan Csomortani aa5fdf903e Makefile: Update makefiles 2019-08-26 16:58:01 +03:00
AndreiGrozav e7cca7c5f7 m2k: Update for axi_dac_interpolate start sync 2019-08-22 18:07:45 +03:00
AndreiGrozav 6f540b0ef2 m2k: Add cascading support
-remove util_extract
-instrument triggering logic_analyzer <-> adc_trigger using dedicated latency paths
-move logic_analyzer on adc clock domain (100MHz -> 100MHz)
2019-08-22 18:06:10 +03:00
AndreiGrozav 78afe38a3f adrv9009: Add decimation and interpolation filters 2019-08-20 16:24:47 +03:00
AndreiGrozav 44deaadb4a adrv9371: Add decimation and interpolation filters 2019-08-20 16:24:47 +03:00
AndreiGrozav 36a1767329 Add generic fir filters processes for RF projects 2019-08-20 16:24:47 +03:00
Laszlo Nagy 0261eade0c zynq:all: fix SPI clock constraint
According to data sheets the EMIO SPI controller maximum frequency is
just 25MHz. Constrain the SPI clock accordingly.
2019-08-09 16:39:56 +03:00
Istvan Csomortani 6fad82c329 ad_fmclidar1_ebz/zc706: Define device clock and SYSREF timing relation 2019-08-08 14:26:07 +03:00
Istvan Csomortani d43e6ee239 axi_laser_driver: TIA's are controlled individually in manual mode
Update the sequencer, so the TIA channel selection can be controlled separately
for each TIA, when the sequencer runs in manual mode.
2019-08-08 14:26:07 +03:00
Istvan Csomortani ea158ee42b ad_fmclidar_ebz: Fix AFE's SPI interface connection 2019-08-08 14:26:07 +03:00
Istvan Csomortani 3290838743 ad_fmclidar1_ebz: Add a dummy ADC channel with TIA channel info
Software has to know which TIA channel was used for a particular capture.
Define an additional dummy ADC channel which will provide this
information. Currently this channel is always enabled.
2019-08-08 14:26:07 +03:00
Istvan Csomortani d096b8f6f4 ad_fmclidar1_ebz: Move the util_axis_syncgen into common direcotry 2019-08-08 14:26:07 +03:00
Istvan Csomortani ea18636586 ad_fmclidar1_ebz: Connect the TIA sequencer to the GPIOs 2019-08-08 14:26:07 +03:00
Istvan Csomortani 21bbc900c8 ad_fmclidar1_ebz: Initial commit
This commit was created by squashing the following commits, these
messages were kept just for sake of history:

  ad9694_500ebz: Mirror the SPI interface to FMCB
  ad9694_500ebz: Set transceiver reference clock to 250
  ad9694_500ebz: Allow to configure number of lanes, number of converters
                 and sample rate
  axi_ad9694: Fix number of lanes, it must be 2
  ad9694_500ebz: Update the mirrored spi pin assignments
  ad9694_500ebz: Gate SPI MISO signals based on chip-select
  ad9694_500ebz: Set channel pack sample width
  ad9694_500ebz: Change reference clock location
  ad9694_500ebz: Remove transceiver memory map arbitration
  ad9694_500ebz: Ensure ADC FIFO DMA_DATA_WIDTH is not larger ADC_DATA_WIDTH
  ad9694_500ebz: Adjust breakout board pin locations
  ad_fmclidar1_ebz: Rename the ad9694_500ebz project
  ad_fmclidar1_ebz: Fix lane mapping
  ad_fmclidar1_ebz: Delete deprecated files
  ad_fmclidar1_ebz: Integrate the axi_laser_driver into the design
  ad_fmclidar1_ebz: OTW is an active low signal
  ad_fmclidar1_ebz: zc706: Fix iic_dac signals assignment
  ad_fmclidar1_ebz: Switch to util_adcfifo
  ad_fmclidar1_ebz: Enable synced capture for the fifo
  ad_fmclidar1_ebz/zc706: Enable CAPTURE_TILL_FULL
  ad_fmclidar1_ebz/zc706: Reduce FIFO size to 2kB
  ad_fmclidar1_ebz: Laser driver runs on ADC's core clock
  ad_fmclidar1_ebz_bd: Delete the FIFO instance

     Because the DMA transfers are going to be relatively small (< 2kbyte),
     the DMA can handle the data rate, even when the frequency of the laser
     driver pulse is set to its maximum value. (200 kHz)

     The synchronization will be done by connecting the generated pulse to
     the DMA's SYNC input. Although, to support 2 or 1 channel scenarios, we
     need to use the util_axis_syncgen module to make sure that the DMA
     catches the pulse, in cases when the pulse width is too narrow. (SYNC is
     captures when valid and ready is asserted)

     Also we have to reset the cpack IP before each pulse, to keep the DMA buffer's
     relative starting point in time fixed, when only 2 or 1 channel is
     active.
2019-08-08 14:26:07 +03:00
Arpadi 0680e44330 system_id: deployed ip 2019-08-06 16:53:11 +03:00
Sergiu Arpadi 4fe5f007cb system_id: added axi_sysid ip core and tcl 2019-08-06 16:53:11 +03:00
Adrian Costina a78c95d8fb adrv9009_zu11eg_som: Add SPI clock constraint 2019-08-01 18:15:45 +03:00
István Csomortáni 14a4acfd0e
projects/scripts: Fix a typo in adi_env.tcl 2019-07-25 17:58:36 +03:00
Istvan Csomortani fa610d36c6 ad_ghdl_dir: Fix global variable name
In #PR318 the global variable $ad_phdl_dir name were changed to
$ad_ghdl_dir.
2019-07-23 10:29:37 +01:00
Adrian Costina 6655829bc7 daq2: VC707: Remove project 2019-07-22 13:25:46 +01:00
Adrian Costina a6cff0f804 motcon2_fmc: Remove project 2019-07-22 13:23:43 +01:00
Istvan Csomortani 6a721c0bf0 adi_env: Update system level environment variable definition
Our internal repository was changed from phdl to ghdl. Update the
adi_env.tcl scripts and other scripts, which depends on the $ad_ghdl_dir
variable. This way the tools will see all the internal IPs too.
2019-07-22 11:00:45 +03:00
AndreiGrozav ce5aadb3e4 adrv9361z7035/common/ccbox_constr.xdc: Cosmetics only 2019-07-17 10:37:30 +03:00
AndreiGrozav 6f627c2105 adrv9361z7035/ccbox: Keep by default in powerdown the 12V PS
Because of build hazards, the power supply can be randomly powered on,
when the pin is left in high impedance.
2019-07-17 10:37:30 +03:00
AndreiGrozav 5f1cb18c9b ad7616_sdz/zc706: Fix Build
- Fix typo
- Remove the unused(old flow) ps interupts
2019-07-10 12:51:42 +03:00
Istvan Csomortani e1d9a36ae0 scripts/adi_project_intel: Rename ALT_NIOS_MMU_ENABLED to NIOS_MMU_ENABLED 2019-06-29 06:53:51 +03:00
Istvan Csomortani 04ce10a570 cosmetics: Change Altera to Intel in comments 2019-06-29 06:53:51 +03:00
Istvan Csomortani b0fbe1bb57 util_clkdiv: Seperate the IP source into an intel and xilinx version 2019-06-29 06:53:51 +03:00
Istvan Csomortani 5329458a62 library/scripts: Rename adi_ip_alt.tcl to adi_ip_intel.tcl 2019-06-29 06:53:51 +03:00
Istvan Csomortani 363494ab9c library/scripts: Rename adi_ip.tcl to adi_ip_xilinx.tcl 2019-06-29 06:53:51 +03:00
Istvan Csomortani 6e6f1347d7 project/scripts: Rename adi_project_alt.tcl to adi_project_intel.tcl 2019-06-29 06:53:51 +03:00
Istvan Csomortani a589753d92 project/scripts: Rename adi_project.tcl to adi_project_xilinx.tcl 2019-06-29 06:53:51 +03:00
Istvan Csomortani 43725429ac adi_project: Rename the process adi_project_xilinx to adi_project 2019-06-29 06:53:51 +03:00
Istvan Csomortani ec67a381e4 adi_project: Rename the process adi_project_altera to adi_project 2019-06-29 06:53:51 +03:00
Istvan Csomortani 79b6ba29ce all: Rename altera to intel 2019-06-29 06:53:51 +03:00
Sergiu Arpadi ba4a915af0 ad40xx/zed: fixed system_bd
spi_engine_execution: fixed sdo default
2019-06-28 11:18:29 +03:00
Istvan Csomortani cf9d0814d5 ad40xx/zed: Place all the SPI registers near IOB 2019-06-28 11:18:29 +03:00
Istvan Csomortani 10e1abc22f ad40xx_fmc/zed: Delete IOB TRUE constraints
Vivado can not apply the IOB TRUE constraint to only one bit of a
registers. So these constraints will generate several CRITICAL WARNING.

Taking into consideration the maximum used frequencies and current
architecture these constraints are not critical.
2019-06-28 11:18:29 +03:00
Laszlo Nagy 6b110b6fb8 ad5758_sdz/zed: system constraint file cleanup
removed redundant PACKAGE_PIN properties
2019-06-28 11:18:29 +03:00
Laszlo Nagy 0f2a1e7602 ad5758_sdz: Initial commit
Initial version of AD5758 SDZ evaluation board support on ZedBoard.
No critical warnings in the Vivado log.
Bitstream generation passing.
Bring-up on actual board not done.
2019-06-28 11:18:29 +03:00
Istvan Csomortani 9ab88f1200 ad40xx: Initial commit 2019-06-28 11:18:29 +03:00
Istvan Csomortani b46a28d42f adum7701: Delete redundant interrupt port in system_top 2019-06-28 11:18:29 +03:00
Istvan Csomortani 6668accc96 ad7405 : Initial commit
This project is an inital version of the ADuM7701 (CMOS) or AD7405 (LVDS)
reference board.
2019-06-28 11:18:29 +03:00
Istvan Csomortani 554feaa1af util_pulse_gen: Update ports for all outdated instance
The new version of util_pulse_gen has different ports and port names.

Update all the instance:
  - AD738x_FMC
  - AD7768EVB
  - ADAQ7980_SDZ
2019-06-28 11:18:29 +03:00
Istvan Csomortani 7fa620d253 gtm_projects: Update system_top
In the latest system_top file we are not bringing out all the interrupt
signals from the block design. Delete all interrupt ports from the
system_wrapper instance.

Following projects were changed:

  - AD5766_SDZ
  - AD7134_FMC
  - AD7616_SDZ
  - AD77681EVB
  - AD7768EVB
  - ADAQ7980
2019-06-28 11:18:29 +03:00
Istvan Csomortani 21ce53f765 Revert "Move GTM projects to gtm_projects branch"
This reverts commit 171093eca4.
2019-06-28 11:18:29 +03:00
Istvan Csomortani f22f448d4b daq3:vcu118: Delete constraint related to smart connect
Apparently this constraint will cause more harm than good. The tool will
try to prevent an invalid hold violation by increasing the net delay,
causing a setup violation on the same path. (inside the smart connect)

See more info here:
https://forums.xilinx.com/t5/AXI-Infrastructure/Smartconnect-and-Synchronous-Clock-Domain-Crossing-Issues/td-p/904824
2019-06-27 13:47:24 +03:00
Istvan Csomortani 4896a84c2d ad9739a_fmc: DMA should use $sys_dma_resetn 2019-06-21 09:54:21 +03:00
Istvan Csomortani e0a010c959 ad9625_fmc: DMA should use $sys_dma_resetn 2019-06-21 09:54:21 +03:00
AndreiGrozav 4812f64cdc ad9434: Fix axi_ad9434_dma timing closure
axi_ad9434_dma/m_dest_axi_aresetn should use sys_dma_resetn
2019-06-21 09:54:21 +03:00
AndreiGrozav 0a3a99bf83 m2k: Define SPI clock constraint 2019-06-21 09:53:14 +03:00
Sergiu Arpadi 0bbe501764 adrv9009_zu11eg_som: added axi_fan_control 2019-06-14 17:08:38 +03:00
Sergiu Arpadi c159909823 adrv9009_zu11eg_som: added i2s 2019-06-14 17:08:38 +03:00
Adrian Costina 9409df6a6f adrv9009_zu11eg: Initial commit
Observation and RX should never run at the same time.
Given that there is no FIFO on the RX and OBS paths, they will use the higheste performance HP ports, which are HP1 and HP2
2019-06-14 17:08:38 +03:00
Istvan Csomortani 95afc461a6 fmcomms5: DMA should use $sys_dma_resetn 2019-06-13 10:59:43 +03:00
Istvan Csomortani 2e05b70d94 fmcomms11: DMA should use $sys_dma_resetn 2019-06-13 10:59:43 +03:00
Istvan Csomortani dafc97f43a fmcjesdadc1: DMA should use $sys_dma_resetn 2019-06-13 10:59:43 +03:00
Istvan Csomortani 424abe0c02 adrv9009: DMA should use $sys_dma_resetn 2019-06-13 10:59:43 +03:00
Istvan Csomortani 5266d2ae88 ad6676evb: DMA should use $sys_dma_resetn 2019-06-13 10:59:43 +03:00
Istvan Csomortani 44a9331471 fmcomms2:fmcomms5: ZCU102 uses 500MHz IO delay clock 2019-06-11 18:13:06 +03:00
Istvan Csomortani 993497438b adi_project:adi_project_run: Check if $num_reg exist 2019-06-11 18:13:06 +03:00
Istvan Csomortani 896ea4925d adi_board: Fix ad_mem_hpx_interconnect proc
Make the lsearch command more robust.
2019-06-11 18:13:06 +03:00
Istvan Csomortani 019390f9bf block_design: Updates with new reset net variables 2019-06-11 18:13:06 +03:00
Istvan Csomortani 0e750bea42 adrv9009: Fix dma_clk tree 2019-06-11 18:13:06 +03:00
Istvan Csomortani 9072779e41 adrv9371x: Clean out system_db.tcl 2019-06-11 18:13:06 +03:00
Istvan Csomortani de510b45ab base: Add system_processor_rst for all the global clocks 2019-06-11 18:13:06 +03:00
Istvan Csomortani 7960b00684 block_design: Update with new clock net variables
Using the new clock net variables in all Xilinx block designs.
2019-06-11 18:13:06 +03:00
Istvan Csomortani 20c714eccf common: Define three global clock nets
For all the Xilinx base design, define three global clock nets, which
are saved in the following three global variable: $sys_cpu_clk, $sys_dma_clk
and $sys_iodelay_clk.

These clock nets are connected to different clock sources depending of
the FPGA architecture used on the carrier. In general the following
frequencies are used:

  - sys_cpu_clk     - 100MHz
  - sys_dma_clk     - 200MHz or 250Mhz
  - sys_iodelay_clk - 200MHz or 500Mhz
2019-06-11 18:13:06 +03:00
Istvan Csomortani 48d2c9d36f axi_ad9361: Define a MIMO enabled parameter
Define a MIMO_ENABLE parameter for the core, which will insert
and additional de-skew logic to prevent timing issues coming from
the clock skew differences of two or multiple AD9361.
2019-06-10 15:16:47 +03:00
Istvan Csomortani a4a9d0a19d fmcomms11/zc706: Relax core clock timing to 250MHz/125MHz 2019-06-10 11:23:41 +03:00
Istvan Csomortani 119fd0915a fmcomms11: Make the lane remapping after the link layer 2019-06-10 11:23:41 +03:00
Istvan Csomortani 58d55f61db fmcomms11: Add desciption how to swap memory resource for the FIFOs 2019-06-10 11:23:41 +03:00
Istvan Csomortani 5d80aa63b2 fmcomms11: Some cosmetic, no functional change 2019-06-10 11:23:41 +03:00
Istvan Csomortani 94dc848292 fmcomms11: Move the FIFO address variables into system_bd
These variables can vary in function of the available memory resources
of the FPGA carrier board.
2019-06-10 11:23:41 +03:00
Istvan Csomortani 559ae69b2b fmcomms11: Fix DAC data path
Fix the modification 68a5f2.
2019-06-10 11:23:41 +03:00
Istvan Csomortani d9230fdc5e fmcomms11: Connect DAC fifo bypass to a GPIO
GPIO[60] can be used to control the bypass line of the
util_dacfifo module.
2019-06-10 11:23:41 +03:00
Istvan Csomortani 70b7d69ff8 whitespace: Delete all trailing white spaces 2019-06-07 10:20:15 +03:00
Laszlo Nagy 3bf120123b dac_fmc_ebz: update Makefiles 2019-06-06 11:45:05 +03:00
Laszlo Nagy 1541b918d8 dac_fmc_ebz: added README 2019-06-06 11:45:05 +03:00
Lars-Peter Clausen 6d31a437aa dac_fmc_ebz: Add initial Arria10 SoC support
Add support for the Arria 10 SoC development kit to the dac_fmc_ebz
project.

This allows to use the following FMC boards on the Arria 10 SoC development
Kit carrier:
  * AD9135-FMC-EBZ
  * AD9136-FMC-EBZ
  * AD9144-FMC-EBZ
  * AD9152-FMC-EBZ
  * AD9154-FMC-EBZ
  * AD9171-FMC-EBZ
  * AD9172-FMC-EBZ
  * AD9173-FMC-EBZ

Note that the board in its default configuration is not fully compatible with the
mentioned FMC boards and some slight re-work moving some 0 Ohm resistors is
required. The rework concerns the LA01 and LA05 pins, which by default are
not connected to the FPGA. The changes required are:

  LA01_P_CC
    R612: R0 -> DNI
    R610: DNI -> R0
  LA01_N_CC
    R613: R0 -> DNI
    R611: DNI -> R0
  LA05_P
    R621: R0 -> DNI
    R620: DNI -> R0
  LA05_N
    R633: R0 -> DNI
    R632: DNI -> R0

The main differences between AD9144-FMC-EBZ and AD9172-FMC-EBZ are:
  * The DAC txen signals are connected to different pins
  * The polarity of the spi_en signal is active low instead of active high
  * The maximum lane rate is up to 15.4 Gpbs

To accommodate this all 4 possible txen signals as well as the spi_en
signal are connected to GPIOs. Software can decide how to use them
depending on which FMC board is connected.

Note that each carrier has a maximum supported lane rate. Modes of the
AD9172 (and similar) that exceed the carrier specific limit can not be used
on that carrier. The limits are as following:
  * A10SoC: 14.2 Gbps
2019-06-06 11:45:05 +03:00
Lars-Peter Clausen c2c78b1b73 dac_fmc_ebz: Add initial ZCU102 and ZC706 carrier support
Add a generic project for the AD91xx-FMC-EBZ DAC boards connected to the
ZCU102 and ZC706 carrier boards.

The project is called dac_fmc_ebz as the intention is to support all DAC
FMC evaluation boards with this project since they are sufficiently similar
to be supported by the same design.
This project will successively extended to add support for more boards.

The desired DAC device and JESD operation mode must be selected from the following
file:
  ./common/config.tcl

This design can support the following FMC boards which are all pin
compatible:
  * AD9135-FMC-EBZ
  * AD9136-FMC-EBZ
  * AD9144-FMC-EBZ
  * AD9152-FMC-EBZ
  * AD9154-FMC-EBZ
  * AD916x-FMC-EBZ
  * AD9171-FMC-EBZ
  * AD9172-FMC-EBZ
  * AD9173-FMC-EBZ

Note that the AD9152-FMC-EBZ only uses the first 4 lanes, whereas all other
boards use 8 lanes.

This project assumes that the transceiver reference clock and SYSREF are
provided via the clock distribution chip that is found on the
ADxxxx-FMC-EBZ board.

In terms of pin connections between the FPGA and the FMC board the
AD9172-FMC-EBZ is very similar to the AD9144-FMC-EBZ.

The main differences are:
  * The DAC txen signals are connected to different pins
  * The polarity of the spi_en signal is active low instead of active high
  * The maximum lane rate is up to 15.4 Gpbs

To accommodate this 5 txctrl signals as well as the spi_en signal are connected
to GPIOs. Software can decide how to use them depending on which FMC board
is connected.

Note that each carrier has a maximum supported lane rate. Modes of the
AD9172 (and similar) that exceed the carrier specific limit can not be used
on that carrier. The limits are as following:
  * ZC706:  10.3125 Gbps
  * ZCU102: 15.4 Gbps (max AD9172 lanerate)

* SPI and GPIOs to PMOD header support

Connect a SPI interface and some GPIOs to the PL PMOD headers on the zcu102
and zc706 carriers.

This is can be used to control additional external hardware like a clock
chip or an analog front-end.

This is especially useful on FMC boards that do not feature a clock
generator chip.

The pin out is:
	PMOD  1: SPI clock
	PMOD  2: SPI chipselect
	PMOD  3: SPI MOSI
	PMOD  4: SPI MISO
	PMOD  7: GPIO 0
	PMOD  8: GPIO 1
	PMOD  9: GPIO 2
	PMOD 10: GPIO 3

The GPIOs are mapped at offset 48-51 of the EMIO GPIOs.
2019-06-06 11:45:05 +03:00
Istvan Csomortani 9afc871b70 a10gx: Optimise the base design
Add a clock crossing bridge for the interfaces that runs on a different
clock than the emif_user_clk.

This way we can simplify the main interconnect, and prevent occasional
timing violations.
2019-06-04 11:28:37 +03:00
Istvan Csomortani a7e3fcf26a adi_project_alt.tcl: Add comments to all proc 2019-05-31 10:32:40 +03:00
Istvan Csomortani 41bc947ac1 adi_project.tcl: Add comments to all proc 2019-05-31 10:32:40 +03:00
Istvan Csomortani 21031261b0 adi_board.tcl: Add comments to all proc 2019-05-31 10:32:40 +03:00
Laszlo Nagy 08d01789c8 microblaze: add SPI clock constraint
The SPI clock is a generated clock from the system clock. Worst case
scenario is that the system clock is divided by two.
2019-05-30 14:55:11 +03:00
Laszlo Nagy 5986e87a1f zynq/zynqmp: create a 50MHz clock on the SPI clock outputs of the PS 2019-05-30 14:55:11 +03:00
Laszlo Nagy 8390bf0ac6 adrv9361z7035:ccfmc_constr.xdc: constrain all input clocks 2019-05-30 14:55:11 +03:00
Laszlo Nagy aa0ea252ec fmcomms5: constrain ref clock 2019-05-30 14:55:11 +03:00
Laszlo Nagy 4fca24d41f vc707: define 125 MHz SGMII clock
Constrain the clock path to 125 MHz corresponding to the output of
ICS844021I which has a 25 MHz reference.
2019-05-30 14:55:11 +03:00