To describe time in ASM let’s look at ASM in Fig. 1. Each operator can contain one, two, three etc. microoperations written in the same operator vertex. These microoperations are implemented simultaneously at the same clock.
Figure 1. Example of ASM
Two sequential operators, as Y5 and Y1 in Fig. 1, are implemented at two sequential clocks. Two operators with any number of conditional vertices between them, as Y8 and Y5 in Fig. 1, are implemented at two sequential clocks.
We would like to remind you that ASM, as a Finite State Machine (FSM), is a sequential model. To describe parallel processes, we must draw several ASMs. Fig. 2 presents three fragments of parallel working ASMs, dots there present some sequences of vertices. The interaction between these processes is implemented by signals (microoperation). In this example, three processes begin to work simultaneously but at some time, the right one stops and waits signal y1=1 from the left process. Only then it will continue to work. In the same manner at some stage, the left process stops and waits signal y2=1 from the central one. Three processes continue to work but at some time the left and the right processes are waiting signal y3=1 from the central process etc.
Figure 2. Three pipeline processes