TimeloopFE
Loading...
Searching...
No Matches
timeloopfe.v4.arch Namespace Reference

Classes

class  Architecture
 An architecture. More...
 
class  ArchNode
 A node in the architecture hierarchy. More...
 
class  ArchNodes
 A collection of architectural nodes. More...
 
class  Attributes
 A class representing attributes for a node in the architecture. More...
 
class  Branch
 A branch in the architecture. More...
 
class  Component
 A component in the architecture. More...
 
class  Compute
 A compute component. More...
 
class  Container
 A container in the architecture. More...
 
class  Hierarchical
 A hierarchical branch in the architecture. More...
 
class  Leaf
 A leaf node in the architecture hierarchy. More...
 
class  Network
 A network component. More...
 
class  Networks
 A list of networks in the architecture. More...
 
class  Nothing
 A class representing a 'nothing' component. More...
 
class  Parallel
 A parallel branch in the architecture. More...
 
class  Pipelined
 " A pipelined branch in the architecture. More...
 
class  Spatial
 A spatial configuration in a system architecture. More...
 
class  Storage
 A storage component. More...
 
class  StorageAttributes
 Represents the attributes of a storage element. More...
 

Functions

"Component" component_factory (*args, **kwargs)
 Factory function for creating components based on the provided arguments.
 
"Storage" dummy_storage (str name)
 Create a dummy storage component.
 

Variables

tuple BUFFER_CLASSES = ("DRAM", "SRAM", "regfile", "smartbuffer", "storage")
 
tuple COMPUTE_CLASSES = ("mac", "intmac", "fpmac", "compute")
 
tuple NETWORK_CLASSES = ("XY_NoC", "Legacy", "ReductionTree", "SimpleMulticast")
 
tuple NOTHING_CLASSES = ("nothing",)
 

Function Documentation

◆ component_factory()

"Component" timeloopfe.v4.arch.component_factory ( * args,
** kwargs )

Factory function for creating components based on the provided arguments.

Args: *args: Variable length arguments. Either a single dictionary or keyword arguments. **kwargs: Keyword arguments. Either a single dictionary or keyword arguments.

Returns: Component: The created component.

Raises: TypeError: If both a dictionary and keyword arguments are provided, or if no dictionary is provided. TypeError: If the provided argument is not a dictionary. AssertionError: If the 'class' attribute is missing in the provided dictionary. AssertionError: If the 'class' attribute is not a string. ValueError: If the element class is unknown.

◆ dummy_storage()

"Storage" timeloopfe.v4.arch.dummy_storage ( str name)

Create a dummy storage component.

Args: name (str): The name of the storage component.

Returns: Storage: The created dummy storage component.

Variable Documentation

◆ BUFFER_CLASSES

tuple timeloopfe.v4.arch.BUFFER_CLASSES = ("DRAM", "SRAM", "regfile", "smartbuffer", "storage")

◆ COMPUTE_CLASSES

tuple timeloopfe.v4.arch.COMPUTE_CLASSES = ("mac", "intmac", "fpmac", "compute")

◆ NETWORK_CLASSES

tuple timeloopfe.v4.arch.NETWORK_CLASSES = ("XY_NoC", "Legacy", "ReductionTree", "SimpleMulticast")

◆ NOTHING_CLASSES

tuple timeloopfe.v4.arch.NOTHING_CLASSES = ("nothing",)