question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Need help for setting up xc7s50t

See original GitHub issue

Hi, I’m trying to add support for xc7s50t to Project X-Ray. Naturally I refered to the Guide to adding a new device to an existing family and tried to pick up where #1534 left. However it seems that the Project X-Ray toolchain has changed quite a bit since #1534 and the guide is about how to add devices to existing families instead of adding new devices of new families, so I’m currently stuck at where I’m supposed to make db-prepare-artix7. For context, I’m on Ubuntu 20.04.3 with Vivado 2017.2 installed and successfully ran Step 9 (the 010-clb-init fuzzer) of the Getting Started section of Project X-Ray’s documentations (ran ./download-latest-db.sh in Step 8) for artix7. A minor problem occured when running make env of Step 5 (see my comments on #1521 ) but that didn’t prevent me from proceeding.

Here’s what I did after completing 010-clb-init for artix7:

Then in a new terminal, following the instructions in Guide to adding a new device to an existing family, I ran make db-prepare-spartan7 and got the following output:

me@me-my_machine:~/prjxray$ make db-prepare-spartan7 
Preparing spartan7 files
============================
Part xc7s50csga324-1 has an unsupported device xc7s50
Part xc7s50csga324-1IL has an unsupported device xc7s50
Part xc7s50csga324-2 has an unsupported device xc7s50
Part xc7s50fgga484-1 has an unsupported device xc7s50
Part xc7s50fgga484-1IL has an unsupported device xc7s50
Part xc7s50fgga484-2 has an unsupported device xc7s50
Part xc7s50ftgb196-1 has an unsupported device xc7s50
Part xc7s50ftgb196-1IL has an unsupported device xc7s50
Part xc7s50ftgb196-2 has an unsupported device xc7s50
me@me-my_machine:~/prjxray$

Which already looks wrong, compared to what make db-prepare-artix7 gave me:

me@me-my_machine:~/prjxray$ make db-prepare-spartan7 

Preparing artix7 files
============================
Part xc7a35tiftg256-1L has an unsupported device xc7a35ti
Part xc7a35tifgg484-1L has an unsupported device xc7a35ti
Part xc7a35ticsg325-1L has an unsupported device xc7a35ti
Part xc7a35ticsg324-1L has an unsupported device xc7a35ti
Part xc7a35ticpg236-1L has an unsupported device xc7a35ti
Part xc7a50ticpg236-1L has an unsupported device xc7a50ti
Part xc7a50tiftg256-1L has an unsupported device xc7a50ti
Part xc7a50tifgg484-1L has an unsupported device xc7a50ti
Part xc7a50ticsg325-1L has an unsupported device xc7a50ti
Part xc7a50ticsg324-1L has an unsupported device xc7a50ti
Part xc7a15tcpg236-1 has an unsupported device xc7a15t
Part xc7a15tcpg236-2 has an unsupported device xc7a15t
Part xc7a15tcpg236-2L has an unsupported device xc7a15t
Part xc7a15tcpg236-3 has an unsupported device xc7a15t
Part xc7a15tcsg324-1 has an unsupported device xc7a15t
Part xc7a15tcsg324-2 has an unsupported device xc7a15t
Part xc7a15tcsg324-2L has an unsupported device xc7a15t
Part xc7a15tcsg324-3 has an unsupported device xc7a15t
Part xc7a15tcsg325-1 has an unsupported device xc7a15t
Part xc7a15tcsg325-2 has an unsupported device xc7a15t
Part xc7a15tcsg325-2L has an unsupported device xc7a15t
Part xc7a15tcsg325-3 has an unsupported device xc7a15t
Part xc7a15tfgg484-1 has an unsupported device xc7a15t
Part xc7a15tfgg484-2 has an unsupported device xc7a15t
Part xc7a15tfgg484-2L has an unsupported device xc7a15t
Part xc7a15tfgg484-3 has an unsupported device xc7a15t
Part xc7a15tftg256-1 has an unsupported device xc7a15t
Part xc7a15tftg256-2 has an unsupported device xc7a15t
Part xc7a15tftg256-2L has an unsupported device xc7a15t
Part xc7a15tftg256-3 has an unsupported device xc7a15t
Part xc7a15ticpg236-1L has an unsupported device xc7a15ti
Part xc7a15ticsg324-1L has an unsupported device xc7a15ti
Part xc7a15ticsg325-1L has an unsupported device xc7a15ti
Part xc7a15tifgg484-1L has an unsupported device xc7a15ti
Part xc7a15tiftg256-1L has an unsupported device xc7a15ti
Part xc7a75tfgg484-1 has an unsupported device xc7a75t
Part xc7a75tfgg484-2 has an unsupported device xc7a75t
Part xc7a75tfgg484-2L has an unsupported device xc7a75t
Part xc7a75tfgg484-3 has an unsupported device xc7a75t
Part xc7a75tfgg676-1 has an unsupported device xc7a75t
Part xc7a75tfgg676-2 has an unsupported device xc7a75t
Part xc7a75tfgg676-2L has an unsupported device xc7a75t
Part xc7a75tfgg676-3 has an unsupported device xc7a75t
Part xc7a75tftg256-1 has an unsupported device xc7a75t
Part xc7a75tftg256-2 has an unsupported device xc7a75t
Part xc7a75tftg256-2L has an unsupported device xc7a75t
Part xc7a75tftg256-3 has an unsupported device xc7a75t
Part xc7a75tcsg324-1 has an unsupported device xc7a75t
Part xc7a75tcsg324-2 has an unsupported device xc7a75t
Part xc7a75tcsg324-2L has an unsupported device xc7a75t
Part xc7a75tcsg324-3 has an unsupported device xc7a75t
Part xc7a75ticsg324-1L has an unsupported device xc7a75ti
Part xc7a75tifgg484-1L has an unsupported device xc7a75ti
Part xc7a75tifgg676-1L has an unsupported device xc7a75ti
Part xc7a75tiftg256-1L has an unsupported device xc7a75ti
Part xc7a100tiftg256-1L has an unsupported device xc7a100ti
Part xc7a100tifgg676-1L has an unsupported device xc7a100ti
Part xc7a100tifgg484-1L has an unsupported device xc7a100ti
Part xc7a100ticsg324-1L has an unsupported device xc7a100ti
Part xc7a200tisbv484-1L has an unsupported device xc7a200ti
Part xc7a200tisbg484-1L has an unsupported device xc7a200ti
Part xc7a200tiffv1156-1L has an unsupported device xc7a200ti
Part xc7a200tiffg1156-1L has an unsupported device xc7a200ti
Part xc7a200tifbv676-1L has an unsupported device xc7a200ti
Part xc7a200tifbv484-1L has an unsupported device xc7a200ti
Part xc7a200tifbg676-1L has an unsupported device xc7a200ti
Part xc7a200tifbg484-1L has an unsupported device xc7a200ti
Find pins for xc7a100tcsg324-1
Find pins for xc7a100tfgg484-1
Find pins for xc7a100tfgg676-1
Find pins for xc7a100tftg256-1
Find pins for xc7a200tfbg484-1
Find pins for xc7a200tfbg676-1
Find pins for xc7a200tfbv484-1
Find pins for xc7a200tfbv676-1
Find pins for xc7a200tffg1156-1
Find pins for xc7a200tffv1156-1
Find pins for xc7a200tsbg484-1
Find pins for xc7a200tsbv484-1
Find pins for xc7a35tcpg236-1
Find pins for xc7a35tcsg324-1
Find pins for xc7a35tcsg325-1
Find pins for xc7a35tfgg484-1
Find pins for xc7a35tftg256-1
Find pins for xc7a50tcpg236-1
Find pins for xc7a50tcsg324-1
Find pins for xc7a50tcsg325-1
Find pins for xc7a50tfgg484-1
Find pins for xc7a50tftg256-1
me@me-my_machine:~/prjxray$ 

