-
Notifications
You must be signed in to change notification settings - Fork 237
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
Port defined like d[9:2] is not indexed correctly when used in pcf file #206
Comments
This seems to be a Yosys issue as well as a nextpnr issue; as nothing reaches the JSON that would allow nextpnr to know the bounds of the port.
|
I see. I've filed yosys issue YosysHQ/yosys#784. |
Also, and perhaps unsurprisingly, if you change the output declaration of |
Yosys side now fixed, see YosysHQ/yosys#1122 which adds an "offset" attribute in the json output. |
Is this problem fixed with commit 5cb9735 ? Just built latest nextpnr (git sha1 19cb4ca) and yosys (0.8+588 (git sha1 f604aa17, gcc 8.3.0-6 -fPIC -Os) and reran the example, and I now get no errors, and only a single, reasonable, warning "No clocks found in design". And the assignments Info: constrained 'd[9]' to bel 'X7/Y33/io1' I don't have the hardware at hand now, so I can't check if the result really works correctly, though. |
Confirmed working correctly now |
Consider the following trivial ice40 design (main.vl):
with the following main.pcf:
Synthesis using
fails as follows:
If d[9:2] is replaced by d[7:0] in the .vl file, and the .pcf file is updated accordingly, synthesis works without errors.
Using arachne-pnr instead,
the .pcf file is accepted without complaints. (If it actually does the right thing, I'm not 100% sure. I'm still a newbie when it comes to these tools).
I'm using "Yosys 0.8+119 (git sha1 0fc6e2bf, gcc 8.2.0-13 -fPIC -Os)" and "nextpnr-ice40 -- Next Generation Place and Route (git sha1 67d2dcb)", both built from a git checkouts a few days ago.
BTW, building nextpnr using cmake-3.7.2 (debian stable, I think) didn't work out of the box, I had to patch it like
The text was updated successfully, but these errors were encountered: