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

Error when used with VSCode and Teroshdl #24

Closed
BharathS11 opened this issue Oct 5, 2021 · 11 comments
Closed

Error when used with VSCode and Teroshdl #24

BharathS11 opened this issue Oct 5, 2021 · 11 comments
Labels

Comments

@BharathS11
Copy link

Hi, When I use yowasp to generate netlist with Teroshdl and vscode I get the following error. Please take a look at the attached file. Thank you
netlist_error.log

@whitequark whitequark added the bug label Oct 5, 2021
@whitequark
Copy link
Member

whitequark commented Oct 5, 2021

Okay, there are several separate issues here:

@BharathS11
Copy link
Author

Hi, Thanks for responding. TerosHDL developers updated the tool to use relative path
The following commands work

yowasp-yosys -p "read_verilog -sv dsp\rtl\dsp_xcc_v2.v; proc; opt; write_json .teroshdl_yosys_output.json; stat"
yowasp-yosys -p "read_verilog -sv .\dsp\rtl\dsp_xcc_v2.v; proc; opt; write_json .teroshdl_yosys_output.json; stat" 

but this is what TerosHDL calls and doesn't work
yowasp-yosys -p "read_verilog -sv ..\..\..\Documents\Projects\test\frontend\dsp\rtl\dsp_xcc_v2.v; proc; opt; write_json C:\Users\bhara\.teroshdl_yosys_output.json; stat"

I think the doubles quotes cause the issue.

@whitequark
Copy link
Member

Can you ask TerosHDL developers to contact me directly regarding this issue? (In this GitHub issue, by email, whichever is more convenient.) Then we can work something out.

@whitequark
Copy link
Member

In commit 4ae03d9 I've changed the path handling so that on Windows, absolute and relative paths with any components would work. (It also improves relative path handling on *nix.) Note that on Windows, paths must be delimited by forward slashes, /, rather than backward slashes, \\; this is due to the way WASI implements path handling.

You can install YoWASP Yosys built from this commit with:

pip install -i https://test.pypi.org/simple/ yowasp-yosys==0.9.post5623.dev232

@whitequark
Copy link
Member

@BharathS11 Can you please confirm whether you were able to get the updated package to work?

@whitequark
Copy link
Member

yowasp-yosys -p "read_verilog -sv ..\..\..\Documents\Projects\test\frontend\dsp\rtl\dsp_xcc_v2.v; proc; opt; write_json C:\Users\bhara\.teroshdl_yosys_output.json; stat"

Both of these paths should work since commit 4ae03d9, closing. Please comment if there are still any issues.

@qarlosalberto
Copy link

I'm improving the support for yowasp-yosys in TerosHDL. Currently, is it possible to use absolute paths in Windows and Linux? Thanks.

@whitequark
Copy link
Member

Sure. You have to use / instead of \ though.

@qarlosalberto
Copy link

qarlosalberto commented May 20, 2024

Great!!

I'm doing some tests. This command works fine:

yowasp-yosys -p 'read_verilog -sv /home/carlos/repo/vscode-terosHDL/packages/colibri/tests/yosys/helpers/verilog/mylib/counter_logic.v; read_verilog -sv /home/carlos/repo/vscode-terosHDL/packages/colibri/tests/yosys/helpers/verilog/counter_top.v; ; hierarchy -top counter_top; proc; ; write_json /home/carlos/hola.json; stat'

But not this command:

yowasp-yosys -p 'read_verilog -sv /home/carlos/repo/vscode-terosHDL/packages/colibri/tests/yosys/helpers/verilog/mylib/counter_logic.v; read_verilog -sv /home/carlos/repo/vscode-terosHDL/packages/colibri/tests/yosys/helpers/verilog/counter_top.v; ; hierarchy -top counter_top; proc; ; write_json /tmp/hola.json; stat'

There aren't errors. But in the second command yowasp-yosys doesn't create the file /tmp/hola.json. I am doing something wrong?

@whitequark
Copy link
Member

The /tmp subtree is internally mounted to a temporary directory created just for this purpose, as it is unconditionally used by Yosys for e.g. running abc. The /tmp directory is hardcoded in wasi-libc sources so you'll need to pick a different temporary location.

The same is true of /share, for different reasons.

@qarlosalberto
Copy link

Ahh okok, thanks!! I will choose other path.

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

No branches or pull requests

3 participants