OpenFPGA Arch Parser

class util.openfpga_arch.OpenFPGA_Arch(vpr_arch, openfpga_arch, layout: None)[source]

This is an architecture parser which parses the VPR and OpenFPGA XML files and provides easy interface APIs

Note

The idea here is not to parse complete architecture and rebuild the openfpga and VPR mapping

Methods:

__init__

get_width

Return width of selected layout

get_height

Return height of selected layout

get_layouts

Returns the dictionary of avaialble layouts in the architecture

set_layout

Set specific layout as primary layout

is_homogeneous

Checks if the device is homogeneous device or heterogenous

get_hetero_columns

Returns columns numbers of given heterogenesous pb_type

get_hetero_rows

Returns row numbers of given heterogenesous pb_type

Attributes:

pb_types

Returns list of pb_types in the architecture

tiles

Returns list of tiles in the architecture

layout

Returns selected layout name

__init__(vpr_arch, openfpga_arch, layout: None) None[source]
property pb_types

Returns list of pb_types in the architecture

property tiles

Returns list of tiles in the architecture

property layout

Returns selected layout name

get_width()[source]

Return width of selected layout

get_height()[source]

Return height of selected layout

get_layouts()[source]

Returns the dictionary of avaialble layouts in the architecture

Returns

Available layouts as a key and (width, height) as a value of each key

Return type

dict

set_layout(layout_name)[source]

Set specific layout as primary layout

is_homogeneous()[source]

Checks if the device is homogeneous device or heterogenous

if layout section contains anything other than corner, periphery and fill the device is consider as a homogeneous

get_hetero_columns(pb_type)[source]

Returns columns numbers of given heterogenesous pb_type

get_hetero_rows(pb_type)[source]

Returns row numbers of given heterogenesous pb_type