efabless / caravel_user_sram

Apache License 2.0
2 stars 0 forks source link

IPM packages might require specific PDN settings, hence relying on pdn.tcl? #2

Open amm-efabless opened 1 month ago

amm-efabless commented 1 month ago

See pdn.tcl in this repo.

It is a required script for some of the example instantiation of the EFSRAM macro in config.json, and possibly a file-plus-associated-config which will be required (or at least regularly reused) by various IPs.

Requiring that the user find and copy this every time (or else things will break) is probably something that we're trying to avoid with IPM.

More broadly, this begs some sort of standardized way that installing an IP can instruct the user on what additional plumbing they need to do, so they don't need to go hunting for examples, config, doco, or whatever. At minimum, after installing an IP, IPM could say "Now visit this URL to see how to implement this thing", and possibly also offer a way to list these URLs for all currently-registered IPs (great if someone has just cloned a repo that uses some IP they're not otherwise familiar with).

For this specific case, perhaps the IP package should include pdn/pdn.tcl plus maybe pdn/pdn_config.json (as an example) that should be patched into the user's config.json -- either automatically by some process, or manually at the user's discretion. The actual reference to pdn.tcl could hopefully be relative too, e.g.:

"FP_PDN_CFG": "dir::../../ip/EFSRAMblahblah/pdn/pdn.tcl",

...but still at the user's discretion, in case they have their own PDN settings or FP_PDN_CFG script.