Commit Graph

3336 Commits (88f48cba619f281fc2b2f4102ad309391e9fa5ab)

Author SHA1 Message Date
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
Istvan Csomortani e9a171df5f adi_board: Delete ad_reconct deprecated proc 2019-05-29 10:27:16 +03:00
Istvan Csomortani f113f8f32f ad9371x/common: Fix ad_xcvrcon proc call
The process ad_xcvrcon has a device_clk attribute which can be used to
connect a custom device clock to the XCVR. Fix the proc call so we can
simplify the block design script.
2019-05-29 10:27:16 +03:00
Istvan Csomortani 391ac468a7 adrv9009/common: Fix ad_xcvrcon proc call
The process ad_xcvrcon has a device_clk attribute which can be used to
connect a custom device clock to the XCVR. Fix the proc call so we can
simplify the block design script.
2019-05-29 10:27:16 +03:00
Istvan Csomortani c1bfd9ddab makefile: Update fmcomms11 2019-05-29 10:23:24 +03:00
Istvan Csomortani 6cac0b9917 makefile: Update dual_ad9208 2019-05-29 10:23:24 +03:00
AndreiGrozav 4aa3e94089 pluto: Fix the adc/dac dma mapping to ps7 S_AXI_HP1/S_AXI_HP2
After the previous commit that removed the interconnects from HP ports
in order to reduce utilization. The directly connected DMAs were not
assigned to a specific range and address.
2019-05-27 17:20:44 +03:00
Istvan Csomortani 3adefaddfd adi_xilinx_msg: New updates for 2018.3 2019-05-27 16:58:34 +03:00
AndreiGrozav 958ba7c3af common zed, zc702 and zc706: Remove parameter assignment
The SYNC_TRANSFER_START parameter is disabled in this configuration
of the axi_dmac, trying to set the parameter will generate a warning.
2019-05-27 16:48:26 +03:00
Laszlo Nagy ab7ab3b32f scripts/adi_project.tcl: make search for undefined clocks more robust
Since we parse the output of a command it is likely to break in the
future if the format of the sting changes. Create a warning for that case.
2019-05-24 13:38:01 +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
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
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 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 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
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 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
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 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
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
Adrian Costina 844a848d2d pluto: Removed interconnects to HP ports to reduce utilization 2019-04-15 17:49:11 +03:00
Adrian Costina d80692da03 m2k: Remove memory interconnects and connect directly to the HP ports
Vivado generates errors with the smartconnect change, altough the interconnect should be synthesized out
2019-04-15 17:49:11 +03:00
Adrian Costina 660f66af98 kcu105: Moved to smartconnect 2019-04-15 17:49:11 +03:00
Adrian Costina 77cc0ce8ba scripts: adi_board.tcl, move from memory interconnect to smartconnect 2019-04-15 17:49:11 +03:00
AndreiGrozav 7ce39c4000 adrv9361z7035_ccbob_cmos: Use ad_rst constraints file
The file was excluded by mistake.
2019-04-12 10:48:50 +03:00
Laszlo Nagy 4b13274c55 ad9361/all/system_constr.xdc: remove manual clock definition
Having a clock assigned manually to the clk output pin of the axi_ad9361
let the Vivado timing engine to not ignore the clock insertion delay when
analyzing paths between clk_0 and the manually created clock that has
the same source (clk_0), resulting in timing failure.
2019-04-12 10:48:50 +03:00
AndreiGrozav bd79a0040e common/vc707: Tools version update (2018.3)
Use 200MHz clock for Ethernet subsystem ref_clk
2019-04-12 10:48:50 +03:00
AndreiGrozav e1f0b301d3 Tools version upgrade
Vivado 2018.2 -> Vivado 2018.3
Quartus 18.0  -> Quartus 18.1
2019-04-12 10:48:50 +03:00
AndreiGrozav d894c30c2d Remove deprecated/unused parameters
adrv9009
adrv9371x
arradio
daq2
daq3
fmcomms2
fmcomms5
2019-03-30 11:26:11 +02:00
Laszlo Nagy 8885caab13 scripts/adi_board.tcl: fix HP address mappings for ZynqMP
In the current form, when connecting a master to the HP ports all
available slave address spaces are mapped to the master (DDR_*, PCIE*, OCM,
QSPI)

Let the PL masters have access only to the DDR_LOW and DDR_HIGH address
spaces to avoid unnecessary resource usage and increase timing margin.
2019-02-27 15:04:41 +02:00
Adrian Costina 6e9bc398c3 fmcomms5: Connect overflow pin between adc_pack and adc_fifo 2019-02-14 14:36:45 +00:00
AndreiGrozav ce04f46b80 motcon2_zed: Fix timing problems
-change implementation strategy
-axi_dmac add extra registers AXI_SLICE_SRC

