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

Create VPR arch and rrgraph linting tools #14

Open
9 tasks
litghost opened this issue May 17, 2019 · 2 comments
Open
9 tasks

Create VPR arch and rrgraph linting tools #14

litghost opened this issue May 17, 2019 · 2 comments

Comments

@litghost
Copy link
Collaborator

litghost commented May 17, 2019

Currently FASM annotations errors are detected late in the flow. A tool to sanity check VPR arch and rrgraph annotations would allow earlier error detection, and cross linking with Verilog blackbox definitions.

Suggested lint passes:

  • Error if FASM mux definition defines an input that does not exist
  • Error if FASM mux definition does not an input that is specified in the mux/direct tag
  • Warning if FASM params definition is missing a parameter defined in the Verilog module
  • Error if FASM params definition defines a parameter that does not exist in the Verilog module
  • Error if the bit width of the FASM params definitions does not match the Verilog module parameter width
  • Error if FASM prefix length does not match num_pb value
  • Error if FASM annotation generates a FASM tag that does not exist
  • Error if FASM lut annotation is missing on a class="lut" or subckt=".names" black box.
  • Error if FASM annotation is illegal (e.g. syntax error)
@mithro
Copy link
Contributor

mithro commented May 17, 2019

@litghost I wonder if this should be under symbiflow-arch-defs (It will definately be useful there...)? I guess this is useful for any VPR architecture.

@litghost
Copy link
Collaborator Author

It definitely does not belong in symbiflow-arch-defs, whether it belongs in fasm or VTR, less clear.

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

2 participants