Commit Graph

1317 Commits

Author SHA1 Message Date
Florent Kermarrec a91883db23 phy/ecp5ddrphy: add configurable cmd_delay.
Allow adding a delay on Clock/Commands. Delay is manual for now but could be
automated in the future if useful (as done on 7-series/Ultrascale(+)).
2021-01-12 18:42:54 +01:00
Florent Kermarrec 53e98f75be phy/ecp5ddrphy: remplace dq_i DELAYF with DELAYG. 2021-01-12 17:32:02 +01:00
Florent Kermarrec 919a613733 phy/ecp5ddrphy: use nphases on DFI. 2021-01-12 17:24:10 +01:00
Florent Kermarrec c29c898af4 platforms/targets: switch to LiteX-Boards. 2021-01-04 14:11:32 +01:00
Florent Kermarrec ec1f34f5f9 phy/ecp5/s7/us: allow user to provide cl/cwl instead of default values.
One some hardware, forcing cl or/and cwl to non-default values can provide
better results.
2021-01-04 13:22:18 +01:00
Florent Kermarrec d4c5c7cef8 phy/gensdrphy: compute default cl from sys_clk_freq (similar what is already done on other PHYs). 2021-01-04 11:31:13 +01:00
Florent Kermarrec e683b48c4a common: rename get_cl_cw function to get_default_cl_cwl (and provide retro-compat) and add get_default_cl, get_default_cwl functions. 2021-01-04 11:04:04 +01:00
Florent Kermarrec e9479cca83 phy/gensdrphy: remove unused cmd_latency parameter. 2021-01-04 10:53:47 +01:00
enjoy-digital 87f95f8442
Merge pull request #226 from mdpye/MT48LC32M8
modules: add MT48LC32M8 SDR module
2021-01-03 22:13:19 +01:00
Nathaniel R. Lewis ec37a6353b
modules: add MT48LC32M8 SDR module 2020-12-31 13:10:24 +00:00
Florent Kermarrec 103072c68a test/reference: update. 2020-12-17 18:21:53 +01:00
Florent Kermarrec d8eccebbbc ci: update RISC-V GCC install. 2020-12-17 17:13:58 +01:00
Florent Kermarrec 33f3aa55e5 phy/ecp5ddrphy: add DM remapping capability.
Required on OrangeCrab that has LDM/UDM swapped.
2020-12-16 11:49:33 +01:00
Florent Kermarrec 596615a238 bench/common: add progress to load_rom. 2020-12-10 19:22:46 +01:00
Florent Kermarrec a87c468afa bench: use --sys-clk-freq=xy to reconfigure frequency and fix Ultrascale. 2020-12-10 19:06:19 +01:00
Florent Kermarrec efb1975d00 bench/arty: add missing eth clock. 2020-12-10 13:43:31 +01:00
Florent Kermarrec 75f87538a5 bench: use common load_bios function. 2020-12-10 11:21:21 +01:00
Florent Kermarrec ea63480253 bench/targets: add identifier. 2020-12-10 11:12:45 +01:00
Florent Kermarrec c472499131 bench/targets: add optional analyzer on all test targets. 2020-12-10 08:44:35 +01:00
Florent Kermarrec 62845f1ec9 phy/usddrphy: update header with 1333, 1866 MT/s. 2020-12-10 08:44:05 +01:00
Florent Kermarrec 496cd27a3d phy/s7/usddrphy: set default cmd_latency to 0.
Now that we are restricting cmd/clk scan in liblitedram, cmd_latency=0 seems
to be workin for all configurations.
2020-12-08 10:05:09 +01:00
Florent Kermarrec af979bbd31 ci: install RISC-V GCC (requires for LiteDRAM standalone core examples). 2020-11-24 19:48:56 +01:00
Florent Kermarrec 68cd462bd4 ci: migrate from Travis CI to Github Actions.
Only covers unit-tests for now, Verilator simulation and benchmarks still need to be adapted.
2020-11-24 13:43:43 +01:00
Florent Kermarrec b6252345af test/reference: update ddr4. 2020-11-17 17:12:02 +01:00
Jędrzej Boczar 6b9f1bd0d8 ddr4: Enable Data Mask for DDR4 memory and invert its polarity. 2020-11-17 15:06:58 +01:00
Florent Kermarrec 1117068595 phy/s7ddrphy: make pads.dm optional (some boards have dm forced to ground). 2020-11-12 19:15:49 +01:00
Florent Kermarrec 431e563a39 common: move cmd/wdata/rdata descriptions and add minimal description of signals. 2020-11-09 12:06:02 +01:00
Florent Kermarrec c83e10dafe bench: cleanup clocking on Ultrascale targets. 2020-11-06 16:14:22 +01:00
Florent Kermarrec 9a50f6ece6 bench/ddr4_mr_gen.py: change default cl to 9 (cl value for sys_clk_freq=125e6). 2020-11-06 14:44:36 +01:00
Florent Kermarrec 4d1f4d5052 bench/xcu1525: use specific output_dir per channel (to allow // build of bitstreams for the different channels). 2020-11-06 10:47:26 +01:00
Florent Kermarrec 0890908a63 bench/xcu1525: rename ddram_channel arg to channel (since it's a dram specific design). 2020-11-06 10:36:56 +01:00
Florent Kermarrec 5cfdf77654 bench/targets: simplify BIST integration using new add_sdram with_bist parameter. 2020-11-06 10:34:26 +01:00
Florent Kermarrec 51b8eb1f82 bench: add xcu1525 target. 2020-10-29 19:11:23 +01:00
Florent Kermarrec a95c6883cc bench/targets: uniformize. 2020-10-29 18:58:37 +01:00
Florent Kermarrec 256cc1b78b bench/genesys2: add optional BIST. 2020-10-29 15:12:17 +01:00
enjoy-digital 8169b5412c
Merge pull request #223 from gregdavill/ecp5_delayf_fix
ecp5ddrphy: Fix DELAYF initial value
2020-10-20 18:11:46 +02:00
Greg Davill 0c8c707f24 ecp5ddrphy: Fix DELAYF initial value
I've seen intermittent failures with recent builds. I suspect it is
related to the DELAYF primitive not being correctly loaded with an
initial value. Holding LOADN LOW ensures a value is correctly
loaded.
2020-10-20 16:44:32 +10:30
Florent Kermarrec a39d873946 phy/ecp5ddrphy: remove rst CSR (does not seem to be necessary on ECP5). 2020-10-19 09:48:50 +02:00
Florent Kermarrec 2ea854225f frontend/bist: expose core for observation. 2020-10-19 09:47:33 +02:00
enjoy-digital 7d8f4713d3
Merge pull request #222 from daveshah1/rcd_fine_speed_int
init: Cast DDR4 RCD fine_speed to int
2020-10-13 15:01:20 +02:00
David Shah eb6268a783 init: Cast DDR4 RCD fine_speed to int
Fixes `TypeError: unsupported operand type(s) for |: 'int' and 'float'`
for some clock frequencies.

Signed-off-by: David Shah <dave@ds0.me>
2020-10-13 13:10:31 +01:00
Florent Kermarrec ce2c410965 phy/s7ddrphy/A7DDRPHY: fix cmd_latency parameter (allow user to specify it). 2020-10-13 10:36:22 +02:00
enjoy-digital 85fa02afc7
Merge pull request #221 from enjoy-digital/write_latency
Add dynamic write latency calibration.
2020-10-12 19:42:26 +02:00
Florent Kermarrec 80b5ed30e9 phy/ecp5ddrphy: reintegrate old BitSlip (issue with new one on ECP5). 2020-10-12 19:40:11 +02:00
Florent Kermarrec 1ee4fa25c4 phy/ecp5ddrphy: add rst CSR. 2020-10-12 19:25:34 +02:00
Florent Kermarrec df73b982ee test/reference: update 2020-10-12 18:50:31 +02:00
Florent Kermarrec 60c68bf949 init/get_sdram_phy_c_header: fix ECPDDRPHY case. 2020-10-12 18:47:44 +02:00
Florent Kermarrec a18d04da42 phy/s7ddrphy: simplify cmd_latency (set it to 1 as default except for a7ddrphy). 2020-10-12 18:33:04 +02:00
Florent Kermarrec 97b4029be7 litedram/init: pass write latency calibration capability to software. 2020-10-12 16:05:59 +02:00
Florent Kermarrec a1e8bcb53c phy/s7/usddrphy: reset bitslip modules with rst CSR. 2020-10-12 10:41:33 +02:00