Power On
START
BEGIN
UCT
IDLE
Out(ALL) = Idle
Datain(ANY) = Act. &
Collin(ALL) = /SQE
:[N <- Port ( Datain = Act. )]
Collin(ANY) = SQE :[ N <- Port ( Collin = SQE )
SEND PREAMBLE PATTERN
Out(ALLXN) = Preamble Pattern
Collin(ANYXN) = SQE
Collin(N) = SQE + ( Datain(N) = Idle & Collin(ALL) = /SQE )
TT(ALLXN) >= 62 & DataRdy &
Collin(ALL) = /SQE & Datain(N) = Act.
SEND TWO ONES
Out(ALLXN) = TwoOnes
Collin(ANYXN) = SQE
Collin(N) = SQE + ( Datain(N) = Idle & Collin(ALL) = /SQE )
TwoOnes Sent & Collin(ALL) = /SQE &
Datain(N) = Act.
SEND DATA
Out(ALLXN) = Data
Collin(N) = SQE + ( Datain(N) = Idle &
Collin(ALL) = /SQE & AllDataSent &
TT(ANYXN) < 96 )
Collin(ANYXN) = SQE
RECEIVE COLLISION
TRANSMIT COLLISION
Out(ALL) = Jam
Datain(N) = Idle & Collin(ALL) = /SQE &
TT(ALLXN) >= 96 & AllDataSent
Collin(ANYXN) = SQE
Out(ALLXN) = Jam
Collin(ALL) = /SQE & TT(ALL) >= 96 & Tw2Done
Collin(ONLY1) = SQE & TT(ALL) >= 96
:[ M <- Port ( Collin = SQE ) ]
ONE PORT LEFT
Out(ALLXM) = Jam
Datain(N) = Idle &
Collin(ALL) = /SQE &
TT(ALLXN) >= 96 &
Tw2Done
Collin(ANYXM)
= SQE
Datain(M) = Idle &
Collin(ALL) = /SQE &
Tw2Done
WAIT
StartTw1
Out(ALL) = Idle
Collin(ANY) = SQE +
Tw1Done
"BE+ 2 " 0*'' !%&'
(+*+
* ! ! ! /0).1(.
* !, !+!+
!
*$ ! , !+1!
! /0).1(. ! ! ,
/0).1(. ," 1+ " 0%&
,
% !%
* ! , !+1!
! %& !! * , /0).1(.
!" !11!" "
!
%