Then source settings/spartan7.sh returned this:

me@me-my_machine:~/prjxray$ source settings/spartan7.sh
Traceback (most recent call last):
  File "/home/me/prjxray/utils/create_environment.py", line 66, in <module>
    main()
  File "/home/me/prjxray/utils/create_environment.py", line 59, in main
    environment = get_environment_variables()
  File "/home/me/prjxray/utils/create_environment.py", line 37, in get_environment_variables
    part_info = get_part_information(db_root, part)
  File "/home/me/prjxray/prjxray/util.py", line 48, in get_part_information
    assert part, "Part {} not found in {}".format(part, part_mapping)
AssertionError: Part None not found in {}
(env) me@me-my_machine:~/prjxray$ 

Because prjxray/database/spartan7/mapping/parts.yaml contains only {} and nothing else.

Did I miss something? How should I solve this? Thanks!

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:29 (23 by maintainers)

github_iconTop GitHub Comments

2reactions
mithrocommented, Dec 14, 2021

A new prjxray-db was published with this initial spartan7 support @ https://github.com/SymbiFlow/prjxray-db/tree/master/spartan7

The HTMLified version can be found at https://symbiflow.github.io/prjxray-db/#database-for-spartan7 with the HTML rendered tile graph found at spartan7.

<div> GitHub</div><div>prjxray-db/spartan7 at master · SymbiFlow/prjxray-db</div><div>Project X-Ray Database: XC7 Series. Contribute to SymbiFlow/prjxray-db development by creating an account on GitHub.</div>
2reactions
MidsummerNightcommented, Dec 7, 2021

@bunnie I see. My goal is to allow SymbiFlow to be able to generate bitstreams targeting Spartan-7 from user HDL designs, preferrably using the Yosys-VPR-FASM-Bitstream flow (which would require me to get the RR graph and arch.timing.xml) since it already supports a few Artix-7 parts, while nextpnr says their support for Project X-Ray is still under development.

@acomodi Thanks! I’ll look into this Interchange thing.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Need help for setting up xc7s50t · Issue #1789 · f4pga/prjxray
Hi, I'm trying to add support for xc7s50t to Project X-Ray. Naturally I refered to the Guide to adding a new device to...
Read more >
XC7S50-1CSGA324C AMD Xilinx | Integrated Circuits (ICs)
HELP. Help and Support Order Status Shipping Rates/Options Returns and Order Issues Tariff Information ; FOLLOW US · We use cookies to provide...
Read more >
How to use FTDI USB Fpga boards - Rayming PCB & Assembly
1. Set the baud rate. Check the documentation of your device to say what value it needs. 2. Setting serial port parameters. The...
Read more >
F4pga Prjxray Issues - IssueHint
ERROR: After October 2020 you may experience errors when installing or updating packages. open, 0, 2021-12-07, 2022-10-18. Need help for setting up xc7s50t...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found