Commit Graph

6354 Commits (b21fb3a0e0d9a59d37970d4e0c2145a61ca72f10)

Author SHA1 Message Date
Iulia Moldovan 961ebe0cc2 projects: Update .v files according to guideline
Deleted lines after endmodule and consecutive empty lines.
Modified parentheses, extra spaces.
Fixed indentation.
Fixed parameters list to be each parameter on its line.

Signed-off-by: Iulia Moldovan <iulia.moldovan@analog.com>
2022-06-28 18:06:56 +03:00
Iulia Moldovan 0c0617d49e libraries: Update modules according to guideline
* Added header license for the files that didn't have
* Modified parentheses
* Removed extra spaces at the end of lines
* Fixed parameters list to be each parameter on its line
* Deleted lines after endmodule and consecutive empty lines
* Fixed indentation

Signed-off-by: Iulia Moldovan <iulia.moldovan@analog.com>
2022-06-28 18:06:56 +03:00
Iulia Moldovan 521476a8d4 lint: Update to run only in PRs. Change version for checkout action
* Updated action to run only in PRs on master branch, on library/ and
  projects/ paths
* Edited the text for the printed warnings
* Updated the version for the checkout action from v2 to v3

Signed-off-by: Iulia Moldovan <iulia.moldovan@analog.com>
2022-06-28 12:45:29 +03:00
Laszlo Nagy 171daab8f2 ad9081_fmca_ebz: a10soc: Update resistor change comment
A board rework is required so the clocks, chip selects or sync signal reach the part correctly.  Without this the link will not come up.
2022-06-21 14:19:58 +03:00
Liviu.Iacob da18ecccda .gitignore: ignore files generated by Quartus & Platform Designer
Added the files generated by Quartus Pro 21.2, 20.1 and Platform Designer for each of the versions. The files added are generated and removed by make.

