Page 576
PROFIBUS-Specification-Normative-Parts-6:1997
Copyright by PNO 1997 - all rights reserved
Description of State Transitions for DTA Acknowledge
DTA Acknowledge
Current State Transition Next State
Event
\Exit Condition
=> Action Taken
DTA-WAIT-FOR-REQ-PDU DTA 1 DTA-H-WAIT-FOR-BUFFER-FREE
DTA Ack. started (CSRD.con(L_status = DH)/
SRD.ind(serv_class = high)/SRD.con(DH)/
SDA.ind(serv_class = high))
\(M-M OR M-S) AND CREF state = OPEN
=> DTA.ind to LLI user
DTA-WAIT-FOR-REQ-PDU DTA 2 DTA-L-WAIT-FOR-BUFFER-FREE
DTA Ack. started (CSRD.con(L_status = DL)/
SRD.ind(serv_class = low)/SRD.con(DL)/
SDA.ind(serv_class = low))
\(M-M OR M-S) AND CREF state = OPEN
=> DTA.ind to LLI user
DTA-WAIT-FOR-REQ-PDU DTA 12 DTA-WAIT-FOR-REQ-PDU
DTA Ack. started (CSRD.con(L_status = DH)/
SDA.ind(serv_class = high))
\(M-M OR M-S) AND CREF state # OPEN
=> no action
DTA-WAIT-FOR-REQ-PDU DTA 13 DTA-H-WAIT-FOR-BUFFER-FREE
continue DTA-Ack.
\(M-M OR M-S with SI)
=> DTA.ind to LLI user
DTA-H-WAIT-FOR-BUFFER-FREE DTA 3 DTA-H-SEND-ACK
free memory available
\(M-M OR ((acyc. M-S) AND Master)) AND ACI > 0
=> send DTA_ACK_PDU (SDA.req(high)/SRD.req(high))
start Stimer
DTA-H-WAIT-FOR-BUFFER-FREE DTA 16 DTA-H-SEND-ACK
free memory available
\(M-M OR ((acyc. M-S) AND Master)) AND ACI = 0
=> send DTA_ACK_PDU (SDA.req(high)/SRD.req(high))
DTA-H-WAIT-FOR-BUFFER-FREE DTA 19 DTA-H-SEND-ACK
free memory available
\cyc. M-S and MASTER
=> send DTA_ACK_PDU (SRD.req(high))
DTA-H-WAIT-FOR-BUFFER-FREE DTA 4 DTA-H-REPLY-UPDATE
free memory available
\acyc. M-S AND Slave AND ACI > 0
=> send DTA_ACK_PDU (UPDATE.req(high))
start Stimer
DTA-H-WAIT-FOR-BUFFER-FREE DTA 17 DTA-H-REPLY-UPDATE
free memory available
\acyc. M-S AND Slave AND ACI = 0
=> send DTA_ACK_PDU (UPDATE.req(high))