Processor
ptolemy.domains.csp.demo.BusContention.Processor

A CSP actor that contends for a shared resource. A Processor actor is granted access to the shared resource via a Controller actor. The processor must connect to a Controller via its requestInput and requestOutput ports. The shared resource that the Processor attempts to gain access to is a Memory actor. The memory actor is connected to via the Processor's memoryInput and memoryOutput ports. The Processor actor has four informal states. In state one it determines at what time it will next attempt to access the shared resource. It will then place a request at the determined time. In state two, it will wait to see if it has been granted the request. The Processor enters state three if it is granted the request. It remains in state three for 300 milliseconds, accesses the shared resource and then returns to state two. If the Processor is denied its request, then it enters four and remains in that state for 300 milliseconds after which it returns to state four. In addition to the resource contention features of Processor, it can also notify an ExecEventListener as this actor jumps between its three states. Such notification is enabled by adding an ExecEventListener to this actor's listener list via the addListeners() method. Listeners can be removed via the removeListeners() method. ExecEventListeners are currently implemented to serve as conduits between Ptolemy II and the Diva graphical user interface.

Author(s): John S. Davis II
Version:$Id: Processor.doc.html,v 1.1 2006/02/22 18:41:22 mangal Exp $
Pt.Proposed Rating:Red (davisj)
Pt.Accepted Rating:Red (cxh)


requestInput
The resource request input port. Resources are granted through this port. The type of this port is BaseType.BOOLEAN.
requestOutput
The resource request output port. Resource requests are made through this port with a token that includebs the requestor's priority level. The type of this port is BaseType.INT.
memoryInput
The input port through which this actor receives data from the shared resource. The type of this port is BaseType.GENERAL.
memoryOutput
The output port through which this actor sends data to the shared resource. The type of this port is BaseType.STRING.