FABulous.fabric_definition.Tile#

Store information about a tile.

Classes#

class Tile(name, ports, bels, tileDir, matrixDir, gen_ios, userCLK, configBit=0)[source]#

Store information about a tile.

Parameters:
name[source]#

The name of the tile

Type:

str

portsInfo[source]#

The list of ports of the tile

Type:

list[Port]

matrixDir[source]#

The directory of the tile matrix

Type:

str

gen_ios[source]#

The list of GEN_IOs of the tile

Type:

List[Gen_IO]

matrixConfigBits[source]#

The number of config bits the tile switch matrix has

Type:

int

withUserCLK[source]#

Whether the tile has a userCLK port. Default is False.

Type:

bool

wireList[source]#

The list of wires of the tile

Type:

list[Wire]

tileDir[source]#

The path to the tile folder

Type:

str

Initialize a tile with its components.

Properties:

property globalConfigBits[source]#

Get the total number of global configuration bits.

Calculates the sum of switch matrix configuration bits and all BEL configuration bits.

Returns:

Total number of global configuration bits for the tile.

Return type:

int

Methods:

getEastPorts(io)[source]#

Get all ports with east wire direction filtered by I/O type.

Parameters:

io (IO) – The I/O direction to filter by (INPUT or OUTPUT).

Returns:

List of east-direction ports with specified I/O type, excluding NULL ports.

Return type:

list[Port]

getEastSidePorts()[source]#

Get all ports physically located on the east side of the tile.

Returns:

List of ports on the east side, excluding NULL ports.

Return type:

list[Port]

getNorthPorts(io)[source]#

Get all ports with north wire direction filtered by I/O type.

Parameters:

io (IO) – The I/O direction to filter by (INPUT or OUTPUT).

Returns:

List of north-direction ports with specified I/O type, excluding NULL ports.

Return type:

list[Port]

getNorthSidePorts()[source]#

Get all ports physically located on the north side of the tile.

Returns:

List of ports on the north side, excluding NULL ports.

Return type:

list[Port]

getSouthPorts(io)[source]#

Get all ports with south wire direction filtered by I/O type.

Parameters:

io (IO) – The I/O direction to filter by (INPUT or OUTPUT).

Returns:

List of south-direction ports with specified I/O type, excluding NULL ports.

Return type:

list[Port]

getSouthSidePorts()[source]#

Get all ports physically located on the south side of the tile.

Returns:

List of ports on the south side, excluding NULL ports.

Return type:

list[Port]

getTileInputNames()[source]#

Get all input port destination names for the tile.

Returns:

List of destination names for input ports, excluding NULL and JUMP direction ports.

Return type:

list[str]

getTileOutputNames()[source]#

Get all output port source names for the tile.

Returns:

List of source names for output ports, excluding NULL and JUMP direction ports.

Return type:

list[str]

getWestPorts(io)[source]#

Get all ports with west wire direction filtered by I/O type.

Parameters:

io (IO) – The I/O direction to filter by (INPUT or OUTPUT).

Returns:

List of west-direction ports with specified I/O type, excluding NULL ports.

Return type:

list[Port]

getWestSidePorts()[source]#

Get all ports physically located on the west side of the tile.

Returns:

List of ports on the west side, excluding NULL ports.

Return type:

list[Port]