from reading the elfPlace paper, the density multiplier and the potential energy should both be vectors; it's not yet clear to me how to change the potential energy, but fixing the density multiplier is easy enough.
I added an IO group to iCE40 so that static can place I/O pads when a design doesn't have them specified by PCFs.
On further reading, it seems more like the density penalty is a scalar in ePlace, but a vector in elfPlace. Still, the code still seems to work fine with this change, so hopefully it's okay?
Two different patches here:
IO
group to iCE40 so thatstatic
can place I/O pads when a design doesn't have them specified by PCFs.