Package org.eclipse.app4mc.amalthea.model.util

## Class HardwareUtil

- Object
- - HardwareUtil

    public class HardwareUtil
    extends Object

### Method Summary

All Methods
`static Time` `calculateHwAccessPathTime​(HwAccessElement accessElement, RuntimeUtil.TimeType timeType, RuntimeUtil.AccessDirection direction)`
`static Long` `calculateLatency​(IDiscreteValueDeviation latency, RuntimeUtil.TimeType timeType)`
`static Time` `calculateLatencyPathTime​(HwAccessElement accessElement, RuntimeUtil.TimeType timeType, RuntimeUtil.AccessDirection direction)`
`static List<HwAccessElement>` `getAccessElementsToDestination​(HwDestination dest, Amalthea model)`
`static Map<ProcessingUnit,​HashMap<HwDestination,​Time>>` `getAccessTimes​(Amalthea model, RuntimeUtil.TimeType timeType, RuntimeUtil.AccessDirection direction)`
`static List<ProcessingUnit>` `getAllProcessingUnitsForProcessingUnitDefinition​(Amalthea model, ProcessingUnitDefinition puDef)`
`static Frequency` `getFrequencyOfModule​(HwModule module)` Returns the frequency of a specific module
`static long` `getFrequencyOfModuleInHz​(HwModule module)` Returns the frequency of a specific module in Hertz
`static Map<Memory,​Long>` `getMemoryAccessLatenciesCycles​(Amalthea model, RuntimeUtil.TimeType timeType)`
`static Map<Memory,​Time>` `getMemoryAccessLatencyTime​(Amalthea model, RuntimeUtil.TimeType timeType)`
`static DataRate` `getMinDataRateOfHwAccessPath​(HwAccessPath path)` Computes the minimum data rate of an access path
`static <T extends HwModule> List<T>` `getModulesFromHwModel​(Class<T> targetClass, Amalthea model)`
`static <T extends HwModule> List<T>` `getModulesFromHWStructure​(Class<T> targetClass, HwStructure structure)`

### Methods inherited from class Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### getModulesFromHwModel

    public static <T extends HwModule> List<T> getModulesFromHwModel​(Class<T> targetClass,
                                                                     Amalthea model)

#### getModulesFromHWStructure

    public static <T extends HwModule> List<T> getModulesFromHWStructure​(Class<T> targetClass,
                                                                         HwStructure structure)

#### getAllProcessingUnitsForProcessingUnitDefinition

    public static List<ProcessingUnit> getAllProcessingUnitsForProcessingUnitDefinition​(Amalthea model,
                                                                                        ProcessingUnitDefinition puDef)

#### getMemoryAccessLatenciesCycles

    public static Map<Memory,​Long> getMemoryAccessLatenciesCycles​(Amalthea model,
                                                                        RuntimeUtil.TimeType timeType)

#### getMemoryAccessLatencyTime

    public static Map<Memory,​Time> getMemoryAccessLatencyTime​(Amalthea model,
                                                                    RuntimeUtil.TimeType timeType)

#### getAccessElementsToDestination

    public static List<HwAccessElement> getAccessElementsToDestination​(HwDestination dest,
                                                                       Amalthea model)

#### getAccessTimes

    public static Map<ProcessingUnit,​HashMap<HwDestination,​Time>> getAccessTimes​(Amalthea model,
                                                                                             RuntimeUtil.TimeType timeType,
                                                                                             RuntimeUtil.AccessDirection direction)

#### calculateLatencyPathTime

    public static Time calculateLatencyPathTime​(HwAccessElement accessElement,
                                                RuntimeUtil.TimeType timeType,
                                                RuntimeUtil.AccessDirection direction)

#### calculateHwAccessPathTime

    public static Time calculateHwAccessPathTime​(HwAccessElement accessElement,
                                                 RuntimeUtil.TimeType timeType,
                                                 RuntimeUtil.AccessDirection direction)

#### calculateLatency

    public static Long calculateLatency​(IDiscreteValueDeviation latency,
                                        RuntimeUtil.TimeType timeType)

#### getMinDataRateOfHwAccessPath

    public static DataRate getMinDataRateOfHwAccessPath​(HwAccessPath path)

Computes the minimum data rate of an access path

#### getFrequencyOfModule

    public static Frequency getFrequencyOfModule​(HwModule module)

Returns the frequency of a specific module

#### getFrequencyOfModuleInHz

    public static long getFrequencyOfModuleInHz​(HwModule module)

Returns the frequency of a specific module in Hertz