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

Litex build not reproducible #3

Open
nmk456 opened this issue Apr 10, 2023 · 11 comments
Open

Litex build not reproducible #3

nmk456 opened this issue Apr 10, 2023 · 11 comments

Comments

@nmk456
Copy link

nmk456 commented Apr 10, 2023

Can you add the script/command used to generate the litex builds? I can't my own builds to work with the toolchain.

@hansfbaier
Copy link
Collaborator

Which ones in particular?

@nmk456
Copy link
Author

nmk456 commented Apr 12, 2023

I'm specifically interested in litex-ddr-stlv7325 but all of them would be nice.

@hansfbaier
Copy link
Collaborator

hansfbaier commented Apr 12, 2023

I just committed this.
I used almost the original litex target file, I only reduced the DDR3 pads to use only the first two modules,
and I had to run the build with 80MHz sys-clk.
Since that runs vivado, I copy the .v and the .init files from the build directory (.xdc only first time and then commenting out the parts that nextpnr-xilinx does not understand).

https://github.com/openXC7/demo-projects/blob/main/litex-ddr-stlv7325/sitlinv_stlv7325.py

@hansfbaier
Copy link
Collaborator

Very similar procedure with the other boards.

@hansfbaier
Copy link
Collaborator

Eventually we are going to add the toolchain to LiteX, but the toolchain packaging is not final yet, so I am hesitating with that at the moment.

@tommythorn
Copy link

tommythorn commented May 1, 2023

Slightly off topic, but on the same design - I can build it and get the LED chasers, but is there supposed to be a serial console somewhere? The USB-C (between the SFP and RJ ports) claims to be a serial adapter (auto recognized by both macOS and Linux) but I'm not seeing anything there.

@hansfbaier
Copy link
Collaborator

hansfbaier commented May 1, 2023 via email

@tommythorn
Copy link

tommythorn commented May 2, 2023

(Updated to be more readable)

Ok, I finally got a schematic and a lot has changed, to the point where stlv7325, which refers to the blue version 1.0 which isn't sold anymore, is really a different board than the current red, version 2.0. I see LiteX calls the latter "stlv7325_v2" which is clear. However the demos here will not probably not work with the v2 board. The seller shared a relevant link: litex-hub/litex-boards#498 which also has the schematic in the first comment.

FWIW, I succeed in getting a serial loopback design working using PIN L23 as FPGA TX/PC RX and K21 as PC TX/FPGA RX.

@hansemro
Copy link
Contributor

hansemro commented Jun 7, 2023

Had to make the following litex-board changes for KC705 (similar for other boards as well):

  1. Drop _T_DCI (for digitally controlled impedance with tristate support; referred to as 3-state DCI in UG471) from IOStandard constraints under litex_boards/platforms/<board>.py
  2. Replace S7MMCM with S7PLL under litex_boards/targets/<board>.py

After updating litex-boards package, I can generate the necessary litex files with:

python3 -m litex_boards.targets.<board> --build --no-compile-gateware [OPTION]...

--no-compile-gateware avoids running vivado, but still generates everything needed for open source flow (gateware + bios).

Relevant fork: https://github.com/hansemro/litex-boards/commits/kc705_nextpnr

EDIT: added correction for T_DCI meaning

@hansfbaier
Copy link
Collaborator

Great, can you put this in a README of your contribution?

@hansemro
Copy link
Contributor

hansemro commented Jun 7, 2023

Sure, I will get to it when I can.

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

4 participants