edu.cmu.sei.aadl.modelsupport.properties
Class GetProperties

java.lang.Object
  extended by edu.cmu.sei.aadl.modelsupport.properties.GetProperties

public class GetProperties
extends java.lang.Object


Constructor Summary
GetProperties()
           
 
Method Summary
static double convertToScale(double origvalue, UnitLiteral original, UnitLiteral target)
          Converts the value from the original unit to the target unit
static double getAccessLatencyinMS(ComponentInstance HWcomp, ComponentInstance bus)
           
static Property getActualConnectionBinding()
           
static java.util.List getActualConnectionBinding(NamedElement ne)
           
static double getActualLatencyinMS(NamedElement ne)
           
static java.util.List<ComponentInstance> getActualMemoryBinding(InstanceObject io)
           
static double getActualMIPS(ComponentInstance bci)
           
static java.util.List<ComponentInstance> getActualProcessorBinding(InstanceObject io)
           
static double getBandWidthBudgetInKbps(NamedElement ne, double defaultValue)
           
static double getBandWidthCapacityInKbps(NamedElement ne, double defaultValue)
           
static long getByteCount(NamedElement ne)
           
static UnitLiteral getBytesUnitLiteral()
           
static double getComputeExecutionTimeinMS(NamedElement ne)
           
static double getComputeExecutionTimeInSec(NamedElement ne, double defaultValue)
           
static double getCycletimeasMIPS(ComponentInstance curprocessor)
          return cycletime in terms of MIPS, zero if no cycle timee
static double getCycleTimeinMS(NamedElement ne)
           
static double getDeadlineinMS(NamedElement ne)
           
static EnumerationLiteral getDeviceDispatchProtocol(NamedElement ne)
           
static EnumerationLiteral getDispatchProtocol(NamedElement ne)
           
static double getExpectedLatencyinMS(NamedElement ne)
           
static UnitLiteral getGBUnitLiteral()
           
static boolean getIsPartition(NamedElement ne)
           
static UnitLiteral getKbpsUnitLiteral()
           
static UnitLiteral getKBUnitLiteral()
           
static double getLatencyinMS(NamedElement ne)
           
static UnitLiteral getMBUnitLiteral()
           
static UnitLiteral getMicroSecondUnit()
           
static UnitLiteral getMilliSecondUnit()
           
static double getMIPSBudget(NamedElement ne)
           
static double getMIPSBudgetInMIPS(NamedElement ne, double defaultValue)
           
static Property getMIPSBudgetPD()
           
static double getMIPSCapacityInMIPS(NamedElement ne, double defaultValue)
           
static Property getMIPSCapacityPD()
           
static UnitLiteral getMIPSUnitLiteral()
           
static UnitLiteral getMSUnitLiteral()
           
static double getPartitionLatencyInMS(NamedElement ne, double defaultValue)
           
static double getPeriodinMS(NamedElement ne)
           
static double getPeriodInSeconds(NamedElement ne, double defaultValue)
           
static double getPowerBudget(NamedElement ne, double defaultValue)
           
static double getPowerCapacity(NamedElement ne, double defaultValue)
           
static double getPowerSupply(NamedElement ne, double defaultValue)
           
static long getPriority(NamedElement ne, long defaultValue)
           
static double getProcessorScalingFactor(ComponentInstance thread)
          get the scaling factor between the processor the thread is bound to and the reference processor used to specify the cycle time
static long getQueueSize(NamedElement ne)
           
static Property getRAMActualPD()
           
static Property getRAMBudgetPD()
           
static Property getRAMCapacityPD()
           
static double getReferenceCycleTimeConstantinMS()
           
static double getReferenceCycleTimeinMS(ComponentInstance thread)
          get cycle time that is the reference for the execution time of the thread This value is determined based on the reference processor, or the ReferenceCycleTime constant
static double getReferenceMIPS(ComponentInstance thread)
          Get the MIPS per sec of the reference processor.
static ComponentClassifier getReferenceProcessor(NamedElement ne)
           
static Property getROMActualPD()
           
static Property getROMBudgetPD()
           
static Property getROMCapacityPD()
           
static java.lang.String getSchedulingProtocol(NamedElement ne, java.lang.String defaultValue)
           
static UnitLiteral getSecondUnit()
           
static double getSourceCodeSizeInBytes(NamedElement ne)
           
static double getSourceDataSizeInBytes(NamedElement ne)
           
static double getSourceStackSizeInBytes(NamedElement ne)
           
static Property getTransmissionTime()
           
static void initialize()
           
static Property lookupPropertyDefinition(java.lang.String ps, java.lang.String name)
           
static UnitLiteral lookupUnitLiteral(java.lang.String ps, java.lang.String unitType, java.lang.String literalName)
           
static UnitLiteral scaleupUnit(double origvalue, UnitLiteral original)
          Determines the target unit from the original unit to scale the value to a higher unit The goal is
static double scaleValueToMicroSecond(NumberValue nv)
           
static java.lang.String toStringScaled(double value, UnitLiteral unit)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GetProperties

public GetProperties()
Method Detail

initialize

public static void initialize()

lookupPropertyDefinition

public static Property lookupPropertyDefinition(java.lang.String ps,
                                                java.lang.String name)

lookupUnitLiteral

public static UnitLiteral lookupUnitLiteral(java.lang.String ps,
                                            java.lang.String unitType,
                                            java.lang.String literalName)

getActualProcessorBinding

public static java.util.List<ComponentInstance> getActualProcessorBinding(InstanceObject io)

getActualMemoryBinding

public static java.util.List<ComponentInstance> getActualMemoryBinding(InstanceObject io)

getActualConnectionBinding

public static java.util.List getActualConnectionBinding(NamedElement ne)

getMIPSCapacityInMIPS

public static double getMIPSCapacityInMIPS(NamedElement ne,
                                           double defaultValue)

getMIPSBudgetInMIPS

public static double getMIPSBudgetInMIPS(NamedElement ne,
                                         double defaultValue)

getMIPSUnitLiteral

public static UnitLiteral getMIPSUnitLiteral()

getMSUnitLiteral

public static UnitLiteral getMSUnitLiteral()

getActualConnectionBinding

public static Property getActualConnectionBinding()

getTransmissionTime

public static Property getTransmissionTime()

getMIPSCapacityPD

public static Property getMIPSCapacityPD()

getMIPSBudgetPD

public static Property getMIPSBudgetPD()

getRAMCapacityPD

public static Property getRAMCapacityPD()

getRAMBudgetPD

public static Property getRAMBudgetPD()

getROMCapacityPD

public static Property getROMCapacityPD()

getROMBudgetPD

public static Property getROMBudgetPD()

getRAMActualPD

public static Property getRAMActualPD()

getROMActualPD

public static Property getROMActualPD()

getBandWidthCapacityInKbps

public static double getBandWidthCapacityInKbps(NamedElement ne,
                                                double defaultValue)

getBandWidthBudgetInKbps

public static double getBandWidthBudgetInKbps(NamedElement ne,
                                              double defaultValue)

getReferenceProcessor

public static ComponentClassifier getReferenceProcessor(NamedElement ne)

getCycleTimeinMS

public static double getCycleTimeinMS(NamedElement ne)

scaleValueToMicroSecond

public static double scaleValueToMicroSecond(NumberValue nv)

getBytesUnitLiteral

public static UnitLiteral getBytesUnitLiteral()

getKBUnitLiteral

public static UnitLiteral getKBUnitLiteral()

getMBUnitLiteral

public static UnitLiteral getMBUnitLiteral()

getGBUnitLiteral

public static UnitLiteral getGBUnitLiteral()

getKbpsUnitLiteral

public static UnitLiteral getKbpsUnitLiteral()

getActualMIPS

public static double getActualMIPS(ComponentInstance bci)

getReferenceCycleTimeinMS

public static double getReferenceCycleTimeinMS(ComponentInstance thread)
get cycle time that is the reference for the execution time of the thread This value is determined based on the reference processor, or the ReferenceCycleTime constant

