Skip to content

Instantly share code, notes, and snippets.

@carlosedp
Last active April 28, 2022 21:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save carlosedp/ed17d934c94338cbb2f9b29dd076bf1a to your computer and use it in GitHub Desktop.
Save carlosedp/ed17d934c94338cbb2f9b29dd076bf1a to your computer and use it in GitHub Desktop.
Symbiflow - Edalize workflow for Quicklogic FPGAs
  • FuseSoc/Edalize container workflow - Solved thru https://gist.github.com/carlosedp/ac36e9052bfa23f84b2f42f1a05ee1bd
    • How to identify in the Edalize launcher script which container family to use (Eg. Symbiflow for xc7 or eos) since it only receives the command being called (symbiflow_synth, symbiflow_pack, etc...)? Maybe pass some environment variable?
    • The variable should match the naming from https://hdl.github.io/containers/
  • Symbiflow containers are only initialized thru profile.d so it requires running the commands thry bash unlike Trellis/Icestorm which the tools are already in the path.
    • Use a container Initialization before each tool (bash -lec). Would be easier if image already had path initialized since we need subprocess.call in shell mode which is insecure due to wrap command in commas.
    • Ref. hdl/containers#49
  • EOS scripts symbiflow_write_bitheader / symbiflow_write_bitstream are still using env vars so won't work with Edalize/FuseSoc. Script still not present in the images.
  • Error in clock macro with new pin names: f4pga/f4pga-arch-defs#2348
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment