Commit Graph

5283 Commits (de324526e35567920e0511e92d4c4cd330ac5760)

Author SHA1 Message Date
Laszlo Nagy ae027d467e axi_dmac: clear measured transfer length when core disabled
When core is disabled it clears all its status registers. The transfer length
register should not fall out from this rule.
2019-05-24 11:11:08 +03:00
Laszlo Nagy 01a2bab978 axi_dmac: fix transfer length reporting cyclic mode
Let the measured transfer length to be cleared at the end of each
transfer, other case in cyclic mode the counter will overflow and will
not present any useful information.
2019-05-24 11:11:08 +03:00
Laszlo Nagy 42a7e87cb3 axi_dmac: patch xfer_request
Once xfer_request is set the DMA must accept samples in the same clock
cycle if the fifo_wr_en signal is asserted.

If the req_valid asserts faster than the ID gets synchronized over the
the xfer request asserts without being ready to accept data.
This can lead to overflow assertion when using a FIFO like interface.
2019-05-24 11:11:08 +03:00
Laszlo Nagy 6fae37504b axi_dmac: patch for partial transfers support
This patch addresses the following issue:

  In case of transfers with multiple segments, if TLAST asserts on the last
beat of a non-last segment while more descriptors are queued up,
the completions for the queued segments may be missed causing timeout in
processes that wait for transfer completions.
2019-05-24 11:11:08 +03:00
Laszlo Nagy 5e1100ee77 axi_dmac: patch for partial 2D transfer support
This patch addresses the following issue:

  In 2D mode when consecutive partial transfers occur, and the latter is
very short, will interfere with the completion mechanism of the first
transfer leading to uncompleted segments and unreported partial
transfers.
2019-05-24 11:11:08 +03:00
Istvan Csomortani 68a5f2f86c fmcomms11: Add a upack module into the TX path
Because the AD9162 will run in M=2 mode, we have to put a upack module
between the TPL and FIFO/DMA.
2019-05-24 11:07:13 +03:00
Adrian Costina a0d738e1a9 util_adxcvr: Add GTH parameters for line rate of 15Gbps 2019-05-24 11:05:36 +03:00
Laszlo Nagy bf31f949e6 scripts/adi_project:adi_project_alt: add parameters to top level
Allow the top level files to have parameters.
Pass the parameters from system_project.tcl to the Vivado/Quartus project and
to the block design scripts through ad_project_params variable.

Usage:

1. create a project with a list of parameters:

adi_project_xilinx  my_project [list PARAM_A PARAM_A_VALUE PARAM_B PARAM_B_VALUE]
or
adi_project_altera  my_project [list PARAM_A PARAM_A_VALUE PARAM_B PARAM_B_VALUE]

2. access the parameter in QSYS or block design through the $ad_project_params variable

e.g
  set PARAM_A $ad_project_params(PARAM_A)
  set PARAM_B $ad_project_params(PARAM_B)

3. In system_top.v use PARAM_A and PARAM_B as parameters/generics
2019-05-24 11:05:10 +03:00
Laszlo Nagy 9832c87144 jesd204:tpl: add missing dependencies for Intel 2019-05-24 11:04:46 +03:00
Robin Getz 5794b67fe0 Update README.md
Promote support, and add a few more details.
2019-05-22 11:04:06 +03:00
Istvan Csomortani 157afcbc33 tb_base: Fix various test benches
The tb_base.v verilog files does not contain a full module definition,
just some plain test code. In general the files is sourced inside the
test bench main module. As is, defining a timescale in these files will
generate an error, because timescale directive can not be inside a
module.

Delete all the timescale directive from these files.
2019-05-17 11:20:48 +03:00
Adrian Costina 1c8e71ec4e fmcadc4: Remove project 2019-05-16 15:10:04 +01:00
Laszlo Nagy ec636b785a scripts:adi_project.tcl: add check for missing clock definitions
Look for undefined clocks which do not show up in the timing summary
therefore can lead to silent failures.
If clocks are not defined they are not analyzed during the timing
checks.
2019-05-16 14:55:35 +03:00
Laszlo Nagy 607f2bd8de ad9208_dual_ebz: Initial version
This commit add support for the dual AD9208-DUAL-EBZ board.

The clocking scheme is different from the other projects.
The device clock (LaneRate/40) is no longer an output of the transceivers (RXOUTCLOCK),
it is received directly from the clockchip  SCLKOUT9 output through the REFCLK1.
This is needed for deterministic latency where SYSREF must be sampled
with the device clock by meeting setup and hold time.

The two channels from each converter are merged together and transferred  to the DDR with a single DMA.

It has all transceiver parameters set for a 15Gpbs lane rate and uses the QPLL.

REQUIRED HARDWARE CHANGES : The F1 2A fuse must be populated on the FMC
board.
2019-05-16 13:29:34 +03:00
Laszlo Nagy b90c2e79dc jesd204_rx: add parameter for input pipeline stages
Pipeline stages must be implemented on register so placer can spread it
cross the device. Use the shreg_extract attribute to avoid SRL
inference.
2019-05-16 13:29:34 +03:00
Laszlo Nagy 6c6d14722d daq3:qsys: use bundled AXIS interface 2019-05-16 13:27:19 +03:00
Laszlo Nagy 089cd882bc daq2:qsys: use bundled AXIS interface 2019-05-16 13:27:19 +03:00
Laszlo Nagy fd88906b6b aradio:qsys: use bundled AXIS interface 2019-05-16 13:27:19 +03:00
Laszlo Nagy 7afc9e77a2 adrv9371:qsys: use bundled AXIS interface 2019-05-16 13:27:19 +03:00
Laszlo Nagy c930395773 adrv9009:qsys: use bundled AXIS interface 2019-05-16 13:27:19 +03:00
Laszlo Nagy 96769c92bb util_upack2: bundle AXIS signals into bus for Intel 2019-05-16 13:27:19 +03:00
Laszlo Nagy 9273cde33f util_adcfifo/util_dacfifo: bundle AXIS signals into bus for Intel 2019-05-16 13:27:19 +03:00
Laszlo Nagy eedb2ce0f4 avl_dacfifo: bundle AXIS signals into bus 2019-05-16 13:27:19 +03:00
Laszlo Nagy dd952ddad1 axi_dmac: bundle AXI Stream signals into bus for Intel
Add signals that are optional by standard but required by the
axi4stream interface definition. Make them selectable by parameters.
2019-05-16 13:27:19 +03:00
Laszlo Nagy 7f16f823ff Revert "axi_dmac: add tlast to the axis interface for Intel"
This reverts commit e2c75c015f.
2019-05-16 13:27:19 +03:00
Istvan Csomortani 7b26190716 fmcomms11: By default we support complex mode 2019-05-16 13:26:58 +03:00
Istvan Csomortani cf03e216fe fmcomms11: Update the project with the new TPL 2019-05-16 13:26:58 +03:00
Istvan Csomortani eba1975144 fmcomms11: Initial commit 2019-05-16 13:26:58 +03:00
Laszlo Nagy 92d87c2d60 jesd204/scripts: fix indentation 2019-05-16 13:22:55 +03:00
Laszlo Nagy cf258ace83 jesd204/scripts: TPL add support for M=1
When only one converter is used there is no need for concatenation and
slicer cores. In that case the TPL will connect to port 0 from the
application layer.
2019-05-16 13:22:55 +03:00
Adrian Costina 168e1951ee library: Add `timescale to modules that are missing it 2019-05-15 15:37:44 +03:00
Laszlo Nagy f45408d6a9 util_adxcvr: Expose GTY4 parameters required for 15Gbps link
These parameters must be overwritten when the link is at 15Gbps.
The parameters have a GTY4_ prefix since the same parameters are shared
between GTY4 and GTH4 having different default values.
2019-05-09 15:33:15 +03:00
Sergiu Arpadi 7ae2bc6285 adi_project: used report_timing_summary to evaluate timing 2019-05-09 12:27:35 +03:00
Sergiu Arpadi 17c20eeb7a adi_project: Fix timing check
Fixed timing paths evaluation where there is no logic in PL.
2019-05-09 12:27:35 +03:00
Istvan Csomortani 31e7c8e778 zc706/plddr3_adc|dacfifo_bd: PL DDR3 size is 1Gbyte 2019-05-06 17:17:00 +03:00
Laszlo Nagy 572089657a axi_dmac: infer interrupt line for Xilinx projects
The interrupt controller from Microblaze based projects requires that
all its inputs have attributes which define the sensitivity of the
interrupt line. Other case it defaults to EDGE_RISING which is not the
case for DMAC, leading to incorrect interrupt reporting and handling in
case of such projects.
2019-04-25 08:25:02 +03:00
Laszlo Nagy 2c2be2f38a scripts: patch incremental compile
Clear the reference checkpoint if the incremental compilation is not
selected through the make option. Other case the scripts will silently
use the reference.dcp checkpoint if that exists.
2019-04-23 18:07:55 +03:00
Adrian Costina c32b4b02f3 sync_bits: Change I/O names of wires "in" and "out" for VHDL users 2019-04-23 18:03:23 +03:00
Laszlo Nagy 525c068993 scripts: Support for incremental compilation
The scripts are looking for a previous run result, a routed design
checkpoint to use it as a reference during the incremental build flow.
Before clearing the project files, the scrips will save the reference dcp
file in the project folder.
If the reference dcp does not exists the build continues normally.

Proposed workflow:
  1. Build your project normally with 'make' or place manually a
  reference.dcp file in the Vivado project folder.
  2. Do some minor modifications
  3. Run the make with the following option:
    make MODE=incr
  4. Repeat steps 2-3
2019-04-22 10:27:16 +03:00
Laszlo Nagy 5b13e205b9 axi_mc_controller:axi_mc_current_monitor: define generated clocks in IP constraints file for better OOC integration 2019-04-22 10:27:16 +03:00
Laszlo Nagy 01748d4364 jesd204:axi_jesd204_tx: set OOC default clock constraints 2019-04-22 10:27:16 +03:00
Laszlo Nagy 4264a7a0dd jesd204:axi_jesd204_rx: set OOC default clock constraints 2019-04-22 10:27:16 +03:00
Laszlo Nagy 0cc07a20c8 util_clkdiv: set OOC default clock constraints 2019-04-22 10:27:16 +03:00
Laszlo Nagy 5dd9cdcdea scripts: Add common IP cache location for OOC mode
Using a common IP cache location for all the project will speed up
compile time of common blocks used in base designs. Example a MicroBlaze
core for VCU118 once compiled it will be reused on other projects.

Using a common IP cache will speed up re-compiles of every project in OOC
mode since the cache won't be cleared as with normal compile flow.
2019-04-22 10:27:16 +03:00
Laszlo Nagy 5e92dc45b2 scripts: add support for OOC synthesis flow
Usage:
from command line set any value to the ADI_USE_OOC_SYNTHESIS variable
e.g. export ADI_USE_OOC_SYNTHESIS=y
2019-04-22 10:27:16 +03:00
Laszlo Nagy e59e133663 util_dacfifo: set OOC default clock constraints
Out of Context constraints are needed for timing driven synthesis as for
avoiding critical warnings due clock queries.
The memory from the FIFO is inferred in different ways for high clock
speeds. Assume the highest frequency for all projects.
2019-04-22 10:27:16 +03:00
Laszlo Nagy dc78ee4982 axi_adc_decimate: fix dependencies 2019-04-22 10:27:16 +03:00
Istvan Csomortani dcdcbc9378 Revert "axi_dmac: assert xfer_request only when ready"
This reverts commit 9d6f3de448.
2019-04-18 16:15:55 +03:00
Adrian Costina f5ed5def27 daq3: vcu118 initial commit 2019-04-17 14:24:35 +03:00
Adrian Costina dc5f90098e vcu118: Initial commit for common files 2019-04-17 14:24:35 +03:00