prjxray/fuzzers/005-tilegrid
John McMaster b501c10fa2 tilegrid iob: generate addresses automatically
Signed-off-by: John McMaster <johndmcmaster@gmail.com>
2018-12-17 16:38:25 -08:00
..
iob tilegrid iob: generate addresses automatically 2018-12-17 16:38:25 -08:00
.gitignore tilegrid: makefile build dir workflow 2018-10-24 17:21:44 -07:00
Makefile tilegrid iob: generate addresses automatically 2018-12-17 16:38:25 -08:00
README.md Fixed Bullet Point Lists in README.md files 2018-02-18 03:02:33 +01:00
add_tdb.py tilegrid iob: generate addresses automatically 2018-12-17 16:38:25 -08:00
generate.py tilegrid: separate tilegrid and address generation 2018-12-03 12:09:18 -08:00
generate.sh tilegrid: generating iob deltas 2018-12-03 17:14:04 -08: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