prjuray icon indicating copy to clipboard operation
prjuray copied to clipboard

Add option to bit2fasm to skip emitting empty CLE sites

Open litghost opened this issue 4 years ago • 3 comments

daveshah: UltraScale+ devices have all unused LUTs set to output 1 by default, to save power daveshah: this results in loads of extra set bits in the FASM daveshah: it might be nice to have a bit2fasm option that skips these

litghost avatar Jul 23 '20 14:07 litghost

I would propose we continue to emit the bits for unused LUT's within a used CLE, but totally empty CLE's we can safely drop. There would need to be a corresponding change to fasm2bit to emit unused CLE's with the default LUT configuration.

litghost avatar Jul 23 '20 14:07 litghost

SGTM - so long as explicitly setting LUT init to 0, even if the site is otherwise empty, doesn't still set the default 1s as this may be a genuine situation for pseudo-ground drivers - UltraScale+ doesn't have xc7-style ground nodes.

daveshah1 avatar Jul 23 '20 14:07 daveshah1

SGTM - so long as explicitly setting LUT init to 0, even if the site is otherwise empty, doesn't still set the default 1s as this may be a genuine situation for pseudo-ground drivers - UltraScale+ doesn't have xc7-style ground nodes.

The logic would be "if there is a FASM feature using the CLE, do not emit defaults", so setting the ALUT.INIT = 64'b0 would work as expected.

litghost avatar Jul 23 '20 14:07 litghost