This was done to increase the overall timing margin.
2019-02-12 10:43:46 +02:00
AndreiGrozav 2d825d8b7c daq3_zc706: Change implementation strategy 2019-02-12 10:43:46 +02:00
Laszlo Nagy c37b24d00f fmcadc5: update adcfifo/dacfifo 2019-01-23 14:45:45 +02:00
Laszlo Nagy 4ec1204767 fmcadc4: update adcfifo/dacfifo 2019-01-23 14:45:45 +02:00
Laszlo Nagy 51e35e081f fmcadc2: update adcfifo/dacfifo 2019-01-23 14:45:45 +02:00
Laszlo Nagy 27f1e4eaed daq3: update adcfifo/dacfifo 2019-01-23 14:45:45 +02:00
Laszlo Nagy 9b048f1a0e daq2: update adcfifo/dacfifo 2019-01-23 14:45:45 +02:00
Laszlo Nagy b98eb28dca adrv9371: update adcfifo/dacfifo 2019-01-23 14:45:45 +02:00
Laszlo Nagy 3183fbf226 adrv9009: update adcfifo/dacfifo 2019-01-23 14:45:45 +02:00
Laszlo Nagy bed5ce516c adcfifo/dacfifo: fix alignments 2019-01-23 14:45:45 +02:00
Laszlo Nagy a3766b464b adcfifo/dacfifo: Use proc to create infrastructure
Create the dacfifo/adcfifo infrastructure with procedures.
This will allow moving the parameters of the dac/adcfifo inside
the block design so it can be calculated based on other parameters.
2019-01-23 14:45:45 +02:00
Laszlo Nagy e864786d3a adrv9371: use generic TPL
Use the generic TPLs for a better scalability to ease lane number
reductions.
2019-01-14 17:21:00 +02:00
Laszlo Nagy 0b66b39352 adrv9009/zc706: make SPI selection consistent 2018-12-21 17:32:48 +02:00
Laszlo Nagy 3d7a376f8b Makefile: update makefiles 2018-12-21 17:32:48 +02:00
Laszlo Nagy c9f1c92eaa adrv9009: use generic TPL
Make the block design parametrizable.
Limitations:
  F = 1,2,4
2018-12-21 17:32:48 +02:00
Laszlo Nagy 47093775ae adrv9009/zc706: top level cleanup 2018-12-21 17:32:48 +02:00
Laszlo Nagy 8adc285eab adrv9009/zc706: fix location constraints 2018-12-21 17:32:48 +02:00
Laszlo Nagy 7a5a8c5340 Revert "adrv9009: Removed ZC706 based project"
This reverts commit 7e7f75c0270bb6793bedb339f62b67bab9d77a6e.
2018-12-21 17:32:48 +02:00
AndreiGrozav f5af939c04 Add adi make(build) scripts
adi_make.tcl
  -adi_make::lib
  -adi_make::boot_bin (executes the script adi_make_boot_bin in xsct)
adi_make_boot_bin.tcl
2018-12-11 14:02:11 +02:00
Laszlo Nagy d8e11cfce5 daq2/3: update DAC TPL base addresses
The TPL for DACs can be relocated to addresses which match the software
expectations.
2018-12-04 14:02:22 +02:00
Adrian Costina e09f3290ff adrv9009: Move intel project to upack2/cpack2 2018-12-03 12:23:24 +00:00
Lars-Peter Clausen bf50916a3f motocon: Use new pack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Lars-Peter Clausen da50d682c5 ad6766evb: Use new pack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Lars-Peter Clausen 9b919636ca fmcjesdadc1: Use new pack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Lars-Peter Clausen 1d223c19f8 fmcadc4: Use new pack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Lars-Peter Clausen 1375dcfeaa daq3: Use new pack/unpack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Lars-Peter Clausen b9958cac00 daq2: Use new pack/unpack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Lars-Peter Clausen 76f6428bfc usrpe31x: Use new pack/unpack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Lars-Peter Clausen aed8478d10 adrv9371x: Use new pack/unpack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Lars-Peter Clausen 2462f8e50f adrv9009: Use new pack/unpack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Matt Fornero 3052c28c01 adrv9364: Use new pack/unpack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Matt Fornero <matt.fornero@mathworks.com>
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Matt Fornero 0a67746352 adrv9361: Use new pack/unpack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Matt Fornero <matt.fornero@mathworks.com>
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Lars-Peter Clausen f79039b4d4 fmcomms5: Use new pack/unpack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Lars-Peter Clausen 27c3231c1b arradio: Use new pack/unpack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Lars-Peter Clausen 078a7fffc8 fmcomms2: Use new pack/unpack infrastructure
Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-11-28 11:33:11 +02:00
Adrian Costina 401395cdd1 adrv9009: A10GX: Initial commit 2018-11-27 15:31:21 +02:00
Adrian Costina 70fe72da16 a10soc: Common, increase SPI frequency to 10MHz 2018-11-27 15:31:21 +02:00
Adrian Costina e4048c7b04 adrv9009: A10SOC: Add second observation channel 2018-11-27 15:31:21 +02:00
Adrian Costina 52085c1739 a10soc: set "FORCE ALL USED TILES TO HIGH SPEED" 2018-11-27 15:31:21 +02:00
Adrian Costina f12bd3d246 adrv9009: A10SOC: Initial commit 2018-11-27 15:31:21 +02:00
Istvan Csomortani 559e00fd75 adrv9009/zcu102: Increase DAC buffer depth to 18Mb 2018-10-11 16:57:30 +03:00
Istvan Csomortani 10deddd6d2 adrv9371/zcu102: Tune the differential swing of the TX lines 2018-10-04 14:37:02 +03:00
Istvan Csomortani cff8341c18 daq3/zcu102: Add custom configuration for CPLL
To support 12.33 Gbps add a custom configuration for the CPLLs.
2018-10-04 14:37:02 +03:00
Istvan Csomortani 1931d65b7a adrv9009/zcu102: Update initial configuration for GT clock output control 2018-10-04 14:37:02 +03:00
Laszlo Nagy 4ce153e6e1 all/system_top.v: loopback gpio lines
Create loopback on unused GPIO lines since Linux may rely on it.
2018-10-04 14:19:37 +03:00
Istvan Csomortani 2b868c2857 adi_project.tcl: Update the ZCU102 board preset version 2018-10-03 15:54:29 +03:00
Istvan Csomortani bbb72d2c7e fmcomms2/zc702: Modify implementation strategy to Performance Exlpore
When we improve timing by modifying the implementation strategies,
the general rule of thumb is "less is always more".

