Commit Graph
435 Commits
Author SHA1 Message Date
Wade Fife 61ee0ddec3 fpga: Use PROTOVER and CHDR_W from RFNoC image builder
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.


Original-commit: 6f038dc2f69b38e715206b2e700fdd3a1bbc638e
2022-03-29 14:45:04 -05:00
Wade Fife a0987ea0f8 fpga: n3xx: Fix clock frequency comments
Original-commit: 40f0d8e4e59a4d13a6d9b7ac07b4d649a5c813f9
2022-03-26 21:52:26 -05:00
Wade Fife 1dd8058c08 fpga: e31x: Update DRAM IP simulation
Update the simulation to use the renamed IP.
Add ModelSim support.


Original-commit: c0015db3ea80117e8c66966e55f337e4fe8d29c2
2022-03-23 08:55:36 -05:00
Wade Fife b2684c42a7 fpga: e31x: Fix DRAM traffic gen IP name
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.


Original-commit: febf339e0df412e54cf43a204c280128d8ca1ec3
2022-03-23 08:55:36 -05:00
Humberto Jimenez e6a3c9598b fpga: tools: Add CG_400 image to X410 binaries package
Original-commit: cb1c7ec47ec69523968724b776b73c8299add478
2022-03-15 08:49:25 -05:00
Wade Fife 37e0f51d67 fpga: x400: Add x410_400_128_rfnoc_image_core
Original-commit: 13c03d4c2f366b41f5dd526326775a499a21514c
2022-03-14 21:34:23 -05:00
michael-west 29ab52420f fpga: rfnoc: Fix PPS edge detection
Make timekeeper module sample rising edge instead of falling edge of PPS
signal.

Signed-off-by: michael-west <michael.west@ettus.com>


Original-commit: b6c7e99830f10c21262247cafa3e077fe3f54119
2022-03-09 17:49:38 -06:00
Wade Fife 56e53d271e fpga: rfnoc: Make Replay packet length independent of burst size
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.


Original-commit: 082a733c326d6332d581d5b7bf9ee86a503ba502
2022-03-09 07:57:21 -06:00
Wade Fife df7fd28589 fgpa: rfnoc: Set Replay memory transactions to 2 KiB
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.


Original-commit: 08d03f881e2767f45ab7fc18c8003c9739b0ffb2
2022-03-09 07:57:21 -06:00
Aaron Rossetto 0ae661c853 fpga: Add SPDX license identifier
Original-commit: 220710b18c1cc57a5c8d9244c8b84277a229363c
2022-03-09 07:25:42 -06:00
Wade Fife c10f9a960e fpga: x400: Cleanup FPGA Makefile
Original-commit: dd6442c7b6d70857e5bfe0b3b94072a6cf3d12e0
2022-03-04 18:46:12 -06:00
Wade Fife 32d1959e49 fpga: x400: Add support for DRAM with 400 MHz BW
Original-commit: bbda5411548a06a3c3ada7b02df8fa7fb44aaad5
2022-03-04 18:46:12 -06:00
Wade Fife f88b56d9cb fpga: x400: Change AXI XB for DRAM to 512-bit
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.


Original-commit: 822cd03c8cd686f8b0554774adcbdd3803128bc2
2022-03-04 18:46:12 -06:00
Wade Fife 9ddb360199 fpga: rfnoc: Fix strobe probability in radio simulator
Original-commit: 8f68886ee3045abb486bfa8179e7129ebd377580
2022-03-04 18:46:12 -06:00
Wade Fife 6227436d54 fpga: rfnoc: Regenerate noc_shells
Original-commit: 6ff8bd326b0da4d2f9e044a3df3e19b807459d25
2022-03-04 09:42:39 -06:00
Javier Valenzuela 11ca44bbb3 fpga: x400: Add SPI Controller Info register
Include a register that contains SPI controller information.
Currently, it only provides the number of slaves addressable
by the SPI engine.


Original-commit: 1d7d1226e7576bfad484109afd3aad4e78af111b
2022-03-04 09:41:24 -06:00
Javier Valenzuela 56b8f83341 fpga: x400: Adjust SPI engine strobes alignment
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.


