prjxray/fuzzers/005-tilegrid
John McMaster 5acda63b46 xadc: tilegrid support
Signed-off-by: John McMaster <johndmcmaster@gmail.com>
2018-12-29 17:07:18 +01:00
..
fuzzaddr introduce vivado wrapper 2018-12-28 19:05:49 +01:00
iob tilegrid: params on fuzzaddr/generate.py 2018-12-18 15:41:23 -08:00
mmcm tilegrid: pll/mmcm entire major address until resolved 2018-12-18 17:12:13 -08:00
monitor xadc: tilegrid support 2018-12-29 17:07:18 +01:00
pll tilegrid: pll/mmcm entire major address until resolved 2018-12-18 17:12:13 -08:00
Makefile xadc: tilegrid support 2018-12-29 17:07:18 +01:00
README.md Fixed Bullet Point Lists in README.md files 2018-02-18 03:02:33 +01:00
add_tdb.py xadc: tilegrid support 2018-12-29 17:07:18 +01:00
generate.py Move xjson / xyaml to utils instead of prjxray. 2018-12-17 17:03:19 -08:00
generate.sh introduce vivado wrapper 2018-12-28 19:05:49 +01:00
generate_bram.tcl tcl: reformat existing code 2018-12-05 16:52:56 -08:00
generate_clb.tcl tcl: reformat existing code 2018-12-05 16:52:56 -08:00
generate_full.py tilegrid iob: generate addresses automatically 2018-12-17 16:38:25 -08:00
generate_iob.tcl tcl: reformat existing code 2018-12-05 16:52:56 -08:00
generate_tiles.tcl tcl: reformat existing code 2018-12-05 16:52:56 -08:00
top.v tilegrid: fix IBUF define 2018-12-04 20:59:37 -08:00
util.tcl tcl: reformat existing code 2018-12-05 16:52:56 -08:00

README.md

Tilegrid Fuzzer

This fuzzer creates the tilegrid.json bitstream database
This database contains segment definitions including base frame address and frame offsets

Example workflow for CLB

generate.tcl LOCs one LUT per segment column towards generating frame base addresses
A reference bitstream is generated and then a series of bitstreams are generated each with one LUT bit toggled
These are compared to find a toggled bit in the CLB segment column
The resulting address is truncated to get the base frame address
Finally, generate.py calculates the segment word offsets based on known segment column structure

Environment variables

XRAY_ROI

This environment variable must be set with a valid ROI
See database for example values

XRAY_ROI_FRAMES

This can be set to a specific value to speed up processing and reduce disk space
If you don't know where your ROI is, just set to to include all values (0x00000000:0xfffffff)

XRAY_ROI_GRID_*

Optionally these as a small performance optimization:

  • XRAY_ROI_GRID_X1
  • XRAY_ROI_GRID_X2
  • XRAY_ROI_GRID_Y1
  • XRAY_ROI_GRID_Y2

Which should, if unused, be set to -1, with this caveat:
WARNING: CLB test generates this based on CLBs but implicitly includes INT
Therefore, if you don't set an explicit XRAY_ROI_GRID_* it may fail
if you don't have a CLB*_L at left and a CLB*_R at right