Signed-off-by: Liviu.Iacob <liviu.iacob@analog.com>
2022-06-09 11:32:10 +03:00
Laszlo Nagy a8174ac038 ad_quadmxfe1_ebz/vcu118/system_project.tcl: Update comments
Update PLL selection docs.
2022-06-08 15:35:47 +03:00
ladace 6525a37375
ad_fmclidar1_ebz:a10soc Fixed problems with SPI communication with AD9094 (#951)
Now CPH and CPOL are set to 1, also the SPI clock is set to 10MHz

Signed-off-by: Liviu Adace <liviu.adace@analog.com>
2022-06-06 13:00:45 +03:00
PopPaul2021 4f4825a3df
projects:daq2:common: fix adi_tpl_jesd204_rx_create error. (#952)
(\ character has to be removed or a blank line inserted before ad_ip_parameter)
Fix for : 0b8585a6f commit.
2022-06-06 08:53:07 +03:00
Liviu.Iacob 5c9f006ab2 .gitignore: Fix to ignore imbricated bd.tcl files too
Fix gitignore commit 6a6c5ac that did not ignore imbricated bd files.
Signed-off-by: Liviu.Iacob <liviu.iacob@analog.com>
2022-06-03 15:58:45 +03:00
PopPaul2021 0b8585a6f1
PN mismatch DAQ2, DAQ3 and FMCJESDADC1 fix (#950)
The AD9680 is a dual 14-bit ADC.
Software sets the output format to offset binary before performing the PN tests.
2022-06-02 14:09:36 +03:00
Ionut Podgoreanu f957d81db1 ad9083_evb_bd: Connect util_ad9083_rx_cpack reset to adc_rst 2022-05-27 09:20:09 +03:00
Filip Gherman 1ae375f4fb ad_quadmxfe1_ebz/vcu118: Change drp clock source used for jesd204_phy
- Added an utility buffer in order to generate the 50Mhz DRP clock.
- 'addn_ui_clockout4' will be used to generate the higher frequency 'sys_mb' clock for Microblaze.

Signed-off-by: Filip Gherman <Filip.Gherman@analog.com>
2022-05-27 00:48:34 +03:00
Filip Gherman 5ad9dfd6c0 vcu118: Increase Microblaze performance and clock frequency
Increased the Microblaze performance for the VCU118 carrier:
- Increased the size of Instruction Cache and Data Cache to 64kB

Increased the Microblaze clock frequency:
- Using the DDR4 Controller to generate a new sys_mb_clk of 214 MHz to drive all the Microblaze interfaces at higher frequencies

Signed-off-by: Filip Gherman <Filip.Gherman@analog.com>
2022-05-27 00:48:17 +03:00
Laszlo Nagy bdd5686e95 ad9081_fmca_ebz/a10soc: Make second sync CMOS and GPIO controllable 2022-05-26 09:13:05 +03:00
Laszlo Nagy a2da965391 ad9081_fmca_ebz/vck190: Make second sync CMOS and GPIO controllable 2022-05-26 09:13:05 +03:00
Laszlo Nagy 20b89ddd99 ad9081_fmca_ebz/vcu128: Make second sync CMOS and GPIO controllable 2022-05-26 09:13:05 +03:00
Laszlo Nagy b3d231e569 ad9081_fmca_ebz/zc706: Make second sync CMOS and GPIO controllable 2022-05-26 09:13:05 +03:00
ladace ab5c344c89
ad_fmclidar1_ebz:a10soc Fixed SPI communication on Arria 10 (#947)
Signed-off-by: Liviu Adace <liviu.adace@analog.com>
2022-05-24 12:44:03 +03:00
Liviu.Iacob 6a6c5acc8e .gitignore: Add the bd.tcl files from built IPs into gitignore
Almost all the IPs found in library generate a bd folder when they are built. Updated the .gitignore so that it does not appear as an untracked file.
Also, changes to tracked bd.tcl files (ex:axi_dmac) will still appear as modified files.
Signed-off-by: Liviu.Iacob <liviu.iacob@analog.com>
2022-05-19 17:16:50 +03:00
Adrian Costina 08a5e944f0 cn0577: Initial commit
Created a virtual clock to constrain cnv_en.
Given that the cnv_en should be asserted only once per 8 clock
cycles and only the rise edge is of interest, we can constrain
the path as multicycle path.
2022-05-18 18:23:38 +03:00
Adrian Costina 9357b0c987 axi_ltc2387: Intial commit 2022-05-18 18:23:38 +03:00
Benjamin Menkuec 56a65b717c mark axi_gpreg.v as systemverilog, otherwise it gives an error with vivado 2022.1 2022-05-17 21:13:11 +03:00
Adrian Costina 0c3ec108aa ad9213_dual_ebz: Add possibility to change order of channels through a GPIO 2022-05-17 15:27:39 +03:00
Adrian Costina 496b4ec748 ad9213_dual_ebz: Fix constraints
- added sysref constraint
- remove false path from the GPIO pins
2022-05-17 15:27:39 +03:00
AndreiGrozav ef377e58be ad9083_evb_bd: make the project more generic
Allow external parameters and a more flexible configuration.
2022-05-12 16:11:17 +03:00
Iulia Moldovan 86408ff2b3 docs: Add HDL coding guideline
Signed-off-by: Iulia Moldovan <Iulia.Moldovan@analog.com>
2022-05-12 14:43:35 +03:00
Laszlo Nagy 69839ec327 ad_quadmxfe1_ebz: Refactor MxFE GPIOs 2022-05-11 18:09:08 +03:00
Laszlo Nagy 044017e0b9 ad9081_fmca_ebz/zcu102: Make second sync CMOS and GPIO controllable 2022-05-11 18:09:08 +03:00
Stanca Pop e71dbbd6f9 cn0561_zed: Initial commit 2022-05-11 17:30:26 +03:00
sergiu arpadi 0ac49027bd cn0561_coraz7s: Initial commit
Because the inferface signals which pass through the eval board's
Arduino connector are connected to level shifters the design
will not work at the maximum clk frequency of 48MHz. The maximum
tested frequency is 24MHz.
2022-05-11 17:30:26 +03:00
Filip Gherman 1ef3ff05ba vcu128: Increase Microblaze performance and clock frequency 2022-05-11 13:20:01 +03:00
Mathias Tausen cd04141ffd axi_dmac: Add parameter controlling AWCACHE
On architectures with ports that support cache coherency, the AWCACHE
signal must be set to indicate that transactions are cached. This patch
adds a parameter allowing AWCACHE to be set on an AXI4 destination port.
2022-05-10 11:50:55 +03:00
Morten Jensen 0ae2a17474 scripts/adi_board.tcl: Support connecting HPCx
Support connecting HPC0 and HPC1 on PS8.

Co-authored-by: Mathias Tausen <mta@satlab.com>
2022-05-10 11:50:55 +03:00
Filip Gherman 302e59e109 data_offload_constr.ttcl: Fix false_paths for i_sync_src_transfer_length registers 2022-05-10 09:46:03 +03:00
Filip Gherman 53a95840c0 ad_quadmxfe1_ebz_bd: Bugfix for JESD configurations with less lanes 2022-05-09 10:43:31 +03:00
Filip Gherman 8f22985880 projects/scripts/adi_board: Add support for sparse channel maping 2022-05-09 10:43:14 +03:00
Ionut Podgoreanu faf5f90299 library/axi_dmac: Add the BYTES_PER_BURST_WIDTH interface parameter in INTERFACE_DESCRIPTION 2022-05-06 12:32:41 +03:00
PopPaul2021 619e8043d0
Adaq8092 on ZedBoard LVDS output mode (#921)
* common/up_adc_common: Add adc_custom_control register

* library/axi_adaq8092: Initial commit

* projects/adaq8092_fmc: Initial commit for ZedBoard
2022-04-28 15:39:59 +03:00
Laszlo Nagy 97b92565b2 Makefile: Replace util_fifo2axi_bridge with util_hbm 2022-04-28 14:31:32 +03:00
Laszlo Nagy 8399301c6a util_fifo2axi_bridge: Deprecate module, replaced by util_hbm 2022-04-28 14:31:32 +03:00
Laszlo Nagy 0e55583a63 daq2: Do not set AXI address width for DO
Address size and memory ranges are automatically computed by the
external storage interfacing IP (util_hbm) based on the storage size and
base address so this parameter is redundant.
2022-04-28 14:31:32 +03:00
Laszlo Nagy 5a33c44511 daq2/zc706: Update to new DO storage 2022-04-28 14:31:32 +03:00
Laszlo Nagy fa168fafe0 ad9081_fmca_ebz:vcu128: Disable offload bypass
The internal bypass FIFO has poor timing performance,
when using HBM data can be passed always through the external memory
without storage length constraints, so no need for the internal bypass FIFO.
2022-04-28 14:31:32 +03:00
Laszlo Nagy c57015f80e ad9081_fmca_ebz/vcu128: Use HBM for data offload cores 2022-04-28 14:31:32 +03:00
Laszlo Nagy dbadb9eb61 ad9081_fmca_ebz/common: Make data offload memory type selectable
Make the storage type over writable so it can be set specifically
to carriers.

Address width of external memory AXI master is calculated in the
interfacing core (util_hbm) so that parameters is removed.
2022-04-28 14:31:32 +03:00
Laszlo Nagy c16ebb3cef common/vcu128: Add HBM clocking support 450MHz
The HBM interfacing core requires a 450MHz clock, make it part of the
base design.

The clock can't be obtained from the DDR controller so a clock wizard is
used instead.
2022-04-28 14:31:32 +03:00
Laszlo Nagy c3ae609bc8 data_offload: Refactor core
Deprecate unused parameters.

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

Change transfer length to -1 value to spare logic.

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

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

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

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

Cleanup for verilator.

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

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

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

In case multiple AXI channels are used the source and destination AXIS
interfaces widths must match.
2022-04-28 14:31:32 +03:00