Commit Graph

1460 Commits

Author SHA1 Message Date
Florent Kermarrec 3bb1d2c38c ci: Add apt-get update to fix CI. 2022-12-09 12:51:30 +01:00
Florent Kermarrec 3b2bcf91ed ci: Switch to ubuntu 22.04 and increase similarities with LiteX's CI. 2022-12-09 11:06:58 +01:00
Florent Kermarrec 6b00d1adce ci: Install RISC-V GCC with litex_setup.py. 2022-12-08 21:57:50 +01:00
Florent Kermarrec 379db85fc7 bench: Update with LiteX/LiteX-Boards changes. 2022-12-08 10:29:43 +01:00
enjoy-digital 1f1ab2d3ea
Merge pull request #314 from antmicro/msieron/fix-ddr4-sim
Fix DFITimingsChecker for DDR4 simulation
2022-11-18 12:47:13 +01:00
Michal Sieron f25604c153 Fix DFITimingsChecker for DDR4 simulation
In case of DDR4 tRFC and tREFI timings are actually dictionaries with
timings specific for the chosen refresh mode.

Right now, it is impossible to simulate DDR4, because an exception
happens in `DFITimingsChecker.prepare_timings` method when indexing
`val` variable.

This is due to the fact, that in `DFITimingsChecker.__init__` we request
timing values from the module by name, ignoring the fact that some of
them (tRFC and tREFI) need to be first accessed using the chosen refresh
mode.

This commit fixes this error, by properly using `key` parameter when
calling `SDRAMModule.get` method to get only required timing.

If one were to fix it in `DFITimingsChecker.prepare_timings` method,
it would require duplicating logic from `SDRAMModule.get` so this is a
simpler and cleaner solution.

Signed-off-by: Michal Sieron <msieron@antmicro.com>
2022-11-14 21:36:17 +01:00
Florent Kermarrec c770dd62ed test/test_lpddr5: Add tINIT2 as allowed warning. 2022-10-25 08:58:20 +02:00
Florent Kermarrec d1529d7508 ci: Bump to ubuntu 20.04. 2022-10-14 18:17:02 +02:00
Florent Kermarrec ae0763e252 axi: Update frontend/test with LiteX changes. 2022-09-15 17:52:01 +02:00
Florent Kermarrec 559dd24c99 phy/gw2ddrphy: Minor cosmetic cleanups. 2022-09-08 16:09:38 +02:00
Florent Kermarrec cff8500f52 phy/gw2ddrphy: Add explicit TXCLK_POL and set it to 1 for DQS. 2022-09-08 16:03:39 +02:00
Florent Kermarrec 5b72d1a34a gw2ddrphy: Add TCLK_SOURCE on DQS's OSER4_MEM. 2022-09-08 10:49:54 +02:00
Florent Kermarrec ab9aec9129 phy/gw2ddrphy: Make oen signal names consistent. 2022-09-07 17:02:56 +02:00
Florent Kermarrec 22b823fdbc phy/gw2ddrphy: Use same BitSlip moduel than ECP5DDRPHY. 2022-09-07 16:58:15 +02:00
Florent Kermarrec f869d8e3d6 phy/gw2ddrphy: Increase similarities with ecp5ddrphy and add checkme notes. 2022-09-07 16:03:20 +02:00
Florent Kermarrec 434b00e65a phy/gw2ddrphy: Fix Vendor name, update copyright. 2022-09-07 12:14:11 +02:00
Icenowy Zheng c7eba6f704 Add intitial GW2DDRPHY (ported from ECP5DDRPHY), WIP. 2022-09-07 11:25:30 +02:00
Florent Kermarrec dfc03a26b3 CONTRIBUTORS: Update. 2022-09-07 10:18:59 +02:00
Florent Kermarrec 3d066c87f9 ci: Add comment for Verilator build/install. 2022-06-27 17:46:37 +02:00
Florent Kermarrec e662fadf8a test/test_init: Update. 2022-05-10 10:38:55 +02:00
Florent Kermarrec 85e4c995d8 litedram/gen: .init renaming no longer required with https://github.com/enjoy-digital/litex/pull/1293. 2022-05-09 18:02:57 +02:00
Florent Kermarrec 2b8af870c5 phy/usddrphy/Clk: Connect cdly_value only on first clk pad. 2022-05-02 17:34:52 +02:00
Florent Kermarrec 692355d120 CONTRIBUTORS: Update. 2022-05-02 13:43:38 +02:00
Florent Kermarrec 745f2a060a bench/targets: Use full imports. 2022-05-02 13:07:29 +02:00
Florent Kermarrec 47ddb03ec8 phy/rpc/arty: Use new I2C init to automatically inialize Vbucks and integrate modified DDR3 IOs (SSTL15). 2022-04-29 14:16:47 +02:00
Florent Kermarrec b313fe5224 phy/rpc/arty: Remove calls to add_csrs (No longer required) and fix build. 2022-04-29 13:13:38 +02:00
Florent Kermarrec 9e0d5ca22d phy/rpc: Add Arty target file that has used to validate RPC-DRAM. 2022-04-29 13:10:22 +02:00
Florent Kermarrec f396253729 frontend/axi/rmw: Fix simulation mismatch between unit-test/verilator. 2022-04-11 17:49:19 +02:00
Florent Kermarrec 15f7ba2713 frontend/adapter: Set with_common_rst to False on ClockDomainCrossing. 2022-04-01 11:46:43 +02:00
enjoy-digital 000c220a57
Merge pull request #300 from antmicro/variable_dq_dqs_ratio
Allow for variable DQ/DQS ratio
2022-03-31 17:21:01 +02:00
Ryszard Różak 18d25d84c3 Update test/reference/*_init.h
Signed-off-by: Ryszard Różak <rrozak@antmicro.com>
2022-03-30 13:42:47 +02:00
Karol Gugala 574df6f908 Allow for variable DQ/DQS ratio
Signed-off-by: Ryszard Różak <rrozak@antmicro.com>
2022-03-30 13:42:47 +02:00
Florent Kermarrec b404a7f0f2 dfii: Improve hardware/software control comments. 2022-03-28 14:27:41 +02:00
enjoy-digital c396e3f153
Merge pull request #302 from antmicro/external-dfi-injector
dfi: add possibility to have an external dfi injector
2022-03-28 14:22:31 +02:00
enjoy-digital 27939f2d0b
Merge pull request #301 from Johnsel/arduino_mkrvidor4000
Added AS4C4M16 for Arduino MKR Vidor 4000 support
2022-03-28 14:16:38 +02:00
Jędrzej Boczar 7e30fda871 Add DFIInjector CSRs documentation 2022-03-28 10:09:43 +02:00
Florent Kermarrec 05d3be476c phy/ecp5ddrphy: Reduce rdly to 3-bit. 2022-03-22 17:08:51 +01:00
John Simons f14577a147 Added AS4C4M16 residing on Arduino MKR Vidor 4000 2022-03-21 18:56:57 -07:00
Jędrzej Boczar da2748723d Add option to switch DFIInjector to externally driven DFI 2022-03-07 11:21:02 +01:00
Florent Kermarrec 4c1ce026e9 phy/s7ddrphy: Disable write_latency_calibration by default on Artix7 boards. 2022-03-03 15:29:32 +01:00
enjoy-digital c7d4d7f1b4
Merge pull request #295 from antmicro/acom/rdimm-phy-working
s7phy: fix DDR4 mode
2022-03-03 15:09:58 +01:00
Alessandro Comodi 27b11d755c init: ddr4: add inversion also in python init
Signed-off-by: Alessandro Comodi <acomodi@antmicro.com>
2022-03-02 14:33:51 +01:00
Alessandro Comodi 4eb5cd9c40 s7: fix DDR4 mode
Signed-off-by: Alessandro Comodi <acomodi@antmicro.com>
2022-03-01 13:40:13 +01:00
Florent Kermarrec af94e8497a litedram_gen: Enable Read-Modify-Write support with ECC. 2022-02-28 18:52:32 +01:00
Florent Kermarrec 095180be6a frontend/AXI: Add optional Read-Modify-Write mode for cases where w.strb is not available on the DRAM side (ex when ECC is enabled).
When enabled, partial writes are automatically detected and a Read-Modify-Write access is
done. Before doing a RMW access, pending accesses are terminated and incoming accesses are
stalled until RMW access is done.

Enable with_read_modify_write in test_axi.
2022-02-28 18:45:46 +01:00
Florent Kermarrec 81ae73b74a test/test_axi: Exercise w.strb through randomness (as we are doing for data). 2022-02-28 18:35:39 +01:00
Florent Kermarrec 3f84cc9116 ddr3_mr_gen: Also display RZQ/x on configured electrical settings. 2022-02-24 16:33:46 +01:00
Florent Kermarrec 70c1491d1c ddr3_mr_gen: Display RZQ/x with --list (Useful for comparison with MIG's settings expressed in RZQ/x). 2022-02-24 14:44:02 +01:00
Florent Kermarrec e48471ea43 phy/s7ddrphy: Expose write_latency_calibration parameter and revert it to True by default. 2022-02-23 10:36:42 +01:00
Florent Kermarrec a0580c7ae7 frontend/axi: Add Write Buffer reservation mechanisms to know when we have enough data in the buffer to generate the command. 2022-02-17 17:21:02 +01:00