Timing did not fail in synthesis, so we leaving the synthesis
strategy in default.
After several parallel runs with various strategies, the
"Performance_Explore" strategy gave the best result for
implementation.
2018-09-27 11:46:12 +03:00
AndreiGrozav b0b149244b daq2_kcu105: Change implementation strategy
Use Performance_Retiming strategy to meet timing.
2018-09-27 11:45:52 +03:00
AndreiGrozav 9c6da0ff45 zed, zc702, zc706, ccfmc: Send video trough axis interface 2018-09-27 11:45:28 +03:00
Lars-Peter Clausen 97409dcb88 adi_board.tcl: ad_xcvrcon: Fix width of sync port for multi-link setups
Each individual link of a multi-link has its own sync signal. The top level
sync port that is created by the ad_xcvrcon function is always a single bit
single though.

This results in only the sync signal of the first link being routed while
others are ignored.

To fix this make sure that for multi-link setups the sync port is a vector
port with the width equal to the number of links.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-09-10 13:46:38 +02:00
Adrian Costina 0e8515a90b fmcomms2:kcu105: Performance_ExploreWithRemap fixes DDR timing violation 2018-09-05 15:53:36 +03:00
Adrian Costina 240b75cc45 fmcadc2: VC707, specifically connect spi_csn[2:0] to the fmcadc2_spi module 2018-09-05 15:53:18 +03:00
Adrian Costina f4cc89a7f3 fmcomms2: cleanup system_top for kc705,kcu105, vc707 and zcu102 2018-09-05 15:53:02 +03:00
Adrian Costina 2f4904e4d2 motcon2_fmc: Remove muxaddr_out, refclk and refclk_rst from system_bd
- refclk and refclk_rst were used for ethernet IDELAY, but are not needed anymore
- muxaddr_out pins overlap with regular GPIOs in the Zed base design. The XADC mux GPIOs can be controlled through that. Cusomters that want to directly control the pins through XADC IP must modify the design
2018-09-05 15:12:51 +03:00
Istvan Csomortani a387018f7a daq3:kcu105: Performance_ExploreWithRemap results the highest WNS 2018-08-23 18:41:48 +03:00
Istvan Csomortani 15863795e8 adrv9371x:kcu105: Performance_Retiming results the highest WNS
In default strategy we having a few path with small negative slack inside of
the MIG, due to the high UI clock (300MHz).

This new strategy solves this issue.
2018-08-23 18:41:48 +03:00
Adrian Costina 86748825d0 m2k: Downgrade SPI related critical warning, as we use lower clock speed for power reasons 2018-08-23 18:41:48 +03:00
Istvan Csomortani 985f35225c sys_gen: Remove deprecated script 2018-08-23 18:41:48 +03:00
Istvan Csomortani 302ec5d68a adi_project_alt: Update Quartus version to 18.0.0 2018-08-23 18:41:48 +03:00
Istvan Csomortani b748488377 adi_board/adi_ip: Update Vivado version to 2018.2 2018-08-23 18:41:48 +03:00
Adrian Costina db51fb2829 daq3: ZCU102: Remove Offload FIFO for ADC path.
DAC FIFO cannot be increased because of timing violations
2018-08-23 18:06:32 +03:00
Adrian Costina 563710e904 daq3: ZCU102: Fixed system_top to be similar with ZC706. Updated constraints to specify exactly transceiver pin locations 2018-08-23 18:06:32 +03:00
AndreiGrozav 9418fcec24 fmcomms5/zcu102/system_constr.xdc: Fix typo 2018-08-23 18:01:20 +03:00
AndreiGrozav 97b1d3a21e common/daq2: Fix typo 2018-08-23 15:13:58 +03:00
AndreiGrozav 87b099d498 daq2/common: Add default util_adxcvr parameters 2018-08-21 17:12:31 +03:00
Istvan Csomortani 2293374307 adc|dac_fifo: Maximize the depth of each instance of the internal RAM FIFOs
The affected projects are:
  - FMCADC2/VC707 - 16Mb
  - FMCADC5/VC707 - 16Mb
  - DAQ2/ZC706  - ADC@1GB and DAC@8Mb
  - DAQ2/KC705  - ADC@4Mb and DAC@4Mb
  - DAQ2/VC707  - ADC@8Mb and DAC@8Mb
  - DAQ2/KCU105 - ADC@4Mb and DAC@4Mb
  - DAQ2/ZCU102 - ADC@8Mb and DAC@8Mb
  - DAQ3/ZC706  - ADC@1GB and DAC@8Mb
  - DAQ3/KCU105 - ADC@4Mb and DAC@4Mb
  - DAQ3/ZCU102 - ADC@8Mb and DAC@8Mb
  - ADRV9371x/KCU105 - DAC@8Mb
  - ADRV9371x/ZCU102 - DAC@16Mb
2018-08-21 11:44:05 +03:00
AndreiGrozav fa6f45a406 adrv936x, fmcomms2/5, usrpe31x: Fix warning on the dac path
Fix warnining regarding SYNC_TRANSFER_START parameter which doesn't
apply when the axi_dmac is configured for the tx path.
2018-08-20 14:29:57 +03:00
AndreiGrozav ec400e5865 adrv9361z7035/ccfmc: Replace VDMA with ADI DMAC 2018-08-20 14:28:01 +03:00
AndreiGrozav 4f1c748d8a common/zc702: Replace VDMA with ADI DMAC 2018-08-20 14:28:01 +03:00
AndreiGrozav 6ef268bb31 common/zc706: Replace VDMA with ADI DMAC 2018-08-20 14:28:01 +03:00
AndreiGrozav a0e3997687 common/zed_system_bd.tcl: Replace VDMA
Replace Xilinx VDMA IP with ADI axi_dmac IP.
2018-08-20 14:28:01 +03:00
AndreiGrozav 1c75c7b9ca common/mitx045: Remove carrier support 2018-08-16 10:05:02 +03:00
AndreiGrozav 449911fd8f Remove adv7511/common: Deprecated
The common/adv7511_bd.tcl was used by projects based on microblaze
architectures, which are not supported anymore.
2018-08-16 10:05:02 +03:00
AndreiGrozav 4ddbb57749 daq3, fmcomms2/5: Cosmetic update only of the xdc files 2018-08-13 17:45:53 +03:00
AndreiGrozav c8fec4f70e daq3,fmcomms2/5 on zcu102: Fix warnings
DIFF_TERM is not supported in UltraScale devices.
2018-08-13 17:45:53 +03:00
Lars-Peter Clausen 5b94533cd0 adi_board.tcl: ad_ip_instance: Add support for specifying IP parameters
Add support for specifying a set of parameter value pairs when
instantiating an IP core to the ad_ip_instance command. This has the
convenience of not having to repeatedly call ad_ip_parameter with the name
of the core that got just created for each parameter that needs to be set.

It is also useful for cases where some parameters have mutually exclusive
values and both (or more) have to be set at the same time.

This also slightly speeds things up. Whenever a parameter is changed the
core needs to be updated and post configuration scripts might run. When
setting all parameters at the same time this only happens once instead of
once for each parameter.

For example the following sequence

  ad_ip_instance axi_dmac axi_ad9136_dma
  ad_ip_parameter axi_ad9136_dma CONFIG.DMA_TYPE_SRC 0
  ad_ip_parameter axi_ad9136_dma CONFIG.DMA_TYPE_DEST 1
  ad_ip_parameter axi_ad9136_dma CONFIG.DMA_DATA_WIDTH_SRC 64
  ad_ip_parameter axi_ad9136_dma CONFIG.DMA_DATA_WIDTH_DEST 256

can now be replaced with

  ad_ip_instance axi_dmac axi_ad9136_dma [list \
    DMA_TYPE_SRC 0 \
    DMA_TYPE_DEST 1 \
    DMA_DATA_WIDTH_SRC 64 \
    DMA_DATA_WIDTH_DEST 256 \
  ]

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-08-10 16:12:26 +02:00
Laszlo Nagy 31318cf311 all/system_top.v: drive unused gpio inputs with zero
The loopback on the unused gpio inputs consumes routing resources
while does not gives any value for the software.

Connect these lines to zero instead.
2018-08-10 17:00:11 +03:00
Laszlo Nagy ec8a2cd9c5 adrv936x/ccbox_lvds: unconnected clock for ad9361 input protection
The 9361 protection circuits have no clocks connected,
export the clock from the block design for them.
2018-08-10 17:00:11 +03:00
Laszlo Nagy 05789e8978 adrv9009/adrv9371x/fmcomms2:Drop usage of ad_iobuf on non-bidirectional IOs
Some projects use the ad_iobuf on IOs that are not bidirectional
producing synthesis warnings.

The change fixes warnings like:
[Synth 8-6104] Input port 'gpio_bd_i' has an internal driver
[Synth 8-6104] Input port 'gpio_status' has an internal driver
2018-08-10 17:00:11 +03:00
Laszlo Nagy fa7c85a9eb all: Drive undriven input signals, complete interface
- connect unused GPIO inputs to loopback
- connect unconnected inputs to zero
- complete interface for system_wrapper instantiated in all system_top

