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

Symbiflow tool doesn't pass Yosys parameters when using VPR as PnR #434

Open
carlosedp opened this issue Jun 5, 2024 · 1 comment
Open

Comments

@carlosedp
Copy link
Contributor

carlosedp commented Jun 5, 2024

In my core, I use Symbiflow tool to synthesize and generate bitstream to an Artix 7 FPGA.

I recently needed to pass a vlogdefine to Yosys due to memory initialization but the parameter is not passed to Yosys correctly. It used to work before I needed to pass the DEFINE to Yosys.

...
  artya7-35t-oss:
    default_tool: symbiflow
    description: Digilent ArtyA7-35T Board using Symbiflow OSS Toolchain
    filesets: [base, artya7-35t, proginfo, progload]
    generate: [artya7-35t]
    hooks:
      post_run: [artya7-35t]
    tools:
      symbiflow:
        part: xc7a35t
        package: csg324-1
        vendor: xilinx
        pnr: vpr
    toplevel: Toplevel
    parameters:
      - ENABLE_INITIAL_MEM_

parameters:
  ENABLE_INITIAL_MEM_:
    description: Used by firtool so the memories are initialized with readmemh. https://github.com/llvm/circt/pull/5237
    paramtype: vlogdefine
    datatype: bool
    default: true

In other tools like Trellis, the param is passed fine. Apparently using NextPNR it's also passed but I need to investigate it more since it requires a NextPNR which supports Xilinx.

@carlosedp carlosedp changed the title Symbiflow tool doesm' Symbiflow tool doesn't pass Yosys parameters when using VPR as PnR Jun 5, 2024
@carlosedp
Copy link
Contributor Author

I've added a workaround on carlosedp@4a806a8 that allows passing defines in the filelist array. This can be used until symbiflow has a proper flag for defines which I've sent here: chipsalliance/f4pga#669

I don't plan to open a PR for the workaround. I'll wait until the solution is added to symbiflow_synth and then I can get a final PR.

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