-
Notifications
You must be signed in to change notification settings - Fork 4
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
Quicklogic deduplication #5
Comments
@mkurc-ant can you take a look at this |
@Ravenslofty So in PP3 the underlying hardware behaves like The toolchain must definitely understand different types of flip-flops at the input in case if somebody wants them to be explicitly instantiated. I'd recommend to leave all flip-flop simulation models as they are. I see no problems with Yosys emitting I've been told that AP2 is more similar to AP3 than to PP3. I'd need to check the status of AP2 support with QuickLogic. Maybe something isn't complete there yet. |
But would you be okay with the common file for the AP2/PP3 flops? That makes my life a bit easier when annotating them with the necessary metadata for ABC9, and upstream will be happier when they have to review this too. |
I agree. My concern is that I'm not sure whether they should be common. I'm waiting for confirmation from QuickLogic. |
@Ravenslofty I've confirmed that with QuickLogic: we should have common flip-flops for AP2/AP3, PP3 are different (at least in terms of cell definition). |
It's odd that AP2/AP3 are the families with flops in common; AP2 uses |
I mean it may be incorrect that PP3-like FFs are defined for AP2 already. |
Might not be a bad idea to ask them what the flop cells should be for which family. |
There are other areas which seem like they could use deduplication:
|
Presently the Quicklogic codebase has a lot of duplicated cells, especially between the ArcticPro 2 and PolarPro 3.
One of the biggest contributors to that is the flop models, but the hardware flop appears to be a
dffepc
.I have already filed #3 to use
dfflegalize
to lower directly todffepc
, and the next step would be to deduplicate flop models.The question is how aggressive to be with that:
dffepc
, but this is effectively a breaking change, since whatever code that uses the other cells would no longer be accepted by the flow.The text was updated successfully, but these errors were encountered: