Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Getting the litex+picorv32+litedram test integrated and working #54

Open
gatecat opened this issue Jul 26, 2021 · 0 comments
Open

Getting the litex+picorv32+litedram test integrated and working #54

gatecat opened this issue Jul 26, 2021 · 0 comments

Comments

@gatecat
Copy link
Contributor

gatecat commented Jul 26, 2021

I've currently been investigating what's needed to get litedram working with fpga-interchange, now that basic differential IO are working.

My current progress is at https://github.com/gatecat/litex-fpga-interchange, which shows some promise in terms of calibration before crashing (see the detailed issues below):

        __   _ __      _  __
       / /  (_) /____ | |/_/
      / /__/ / __/ -_)>  <
     /____/_/\__/\__/_/|_|
   Build your hardware, easily!

 (c) Copyright 2012-2021 Enjoy-Digital
 (c) Copyright 2007-2015 M-Labs

 BIOS built on Jul 26 2021 19:09:45
 BIOS CRC passed (be68b3b4)

 Migen git sha1: --------
 LiteX git sha1: 751e9969

--=============== SoC ==================--
CPU:		PicoRV32 @ 60MHz
BUS:		WISHBONE 32-bit @ 4GiB
CSR:		32-bit data
ROM:		128KiB
SRAM:		8KiB
L2:		8KiB
SDRAM:		262144KiB 16-bit @ 480MT/s (CL-6 CWL-5)

--========== Initialization ============--
Initializing SDRAM @0x40000000...
Switching SDRAM to software control.
Write latency calibration:
m0:0 m1:0 
Read leveling:
  m0, b00: |00000000000000000000000000000000| delays: -
  m0, b01: |00000000000000000000000000000000| delays: -
  m0, b02: |00000000000000000000000000000000| delays: -
  m0, b03: |00000000000000000000000000000000| delays: -
  m0, b04: |00000000000000000000000000000000| delays: -
  m0, b05: |00000000000000000000000000000000| delays: -
  m0, b06: |00011111111111111110000000000000| delays: 11+-08
  m0, b07: |00000000000000000000000000000111| delays: 30+-01
  best: m0, b06 delays: 11+-08
  m1, b00: |00000000000000000000000000000000| delays: -
  m1, b01: |00000000000000000000000000000000| delays: -
  m1, b02: |00000000000000000000000000000000| delays: -
  m1, b03: |00000000000000000000000000000000| delays: -
  m1, b04: |00000000000000000000000000000000| delays: -m
  m1, b05: |00000000000000000000000000000000| delays: -
  m1, b06: |00011111111111111111000000000000| delays: 11+-08
  m1, b07: |00000000000000000000000000000001| delays: 31+-00
  best: m1, b06 delays: 11+-08
Switching SDRAM to hardware control.
Memtest at 0x40000000 (2.0MiB)...

Significant issues:

Although this looks like a long list, I think we are actually impressively close to the goal here! Hopefully most of these issues don't prove to be to much work and then we can get this from proof-of-concept to properly integrated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant