aboutsummaryrefslogtreecommitdiffstats
path: root/fpga
Commit message (Collapse)AuthorAgeFilesLines
* fpga: x400: zbx: Add support for XO3 CPLD variant.Javier Valenzuela2022-07-2023-84/+1888
| | | | | | | | | | | | | | The main changes included are: - Variant-dependent pin-out instantiation. - Update clocking scheme in top level file to include XO3 PLL - Add ability to shift outgoing data for the GPIO communication interface with the X410 FPGA. - Include project files required to build the XO3 variant of the ZBX CPLD. - Add build flow for Lattice Diamond designs. - Add ability to build XO3 variant of ZBX CPLD.
* fpga: lib: Add read-only strategy for port B in 2-port RAMJavier Valenzuela2022-07-202-14/+41
|
* fpga: Fix first arg in calls to $fatal()Wade Fife2022-07-209-68/+67
| | | | | | This fixes warnings regarding the first argument to $fatal(), which is supposed to be a number indicating what diagnostics to display. 1 corresponds to "Prints simulation time and location".
* fpga: x400: Fix AXI/LBUS testbench namesWade Fife2022-07-202-2/+2
|
* REVERT images: zbx lattice cpld image manifestVirendra Kakade2022-07-201-4/+6
| | | | Signed-off-by: Virendra Kakade <virendra.kakade@ni.com>
* fpga: rfnoc: Remove rfnoc_version from target YAMLWade Fife2022-06-1014-14/+0
| | | | | | This causes the latest RFNoC protocol version to be used by default and avoids the need to update YAML files every time the RFNoC protocol version gets bumped.
* fpga: x400: Increase replay SEP buffer sizesWade Fife2022-04-066-28/+28
|
* rfnoc: Fix test_timed_commands for RFNoC devicesmichael-west2022-04-051-16/+62
| | | | | | | - Added command time to readback of time from Radio block. - Added wait for time to readback of shared registers in Radio block. Signed-off-by: michael-west <michael.west@ettus.com>
* fpga: x400: Add timed commands support for all radio ctrlport endpointsJavier Valenzuela2022-04-047-182/+104
| | | | | | | | | | | | | Extends timed command support to all endpoints addressable by the radio ctrlport interface. Previously supported endpoints: - Daughterboard GPIO interface - RFDC timing control Newly supported endpoints: - DIO ATR control - DIO SPI control - DIO Source control
* FPGA: Replay block version 1.1michael-west2022-04-013-50/+266
| | | | | | | | | | | | | | | - Add registers to read current record and play positions. - Add register to read current space in play command FIFO to allow software to avoid overflowing the FIFO. - Cache base address and size with play command in command FIFO. - Fix timestamp logic. Timestamp is only for the first packet of a burst. The increment of 1 for each sample is not accurate because it assumed the Replay block was playing at the same rate as the Radio, which cannot be assumed. Maintained backwards compatibility with older API. Signed-off-by: michael-west <michael.west@ettus.com>
* fpga: Update all RFNoC imagesWade Fife2022-03-3129-468/+508
|
* rfnoc: Update device port names in image core YAMLWade Fife2022-03-3114-654/+767
| | | | | | Update USRP RFNoC iamge core YAML files to use the more consistent device port names. Clean up the formatting and make the files more consistent.
* fpga: ci: Add X4_400 to CI targets default listHumberto Jimenez2022-03-303-30/+35
|
* fpga: n3xx: Add missing BIST image core headersWade Fife2022-03-296-45/+108
|
* fpga: Use PROTOVER and CHDR_W from RFNoC image builderWade Fife2022-03-2913-27/+113
| | | | | | This updates all RFNoC devices so that they get the RFNoC protocol version and CHDR width in the same way, from the output generated by the RFNoC image builder.
* fpga: n3xx: Fix clock frequency commentsWade Fife2022-03-261-2/+2
|
* fpga: e31x: Update DRAM IP simulationWade Fife2022-03-231-4/+22
| | | | | Update the simulation to use the renamed IP. Add ModelSim support.
* fpga: e31x: Fix DRAM traffic gen IP nameWade Fife2022-03-231-1/+1
| | | | | Change name in DRAM IP Makefile from IP_MIG_7SERIES_TG_SRCS to IP_DDR3_16BIT_TG_SRCS to match the naming of other variables.
* fpga: ci: Schedule weekly FPGA pipeline runHumberto Jimenez2022-03-161-0/+8
|
* fpga: ci: Improve IP build cachingHumberto Jimenez2022-03-151-8/+20
|
* fpga: ci: Add stages-based pipelineHumberto Jimenez2022-03-1513-271/+613
|
* fpga: ci: Ignore objects in hwtoolsHumberto Jimenez2022-03-151-0/+2
|
* fpga: tools: Add CG_400 image to X410 binaries packageHumberto Jimenez2022-03-151-0/+5
|
* docs: Update manual for new X410 default targetsWade Fife2022-03-141-14/+4
|
* fpga: x400: Add x410_400_128_rfnoc_image_coreWade Fife2022-03-145-3/+1613
|
* fpga: rfnoc: Fix PPS edge detectionmichael-west2022-03-091-1/+1
| | | | | | | Make timekeeper module sample rising edge instead of falling edge of PPS signal. Signed-off-by: michael-west <michael.west@ettus.com>
* fpga: rfnoc: Make Replay packet length independent of burst sizeWade Fife2022-03-092-106/+158
| | | | | | | | | | | | | Before this change, the packet size output by the Replay block during playback was limited to length of a full memory burst transaction. This led to relatively small packets during playback (typically 2 KiB) and had other side effects, such as simultaneous playback from two different memory locations using different packet sizes because of differences in memory alignment. With this change, the configured packet size, as set by the register REG_PLAY_WORDS_PER_PKT, is used for all packets except the last packet of playback, which can of course be smaller.
* fgpa: rfnoc: Set Replay memory transactions to 2 KiBWade Fife2022-03-092-7/+15
| | | | | | | This sets the Replay block's counter width so that memory bursts are up to 2 KiB. Previously, the counter width was fixed, which meant that wide memories would require especially large buffers and could exceed the 4 KiB limit imposed by AXI.
* fpga: Add SPDX license identifierAaron Rossetto2022-03-091-0/+2
|
* fpga: x400: Cleanup FPGA MakefileWade Fife2022-03-041-40/+61
|
* fpga: x400: Add support for DRAM with 400 MHz BWWade Fife2022-03-042-22/+24
|
* fpga: x400: Change AXI XB for DRAM to 512-bitWade Fife2022-03-041-106/+17
| | | | | | Change the width of the crossbar in the AXI Interconnect IP from 256-bit to 512-bit to match the DRAM memory controller width and to give better performance.
* fpga: rfnoc: Fix strobe probability in radio simulatorWade Fife2022-03-041-7/+7
|
* fpga: rfnoc: Regenerate noc_shellsWade Fife2022-03-0418-29/+47
|
* fpga: x400: Add SPI Controller Info registerJavier Valenzuela2022-03-046-11/+156
| | | | | | Include a register that contains SPI controller information. Currently, it only provides the number of slaves addressable by the SPI engine.
* fpga: x400: Adjust SPI engine strobes alignmentJavier Valenzuela2022-03-044-9/+14
| | | | | | Modify behavior of clock crossing between radio_clk and radio_clk_2x. This ensures strobe signals are always asserted for a single radio_clk_2x cycle and when radio_clk is low.
* fpga: x400: Set replay SEP buffers to twice MTUWade Fife2022-02-242-8/+8
|
* fpga: Add SPDX license identifierAaron Rossetto2022-02-231-0/+2
|
* Remove FSRU-related filesMartin Braun2022-02-221-1/+0
| | | | | | | The FSRU (aka EISCAT) was never supported in UHD 4.0. The FPGA repository never had the relevant files, and the block controller also never existed. This removes all the corresponding files from MPM, as well as some references from makefiles.
* fpga: e320: Add DRAM portsWade Fife2022-02-181-97/+97
| | | | | This adds two additional ports to the DRAM, for a total of up to four channels connected to DRAM.
* images: Remove references to N230Martin Braun2022-02-151-7/+0
| | | | | | USRP N230 is no longer supported starting with UHD 4, and thus, we can remove it from the image manifest. This will no longer download N230 images when calling uhd_images_downloader from UHD 4.
* fpga: n3xx: Fix DRAM FIFO address alignmentWade Fife2022-02-103-6/+6
|
* fpga: rfnoc: Change AWIDTH default for axi_ram_fifoWade Fife2022-02-101-1/+1
| | | | | Change AWIDTH to be the same as MEM_ADDR_W by default. Current USRPs assume the AXI address width is the same as MEM_ADDR_W.
* fpga: e31x: Add DRAM supportWade Fife2022-02-1015-99/+1499
| | | | | | | | | This adds DRAM support to E31x devices. Due to the size of the DDR3 memory controller, it is not enabled by default. You can include the memory controller IP in the build by adding the DRAM environment variable to your build. For example: DRAM=1 make E310_SG3
* fpga: rfnoc: Add BLANK_OUTPUT to FIR filter block's parametersJonathon Pendlum2022-02-103-11/+20
|
* fpga: x400: Add DRAM enable macroJavier Valenzuela2022-02-101-0/+4
|
* images: Add utilization report files to B2xx image filesMartin Braun2022-02-101-4/+8
|
* fpga: b2xx: Generate utilization report filesMartin Braun2022-02-102-18/+24
| | | | | | | | | | | | Currently, the build process copies the .twr and .syr files into the build/ process after running ISE. For a succinct utilization report, those files are not suitable, though, because they contain too much information. However, the build process already produces a custom, short utilization report using grep and a summary of those reports. This patch modifies the build such that the same output is copied into a usrp_$product_fpga.rpt file, similar to our gen-3 devices.
* fpga: x400: zbx: cpld: Bump ZBX regmap copyrightJavier Valenzuela2022-02-1011-11/+11
|
* fpga: x400: cpld: Bump CMI wrapper copyrightJavier Valenzuela2022-02-102-2/+2
|