We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

Showing results for 
Search instead for 
Did you mean: 
Registered: ‎09-18-2009

how to determine configuration row/column

I'm trying to interpret readback data but it is not possible to determine the 'FAR' (frame address register) a priori unless I know the maximum values of the minor, row, column, etc to model when they roll over.


If we take the (V6) FAR at face value:


  6:0: Minor Address:
 14:7: Column Address:
19:15: Row Address:
   20: Top_B (0: Top Half;1: Bottom Half)
23:21: Block Type (000=clb,iob,etc; 001=BRAM)


(since block type will be constant) we are led to believe that every bit file must be 2^21 frames - this is patently false, so when ug360 claims that "The address can be written directly or can be auto-incremented at the end of each frame. The typical bitstream starts at address 0 and auto-increments to the final count."   This auto-increment function must rollover within the subfields.  If streaming out the entire configuration space and then plucking out the data from the logic allocation file (LAF) it is necessary to know what the FAR is for each frame.


Is this information published somewhere or is it otherwise implied by the known column/row info in the part number. 


Alternatively I could try toggling back and forth between the FAR the FDRO to try to reverse engineer this - but this should not be ncessary.


BTW, by studying a LAF there does not appear be a regular, predictable one-to-one mapping with the physical rows and columns (e.g. SLICE_XxYy).

0 Kudos