Commit Graph

17 Commits

Author SHA1 Message Date
Dr Jonathan Richard Robert Kimmitt 1ebe6937e0 virtex7: enable 018-clb-ram (LUTRAM/SRL) — was misdiagnosed as Vivado-version wall
The earlier skip blamed a 'Vivado 2020.1 BEL-slot' difference; on close
investigation the real failure was generate.py:79 `assert bels == bels_tcl`
in the my_ram_N branch. The two ROI definitions disagree on X extent:
util.get_roi() (XRAY_ROI_GRID_*) yields SLICEM at SLICE X2..X12, but the
Vivado dump pblock built from $XRAY_ROI is X0..X11 — so the whole
SLICE_X12Y* column top.py LOC's primitives into falls outside the dumped
pblock and shows up as None in design.csv, tripping the assert.

The sibling RAM path already tolerated this via 'if ram != has_bel_tcl:
continue' (line ~137); mirror the same graceful skip in the SRL/LUT path.
For other families bels always == bels_tcl, so the change is a no-op.

Verified end-to-end on xc7vx485tffg1761-2: produces valid LUTRAM segdata
(ALUT/BLUT/CLUT/DLUT.{RAM,SRL,SMALL} + WA7USED/WA8USED/WEMUX.CE), pushes
into segbits_clblm_l/r (clblm coverage 95% -> ~100% vs kintex7).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-27 14:27:08 +01:00
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
Keith Rothman 5ad24eb6cd Make 018 more robust by selectively disabling inputs and outputs.
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2020-09-25 12:59:57 -07:00
Keith Rothman f1eabc62b7 Add some determinism to the randomness in 018.
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2020-09-11 10:51:21 -07:00
Tomasz Michalak c66f4f4aa1 Add license headers to tcl files
Signed-off-by: Tomasz Michalak <tmichalak@antmicro.com>
Signed-off-by: Tim 'mithro' Ansell <tansell@google.com>
2020-05-26 07:33:12 -07:00
Tomasz Michalak 300bc62227 Add licensing header to bash scripts
Signed-off-by: Tomasz Michalak <tmichalak@antmicro.com>
Signed-off-by: Tim 'mithro' Ansell <tansell@google.com>
2020-05-26 07:33:12 -07:00
Tomasz Michalak 159d6a8e88 Add licensing header to Makefiles
Signed-off-by: Tomasz Michalak <tmichalak@antmicro.com>
Signed-off-by: Tim 'mithro' Ansell <tansell@google.com>
2020-05-26 07:33:12 -07:00
Tomasz Michalak 950d7534ec Add licensing header to fuzzers' python scripts
Signed-off-by: Tomasz Michalak <tmichalak@antmicro.com>
Signed-off-by: Tim 'mithro' Ansell <tansell@google.com>
2020-05-26 07:33:12 -07:00
Jake Mercer c05b4b0406 MAKE - Format Trailing Whitespace
Add `make format-trailing-ws`.  This recipe finds all _files_ (not
links) known to Git and uses `sed` to remove trailing whitespace.

Signed-off-by: Jake Mercer <jake.mercer@civica.co.uk>
2019-10-26 10:04:52 +01:00
litghost c94cb0224c
Revert "Whitespace" 2019-10-23 14:22:17 -07:00
Jake Mercer bf11f43390 FORMAT - Run `make format`
Changes after running `make format`.  Future commits which add
whitespace should be caught by CI at the PR stage.

Signed-off-by: Jake Mercer <jake.mercer@civica.co.uk>
2019-10-22 19:35:24 +01:00
Tomasz Michalak 86057f3d17 018-clb-ram: Increase specimen count
Signed-off-by: Tomasz Michalak <tmichalak@antmicro.com>
2019-05-24 08:05:41 +02:00
Tim 'mithro' Ansell 9717fa48eb docs: Fix top level headers and other small clean.
* Make sure all files have top level headers.
 * Fixing a few spelling mistakes.
 * Fixed some trailing spaces.

Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
2019-04-03 19:26:28 -07:00
Alessandro Comodi 8b66865106 01x-clb/top.py: Added CLBN increment from env var
Signed-off-by: Alessandro Comodi <acomodi@antmicro.com>
2019-01-17 15:31:50 +01:00
John McMaster 5f8c46a795 clb: clean up README files
Signed-off-by: John McMaster <johndmcmaster@gmail.com>
2019-01-11 18:52:42 +01:00
John McMaster 1cc5b72ca5 minitest: clean up folders
Signed-off-by: John McMaster <johndmcmaster@gmail.com>
2019-01-07 23:31:44 +01:00
John McMaster 815c3d4af2 fuzzers: name with tile type
Signed-off-by: John McMaster <johndmcmaster@gmail.com>
2019-01-07 23:08:45 +01:00