fixes incomplet portlist WARNING [Synth 8-350]
fixes undriven inputs WARNING [Synth 8-3295]

The change excludes the generated system.v and Xilinx files.
2018-08-10 17:00:11 +03:00
Laszlo Nagy 059933b9c1 fmcadc4: Fix chip selects for ada4961 c,d channels
Chip selects for ada4961 C,D were always active since they were not
driven correctly.
2018-08-10 17:00:11 +03:00
AndreiGrozav ebae8bf8c1 Remove interrupts from system_top for all xilinx projects
- remove interrupts from system_top
- for all suported carriers:
	- remove all interrupt bd pins
	- connect to GND all initial unconnected interrupt pins
- update ad_cpu_interrupt procedure to disconnect a interrupt from GND
before connectiong it to another pin.
2018-08-10 10:10:58 +03:00
Istvan Csomortani e97d707f24 adi_tquest: Improve the timing report generation
If the analysis type is not defined the report_timing command will run
just a setup analysis.

Run an analysis report for all the four analysis type.
2018-08-08 15:09:19 +03:00
Istvan Csomortani 66bf92ec9f axi_gpreg: Use the common ad_rst constraints 2018-08-06 21:24:41 +03:00
AndreiGrozav 22ac59c4cf scripts/adi_project.tcl: Overrides the default individual msg limit to 2000 2018-08-06 18:18:13 +03:00
Istvan Csomortani 1388554faa adi_board.tcl: Update the VCC/GND instance generation
Just one VCC or GND xlconstant will be generated for each width. This
way we can avoid having a lot of xlconstant instances with the same
configuration.
2018-08-06 10:14:14 +03:00
Laszlo Nagy 085c0ed0da fmcadc5: remove SYSREF from IOB
The SYSREF for RX is generated internally,
disable the IOB attribute from it to avoid critical warnings.
2018-07-26 12:33:25 +03:00
AndreiGrozav 74288cf9cb axi_hdmi_tx: Added INTERFACE parameter for selecting the interface type
Update all carriers/projects bd for configurable video interface:
- common zc702, zc706, zed
- adrv9361z7035/ccfmc_lvds
- imageon
2018-07-24 15:56:22 +03:00
AndreiGrozav 235636a337 fmcomms5_zc702: Enable AXI_SLICE for the DMA
This will increase the timing margin for the design
2018-07-18 18:19:30 +03:00
AndreiGrozav 74a24c4edd fmcomms2/common: Use DDS cordic on 14 bit atan LUT 2018-07-18 18:19:30 +03:00
Lars-Peter Clausen 9b01b9f37c adi_board.tcl: ad_xcvrcon: Add support for sparse PHY to link connections
Some FMC boards do utilize more than one transceiver quad but do not
necessarily use all transceivers in a quad. On such board is the
AD9694-500EBZ. Which uses two transceivers each in two adjacent quads.

This board can not be supported by instantiating a util_adxcvr with only 4
lanes. Since those 4 lanes would be packed into the same quad. Instead it
it is necessary to instantiate a util_adxcvr with 6 lanes. 4 lanes for the
first quad and 2 for the second.

To still to be able to connect such a util_adxcvr to a link layer with only
4 lanes allow to specify sparse lane mappings. A sparse mapping can have
less lanes than the util_adxcvr and some lanes will be left unconnected.

For example for the AD9694-500EBZ the lane mapping looks like the following:

  ad_xcvrcon util_ad9694_xcvr axi_ad9694_xcvr ad9694_jesd {0 1 4 5} rx_device_clk

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-07-18 10:36:26 +02:00
Lars-Peter Clausen 2f002bab5c adi_board.tcl: ad_xcvrcon: Add option to specify device clock
Sometimes the output clock of the transceiver should not be used for the
device clock.

E.g. for deterministic latency with no uncertainty the device clock needs
to be sourced directly from a clock or transceiver reference clock input
pin.

Add an option to the ad_xcvrcon command to specify the device clock.

In case the same device clock is used for multiple JESD204 links, e.g. a TX
and a RX link only one reset generator is created.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-07-18 10:36:26 +02:00
Laszlo Nagy e2c75c015f axi_dmac: add tlast to the axis interface for Intel
This change adds the TLAST signal to the AXI streaming interface
of the source side for Intel targets.
Xilinx based designs already have this since the tlast is part of the
interface definition.

In order to make the signal optional and let the tool connect a
default value to the it, the USE_TLAST_SRC/DEST parameter is
added to the configuration UI. This conditions the tlast port on
the interface of the DMAC.

Xilinx handles the optional signals much better so the parameter
is not required there.
2018-07-06 16:30:30 +03:00
Adrian Costina ed5c5e55a0 usrpe31x: Remove interrupt connections from system_top 2018-07-06 13:15:59 +03:00
Adrian Costina 03fa46f2fc usrpe31x: Add the second channel 2018-07-06 13:15:59 +03:00
Istvan Csomortani da54677101 usrpe31x: Initial commit
This project was moved from master into 'usrpe31x' feature branch.

