Adding description of segdata file format.

Signed-off-by: Ben Reynwar <breynwar@isi.edu>
This commit is contained in:
Ben Reynwar 2021-08-04 17:45:47 -04:00
parent 6a031b6474
commit fdc0dea7c5
1 changed files with 36 additions and 1 deletions

View File

@ -10,7 +10,7 @@ bitread:
to get the various FASM features. to get the various FASM features.
segmatch: segmatch:
Used in the fuzzing process to correlate the different bits and find which one belong to which feature. Used in the fuzzing process to correlate the different bits and find which one belong to which feature.
gen_part_base_yaml. gen_part_base_yaml:
Used to get a high level information on the device structure (number of Used to get a high level information on the device structure (number of
configuration rows/columns and maximum frame addresses) configuration rows/columns and maximum frame addresses)
xc7frames2bit: xc7frames2bit:
@ -24,3 +24,38 @@ bits2rbt:
??? ???
frame_address_decoder: frame_address_decoder:
??? ???
segmatch
--------
This tools takes input files of the format:
code::
seg 00000000_050
bit 38_15
bit 39_14
<....>
tag HCLK_IOI3.LVDS_25_IN_USE 0
tag HCLK_IOI3.ONLY_DIFF_IN_USE 0
<...>
seg 00001C80_050
bit 38_15
bit 38_26
where `seg <base_frame_address> <tile_offset>` indicates how to address the tile,
and `bit <frame_address_offset> <bit_position>` indicates the position of the bit
within the tile.
base_frame_address:
The frame address of the first frame that configures the tile.
tile_offset:
The word index of the first word that configures the tile within a frame.
frame_address_offset:
frame_address - base_frame_address
bit_position:
The index of the bit within the words of this frame that configure this tile.
The `prjxray.segmaker.Segmaker` is a helper class that can be used to write these
files inside the fuzzer's `generate.py`.