prjxray/fuzzers/005-tilegrid
Keith Rothman c0b8aef3a9 Add pin functions to tilegrid.
- Add support to emit PUDC_B pullup if unused (for A7 and Z7 fabrics).

Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2019-10-14 16:38:02 -07:00
..
bram Sort tiles and revamp gen_fuzz_states to be more efficient. 2019-02-13 17:59:37 -08:00
bram_block Convert BRAM block tilegrid fuzzer to use first RAMB18E1. 2019-02-13 18:25:09 -08:00
bram_int Merge pull request #648 from litghost/rework_tilegrid 2019-02-13 18:42:06 -08:00
cfg 005-tilegrid: add CFG_CENTER_MID tile base address calculation 2019-05-31 09:40:40 +02:00
cfg_int Make generic generate_top for tilegrid. 2019-02-12 16:43:02 -08:00
clb Sort tiles and revamp gen_fuzz_states to be more efficient. 2019-02-13 17:59:37 -08:00
clb_int Sort tiles and revamp gen_fuzz_states to be more efficient. 2019-02-13 17:59:37 -08:00
clk_bufg Make generic generate_top for tilegrid. 2019-02-12 16:43:02 -08:00
clk_hrow Working complete HROW pip fuzzer. 2019-03-14 20:05:27 -07:00
dsp Merge pull request #648 from litghost/rework_tilegrid 2019-02-13 18:42:06 -08:00
dsp_int Sort tiles and revamp gen_fuzz_states to be more efficient. 2019-02-13 17:59:37 -08:00
fifo_int Merge pull request #648 from litghost/rework_tilegrid 2019-02-13 18:42:06 -08:00
fuzzaddr tilegrid: fix multi regression 2019-01-09 23:29:21 +01:00
hclk_cmt Add fuzzers for HCLK_CMT tiles. 2019-03-15 18:43:21 -07:00
hclk_ioi Add stepdown feature to HCLK_IOI. 2019-07-30 16:03:25 -07:00
iob Fix missing IOB base address. 2019-02-13 22:47:29 -08:00
iob_int Sort tiles and revamp gen_fuzz_states to be more efficient. 2019-02-13 17:59:37 -08:00
ioi 005-tilegrid: calculate IOI base address 2019-06-25 11:32:32 +02:00
mmcm fuzzers: tilegrid: mmcme: LOC mmcme2_adv instances 2019-07-09 18:42:04 +02:00
monitor Sort tiles and revamp gen_fuzz_states to be more efficient. 2019-02-13 17:59:37 -08:00
monitor_int Make generic generate_top for tilegrid. 2019-02-12 16:43:02 -08:00
orphan_int_column Solve orphan INT columns in Kintex7. 2019-02-07 15:01:09 -08:00
pll Complete initial PLL fuzzer. 2019-07-03 13:18:58 -07:00
ps7_int Handle A7/K7/Z7 differences gracefully. 2019-01-27 22:30:53 -08:00
Makefile Add pin functions to tilegrid. 2019-10-14 16:38:02 -07:00
README.md Makes minor documentation change. 2019-02-03 00:59:43 +10:30
add_tdb.py Add stepdown feature to HCLK_IOI. 2019-07-30 16:03:25 -07:00
generate.py Add pin functions to tilegrid. 2019-10-14 16:38:02 -07:00
generate.sh introduce vivado wrapper 2018-12-28 19:05:49 +01:00
generate_full.py 005-tilegrid: Add alias for IOI3_SING tiles 2019-07-26 13:34:44 +02:00
generate_tiles.tcl Add pin functions to tilegrid. 2019-10-14 16:38:02 -07:00
top.v tilegrid: fix IBUF define 2018-12-04 20:59:37 -08:00
util.py Remove some of the __future__.] 2019-01-28 12:54:36 -08:00
util.tcl Expand tilegrid to entire grid. 2019-01-27 08:20:48 -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; then
  • these are compared to find a toggled bit in the CLB segment column; then
  • 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, use these as a small performance optimization:

  • XRAY_ROI_GRID_X1
  • XRAY_ROI_GRID_X2
  • XRAY_ROI_GRID_Y1
  • XRAY_ROI_GRID_Y2

These 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.