Three PERF2 bits: which ones, and one knockout bitstream per bit
28_994 0 -> 1 rows using it: c030ed6 CLK_PERF2.{CLKOUT2,CLKOUT3}
master none
29_1022 0 -> 1 rows using it: c030ed6 CLK_PERF2.{CLKFBOUT,CLKOUT0,CLKOUT1,CLKOUT2,CLKOUT3}
master none
HCLK_CMT_X8Y234
28_180 0 -> 1 rows using it: c030ed6 PERFCLK2.{MUXED2,MUXED3}
master none
board $ python3 perf2.py knockout bufr-new.frames --out rec
== CMT_TOP_R_LOWER_B_X8Y217 28_994: frame 0x0002009C word 31 bit 2, 1 -> 0
rec/ko-28_994.frames == ko-28_994.frames (the file flashed on 2026-10-04)
$ xc7frames2bit --part_file db-new/artix7/xc7a200tfbg484-2/part.yaml --part_name xc7a200tfbg484-2 --frm_
file rec/ko-28_994.frames --output_file rec/ko-28_994.bit
rc=0 0.59 s
past the sync word, rec/ko-28_994.bit differs from bufr-new.bit in 3 bytes
== CMT_TOP_R_LOWER_B_X8Y217 29_1022: frame 0x0002009D word 31 bit 30, 1 -> 0
rec/ko-29_1022.frames == ko-29_1022.frames (the file flashed on 2026-10-04)
$ xc7frames2bit --part_file db-new/artix7/xc7a200tfbg484-2/part.yaml --part_name xc7a200tfbg484-2 --frm_
file rec/ko-29_1022.frames --output_file rec/ko-29_1022.bit
rc=0 0.90 s
past the sync word, rec/ko-29_1022.bit differs from bufr-new.bit in 3 bytes
== HCLK_CMT_X8Y234 28_180: frame 0x0002009C word 50 bit 20, 1 -> 0
rec/ko-28_180.frames == ko-28_180.frames (the file flashed on 2026-10-04)
$ xc7frames2bit --part_file db-new/artix7/xc7a200tfbg484-2/part.yaml --part_name xc7a200tfbg484-2 --frm_
file rec/ko-28_180.frames --output_file rec/ko-28_180.bit
rc=0 0.55 s
past the sync word, rec/ko-28_180.bit differs from bufr-new.bit in 3 bytes
board $