To see the old commits, checkout the dev_prj_2018_r1 tag.
2018-07-06 13:15:59 +03:00
Adrian Costina 41e717ec2c adrv9009: Added option for enabling the second observation channel 2018-06-29 11:10:39 +03:00
Adrian Costina 171093eca4 Move GTM projects to gtm_projects branch 2018-06-15 16:28:40 +03:00
Adrian Costina 6e7b19c944 Remove projects we don't support anymore 2018-06-15 16:17:48 +03:00
Adrian Costina 6bcbee9a42 motcon2_fmc: Add additional clock constraints and set delays for ethernet 2018-06-14 16:06:43 +03:00
Adrian Costina 5b222dba02 motcon2_fmc: Connect GPO pins to controller 1 2018-06-14 16:06:38 +03:00
Adrian Costina e2df6b75c2 motcon2_fmc: Sync transfer start for the current monitor DMAs
There are a maximum of 3 channels enabled for the path, sync start is required
2018-06-14 16:06:24 +03:00
Adrian Costina 091bbfa2d3 motcon2_fmc: Ethernet MDIO set to EMIO 2018-06-14 16:06:17 +03:00
Adrian Costina 2975e9a360 motcon2_fmc: Update to revision C 2018-06-14 16:06:07 +03:00
Lars-Peter Clausen dd912e1fb8 adi_tquest.tcl: Check recovery and and removal timing
In addition to setup and hold also check recovery and removal, they are
just as important.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-06-13 10:12:40 +02:00
Adrian Costina e982232d75 adrv9009: Increased DMA clock frequency to ~333 MHz, by enabling AXI SLICES for DMAs 2018-06-12 23:53:56 +03:00
Adrian Costina f3ac5d3ad3 adrv9009: Increase all DMAs MAX_BYTES_PER_BURST to 256 2018-06-12 23:53:56 +03:00
Adrian Costina 801351d93c adrv9009: Increase sys_dma_clk to 325MHz. At 333 MHz, there are timing violations 2018-06-12 23:53:56 +03:00
Adrian Costina cc18f76e3b adrv9009: Reduced DAC FIFO size, as it's not useful for real applications and the memory can be used in other parts of the design 2018-06-12 23:53:56 +03:00
Adrian Costina 65c765eb33 adrv9009: Increase DMA FIFO sizes 2018-06-12 23:53:56 +03:00
Adrian Costina ee60549dfc daq3: ZCU102: Fix AXI_ADXCVR IPs XCVR_TYPE parameter 2018-06-08 13:56:22 +03:00
Istvan Csomortani deb366d169 daq2|3: Set up OPTIMIZATION_MODE to improve timing
There are random timing violations on the A10GX board using the
DAQ3 and DAQ2 projects.

Setting the synthesis/implementation strategy to "HIGH PERFORMANCE
EFFORT" increases the success rate of the timing closure significantly.
2018-06-06 08:33:20 +01:00
Laszlo Nagy bcba21da71 zcu102: updated IOSTANDARD of Bank 44 IOs to match VCCO 3.3V 2018-06-05 08:52:50 +01:00
Istvan Csomortani 5a257ce3c5 fmcomms5: Delete unused GPIO lines from system top
In the system top of the FMCOMMS5 projects, there are several GPIO lines, which
can not find in the constraint file, respectively gpio_open_15_15,
gpio_open_44_44 and gpio_45_45.

These are floating GPIO pins, as their names suggest. Delete all these wires and
update IOBUF instances.
2018-05-30 09:55:04 +03:00
Laszlo Nagy 1bd65da29f fmcjesdadc1: increase DMAC FIFO size
The DMAC FIFO ocasionally overflow, increased it's size to give more time
the MM interface to move out the data.
2018-05-23 13:10:12 +01:00
Adrian Costina 4999a52f87 adrv9009: Removed ZC706 based project 2018-05-14 11:36:31 +03:00
Adrian Costina e445fbe04f adrv9009: Improved data throughput and DAC FIFO size
Moved XCVR related connections to HP0, where the HP shares the MUX with the Video DMA
HP1 and HP2 are used for RX OS and RX DMAs, sharing the MUX. Usually they shouldn't run at the same time.
HP3 is used for TX DMA, sharing the MUX with the FPD DMA controller
All HPx and DMA buswidths have been increased to 128 bits
The HPx-DMA clock has been increased to 300 MHz
DAC FIFO address size has been increased to 17
2018-05-14 11:33:04 +03:00
Lars-Peter Clausen b9b619d918 axi_ad9144: Hide unused ports in DUAL mode
In DUAL mode half of the data ports are unused and the unused inputs need
to be connected to dummy signals.

