Page 508
PROFIBUS-Specification-Normative-Parts-6:1997
Copyright by PNO 1997 - all rights reserved
6.7.2.2 State Diagram for Connection Establishment at the Responder
CLOSED
O
O
O
O
ASS.res (+) from LLI user
ASS-
REPLY-UPDATE
ASS.res (+) from LLI user
send ASS_RES_PDU
D
ASS-RES-
SAP-DEACTIVATE
O
LLI start routine
ASS-RES-
SAP-ACTIVATE
reset CREF
UPDATE.con (OK)
ASS-
WAIT-LOC-RES
3: ASS.res (-)
5: T1 expired
4: ABT.req from LLI user
2: unallowed LLI primitives
3:send ASS_NRS_PDU
1,2,4,5:send ABT_REQ_PDU
1,2,5:ABT.ind to LLI user
ASS.ind to LLI user
2
ABT_REQ_PDU
send
LLI Fault.ind
LLI Fault.ind
2
2
ASS_REQ_PDU received
(SRD.ind / SDA.ind)
and LLI-LLI context
test negative
ABT_REQ_PDU
send
D
1
D
ASS_REQ_PDU received (SDA.ind / SRD.ind)
LLI-LLI context test positive
2: unallowed FDL primitives
1: ignore PDU
2: LLI Fault.ind
1...3: reset CREF
1: ABT_REQ_PDU
(SDA.ind/SRD.ind)
LLI-LLI context
test negative
(R)SAP_ACT.con(OK)
2
ABT.ind to LLI user, LLI Fault.ind
send ABT_REQ_PDU
(UPDATE.req(low))
ASS-
SEND-RES-PDU
UPDATE.con(LR)
ABT.ind to LLI user, LLI Fault.ind
ASS.ind to LLI user, start T1
All Transitions of the Master-Slave Connections
SAP_DEACT.con (OK)
2
ABT.ind an LLI-User
1,2,3:ABT_REQ_PDU senden
1: LLI-Fault.ind
3: SDA.con(RR/NA)
1: T1 expired/SDA.con(LR)
3
1,2: ABT.ind to LLI user
1: LLI Fault.ind
2: ABT_REQ_PDU
(SDA.ind/SRD.ind)
(SRD.ind/SDA.ind)
2: any LLI PDU except Abort
(SRD.ind/SDA.ind)
1: any LLI PDU except Abort
SAP_ACT.req<Rem_add>
ASS.ind to LLI user
start T1
UPDATE.con(LS/IV)
O
3
ABT.ind to LLI user, LLI Fault.ind
UPDATE.con(LS/IV)
1: unallowed
FDL primitives/
SRD.ind(no data,
update_status = NO)
T1 expired/
SAP_DEACT.con (NO/IV)/
unallowed FMA1/2 primitive
(R)SAP_ACT.con(NO/IV)/
T1 expired/
unallowed FMA1/2 primitive
1,2,3: stop T1
1: start S/ETimer
ASS_RES_PDU sent
(SRD.ind (no data, update_status=LO)
or SDA.con(OK))
1: ACI > 0
2: ACI = 0 acyc.
3: M-S CN for cycl. Data Transfer
3
2: ABT_REQ_PDU/SDA.con(UE/RS/DS)
update_status = N O)
1: unallowed FDL primitives /
SDA.con(LS/IV) / SRD .ind (no data)
1,2: ABT.ind to LLI user
1: LLI Fault.ind
OPEN
ASS_REQ_PDU received
(SDA.ind)
start T1, SAP_DEACT.req
(R)SAP_ACT.con (OK) and
LLI-LLI context test positive
1,2: send ABT_REQ_PDU
2
1: ASS_RES / ASS_NRS / DTC / DTA /
Idle PDUreceived (SRD.ind / SDA.ind)
2: ASS_REQ_PDU received
(SRD.ind / SDA.ind (high))
are only valid for the Slave. The Transitions with
the numbers 2 and 3 are continued in the Figure
"Connection Release".
The Transition with the number 1 exits the Figure
"Connection Establishment at the Requester".
ASS conflict case
ASS_REQ_PDU received
LLI-LLI context test positive
send ASS_RES_PDU
(SDA.req(low))
3: any LLI primitive
3: ABT.ind
or unknown or faulty PDU
or unknown or faulty PDU
ASS_REQ_PDU received (SDA.ind)
start T1, RSAP_DEACT.req<Rem _add>
O
ASS-
WAIT-FOR-UPDATE-CON
1: UPDATE.con(OK)
2: UPDATE.con(LS/LR/IV)
3: T2 expired
any FDL primitive
exept UPDATE.con
1,2: ignore UPDATE.con
2,3: LLI Fault.ind
ignore FDL primitive
1: UPDATE.con(OK)
2: UPDATE.con(LS/LR/IV)
3: T2 expired
1,2: ignore UPDATE.con
2,3: LLI Fault.ind
D
O
1...4: ABT.ind
stop all Timers, start T2
1,2,4: LLI Fault.ind
1: T1 expired
2: unexpec. FDL prim.
3: ABT_REQ_PDU rec.
4: SRD.ind
ABT-
WAIT-FOR-UPDATE-CON
any LLI PDU exept Abort
or unknown or faulty PDU rec.
stop all Timers, start T2
UPDATE.con(LS/IV)
ABT.ind to LLI user, LLI Fault.ind
ignore UPDATE.con
UPDATE.con(LS/IV)
ABT.ind to LLI user, LLI Fault.ind
ignore UPDATE.con
O
1: UPDATE.con(OK)
2: UPDATE.con(LR)
3: T2 expired
1,2: ignore UPDATE.con
1,2,3: ABT.ind to LLI user
2,3: LLI Fault.ind
send ABT_REQ_PDU
ignore FDL primitive
any FDL primitive
exept UPDATE.con
(no data, upd_st=LO)
Figure 110. State Diagram for Connection Establishment at the Responder