Dr Jonathan Richard Robert Kimmitt
a8de0afdb3
virtex7: HP-bank glue codified end-to-end + open-flow validation
...
The open-flow (Yosys → nextpnr-xilinx → FASM → bitstream) now produces
silicon-functional bits on VC707 xc7vx485tffg1761-2 for:
- rst_to_led (IBUF↔OBUF passthrough)
- counter_skewfree (button-clocked 8b counter, general routing)
- counter_sw_bufr (button → BUFR → 8b counter)
- counter_bufr (200 MHz LVDS sysclk → IBUFDS → BUFR → 8b counter)
- counter_2bufg (2× BUFGCTRL on the same source)
- vc707_telegraph (125 MHz crystal → IBUFDS_GTE2 → BUFG → UART smoke test)
- vc707_picosoc (picorv32 + simpleuart + BRAM @ 125 MHz; UART prints
'PicoSoC alive on VC707 @ 125 MHz' on /dev/ttyUSB0)
Highlights of this drop:
utils/fasm2frames.py (+223 net):
- Bank-glue auto-injection for HP-bank IOB18 — IBUF/OBUF (Y0+Y1) +
IBUFDS differential pair. Fires off the FASM-level direction
heuristic (.IN/.IN_ONLY/IBUFDISABLE for IBUF, .DRIVE. for OBUF,
.IN_DIFF for IBUFDS; .SLEW. is unreliable as a marker — gets emitted
on default-state IOBs too).
- INT_L_X32Y49 DCI cascade / bank-active markers when any LIOB18_X81
Y1 OBUF is present.
- PUDC_B emission rewritten for HP-bank IOSTANDARDs (10 features
cover Y0 + Y1 default-state; all 9 historic 'PUDC_B glue' bits
flow naturally from the existing IOSTANDARD segbits).
- HCLK_L per-BUFRCLK-channel 'active' marker — currently codified
for BUFRCLK3 (the channel exercised by counter_sw_bufr).
- GFAN T-tie root glue — INT_L_X62Y(N+10).GFAN_TIE_ROOT_GLUE when
INT_L_X62Y(N).GFAN0.GND_WIRE appears (OBUF.T → GND routing).
- PUDC_B tile excluded from the bank-glue walk (its IN features are
virtual; injecting OBUF_HP_BANK_GLUE on it produces spurious bits).
utils/utils.tcl (+47):
- write_pip_txtdata bulk-fetch — replaces per-net foreach pip with
bulk get_pips + bulk get_property IS_DIRECTIONAL + cached
dst_wire_to_num_pips. ~4× speed-up on xc7vx485t (per-spec time on
041-clk-hrow-pips / 045-hclk-cmt-pips drops from ~1.5 h to ~25 min).
utils/mergedb.sh (+15):
- LIOI / LIOI_TBYTESRC / LIOI_TBYTETERM / LIOB18 / mask_liob18 sed
rewrites for the L-side IOI/IOB18 tiles on HP-only parts (xc7vx485t
uses left-side IOB18 too; upstream kintex7 mergedb only knew the
right side).
11 fuzzers patched for virtex7 readiness:
- 030-iob18 Makefile: split DB target for virtex7 (HP-only); the BUFR
HP-bank results come from the actual fuzzer rather than HR-side sed.
- 037-iob18-pips: L-side mirror tiles (LIOI / LIOI_TBYTESRC /
LIOI_TBYTETERM) added to segdata glob; *_SING tiles excluded;
EXCLUDE_RE updated for L-side prefixes.
- 039-hclk-config: split virtex7 vs kintex7 (HCLK_IOI vs HCLK_IOI3);
XRAY_IOSTANDARD env var; IOB18M/IOB33M alternation.
- 047a-hclk-idelayctrl-pips: accepts both HCLK_IOI and HCLK_IOI3.
- 041, 045, 034, 034b, 043, 044, 046: removed local
write_pip_txtdata override that shadowed the patched utils.tcl
bulk-fetch (was re-introducing the slow per-net Tcl path).
README.md (+86):
- 'Virtex-7 Port Status (virtex7-support branch)' section —
achievements, goals, work-in-progress, constraints.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-29 10:13:53 +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
Unai Martinez-Corral
9348a02755
readme: update shield syntax ( badges/shields#8671 )
...
Signed-off-by: Unai Martinez-Corral <umartinezcorral@antmicro.com>
2024-01-08 14:00:21 +07:00
Bastian Löher
a0953bfa98
Update README.md link to f4pga readthedocs
...
Signed-off-by: Bastian Löher <me@l-dot.de>
2024-01-08 14:00:20 +07:00
Unai Martinez-Corral
ce92a9c72b
readme: update shields
...
Signed-off-by: Unai Martinez-Corral <umartinezcorral@antmicro.com>
2022-04-07 22:11:35 +02:00
Alessandro Comodi
cf0b684a79
ci: separate test and database in different workflows
...
This also updates the README badges
Signed-off-by: Alessandro Comodi <acomodi@antmicro.com>
2022-03-08 14:50:57 +01:00
Alessandro Comodi
6b3ff71a38
update README
...
Signed-off-by: Alessandro Comodi <acomodi@antmicro.com>
2021-05-25 12:17:28 +02:00
Daniel Schultz
7b16929e7d
README: Add new step to prepare db
...
This step generates all static part information files.
Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2021-03-15 17:37:58 +01:00
Tomasz Michalak
5999e2ce6d
Add directory to repository cloning step
...
Signed-off-by: Tomasz Michalak <tmichalak@antmicro.com>
2021-02-03 16:18:28 +01:00
Tim Callahan
7f77e9f2af
rm NEWPART.md; update README pointer; small edits.
...
Signed-off-by: Tim Callahan <tcal@google.com>
2020-11-20 10:19:10 -08:00
Tim Callahan
94f14cec0a
Doc for adding a new part to PrjXray.
...
Signed-off-by: Tim Callahan <tcal@google.com>
2020-11-20 10:18:33 -08:00
Tim 'mithro' Ansell
e1e55c3d98
Adding build badges.
...
Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
2020-07-15 18:38:16 -07:00
Dominik Wernberger
98d868fcd9
Fix some links
...
Signed-off-by: Dominik Wernberger <dominik2.wernberger@tum.de>
2020-05-31 10:26:57 -07:00
Dustin DeWeese
de4158b64c
add a link to README answering common question
...
Signed-off-by: Dustin DeWeese <dustin.deweese@gmail.com>
2020-01-21 19:13:05 -08:00
Jake Mercer
ceddeaa48b
README/Dependencies - Fixes Following Review
...
Changing "fasm" to "pyfasm" was incorrect; it is unrelated to this project.
Updated this line in ''requirements.txt'' to install "fasm" from the submodule
''third_party/fasm''. Also, removed aliasing of "python" in README.
Signed-off-by: Jake Mercer <jmercer04@qub.ac.uk>
2019-09-27 22:00:15 +01:00
Jake Mercer
902354993f
README/Dependencies - Updated "Quickstart Guide"
...
Updated the Quickstart Guide section of the README as some deviations were
required when following this with a fresh Ubuntu 16.04 install. Fixes to
''requirements.txt'' were required to remove the "futures" dependency which is
in the python3 standard library and is only intended for use with python2;
"fasm" now goes by "pyfasm".
Signed-off-by: Jake Mercer <jmercer04@qub.ac.uk>
2019-09-27 20:29:29 +01:00
Felix Held
b6c476167a
README.md: clarify to not manually source the Vivado environment
...
Signed-off-by: Felix Held <felix-github@felixheld.de>
2019-04-05 21:05:27 +02:00
Tim 'mithro' Ansell
dd368638bd
Adding some build badges to README.md
...
Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
2019-03-20 16:59:27 -07:00
Tim 'mithro' Ansell
ac8f228ac1
Small fix to README in license section.
...
Fixes #643 .
Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
2019-02-27 07:01:23 -08:00
Tim 'mithro' Ansell
f98dad14ed
Update README for settings move.
...
Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
2018-12-31 10:30:36 +01:00
Oguz Meteer
832585bfea
Remove unnecessary warning from README.md
...
Signed-off-by: Oguz Meteer <info@guztech.nl>
2018-12-31 10:19:33 +01:00
Oguz Meteer
019492c10d
Update README.md
...
Rearrange steps to make sure the user always downloads a stable
pre-generated database or builds everything, before working on
fuzzers.
Signed-off-by: Oguz Meteer <info@guztech.nl>
2018-12-30 12:00:16 +01:00
Oguz Meteer
6d6da3b6d1
Update README.md with individual steps and how to fix pyjson5 on Arch
...
Signed-off-by: Oguz Meteer <info@guztech.nl>
2018-12-29 19:30:34 +01:00
John McMaster
26b799efc3
README: source after virtualenv
...
Signed-off-by: John McMaster <johndmcmaster@gmail.com>
2018-12-29 16:03:34 +01:00
John McMaster
e449dc3e38
README: misc cleanup
...
Signed-off-by: John McMaster <johndmcmaster@gmail.com>
2018-12-29 15:14:23 +01:00
Felix Held
0d6e327229
introduce vivado wrapper
...
This fixes the problem that when sourcing the vivado settings file the
library search path is modified resulting in non-vivado binaries not working
due to being dynamically linked against the vivado libraries instead of the
system ones.
Signed-off-by: Felix Held <felix-github@felixheld.de>
2018-12-28 19:05:49 +01:00
rapha
34e741ec79
added sudo to readme
...
Signed-off-by: rapha <raphbeutel@gmail.com>
2018-12-27 17:35:40 +01:00
Tim 'mithro' Ansell
c04ca0dc36
Adding better instructions for Python to README.
...
Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
2018-12-17 18:54:17 -08:00
John McMaster
1023379f10
readme: add pip note
...
Signed-off-by: John McMaster <johndmcmaster@gmail.com>
2018-11-13 14:05:18 -08:00
Sarah Maddox
6dc15342df
First commit of docs guide.
...
Signed-off-by: Sarah Maddox <sarahmaddox@google.com>
2018-05-07 10:49:46 +10:00
Sarah Maddox
3d5b3c5525
Added info on signoff via commit statement.
...
Signed-off-by: Sarah Maddox <sarahmaddox@google.com>
2018-04-23 11:03:22 +10:00
Davide
cd1bbc75e7
Added Link to make readthedocs Documentation Webpage easier to find by putting it into the main README file
...
Signed-off-by: Davide <davide.toldo@stud.tu-darmstadt.de>
2018-02-20 00:46:07 +01:00
Rick Altherr
02d28f2920
Document how to enable test and build with debug info
...
Signed-off-by: Rick Altherr <kc8apf@kc8apf.net>
2018-01-12 11:48:11 -08:00
Clifford Wolf
a80b80c63d
Fixes in fuzzers top-level Makefile, Update README
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-01-05 22:16:12 +01:00
John McMaster
bcba8197f2
Document MUXF8 Vivado compatibility issue
...
Signed-off-by: John McMaster <johndmcmaster@gmail.com>
2017-12-22 15:52:40 -08:00
Tim 'mithro' Ansell
29d343a293
Make download-latest-db use https by default.
...
Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
2017-12-21 11:19:43 +01:00
Tim 'mithro' Ansell
c237bcd412
Adding top level docs.
...
Signed-off-by: Tim 'mithro' Ansell <mithro@mithis.com>
2017-12-20 23:28:27 +01:00
Clifford Wolf
a9f35e3e0c
Fix formatting in README.md
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
Signed-off-by: Tim 'mithro' Ansell <mithro@mithis.com>
2017-12-20 22:46:39 +01:00
Clifford Wolf
16c61bb951
Fix typo in README.md
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
Signed-off-by: Tim 'mithro' Ansell <mithro@mithis.com>
2017-12-20 22:46:39 +01:00
Rick Altherr
c734fff44b
README: clarify cmake package requirements
...
CMake 3.5.0 or later is required. For Ubuntu 14.04, that has a
different package name.
Signed-off-by: Rick Altherr <kc8apf@kc8apf.net>
Signed-off-by: Tim 'mithro' Ansell <mithro@mithis.com>
2017-12-20 22:46:39 +01:00
Clifford Wolf
ef60d2d1f0
Update README
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
Signed-off-by: Tim 'mithro' Ansell <mithro@mithis.com>
2017-12-20 22:46:39 +01:00
Rick Altherr
ef411c4eaf
README: instructions for building C++ tools
...
Signed-off-by: Rick Altherr <kc8apf@kc8apf.net>
Signed-off-by: Tim 'mithro' Ansell <mithro@mithis.com>
2017-12-20 22:46:39 +01:00
Clifford Wolf
b800d548eb
Create README.md
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
Signed-off-by: Tim 'mithro' Ansell <mithro@mithis.com>
2017-12-20 22:46:30 +01:00