Completely hide the unused ports in DUAL mode to remove that requirement.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-05-02 17:21:20 +02:00
Adrian Costina e4d579726d Renamed ad9379 to adrv9009 2018-04-26 18:19:11 +03:00
Adrian Costina 96c5cc9a66 adrv9379:zcu102: Update to new revision of the board 2018-04-26 18:19:11 +03:00
Adrian Costina fe4278d2ea adrv9379:zcu102: Move to FMC1 2018-04-26 18:19:11 +03:00
Adrian Costina c24025c8d5 adrv9379:zcu102: Cleanup constraints 2018-04-26 18:19:11 +03:00
Adrian Costina 47ad04697d adrv9379:zcu102: Fix constraints, from ZCU102 rev B to ZCU102 rev D 2018-04-26 18:19:11 +03:00
Adrian Costina e4c4559b6d adrv9379:ZCU102: Initial commit 2018-04-26 18:19:11 +03:00
Adrian Costina bbb5a31994 Reviewed pinout of ZCU102 projects. fmcomms5 pin gpio_ad5355_lock location changed 2018-04-21 15:28:13 +03:00
Istvan Csomortani 3ce9f55c39 fmcjesdadc1:a10: Move block design into feature branch
Move block design file into the fmcjesdadc1_a10 feature branch.
2018-04-13 17:37:17 +01:00
Istvan Csomortani c794cbb49d daq3: Connect the DAC data underflow
Connect the DAC data underflow pin (fifo_rd_underflow) of the DMA
to the dunf pin of the device core. This way the software can detect
underflows in the DAC data path.
2018-04-13 18:46:29 +03:00
Istvan Csomortani 5075be8bff daq2: Connect the DAC data underflow
Connect the DAC data underflow pin (fifo_rd_underflow) of the DMA
to the dunf pin of the device core. This way the software can detect
underflows in the DAC data path.
2018-04-13 18:46:29 +03:00
Istvan Csomortani 992011c3a3 fmcomms5: Connect the DAC data underflow
Connect the DAC data underflow pin (fifo_rd_underflow) of the DMA
to the dunf pin of the device core. This way the software can detect
underflows in the DAC data path.
2018-04-13 18:46:29 +03:00
Istvan Csomortani 6458e825e9 fmcomms7: Move project to a feature branch 2018-04-13 18:22:15 +03:00
Istvan Csomortani 05ce6dea26 usdrx1: Move project to a feature branch 2018-04-13 18:22:15 +03:00
Istvan Csomortani ae1ec06ce6 fmcomms2:pr: Move project to a feature branch 2018-04-13 18:22:15 +03:00
Istvan Csomortani 43496cf80a fmcomms11: Move project to a feature branch 2018-04-13 18:22:15 +03:00
Istvan Csomortani 6419de60c4 fmcjesdadc1:altera: Move projects to a feature branch 2018-04-13 18:22:15 +03:00
Istvan Csomortani 18bdf91254 daq1: Move project to a feature branch 2018-04-13 18:22:15 +03:00
Istvan Csomortani 1c959a8f85 usrpe31x: Delete deprecated project 2018-04-13 18:22:15 +03:00
Istvan Csomortani 9ea6652cba adrv9364z7020:ccusb: Delete deprecated project 2018-04-13 18:22:15 +03:00
Istvan Csomortani 748b4598fc adrv9361z7035:ccusb: Delete deprecated project 2018-04-13 18:22:15 +03:00
Istvan Csomortani 62c7ecbbff adrv9361z7035:ccpci: Delete deprecated project 2018-04-13 18:22:15 +03:00
Istvan Csomortani e940b375c8 adv7511:kcu105: Delete deprecated project 2018-04-13 18:22:15 +03:00
Istvan Csomortani 85913c1b00 adv7511:vc707: Delete deprecated project 2018-04-13 18:22:15 +03:00
Istvan Csomortani a277d55c35 adv7511:kc705: Delete deprecated project 2018-04-13 18:22:15 +03:00
Lars-Peter Clausen 2f5a4a2428 de10: license: Fix a spelling mistake
Same as commit 425e8033 ("license: Fix a spelling mistake").

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-04-12 10:54:12 +02:00
Lars-Peter Clausen 1ea3ad28ae Add quiet mode to the Makefile system
The standard Makefile output is very noisy and it can be difficult to
filter the interesting information from this noise.

In quiet mode the standard Makefile output will be suppressed and instead a
short human readable description of the current task is shown.

E.g.
	> make adv7511.zed
	Building axi_clkgen library [library/axi_clkgen/axi_clkgen_ip.log] ... OK
	Building axi_hdmi_tx library [library/axi_hdmi_tx/axi_hdmi_tx_ip.log] ... OK
	Building axi_i2s_adi library [library/axi_i2s_adi/axi_i2s_adi_ip.log] ... OK
	Building axi_spdif_tx library [library/axi_spdif_tx/axi_spdif_tx_ip.log] ... OK
	Building util_i2c_mixer library [library/util_i2c_mixer/util_i2c_mixer_ip.log] ... OK
	Building adv7511_zed project [projects/adv7511/zed/adv7511_zed_vivado.log] ... OK

Quiet mode is enabled by default since it generates a more human readable
output. It can be disabled by passing VERBOSE=1 to make or setting the
VERBOSE environment variable to 1 before calling make.

