Commit Graph

289 Commits

Author SHA1 Message Date
Jędrzej Boczar da769094fd phy/lpddr4: fix edge case error with CommandsPipeline ignoring a command
Command was being ignored when it occurred on the last phase and
the next command would invalidate the first phase. Now it is fixed
and a regression test is included. A fix in ConstBitSlip has been added
due to wrong Verilog being generated with cycles=1, register=False.
2021-06-22 11:40:51 +02:00
Jędrzej Boczar baf9c07858 phy/utils: improve ConstBitSlip:
* optional register=False to decrease latency by 1 cycle
* require explicit `cycles` as it influences latency (min_cycles
  still can be used)
* add unit tests
2021-06-21 14:43:49 +02:00
Jędrzej Boczar 4a96be86c0 test/lpddr4: move run_simulation wrapper to phy_common.py 2021-06-21 14:43:49 +02:00
Jędrzej Boczar 1543fa4ace phy/lpddr4: extract common test helpers for use when testing other PHYs 2021-06-21 14:43:49 +02:00
Jędrzej Boczar 47e8a59511 phy/lpddr4: extract SimulationPads and use it as a base class 2021-06-21 14:43:49 +02:00
Jędrzej Boczar 8e563239f9 phy/lpddr4: extract common utilities 2021-06-21 13:22:15 +02:00
Florent Kermarrec 377d6fac6c test/test_lpddr4: Disable failing test. 2021-06-08 15:07:53 +02:00
Florent Kermarrec 2fcc6fe552 test/test_ecc: Update. 2021-06-08 15:07:39 +02:00
Gabriel Somlo dc6cb89737 also remove 'static' from cdelay() declarations in test suite 2021-05-26 12:09:26 -04:00
Florent Kermarrec b8cd26fa52 test/refefence: Update. 2021-05-18 11:26:40 +02:00
Florent Kermarrec 0877a81b4b test/test_init: Add simple way to update references. 2021-05-18 11:26:19 +02:00
Florent Kermarrec 63358ee666 test/reference: Update. 2021-04-28 18:21:27 +02:00
Florent Kermarrec 886f60d32c test/reference: Update. 2021-04-23 11:26:30 +02:00
Jędrzej Boczar 7028944acd lpddr4: add missing copyright comments 2021-04-01 10:07:02 +02:00
Jędrzej Boczar e860d86f3f lpddr4/phy: make redundant cmd overlaps checks optional (and disabled by default) 2021-03-25 15:31:58 +01:00
Jędrzej Boczar 0ecb1340f5 lpddr4/test: fixes: use 2tCK write preamble, update read latency 2021-03-25 15:31:05 +01:00
Jędrzej Boczar 5c6796b92a lpddr4: change MRW command encoding to avoid changing BIOS code 2021-03-25 15:30:48 +01:00
Jędrzej Boczar eb1d900c24 lpddr4: S7PHY related fixes, MRR command, runtime configurable WRITE/MASKED-WRITE 2021-03-25 15:29:17 +01:00
Jędrzej Boczar 4415a3eaf5 lpddr4: improve simulation and Verilator tests runner 2021-03-25 15:19:16 +01:00
Jędrzej Boczar 2ab763ac5e lpddr4: add double-rate PHY, clean up and improve PHY implementation 2021-03-25 15:19:16 +01:00
Jędrzej Boczar 183f1643aa lpddr4: add support for MASKED-WRITE 2021-03-25 15:19:16 +01:00
Jędrzej Boczar 05ed238829 lpddr4: split implementation into multiple files in separate directory 2021-03-25 15:19:16 +01:00
Jędrzej Boczar ee9c2b4cf7 lpddr4: implement ZQC through MPC and include it in init sequence
We do not yet support ZQC during operation (after init sequence)
as LPDDR4 requires 2-stage ZQC (start+latch) and 1us in between,
which requires modifying Refresher (ZQCExecutor) in LiteDRAM.
2021-03-25 15:19:16 +01:00
Jędrzej Boczar 6943a1a4a5 lpddr4: initial PHY logic and simulation tests 2021-03-25 15:19:08 +01:00
Florent Kermarrec 2d021c842e test/reference: update. 2021-02-16 18:35:53 +01:00
enjoy-digital 2c60861929
Merge pull request #232 from antmicro/jboc/init-mr
init: make the write leveling MR bit configurable
2021-02-02 09:36:46 +01:00
Jędrzej Boczar b3ce582891 test: update ddr3 and ddr4 reference headers to new MR_WLVL defines 2021-01-29 12:49:19 +01:00
Jędrzej Boczar a1e7d805ec test: improve error messages when comparing files in test_init.py 2021-01-28 17:44:13 +01:00
Florent Kermarrec c29c898af4 platforms/targets: switch to LiteX-Boards. 2021-01-04 14:11:32 +01:00
Florent Kermarrec 103072c68a test/reference: update. 2020-12-17 18:21:53 +01:00
Florent Kermarrec b6252345af test/reference: update ddr4. 2020-11-17 17:12:02 +01:00
Florent Kermarrec df73b982ee test/reference: update 2020-10-12 18:50:31 +02:00
Florent Kermarrec 39178ce460 test: add minimal OSERDESE2/OSERDESE3 simulations to check Data/Tristate latencies. 2020-10-02 12:30:19 +02:00
Florent Kermarrec f8ee596464 test/reference: update. 2020-09-30 19:49:38 +02:00
Florent Kermarrec 6d063b196c test/reference: update. 2020-09-30 18:06:48 +02:00
Florent Kermarrec c4d7083677 test/reference: update. 2020-09-30 13:29:39 +02:00
Florent Kermarrec 7ccb7d8f16 test/reference: update. 2020-09-24 15:03:35 +02:00
Florent Kermarrec 8525a27762 test/reference: update. 2020-09-15 20:00:55 +02:00
Florent Kermarrec e56f74e08b test/reference: update. 2020-09-07 19:37:03 +02:00
Florent Kermarrec ac825e5112 add SPDX License identifier to header and specify file is part of LiteDRAM. 2020-08-23 15:52:08 +02:00
Florent Kermarrec 198bcbab67 test/reference: update. 2020-08-07 23:14:09 +02:00
Florent Kermarrec 16fd46bf35 frontend: rename adaptation to adapter. 2020-08-05 11:10:42 +02:00
enjoy-digital 02e67ec7c5
Merge pull request #192 from antmicro/jboc/port-adaptation
Implement LiteDRAMNativePortUpConverter with mode="both"
2020-07-28 19:02:33 +02:00
enjoy-digital c4c8803f4f
Merge pull request #204 from antmicro/jboc/spd-read
Add DDR4 SPD EEPROM data parser
2020-06-04 08:54:59 +02:00
Jędrzej Boczar 8fedc3fcd2 frontend/fifo: increase FIFO level after data has actually been written 2020-06-03 16:13:28 +02:00
Jędrzej Boczar 863c45a114 test/spd_data: add missing files to tracking 2020-06-02 15:19:53 +02:00
Jędrzej Boczar a8f2c044c9 modules: add DDR4SPDData parser 2020-06-02 12:16:41 +02:00
enjoy-digital d62fd24c81
Merge pull request #201 from antmicro/jboc/spd-read
modules/spd: save SPD data in SDRAMModule
2020-06-01 21:16:58 +02:00
Jędrzej Boczar 4233f86112 modules/spd: save SPD data in SDRAMModule to allow for runtime verification 2020-06-01 16:56:41 +02:00
Florent Kermarrec 639a31fdd2 test/test_timing: update test_txxd_controller. 2020-05-20 23:40:01 +02:00