Select Arrival Path Using Input Switch

Role of the Input Switch

The block in the Routing library chooses among a number of entity input ports. This block selects exactly one entity input port for potential arrivals and makes all other entity input ports unavailable. The selected entity input port can change during the simulation. You have several options for criteria that the block uses for selecting an entity input port.

A typical scenario in which you might use an input switch is when multiple sources of entities feed into a single queue, where the sequencing follows specific rules. For example, users of terminals in a time-shared computer submit jobs to a queue that feeds into the central processing unit, where an algorithm regulates access to the queue so as to prevent unfair domination by any one user.

Round-Robin Approach to Choosing Inputs

In a round-robin approach, an input switch cycles through the entity input ports in sequence. After the last entity input port, the next selection is the first entity input port. The switch selects the next entity input port after each entity departure. When the switch selects an entity input port, it makes the other entity input ports unavailable, regardless of how long it takes for an entity to arrive at the selected port.

You can implement a round-robin approach by setting the Switching criterion parameter in the Input Switch block to Round robin.

Consider the following example (open modelmodel), in which three sets of entities attempt to arrive at an Input Switch block with the round-robin switching criterion.

The three Set Attribute blocks assign a Type attribute to each entity, where the attribute value depends on which entity generator created the entity. FIFO Queue blocks store entities that cannot enter the Input Switch block yet because either

  • The Input Switch is waiting to receive an entity at a different entity input port, according to the round-robin switching criterion.

  • The Single Server block is busy serving an entity, so its entity input port is unavailable.

The Attribute Scope block creates a a stem plot of the Type attribute values over time. Because the Type attribute identifies the source of each entity that arrives at the scope, you can see the effect of the round-robin switching criterion. In particular, the heights of the stems in the plot cycle among the values 1, 2, and 3.

Was this topic helpful?