Parameters:
thread -
Returns:
double cycle time in micro sec.

getReferenceCycleTimeConstantinMS

public static double getReferenceCycleTimeConstantinMS()

getProcessorScalingFactor

public static double getProcessorScalingFactor(ComponentInstance thread)
get the scaling factor between the processor the thread is bound to and the reference processor used to specify the cycle time

Parameters:
thread -
Returns:
double scaling factor of processor speed

getReferenceMIPS

public static double getReferenceMIPS(ComponentInstance thread)
Get the MIPS per sec of the reference processor. First tries to find the MIPS capacity. It then tries an explicit reference processor. If it finds it, then it gets the cycle time of that processor. Otherwise it tries to find an explicit reference_cycle_time value. Failing that, it returns a value corresponding to a 1GIPS processor.


getCycletimeasMIPS

public static double getCycletimeasMIPS(ComponentInstance curprocessor)
return cycletime in terms of MIPS, zero if no cycle timee

Parameters:
curprocessor -
Returns:
MIPS

getPowerCapacity

public static double getPowerCapacity(NamedElement ne,
                                      double defaultValue)

getPowerBudget

public static double getPowerBudget(NamedElement ne,
                                    double defaultValue)

getPowerSupply

public static double getPowerSupply(NamedElement ne,
                                    double defaultValue)

getPeriodinMS

public static double getPeriodinMS(NamedElement ne)

getActualLatencyinMS

public static double getActualLatencyinMS(NamedElement ne)

getQueueSize

public static long getQueueSize(NamedElement ne)

getMIPSBudget

public static double getMIPSBudget(NamedElement ne)

getDeadlineinMS

public static double getDeadlineinMS(NamedElement ne)

getComputeExecutionTimeinMS

public static double getComputeExecutionTimeinMS(NamedElement ne)

getComputeExecutionTimeInSec

public static double getComputeExecutionTimeInSec(NamedElement ne,
                                                  double defaultValue)

getPeriodInSeconds

public static double getPeriodInSeconds(NamedElement ne,
                                        double defaultValue)

getPriority

public static long getPriority(NamedElement ne,
                               long defaultValue)

getSchedulingProtocol

public static java.lang.String getSchedulingProtocol(NamedElement ne,
                                                     java.lang.String defaultValue)

getDispatchProtocol

public static EnumerationLiteral getDispatchProtocol(NamedElement ne)

getSourceDataSizeInBytes

public static double getSourceDataSizeInBytes(NamedElement ne)

getSourceCodeSizeInBytes

public static double getSourceCodeSizeInBytes(NamedElement ne)

getSourceStackSizeInBytes

public static double getSourceStackSizeInBytes(NamedElement ne)

getDeviceDispatchProtocol

public static EnumerationLiteral getDeviceDispatchProtocol(NamedElement ne)

getPartitionLatencyInMS

public static double getPartitionLatencyInMS(NamedElement ne,
                                             double defaultValue)

getIsPartition

public static boolean getIsPartition(NamedElement ne)

getLatencyinMS

public static double getLatencyinMS(NamedElement ne)

getAccessLatencyinMS

public static double getAccessLatencyinMS(ComponentInstance HWcomp,
                                          ComponentInstance bus)

getExpectedLatencyinMS

public static double getExpectedLatencyinMS(NamedElement ne)

convertToScale

public static double convertToScale(double origvalue,
                                    UnitLiteral original,
                                    UnitLiteral target)
Converts the value from the original unit to the target unit


scaleupUnit

public static UnitLiteral scaleupUnit(double origvalue,
                                      UnitLiteral original)
Determines the target unit from the original unit to scale the value to a higher unit The goal is


toStringScaled

public static java.lang.String toStringScaled(double value,
                                              UnitLiteral unit)

getByteCount

public static long getByteCount(NamedElement ne)

getMilliSecondUnit

public static UnitLiteral getMilliSecondUnit()

getMicroSecondUnit

public static UnitLiteral getMicroSecondUnit()

getSecondUnit

public static UnitLiteral getSecondUnit()