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

f4pga-plugins conflicts with Yosys (recent versions) #552

Open
amirarjmand93 opened this issue Jun 13, 2024 · 0 comments
Open

f4pga-plugins conflicts with Yosys (recent versions) #552

amirarjmand93 opened this issue Jun 13, 2024 · 0 comments

Comments

@amirarjmand93
Copy link

amirarjmand93 commented Jun 13, 2024

Hi @kgugala @hzeller

During making of f4pga-plugins inside the VTR, it seems there is a conflicting between last version of yosys-f4pga-pluginsyosys-f4pga-pluginsyosys-f4pga-plugins and Yosys.

CI Test:
[Run-tests (parmys_reg_strong, 16, -DYOSYS_F4PGA_PLUGINS=ON)]

Command:
make -k CMAKE_PARAMS=-DYOSYS_F4PGA_PLUGINS=ON -j16

  • The f4pga-plugins encountered a compilation error due to missing or incorrect member references in the UhdmAst.cc file(in yosys-f4gpa-plugins).

  • The errors were related to the structure Yosys::AST::AstNode that did not have the member "multirange_dimensions".

  • multirange_dimensions vector member has been replaced( not a simple name replacing) with dimensions vector in recent Yosys updates( v0.39 and later)

  • Possibly, The last Yosys version compatible with f4pga-plugins is v0.38 ( I've checked. it still use multirange_dimensions vector)

You can see these changes in v0.32(currently in VTR) and v0.42 of Yosys here:

https://github.com/search?q=repo%3Averilog-to-routing%2Fvtr-verilog-to-routing+yosys%2Ffrontends%2Fast+multirange_dimensions&type=code

https://github.com/search?q=repo%3AYosysHQ%2Fyosys+frontends%2Fast+dimensions&type=code

CI test log file is available from :
F4PGA failing

Short Error:
/root/vtr-verilog-to-routing/vtr-verilog-to-routing/libs/EXTERNAL/yosys-f4pga-plugins/systemverilog-plugin/UhdmAst.cc:824:34: error: 'struct Yosys::AST::AstNode' has no member named 'multirange_dimensions'

My Guess:
In older versions of Yosys (v0.38 and before), the term "multirange_dimensions" was used to store range or dimension-related values, while in new versions of Yosys (v0.39 and onwards), the term "dimensions" is used to store dimension-specific information as tuples or objects. These terms serve different purposes in the code snippets.

It will be my pleasure to see your feedbacks

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