Original-commit: adb352a2ad81d7c6d70ec5880a787b6bab7d19ba
2022-03-04 09:41:24 -06:00
Wade Fife 8630f2616c fpga: x400: Set replay SEP buffers to twice MTU
Original-commit: a297c9765a0309ff194bf36074871f5bb1b6c34d
2022-02-24 20:25:48 -06:00
Aaron Rossetto b7c900445e fpga: Add SPDX license identifier
Original-commit: c718ce6cd5b84ceaca50fe02f7ad9e95364472cc
2022-02-23 12:24:32 -06:00
Martin Braun c38c6f1b3a Remove FSRU-related files
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.


Original-commit: ba00ff0cf5c0ced093e0be12b3006fe2f657a58a
2022-02-22 14:41:19 -06:00
Wade Fife 3d3c75f74d fpga: e320: Add DRAM ports
This adds two additional ports to the DRAM, for a total of up to
four channels connected to DRAM.


Original-commit: a91d8e49655dd6f69ce1153498266c1a95230772
2022-02-18 06:42:09 -07:00
Martin Braun d706b50681 images: Remove references to N230
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.


Original-commit: f1f6d8eac52bfecd840ace95c2d357641ae3b09c
2022-02-15 14:07:53 -06:00
Wade Fife 1c0724aae2 fpga: n3xx: Fix DRAM FIFO address alignment
Original-commit: 59e35418ea5e6a0383e124425829e3de7dfa3237
2022-02-10 19:46:39 -07:00
Wade Fife 8589361e40 fpga: rfnoc: Change AWIDTH default for axi_ram_fifo
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.


Original-commit: 6936a9ac664cbc312fd17a5ebab9b40069615f7a
2022-02-10 19:46:39 -07:00
Wade Fife c322899053 fpga: e31x: Add DRAM support
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


Original-commit: 788fef11ef890c6dcee3be495fc381bcf2990d3b
2022-02-10 18:13:44 -07:00
Jonathon Pendlum 83ad8e36ba fpga: rfnoc: Add BLANK_OUTPUT to FIR filter block's parameters
Original-commit: 8444f84add04f025b7e24855e0ba79446e615e01
2022-02-10 18:11:41 -07:00
Javier Valenzuela 01f7f75ca3 fpga: x400: Add DRAM enable macro
Original-commit: cdcd39aeb508298e28e8a2a89db5ab9fefd70435
2022-02-10 13:18:58 -07:00
Martin Braun 43128791b4 images: Add utilization report files to B2xx image files
Original-commit: ac286920f0d4f3b7b26ea3cfc7a9e11ae10346d1
2022-02-10 11:35:47 -07:00
Martin Braun cb471fe66a fpga: b2xx: Generate utilization report files
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.


Original-commit: 3a9f3204842d9851fef0e87b6b7d27261624a7fc
2022-02-10 11:35:47 -07:00
Javier Valenzuela 381c7d4d9c fpga: x400: zbx: cpld: Bump ZBX regmap copyright
Original-commit: 6bb7dffa4f0e16d5c51c69fb56af152dabf71236
2022-02-10 09:57:56 -07:00
Javier Valenzuela 58d8fb66eb fpga: x400: cpld: Bump CMI wrapper copyright
Original-commit: f73f2b1a8c38b0d43f5b7bf1d40c96f11f15742f
2022-02-10 09:57:45 -07:00
Wade Fife 65448367b1 fpga: x400: Bump minor version
Original-commit: 5122ce9a399a5ba9c20293385ccef89e23ec3926
2022-02-07 13:08:11 -07:00
Wade Fife 1b84fb44b0 fpga: x400: Update rfnoc_image_core files
Updates the RFNoC image core files to include DRAM and default image
changes.


Original-commit: 58a2dfee34e2b4e9909a326a024fda6a615c4913
2022-02-07 13:08:11 -07:00
Wade Fife c885f401c0 fpga: x400: Add Replay to 100 and 200 MHz images
This adds the RFNoC replay block to the defautl 100 and 200 MHz images
for X410.


