prjxray/fuzzers/012-clbn5ffmux
John McMaster 5b7f6b95af 012-clbn5ffmux: use gen_sites()
Signed-off-by: John McMaster <johndmcmaster@gmail.com>
2018-10-17 21:11:44 -07:00
..
.gitignore Add run.ok files to .gitignore 2018-02-06 17:57:52 +01:00
Makefile Add "make run" to fuzzers that did not have it yet 2018-01-04 13:49:50 +01:00
README.md Added tags for headers, subheaders and structured README files a bit 2018-02-14 12:24:18 +01:00
generate.py Merge pull request #161 from mcmasterg/segmaker_prjxray 2018-10-17 20:45:29 -07:00
generate.sh Document MUXF8 Vivado compatibility issue 2017-12-22 15:52:40 -08:00
generate.tcl Set tcl.collectionResultDisplayLimit to unlimited in all fuzzers 2017-12-22 23:28:39 +01:00
top.py 012-clbn5ffmux: use gen_sites() 2018-10-17 21:11:44 -07:00

README.md

CLBn5FFMUX Fuzzer

Purpose

Document A5FFMUX family of CLB muxes

Algorithm

5FFMUX
Inputs can come from either the LUT6_2 NO5 output or the CLB NX input
To perturb the CLB the smallest, want LUT6 always instantiated
However, some routing congestion that would require putting FFs in bypass
(which turns out is actually okay, but didn't realize that at the time)
Decided instead ot instantiate LUT8, but not use the output
Turns out this is okay and won't optimize things away
So then, the 5FF D input is switched between the O5 output and an external CLB input

Outcome

Bits are one hot encoded per mux position