Open reteprelief opened 8 years ago
text for property definition: 'Reference_Time: inherit reference (abstract processor device) applies to (processor, device, memory, bus, virtual processor, virtual bus, system); ` This property identifies the reference time being used by the component the property applies to. The reference time is represented by an instance of an abstract, processor, or device component type.
Descriptive text: (79) Reference times in the form of a clock or time domain can be represented by instances of a predeclared user-defined abstract, processor, or device type called Reference_Time. Characteristics of this reference time component, such as clock drift rate and maximum clock drift can be specified as properties of these instances. Processors, devices, buses, and memory, virtual buses, virtual processors, and systems can be assigned different reference times through the Reference_Time property. Similarly, application components can be assigned reference times to represent the fact that they may read the time, e.g., to timestamp data.
Need to add properties for clock drift rate and max clock drift
Correction to the property definition:
Reference_Time: inherit reference (processor, device, bus, system, abstract) applies to (processor, device, memory, bus, virtual processor, virtual bus, system);
updated descriptive text accordingly.
I thought about providing a predeclared component type for reference time, but there is no value added, so I let users define and use their own component type.
Section 5.4.7 Asynchronous Systems talks about a pre-declared device Reference_Time and a pre-declared property Reference_Time that allows users to specify common time bases for sets of platform resources. A search of both the standard and OSATE and an attempt to create a device whose type is Reference_Time indicate these are not actually supported. When they are, care should be taken that the naming capabilities are the same as those of the binding properties and allow a reference to a Reference_Time object to be associated with a component that is arbitrarily deeply nested in the design hierarchy. Also, it may be useful to simply allow any processor or device or system to be named as a time reference, not just devices having a specific predeclared type. For example, it might be convenient to simply declare a Reference_Time property in a system that names that system itself, meaning all sub-components of that system are in the same synchronization domain.