fasm icon indicating copy to clipboard operation
fasm copied to clipboard

Create VPR arch and rrgraph linting tools

Open litghost opened this issue 6 years ago • 2 comments

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)

litghost avatar May 17 '19 16:05 litghost

@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.

mithro avatar May 17 '19 20:05 mithro

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

litghost avatar May 17 '19 20:05 litghost