-
Notifications
You must be signed in to change notification settings - Fork 9
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
no SUBCKT if loading from verilog instead of GHDL #4
Comments
That happens also in VHDL when you flatten the design. It's quite annoying, because in that case the spice output is missing any I/O information. I am not sure how to influence this behavior in a more controlled way in Yosys. You could removing the "top" option from the hierarchy command? My plan was to switch to JSON as intermediate file format to address this, but I have not started working on this yet. |
sure thing, but then:
removing the
and PCBPlace again complains, this time about:
whatever that actually means EDIT: ok apparently i have to define those in PCBPlace.py, choosing really high numbers to test with it works fine until:
which, yeah, that's there outside (= in the top module). aaaaand now it's thinking. btw EDIT 2: and then it fails because it doesn't know the cell type of the submodules i wasn't allowed to flatten.
EDIT 3: now it only dies due to:
2 of which yosys already complained about (see top of this comment), but the DLATCH is new. |
Looks like you got pretty far! It seems that your design causes yosys to generate a number of cell types that are not implemented in PCBplace. The easiest way would be to change your design in a way that it does not use tristate bus and latches. Not sure about DFFSR_PPP, that should not be generated. The harder way would be to implement them as cells in PCBPlace.py. Tristate buffers are a bit tricky though. |
This seems to be new - annoying. |
yeah that's pretty much impossible in my design sadly. currently i'm going the manual route by just looking at a
i mean they should just be a single mosfet if i'm not mistaken? |
Almost all discrete MOSFETs have a body diode in parallel, so they are only high-ohmic in one direction. You could use a bipolar transistor or a CMOS pair though. Or a very simple cheat - a resistor. In any case, you would need to check functionality of the circuit in spiuce. Btw, I don't get why you get the warning for: _DFFSR_PPP |
right, didn't keep that in mind. i'll probably just use 74xxish tribufs in my case (or rather registers with OE, after all that's why i need all that storage to begin with)
i think that was both on LTL and RTL, should have mentioned all the modifications above, but not 110% sure. |
I slightly modified one of the provided flows to replace the GHDL step with:
but the generated spice will not contain any
SUBCKT
s, which PCBPlace dies about.any ideas?
the code at the time of writing this issue is available in this commit, executed from the
sim/pcb/
folder with this command:yosys flow_discrete_LTL.ys
The text was updated successfully, but these errors were encountered: