Evaluating the impact of repetition, redundancy, scrubbing, and partitioning on 28-nm fpga reliability through neutron testing