prjxray/utils
Dr Jonathan Richard Robert Kimmitt 39f5de415d Add Virtex-7 (xc7vx485t) family support
Port prjxray to the Virtex-7 family, modelled on Kintex-7, targeting
xc7vx485tffg1761-2 (vc707). Non-breaking for the existing families.

Family registration:
- settings/virtex7.sh, settings/virtex7/devices.yaml
- Makefile: virtex7 in DATABASES/XRAY_PARTS + db-extras-virtex7 targets
- utils/update_parts.py, update_resources.py: virtex7 choice
- CI matrix (Pipeline.yml), Vivado edition (xilinx.sh), README

Architecture adaptations for the HP-bank-only VX part (verified non-breaking):
- update_resources.tcl: fall back to HP banks when no HR banks exist
- XRAY_IOSTANDARD env (default LVCMOS33; LVCMOS18 for virtex7), parameterised
  across the fuzzer generate.tcl files
- fuzzers: enable HP-bank (iob18/ioi18) + IOI/HCLK handling for virtex7;
  GTX skipped (ffg1761 bonds only ~7 of 14 GTX quads)
- 005-tilegrid: HP/HR bank tile handling; iob18_int INT offset 3->2;
  ioi18 AUTO_FRAME; cfg PDRC-2 DRC disable; add_tdb skips unsolved edge tiles;
  per-specimen retry for transient FlexLM SIGSEGV under concurrency
- per-family Vivado version gate (virtex7 -> v2020.1.1)
- XRAY_ROI and XRAY_ROI_GRID tuned to a compact CLBLL+CLBLM region

General fixes:
- tools/bitread.cc: fix use-after-free of the mmap'd bitstream (exposed by the
  larger Virtex-7 bitstream)
- utils/environment.python.sh: add repo root to PYTHONPATH (PEP 660 editable
  install doesn't expose the repo-root utils/ package)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-24 07:21:23 +01:00
..
openocd Add reset config to allow upload to PS region 2020-05-29 09:54:48 -04:00
test_data Update tests to fabric refactoring 2021-01-12 22:36:58 +01:00
.gitignore Add utils .gitignore 2017-12-20 22:46:39 +01:00
__init__.py setup: include utils directory 2020-05-21 13:42:26 +02:00
addrwidth.py Add licensing header to python scripts 2020-05-26 07:33:12 -07:00
bit2fasm.py riob18: fix IBUF_LOW_PWR_SUPPORTED 2022-12-14 05:15:48 +07:00
blockwidth.py Add licensing header to python scripts 2020-05-26 07:33:12 -07:00
checkdb.py Add licensing header to python scripts 2020-05-26 07:33:12 -07:00
clean_json5.py Add licensing header to python scripts 2020-05-26 07:33:12 -07:00
cleandb.py Add licensing header to python scripts 2020-05-26 07:33:12 -07:00
cmp.py Add licensing header to python scripts 2020-05-26 07:33:12 -07:00
create_environment.py Makefile: Do not dump the environment during db-prepare 2021-03-26 08:28:54 +01:00
create_timing_worksheet_db.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
dbfixup.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
diff_db_bits.py Add licensing header to python scripts 2020-05-26 07:33:12 -07:00
diff_db_json.py Add licensing header to python scripts 2020-05-26 07:33:12 -07:00
environment.python.sh Add Virtex-7 (xc7vx485t) family support 2026-05-24 07:21:23 +01:00
environment.sh Add Virtex-7 (xc7vx485t) family support 2026-05-24 07:21:23 +01:00
fasm2frames.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
fasm2pips.py Add licensing header to python scripts 2020-05-26 07:33:12 -07:00
fasm_pprint.py Add licensing header to python scripts 2020-05-26 07:33:12 -07:00
find_missing_segbits.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
genheader.sh Add licensing header to bash scripts 2020-05-26 07:33:12 -07:00
group.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
groupmask.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
info_md.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
make_ports.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
makesdf.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
maskmerge.sh Add licensing header to bash scripts 2020-05-26 07:33:12 -07:00
maskview.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
mergedb.py Added a feature name check to mergedb.py 2020-07-29 16:35:27 +02:00
mergedb.sh utils/mergedb.sh: add GTX support 2025-02-13 17:20:08 +07:00
parsedb.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
quick_test.py Add licensing header to python scripts 2020-05-26 07:33:12 -07:00
roi_all.py utils: parallelize all roi parts generation 2022-03-04 11:05:55 +01:00
sdfmerge.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
segprint.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
segview.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
simpleroute.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
sort_db.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
sp6_bitstream_analyzer.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
tcl-reformat.sh Add licensing header to bash scripts 2020-05-26 07:33:12 -07:00
test_fasm2frames.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
tileconnloops.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
tileconnwire.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
tilegrid_report.py Add licensing header to python scripts 2020-05-26 07:33:12 -07:00
top_generate.mk Initial cascade pip fuzzer. 2019-01-30 14:53:05 -08:00
top_generate.sh Add licensing header to bash scripts 2020-05-26 07:33:12 -07:00
update_parts.py Add Virtex-7 (xc7vx485t) family support 2026-05-24 07:21:23 +01:00
update_parts.tcl utils: Add new tools to roi all parts 2021-03-15 17:37:58 +01:00
update_resources.py Add Virtex-7 (xc7vx485t) family support 2026-05-24 07:21:23 +01:00
update_resources.tcl Add Virtex-7 (xc7vx485t) family support 2026-05-24 07:21:23 +01:00
utils.tcl cells_data: add clock information on ports.json 2021-03-26 13:47:38 +01:00
verify_tile_connections.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
vivado.sh Add licensing header to bash scripts 2020-05-26 07:33:12 -07:00
vtemplate MAKE - Format Trailing Whitespace 2019-10-26 10:04:52 +01:00
write_timing_info.tcl Add license headers to tcl files 2020-05-26 07:33:12 -07:00
xjson.py scripts: use open safe file class 2022-03-17 10:04:19 +01:00
xyaml.py utils: xyaml: Do not use deprecated function 2021-01-12 22:36:58 +01:00