Commit Graph

2951 Commits (bad1d0367891999b376782f89f5609fd543c0408)

Author SHA1 Message Date
PopPaul2021 619e8043d0
Adaq8092 on ZedBoard LVDS output mode (#921)
* common/up_adc_common: Add adc_custom_control register

* library/axi_adaq8092: Initial commit

* projects/adaq8092_fmc: Initial commit for ZedBoard
2022-04-28 15:39:59 +03:00
Laszlo Nagy 97b92565b2 Makefile: Replace util_fifo2axi_bridge with util_hbm 2022-04-28 14:31:32 +03:00
Laszlo Nagy 8399301c6a util_fifo2axi_bridge: Deprecate module, replaced by util_hbm 2022-04-28 14:31:32 +03:00
Laszlo Nagy c3ae609bc8 data_offload: Refactor core
Deprecate unused parameters.

Change to MEM_SIZE_LOG2, to support only power of 2 storage sizes for
now. However in the future we might want to add support for non pow2
sizes so register map is not changed.

Change transfer length to -1 value to spare logic.

Change FIFO interface to AXIS to have backpressure, this allows the
implementation of data movement logic in the storage unit and let the
FSM handle high level control an synchronization and control the storage
unit through a control interface.

Refactor FSM to have preparation states where slow storages can be
configured and started ahead of the data handling.

Make bypasss FIFO optional since in some cases causes timing failures
due the missing output register of the memory. This can be targeted in
a later commit.

Hook up underflow/overflow to regmap useful in case of external memory
where rate drops due misconfiguration can be detected.

Cleanup for verilator.

Scripting:
Add HBM and DDR external memory support using util_hbm IP
Replace asym_block_ram with util_do_ram IP
2022-04-28 14:31:32 +03:00
Laszlo Nagy 35d32e0143 util_do_ram: Initial version
This IP replaces the ad_mem_asym module as storage element for the data
offload.
Having standard AXIS interface for data will allow
implementation of storages on UltraRAM.
2022-04-28 14:31:32 +03:00
Laszlo Nagy 3209b9d840 interfaces: Data offload control interface
Have a control interface between the data offload and storage units.
2022-04-28 14:31:32 +03:00
Laszlo Nagy 3bf7b6c80f util_hbm: Initial version
This IP serves as storage interfacing element for external memories like
HBM or DDR4 which have AXI3 or AXI4 data interfaces.

The core leverages the axi_dmac as building blocks by merging an array of
simplex DMA channels into duplex AXI channels. The core will split the
incoming data from the source AXIS interface to multiple AXI channels,
and in the read phase will merge the multiple AXI channels into a single
AXIS destination interface.
The number of duplex channels is set by syntheses parameter and must be
set with the ratio of AXIS and AXI3/4 interface.

Underflow or Overflow conditions are reported back to the data offload
through the control/status interface.

In case multiple AXI channels are used the source and destination AXIS
interfaces widths must match.
2022-04-28 14:31:32 +03:00
David Winter 6be4ea92a7 library: axi_tdd: Make synchronization stage optional
Signed-off-by: David Winter <david.winter@analog.com>
2022-04-20 10:54:53 +03:00
David Winter 73468d662b axi_tdd: Add false paths to tdd sync input
This allows the external synchronization input to be driven from
asynchronous sources like a 1 PPS signal or just signals from different
clock domains in general.

Signed-off-by: David Winter <david.winter@analog.com>
2022-04-20 10:54:53 +03:00
Iulia Moldovan 63089a7c5d library/axi_ad9361/intel: Update I/O format 2022-04-08 11:00:04 +03:00
Iulia Moldovan 7a5ecb592e library/data_offload: Remove empty module data_offload_control 2022-04-07 17:17:47 +03:00
Adrian Costina 18b5fabde0 library: Remove unused IPs 2022-04-06 14:57:37 +03:00
AndrDragomir 60be01f2eb axi_clock_monitor: Fix various issues
- Replace .xdc file
- Remove parameter dependency for wire signals
- Fix typo
- Remove unnecessary comments
- Fix signal width
2022-04-05 12:23:33 +03:00
Iulia Moldovan fe713a5e98 library/axi_dmac: Rename 2d_transfer to dmac_2d_transfer
Update the file according to HDL guideline.
Replace all occurrences of 2d_transfer with dmac_2d_transfer.
Update axi_dmac/Makefile.
2022-04-01 16:02:46 +03:00
Iulia Moldovan d9ec44657f libraries: Correct module name according to the filename 2022-04-01 16:02:46 +03:00
PopPaul2021 0d44bfb4dd
axi_hdmi_tx update for: ZedBoard, ZC706, ZC702, de10nano, ADRV9361-Z7035 (#897) 2022-03-29 16:51:21 +03:00
Adrian Costina de70157e3a xilinx/common:ad_data_out.v: Fix typo 2022-03-29 16:50:20 +03:00
AndrDragomir 204dff3b73 library: Adding axi_clock_monitor ip core 2022-03-29 10:02:42 +03:00
Adrian Costina 31c21cad7f xilinx/common: Add CLKEDGE parameter to ad_data_* module 2022-03-25 15:10:12 +02:00
Nick Pillitteri c1721e18dd account for ADI_VIVADO_IP_LIBRARY global variable when adding subcores 2022-03-24 16:29:49 +02:00
alin724 6a252ec067 util_mii_to_rmii: Fix 100 Mbps configuration functionality 2022-03-22 14:30:24 +02:00
Nick Pillitteri 084d44c978 add ability to customize Xilinx IP library version to value other than "user" from a global variable. 2022-03-17 09:43:39 +02:00
Laszlo Nagy e66c5282bc axi_adrv9001: Expose IODELAY_CTRL parameter to top level 2022-03-02 11:06:12 +02:00
Laszlo Nagy 4c7be950d1 ad_ip_jesd204_tpl_adc: Fix latency of valid signal 2022-02-16 10:27:50 +02:00
Laszlo Nagy f245448976 ad_ip_jesd204_tpl_ : Add missing dependency 2022-02-07 19:14:01 +02:00
Laszlo Nagy b5092662d5 ad_ip_jesd204_tpl_adc: Refactor external sync
- Add EXT_SYNC option
- Gate valid while in reset
2022-02-07 19:14:01 +02:00
Laszlo Nagy 8c7cca4277 common/up_adc_common: Add ext sync regs 2022-02-07 19:14:01 +02:00
Laszlo Nagy 1b06c74919 common/up_dac_common: Add manual sync request 2022-02-07 19:14:01 +02:00
Laszlo Nagy db49aa652f common/up_dac_common: Add support for explicit disarm control 2022-02-07 19:14:01 +02:00
Laszlo Nagy 4e644e4e74 jesd204/ad_ip_jesd204_tpl_dac: External sync refactor
- Expose EXT_SYNC parameter to sw
- Add external manual sync request
- Add rst to interface
2022-02-07 19:14:01 +02:00
Laszlo Nagy 1ca5abc91e common/up_xfer_cntrl: Fix transfer done timing
up_xfer_done should signalize when a previous control set is
transferred to the other clock domain and the current control set is latched.

If a bit from the up_data_cntrl changes, it should stay in that state until
the up_xfer_done asserts.
2022-02-07 19:14:01 +02:00
alin724 170ce42e3e util_mii_to_rmii: Initial commit 2022-02-03 10:23:12 +02:00
AndreiGrozav 38f3627695 ad_dds: Fix DDS start samples
When using a CLK_RATIO > 1 the first n samples(n=CLK_RATIO) after sync, are
noisy. This is because the phase accumulator data is passed to the phase to
amplitude converter, during the phase synchronization step.
2022-01-31 14:07:11 +02:00
Iulia Moldovan b26b4c00f0 ad9783: Clean-up parameters and module instances 2022-01-25 18:24:43 +02:00
Laszlo Nagy 889447e900 axi_ad9361: make IODELAYCTRL insertion optional 2022-01-25 09:50:31 +02:00
Laszlo Nagy bc8e7881f2 axi_dmac: Hook up ID
Signed-off-by: Laszlo Nagy <laszlo.nagy@analog.com>
2022-01-25 09:50:22 +02:00
Iulia Moldovan f3cf7508c8 ad9783: Update Makefile 2022-01-20 12:31:57 +02:00
LIacob106 9d94f21d89 scripts/adi_xilinx_device_info_enc.tcl: Change regex for vcu128
The regex does not match vcu128 as Ultrascale+. It matches for Ultrascale.
2022-01-12 17:32:47 +02:00
Filip Gherman 9d8097389c library/jesd204/jesd204_common/pipeline_stage.v: Initialize pipeline stage register 2022-01-12 13:43:20 +02:00
Filip Gherman 080925e8fe library/jesd204: tpl timing bug fix 2022-01-12 10:14:55 +02:00
Iulia Moldovan 08f029c757 axi_ad9783: Initial commit 2022-01-07 14:04:08 +02:00
David Winter fcd3bfd349 util_pulse_gen: Reload registers when counter is at one
This patch fixes an issue where the pulse width is only updated two
periods after the current one.

Signed-off-by: David Winter <david.winter@analog.com>
2022-01-04 15:02:05 +02:00
AndreiGrozav c2d960e029 axi_adrv9001: Add external sync support
The external sync must be synchronous to the reference clock, in order
to obtain a deterministic synchronization of the interface.
2021-12-16 15:16:30 +02:00
Laszlo Nagy 41525f348b axi_adrv9001/axi_adrv9001_core.v: Disable TDD and IOCTRL if second SSI interface is disabled 2021-12-08 17:31:53 +02:00
Laszlo Nagy dfe153dc68 axi_adrv9001/axi_adrv9001_tdd.v: Add disable option for TDD 2021-12-08 17:31:53 +02:00
Laszlo Nagy 8cc0367e8f axi_adrv9001: Hide disabled interfaces
Signed-off-by: Laszlo Nagy <laszlo.nagy@analog.com>
2021-12-08 17:31:53 +02:00
Laszlo Nagy 6a4b46ebb4 axi_adrv9001: Make Rx2 and Tx2 source synchronous interfaces optional
If the Rx2 and Tx2 SSI are disabled the rx1,tx2 data paths are forced to
R1 mode.

Signed-off-by: Laszlo Nagy <laszlo.nagy@analog.com>
2021-12-08 17:31:53 +02:00
sergiu arpadi c1ca578343 axi_ad7616: Fix sync port 2021-11-22 15:22:16 +02:00
Laszlo Nagy 8e0a45dea9 jesd204_rx/jesd204_lane_latency_monitor.v: Fix for datapath width of 4
Current implementation is correct only for datapath width of 8.
The buswidth of latency measurement inside a beat has a fixed width (3 bits)
for each lane that must be taken in account when computing the total latency.

Signed-off-by: Laszlo Nagy <laszlo.nagy@analog.com>
2021-11-19 18:14:43 +02:00
Laszlo Nagy 7e5a638386 jesd204_versal_gt_adapter_rx/tx: Infer Versal GT interface 2021-11-19 14:01:48 +02:00
Laszlo Nagy b25c37a8cc axi_adrv9001/intel: Add dummy parameters to match Xilinx interface
Signed-off-by: Laszlo Nagy <laszlo.nagy@analog.com>
2021-11-12 14:09:14 +02:00
Laszlo Nagy 36d0a8b3e8 library:util_pad: Initial version
Data to DMA/system memory must be presented in widths of multiple of 8 bits,
however this padding is not optimal if is done in the transport layer
since this will affect the DAC/ADC FIFO or offload storage.

This utility block adds or removes padding from sample stream in case the
sample with is not multiple of 8 bits, and can be placed between the DMA
and FIFO/Offload blocks.
2021-11-10 14:03:34 +02:00
Laszlo Nagy cb8cf4b3d2 jesd204/scripts: Helper procedure for TPL width calculation 2021-11-10 14:03:34 +02:00
Laszlo Nagy 5dd9fd4832 axi_dmac: Allow wider FIFO/AXI Stream interface
On large projects with multiple channels the databus on the FIFO/AXI
stream interface can get wider that 1024 bits.

This commit allows a wider range for all the interfaces,
in case for the memory mapped interfaces where the range is 32-1024 the
user selects a bus width out of range that will be handled by the IPI.
2021-11-10 14:03:34 +02:00
Laszlo Nagy fcb16daf5b axi_adrv9001: Add the option of global clock buffers on 7 series
Using global clock can help placement issues where the logic does not fits in one
clock region.
2021-11-08 13:53:51 +02:00
Laszlo Nagy 7112fbce7e library/scripts/adi_xilinx_device_info_enc.tcl: Add K26 support 2021-11-08 09:23:02 +02:00
Nicola Corna 5d7f4672f5 axi_i2s_adi: initialize cdc_sync_stage0_tick bits to '0' 2021-11-08 08:52:01 +02:00
Nicola Corna 18ab43b5a1 axi_hdmi_tx: Add UltraScale+ architecture to Verilog 2021-11-08 08:52:01 +02:00
Dan Hotoleanu a381fe3e92 ad_ip_jesd204_tpl_adc: Add value of 14 to CONVERTER_RESOLUTION parameter
Added new allowed value of 14 for the CONVERTER_RESOLUTION parameter.

Signed-off-by: Dan Hotoleanu <dan.hotoleanu@analog.com>
2021-11-04 12:18:06 +02:00
stefan.raus 3c07861ee8 generate_xml.sh: Replace < and > in error message
Replace < with &lt; and > with &gt; in ERRS to not broke created xml.

Signed-off-by: stefan.raus <stefan.raus@analog.com>
2021-11-03 15:22:45 +02:00
Laszlo Nagy 70cc53bbc8 ad_ip_jesd204_tpl_dac: Move external dac sync bit 2021-10-27 18:36:47 +03:00
Laszlo Nagy 7b0922e4dc library/common/up_adc_common.v: Remove tabs 2021-10-27 18:36:47 +03:00
Laszlo Nagy a9c9636780 library/common/up_dac_common.v: Cleanup spaces 2021-10-27 18:36:47 +03:00
Filip Gherman 9b7c2852b6 adxcvr: Increase version to 17.5.a
Add suport for XCVR phase adjust buffer status:
   - Expose TXBUFSTATUS and RXBUFSTATUS
   - Create RXBUFSTATUS_RST flag for clearing RXBUFSTATUS
2021-10-27 14:40:50 +03:00
Laszlo Nagy d493b724f2 axi_adrv9001/adrv9001_rx.v: Simplify clocking 2021-10-27 14:40:08 +03:00
David Winter 6a5d2f76d5 data_offload: Fix oversized TX input transactions
Signed-off-by: David Winter <david.winter@analog.com>
2021-10-27 14:26:22 +03:00
David Winter cd6024b341 Revert "data_offload: Fix oversized inputs in TX mode"
This reverts commit 0e8f55b2d7.
2021-10-27 14:26:22 +03:00
sergiu arpadi 52df3c4937 ad463x_data_capture: Remove tb 2021-10-26 15:58:54 +03:00
LIacob106 076e81a17c library: Add link to wiki for IPs 2021-10-25 10:44:53 +03:00
Istvan Csomortani 6a526f4bb6 ad463x_data_capture: Initial commit
IP required to support echo and master clock mode
2021-10-18 16:13:31 +03:00
Istvan Csomortani 5ac64b021f spi_engine_execution: Delete control loop-back in sdi_data_valid generation 2021-10-18 16:13:31 +03:00
sergiu arpadi 6570c23a76 axi_spi_engine: Add generic config params
The 4 parameters are added to facilitate transmiting project
related information to the software. They act as read-only
memory which is written in Vivado when the project builds.
Set 31 to SDI FIFO's almost full threshold
2021-10-18 16:13:31 +03:00
Istvan Csomortani f86ae28e50 spi_engine/data_reorder: Initial commit
In case of multiple SDI (MISO) lanes, the samples arrives in a parallel
fashion. For example in case of 4 MISO line, at the first latching clock
edge 4 bits of a sample will be saved, one bit into each shift register.

The data reorder module reconstruct the incoming samples from the AXI
stream of the offload module.
2021-10-18 16:13:31 +03:00
Istvan Csomortani 6565c5d018 library/tb: Improve run_tb.sh 2021-10-18 16:13:31 +03:00
LIacob106 e34346360d scripts: Add logic for vivado version check 2021-10-12 14:34:11 +03:00
Laszlo Nagy 812baf9022 Revert "data_offload: Fix timing violation"
This reverts commit 1fe0d5f8e0.
2021-10-08 11:42:05 +03:00
Filip Gherman dbd5ffe4ed jesd204_rx: fixed makefile 2021-10-07 12:48:08 +03:00
Laszlo Nagy 0c6c28ed84 jesd204/ad_ip_jesd204_tpl : Add support for 12 lanes 2021-10-06 15:49:56 +03:00
Laszlo Nagy 51b643b978 Makefile: Fix misc makefiles from projects and library 2021-10-05 14:24:48 +03:00
Laszlo Nagy 22e1366bfc jesd204/jesd204_rx: Define tie off values for unused ports 2021-10-05 14:09:51 +03:00
Laszlo Nagy aa93c17cdc jesd204/jesd204_tx/jesd204_tx.v: Have FFs initial value, useful for simulation 2021-10-05 14:09:51 +03:00
Laszlo Nagy 1a9e7dbeb4 jesd204:jesd204_versal_gt_adapter_rx/tx: Add adapter for Versal transceiver IP 2021-10-05 14:09:51 +03:00
Laszlo Nagy 4d12c4d99a scripts/adi_xilinx_device_info_enc.tcl: Add Versal support 2021-10-05 14:09:51 +03:00
Laszlo Nagy 2b242bf06f scripts/adi_ip_xilinx.tcl: Enable auto family support
Some IPs like JESD link layer were marked as not supported on Versal devices by
the current flow while other not (e.g. TPL).
The auto family support seems to workaround this issue.
2021-10-05 14:09:51 +03:00
Laszlo Nagy d94ec80e08 Update README.md
Correct the  ZCU102 PL DDR memory controller interface width and speed based on available options of the MIG
2021-10-05 11:59:51 +03:00
David Winter 0e8f55b2d7 data_offload: Fix oversized inputs in TX mode
This commit fixes an issue in situations where we provide an oversized
transaction to the data offload in TX mode. Previously, the data offload
would stop accepting new data (wr_ready <= 0) after filling up the
internal storage, and get stuck waiting for the input transaction to
end, thus locking up the device.

This commit addresses that issue by allowing the data offload to consume
the full input transaction, even if the tail of the buffer will be
truncated in the output.

Signed-off-by: David Winter <david.winter@analog.com>
2021-09-29 18:33:11 +03:00
Filip Gherman 7ed4955661 axi_adxcvr_ip.tcl util_adxcvr_ip.tcl: Fixed asynchronous resets critical warnings in XCVR 2021-09-28 04:53:02 +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
Mihaita Nagy 1fe0d5f8e0 data_offload: Fix timing violation 2021-09-22 12:18:33 +03:00
David Winter cdb9a0af2b data_offload: Add sync to cyclic mode
Signed-off-by: David Winter <david.winter@analog.com>
2021-09-21 09:06:03 +03:00
AndreiGrozav 76cd5581bc axi_pwm_gen: Add config in soft reset option 2021-09-17 11:50:46 +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
Robin Getz 12a3f8799e JESD204 Interface Framework : add logo
Add a small logo for branding purposes.

Signed-off-by: Robin Getz <robin.getz@analog.com>
2021-09-16 16:49:52 +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
Iacob_Liviu 6763ddcda9 spi_engine_execution: Fix cs signal generation
The cs signal can now accept the IOB TRUE attribute.
2021-09-13 11:39:02 +03:00
David Winter 0392013bd2 util_tdd_sync: Narrow scope of false path to D pin
Signed-off-by: David Winter <david.winter@analog.com>
2021-09-08 11:58:24 +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
Filip Gherman 0372ce1821 axi_adxcvr:util_adxcvr: Correctly defined resets. 2021-09-08 11:51:59 +03:00
LIacob106 16a93a804b adrv9001[intel]: Add second pair of DMAs
fix observations for PR
2021-09-01 15:04:14 +03:00
alin724 f8c82c611d axi_adrv9001: Add support for symbol operation mode on Xilinx devices
Add CMOS support for the interface for the following symbol modes on Xilinx devices:

A              B  C       D                     E       F      G            H
CSSI__1-lane   1  16/8    80(SDR)/160(DDR)      80      -      SDR/DDR      SDR/DDR->4/2(C=16), 2/1(C=8)

Columns description:
A - SSI Modes
B - Data Lanes Per Channel
C - Serialization factor Per data lane
D - Max data lane rate(MHz)
E - Max Clock rate (MHz)
F - Max Sample Rate for I/Q (MHz)
G - Data Type
H - DDS Rate

CSSI - CMOS Source Synchronous Interface
2021-08-17 15:33:06 +03:00
Laszlo Nagy 8afc03abab jesd204/ad_ip_jesd204_tpl_dac: Intel: Add support for AD916x preset files 2021-08-16 07:22:50 +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
David Winter 235542cac9 data_offload: Fix support for > 4 GiB of storage
This commit changes the transfer length register to work in increments of
64 bytes and without offset. The true transfer length can now be
determined by multiplying the value of the transfer_length register with
64.
A value of zero is interpreted as a request for all available storage.

Additionally, this commit fixes an off by one issue that was discovered
during testing of the RX path.

Signed-off-by: David Winter <david.winter@analog.com>
2021-08-06 11:55:24 +03:00
David Winter 25038ccb4d data_offload: Fix MEM_SIZE parameter width
Signed-off-by: David Winter <david.winter@analog.com>
2021-08-06 11:55:24 +03:00
David Winter 58953ff40d data_offload: Fix m_axis output stability issue
Signed-off-by: David Winter <david.winter@analog.com>
2021-08-06 11:55:24 +03:00
David Winter 2b55c7453b data_offload: Fix duplicated output samples
Signed-off-by: David Winter <david.winter@analog.com>
2021-08-06 11:55:24 +03:00
David Winter 04f2d19d4b data_offload: Fix data_offload getting stuck on oscillating m_saxis_ready
Signed-off-by: David Winter <david.winter@analog.com>
2021-08-06 11:55:24 +03:00
David Winter 0af50d3f72 data_offload: Fix oneshot mode
Signed-off-by: David Winter <david.winter@analog.com>
2021-08-06 11:55:24 +03:00
David Winter 66748510ea data_offload: write_fsm: Always transition out of idle on high init_req
Signed-off-by: David Winter <david.winter@analog.com>
2021-08-06 11:55:24 +03:00
David Winter 9faef440b2 data_offload: Bump hdl version
Signed-off-by: David Winter <david.winter@analog.com>
2021-08-06 11:55:24 +03:00
David Winter a89d0e6176 data_offload: Fix AXI register map
Signed-off-by: David Winter <david.winter@analog.com>
2021-08-06 11:55:24 +03:00
David Winter 537a284115 data_offload: Fix readme images
Signed-off-by: David Winter <david.winter@analog.com>
2021-08-06 11:55:24 +03:00
Istvan Csomortani 6516b09a31 data_offload: Update README and generic block design 2021-08-06 11:55:24 +03:00
Istvan Csomortani 26518cdace data_offload: Add block diagrams 2021-08-06 11:55:24 +03:00
Istvan Csomortani 9b1108ea87 data_offload: Flush the DMA if the transaction size is bigger than the storage 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 0436a82f4e data_offload: Fix alignment of write last beat and write full 2021-08-06 11:55:24 +03:00
Istvan Csomortani 378daf031c data_offload: Improve timing in regmap 2021-08-06 11:55:24 +03:00
Istvan Csomortani c27a0e4add data_offload: Fix fifo_dst_ready generation 2021-08-06 11:55:24 +03:00
Istvan Csomortani 86b611c1f7 data_offload: Initial commit 2021-08-06 11:55:24 +03:00
Istvan Csomortani 6e97803437 ad_axis_inf_rx: Initialize output ports to avoid X propagation in simulation 2021-08-06 11:55:24 +03:00
Istvan Csomortani b9ac3a78a9 interfaces: Add XFER_REQ to fifo_rd_rtl.xml 2021-08-06 11:55:24 +03:00
Istvan Csomortani 157a8dee17 util_fifo2axi_bridge: Initial commit 2021-08-03 23:02:17 +03:00
Istvan Csomortani 0959c2bcad util_axis_fifo_asym: Initial commit 2021-08-03 23:02:17 +03:00
Nick Pillitteri 1543eb8881 axi_generic_adc: pass in number of channels instantiated to up_adc_common. Allows drivers/iio/adc/ad_adc.c driver to be used with this core.
Signed-off-by: Nick Pillitteri <njpillitteri@gmail.com>
2021-08-02 13:10:26 +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
Isaac T 569257c4f3 Fix width of device_cfg_octets_per_multiframe
The width of the parameter `device_cfg_octets_per_multiframe` doesn't match the width in the submodules and corresponding slave module jesd204_tx, resulting in a warning generated during validation in Vivado. This patch increases the width of this parameter in axi_jesd204_tx.
2021-07-27 11:34:34 +03:00
Laszlo Nagy 20fc00a811 jesd204/ad_ip_jesd204_tpl_dac: Support for F=64 2021-07-27 11:31:19 +03:00
Laszlo Nagy c39b6b2ac8 jesd20r_rx/jesd204_tx: Support for F=64 2021-07-27 11:31:19 +03:00
Laszlo Nagy 4407d72d42 esd204/ad_ip_jesd204_tpl_adc: Support more datapath widths 2021-07-27 11:31:19 +03:00
Istvan Csomortani c808d8c3c7 ad_ip_jesd204_tpl_adc: Max number of lanes is 32 2021-07-27 10:28:48 +03:00
Istvan Csomortani f0027faf88 adi_jesd204: Add support of 16 lanes 2021-07-27 10:28:48 +03:00
AndreiGrozav 81320b6469 axi_pwm_gen: Fix offset mechanism
Fix offset for pwms with different periods.
The previous version was using an offset scheme based on pwm counter_0.
By using a separate offset counter the user will not be constrained by
pwm_0 period in regards with the offset of other pulses. In this version
offset 0 is used to delay pwm 0 in regards to the offset counter.

The offset counter will start after the load_config signal is asserted
and all active pwm counters finish the previous cycle or by a software
reset.

The software reset should also be used when using external_sync.
2021-07-13 15:49:42 +03:00
Iacob_Liviu 30b491fff7 tb: jesd204: update and automate frame_align_tb
Fix jesd204 frame_aligh_tb by adding a fifo to solve rx and tx delay.
It saves the data from tx and compares it with the recieved ones from
rx.
2021-07-12 10:30:49 +01:00
Josh Blum e1829a061d adrv9001: fixes for reset metastability on xilinx ioserdes
* fixes DRC warning that the clocking configuration may result in data errors
* fixes ioserdes reset issue with synchronous de-assert in data clock domain
2021-07-09 11:11:04 +03:00
alin724 e61cadb2ca axi_dmac: Restore axi_dmac_regmap_request to f7b8a2d version 2021-07-02 15:52:48 +03:00
David Winter 30cc7d7420 axi_tdd: Add standalone axi_tdd IP core
This commit adds a standalone TDD IP core based on the
existing up_tdd_cntrl module and the up_axi pcore <-> axi bridge.

Signed-off-by: David Winter <david.winter@analog.com>
2021-06-26 08:27:54 +03:00
Laszlo Nagy 20161cf458 xilinx/axi_adxcvr/axi_adxcvr_mdrp: Fix read if all channels are selected
If all channels are selected for read the values and ready signals from every
transceiver are combined. Each element merges his signals with the previous.
The first element of the chain must assume the previous channel is always ready.
2021-06-25 14:15:59 +03:00
Laszlo Nagy 2995f78751 Revert "modified transceiver configuration files"
This reverts commit 829e4155ca.

The first element of the read chain must assume there is no valid element
in front of it.  For each element the ready signal of the transceiver should be
routed if the channel is selected either by channel number or broadcast.
When the current element is not selected it should forward the ready signal from
the previous element, however this is not the case for the first one.

Having a constant 1'b1 connected to the ready input of the first element
corrupts the first read of the first channel after a channel switch.

This change will break broadcast reads.
2021-06-25 14:15:59 +03:00
David Winter 386afd8511 up_tdd_cntrl: Add magic value "TDDC"
Adds a magic identification value of 0x54444443 at word address 0x3.
It is derived from the ASCII String "TDDC" interpreted as a big-endian
32-bit unsigned integer.

Signed-off-by: David Winter <david.winter@analog.com>
2021-06-14 16:50:59 +03:00
David Winter f2017050ed axi_ad9361: Fix typo in tdd interface
As alluded to in the subject, this commit simply fixes what appears
to be a copy-paste bug.

Signed-off-by: David Winter <david.winter@analog.com>
2021-06-14 16:50:47 +03:00
Laszlo Nagy bf77271fb3 axi_adxcvr: Increase version to 17.4.a
Add support for:
  - 204C support for GTH
  - added second clock output for util_xcvr used in case for GTH
  - PROG_DIV support for GTH and GTY
2021-06-10 09:53:43 +03:00
Laszlo Nagy 505142f7f8 xilinx/axi_adxcvr: Expose PLL status in status bit 2021-06-10 09:53:43 +03:00
Laszlo Nagy b4c8a559fc util_adxcvr: Hook up RXPROGDIVRESET 2021-06-10 09:53:43 +03:00
Laszlo Nagy d743406ecd util_adxcvr: Add 204C support for GTH3/4
For GTH3/4  64b66b mode add a second clock that drives CLKUSR with a clock
that is 2x of the CLKUSR2 (lane rate/66),
   CLKUSR = 2 x CLKUSR2
   CLKUSR = lane rate / 33

This can be driven from the GT reference clock or second out clock div2.

This commit also:
- fix eyescan scale on GTY
- remove irrelevant parameters
2021-06-10 09:53:43 +03:00
Laszlo Nagy c0775adac3 util_adxcvr/util_adxcvr_xch: Place 204C logic to a common place 2021-06-10 09:53:43 +03:00
Alin-Tudor Sferle 54c65013aa
Fix registers mismatches in regmap_tb from jesd 204 rx/tx and dmac
* dmac_tb: Fix regmap_tb registers mismatches

* jesd204: Fix jes204 rx and tx regmap_tb Octets per multiframe mismatch
2021-05-31 16:47:12 +03:00
Laszlo Nagy aa180fb272 axi_adrv9001: Let gate signals have initial value, useful for simulation 2021-05-26 15:44:45 +03:00
Laszlo Nagy b85784ebe8 axi_adrv9001: rx: calculate ramp value based on received value 2021-05-26 15:44:45 +03:00