Original-commit: 6031a935df7e41c9fc1857b5b708a9034c850970
2022-02-07 13:08:11 -07:00
Wade Fife c2477b9519 fpga: x400: Add DRAM support
Original-commit: 19a333a2682898c4720a1316d4bcd6b3046d23ba
2022-02-07 13:08:11 -07:00
Wade Fife a265c582ff fpga: x400: Set DRAM speed to 2.0 GT/s
Original-commit: 7b8d45380577ee27916a59c3f66eafb6f00ea7ca
2022-02-07 13:08:11 -07:00
Wade Fife 9a4a9645ad fpga: x400: Add axi_inter_4x64_512_bd IP
Original-commit: 129440913803de793b82ddbd7b6f5605dacb8aa3
2022-02-07 13:08:11 -07:00
Wade Fife f5b6a04e5c fpga: x400: Add axi_inter_2x128_512_bd IP
Original-commit: e88c447a1a890a38ee875c14ab55a713056709b9
2022-02-07 13:08:11 -07:00
Humberto Jimenez 653c9bacf3 images: Update N32x CPLD manifest
Original-commit: a4fc11e6ef08be2141f3cfea7c521aae0ba65634
2022-01-31 15:03:50 -06:00
Humberto Jimenez 95c58d5ed6 fpga: n3xx: rh: cpld: Refactor CPLD build process
Original-commit: 739b37ba40e7aba288ed781922aa8fa3b1bfc16e
2022-01-25 18:28:57 -07:00
Martin Braun f645d3d613 fpga: Remove noc_shell_regs.vh and sim_rfnoc_lib.svh
Both files are a UHD 3 remnant and potentially confusing for UHD
4 codebase readers.


Original-commit: b29af0ea0d340f37628f65e7b739fa1865d212a9
2022-01-25 14:09:15 -07:00
Javier Valenzuela f9c1a57ddb fpga: x400: cpld: Bump copyright
Original-commit: 98a13add8171d20215a738d19d48925babf22689
2022-01-25 10:18:47 -07:00
Javier Valenzuela 7e9d716efa fpga: x400: Bump copyright
Original-commit: 14d31c68f0f96d68d81ac248a970a7610c555a6d
2022-01-25 10:18:47 -07:00
Javier Valenzuela 1ac4909e6f fpga: x400: Expand PS GPIO port for DIO control
Original-commit: 4bfbb9eeec92fdd3e9d7096006f63477d4848f76
2022-01-25 10:18:47 -07:00
Javier Valenzuela 5237e5778c fpga: x400: Add SPI bus support for GPIO ports
Original-commit: 38c549d1f7672e38773fc6624539cc166285a1df
2022-01-25 10:18:47 -07:00
Javier Valenzuela 962d01e583 fpga: x400: Add GPIO control via ATR and DB state
Original-commit: 9335939b9b3ab85cee5908ff3357f9e7819e3366
2022-01-25 10:18:47 -07:00
Javier Valenzuela 4edae39d9e fpga: x400: Connect Radio Blocks to DIO
Original-commit: 87b2cf09301e90dfaf2a6554c424b62e0558e0b1
2022-01-25 10:18:47 -07:00
Wade Fife 729d780bd4 fpga: tools: Fix adding directories for HDL source
Original-commit: 6bb7d61251abd303049dfd0f47bd0266656797fb
2022-01-13 14:33:59 -06:00
Wade Fife fd541b0d1a fpga: hls: Add version to generated HLS IP
This change causes HLS IP to be exported with a version of 1.0.0
instead of a date code. Due to a bug in Vivado, date codes after
0x7FFFFFFF (anything in 2022 or beyond) cause an error. Setting
an explicit revision avoids this issue.

See Xilinx AR 76960 for details.


Original-commit: 51384afc2c5d4db9e2e45d97382edce8c8039b10
2022-01-13 14:33:59 -06:00
Wade Fife 9c73c857cf fpga: x400: Fix rfnoc_image_core.vh path
Previously, when running rfnoc_image_builder, the rfnoc_image_core.vh
file in the main x400 directory was being used instead of the one
generated by rfnoc_image_builder.


Original-commit: 121b6c560cacfb5deacdee664dd1f32cafef7b3d
2022-01-12 23:44:38 -06:00