E.g.
	> make adv7511.zed VERBOSE=1
	make[1]: Entering directory 'library/axi_clkgen'
	rm -rf *.cache *.data *.xpr *.log component.xml *.jou xgui
	*.ip_user_files *.srcs *.hw *.sim .Xil .timestamp_altera
	vivado -mode batch -source axi_clkgen_ip.tcl >> axi_clkgen_ip.log 2>&1
	...

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-04-11 15:09:54 +03:00
Lars-Peter Clausen 2b914d33c1 Move Altera IP core dependency tracking to library Makefiles
Currently the individual IP core dependencies are tracked inside the
library Makefile for Xilinx IPs and the project Makefiles only reference
the IP cores.

For Altera on the other hand the individual dependencies are tracked inside
the project Makefile. This leads to a lot of duplicated lists and also
means that the project Makefiles need to be regenerated when one of the IP
cores changes their files.

Change the Altera projects to a similar scheme than the Xilinx projects.
The projects themselves only reference the library as a whole as their
dependency while the library Makefile references the individual source
dependencies.

Since on Altera there is no target that has to be generated create a dummy
target called ".timestamp_altera" who's only purpose is to have a timestamp
that is greater or equal to the timestamp of all of the IP core files. This
means the project Makefile can have a dependency on this file and make sure
that the project will be rebuild if any of the files in the library
changes.

This patch contains quite a bit of churn, but hopefully it reduces the
amount of churn in the future when modifying Altera IP cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-04-11 15:09:54 +03:00
Lars-Peter Clausen b7f8345f17 library: Remove unreferenced files from IP file lists
Some IP core have files in their file list for common modules that are not
used by the IP itself. Remove those.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-04-11 15:09:54 +03:00
Istvan Csomortani 0f443f4779 project-*.mk Update CLEAN targets 2018-04-11 15:09:54 +03:00
Lars-Peter Clausen 89ad5f7836 Makefile: Change IP component dependency to component definition file
Currently the IP component dependency in the Makefile system is the Vivado
project file. The project file is only a intermediary product in producing
the IP component definition file.

If building the component definition file fails or the process is aborted
half way through it is possible that the Vivado project file for the IP
component exists, but the IP component definition file does not.

In this case there will be no attempt to build the IP component definition
file when building a project that has a dependency on the IP component.
Building the project will fail in this case.

To avoid this update the Makefile rules so that the IP component definition
file is used as the dependency. In this case the IP component will be
re-build if the component definition file does not exist, even if the
project file exists.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-04-11 15:09:54 +03:00
Lars-Peter Clausen b20714bae2 Regenerate project top-level Makefiles
Removes a lot of boilerplate code.

Using the new scheme it is possible to add new projects or sub-projects
without having to re-generate any existing Makefiles.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-04-11 15:09:54 +03:00
Lars-Peter Clausen 297940d5d9 Add shared project top-level Makefile
The project top-level Makefile accept the all, clean and clean-all targets
and forward them to their sub-projects.

Create a common Makefile include that can be used to implement this
behavior. The shared Makefile collects all sub-directories that have a
Makefile and then forwards the all, clean and clean-all targets to them.

This is implemented by creating virtual targets for each combination of
sub-project and all, clean, clean-all targets in the form of
"$project/all", ... These virtual sub-targets are then listed as the
prerequisites of the project top-level Makefile targets.

This means there is no longer a need to re-generate top-level Makefiles
when a new project or sub-project is added.

It will also allow to remove a lot of boilerplate code.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-04-11 15:09:54 +03:00
Lars-Peter Clausen 377247a434 Regenerate project Makefiles using the new shared Makefile includes
This reduces the amount of boilerplate code that is present in these
Makefiles by a lot.

It also makes it possible to update the Makefile rules in future without
having to re-generate all the Makefiles.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-04-11 15:09:54 +03:00
Lars-Peter Clausen 5272ed4eea Add common project Makefile for Xilinx projects
The project Makefiles for the Xilinx projects share most of their code. The
only difference is the list of project dependencies.

Create a file that has the common parts and can be included by the project
Makefiles.

This drastically reduces the size of the project Makefiles and also allows
to change the Makefile implementation without having to re-generate all
Makefiles.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-04-11 15:09:54 +03:00
Lars-Peter Clausen ec6128dd91 Add common project Makefile for Altera projects
The project Makefiles for the Altera projects share most of their code. The
only difference is the list of project dependencies.

Create a file that has the common parts and can be included by the project
Makefiles.

This drastically reduces the size of the project Makefiles and also allows
to change the Makefile implementation without having to re-generate all
Makefiles.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-04-11 15:09:54 +03:00
Lars-Peter Clausen 8a2a394790 Remove unused projects/common/Makefile
This file only references a subdirect that no longer exists, but nothing
else.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2018-04-11 15:09:54 +03:00
Istvan Csomortani 318dcbb5d9 adrv9371x: Set up the defualt clock output control
The TX side runs on QPLL, and the RX and RX_OS runs on CPLL by default.
The OUTCLK frequency is the same as the REFCLK.

The main reason of this modification is that the links should come up
without any DPR access, after power up, using the default reference clock
configuration (122.88 MHz).
2018-04-11 15:09:54 +03:00
Istvan Csomortani 8b671fa7ae ad77681evb: Add upscaler to the data path 2018-04-11 15:09:54 +03:00