Thread Links Date Links
Thread Prev Thread Next Thread Index Date Prev Date Next Date Index

[802.3_10SPE] WG: [802.3_10SPE] re-send of clarifications on 148-4



Hi Pier,

 

agreeing with your explanation below, I think we also need to move the “start commit_timer” from the “WAIT_MAC” state up to the “PENDING” state for the same reason.

 

Thanks.

 

Regards,

 

Steffen

 



e-news abonnieren YouTube: Pepperl+Fuchs auf YouTube @PepperlFuchsDE folgen Pepperl+Fuchs auf XING Pepperl+Fuchs auf LinkedIn


Pepperl+Fuchs GmbH

Denken Sie bitte an die Umwelt und prüfen Sie, ob diese E-Mail wirklich ausgedruckt werden muss.

SocialMedia2014


Pepperl+Fuchs AG, Mannheim
Vorstände/Board members: Dr.-Ing. Gunther Kegel (Vors.), Werner Guthier (stellv. Vors.), Mehmet Hatiboglu
Vorsitzender des Aufsichtsrats/Chairman of the supervisory board: Michael Fuchs sen.
Registergericht/Register Court: AG Mannheim HRB 733897 ∙ UST-ID Nr. DE 143877372

Von: Piergiorgio Beruto [mailto:piergiorgio.beruto@xxxxxxxxxxxxxx]
Gesendet: Mittwoch, 4. September 2019 00:54
An: STDS-802-3-10SPE@xxxxxxxxxxxxxxxxx
Betreff: [802.3_10SPE] re-send of clarifications on 148-4

 

Hello 802.3cg,

 

I am submitting a change to Figure 148-4, to fix a minor bug.  The fix may look strange, because of how 802.3 state diagrams operate, so I would like to explain it here.

- The issue relates to the timer in the DELAY_PENDING state in Figure 148-4.

- In Figure 148-4 the DELAY_PENDING state is supposed to make the state diagram wait for a specified amount of time (pending_timer).

- In the meantime the TXD and TX_ER signals need to be refreshed as soon as the tx_cmd_sync variable is updated, thus the need of the “ELSE” recirculating arc.

- However, the recirculating arc also causes the “start pending_timer” statement to be re-executed, which according to the timers semantic, results in the timer to be reset.

- This is obviously not the intended behavior as resetting the timer forever would result in a deadlock (no way out of DELAY_PENDING state).

 

The solution is to move the “start pending_timer” statement from the DELAY_PENDING state to the COLLIDE state.

Because the COLLIDE state has a similar “ELSE” recirculating arc, the pending_timer will only be released from reset upon exit from COLLIDE on the (first) entry to DELAY_PENDING, properly starting the timer.

 

I realize that after this fix, a reader which either does not read the diagram carefully or who’s not used to the state diagram language, may fall into the trap of believing the timer has to be started when entering the COLLIDE state, but this is not the case. I hope this e-mail helps clarifying this.

 

Note: this mail is a re-send of a previous one that yesterday for some reason the reflector didn't bounce.

 

Kind Regards,

Piergiorgio

 


To unsubscribe from the STDS-802-3-10SPE list, click the following link: https://listserv.ieee.org/cgi-bin/wa?SUBED1=STDS-802-3-10SPE&A=1


Wichtiger Hinweis:
Diese E-Mail einschliesslich ihrer Anhaenge enthaelt vertrauliche und rechtlich geschuetzte Informationen, die nur fuer den Adressaten bestimmt sind. Sollten Sie nicht der bezeichnete Adressat sein, so teilen Sie dies bitte dem Absender umgehend mit und loeschen Sie diese Nachricht und ihre Anhaenge. Die unbefugte Weitergabe, das Anfertigen von Kopien und jede Veraenderung der E-Mail ist untersagt. Der Absender haftet nicht fuer die Inhalte von veraenderten E-Mails.

Important Information:
This e-mail message including its attachments contains confidential and legally protected information solely intended for the addressee. If you are not the intended addressee of this message, please contact the addresser immediately and delete this message including its attachments. The unauthorized dissemination, copying and change of this e-mail are strictly forbidden. The addresser shall not be liable for the content of such changed e-mails.


To unsubscribe from the STDS-802-3-10SPE list, click the following link: https://listserv.ieee.org/cgi-bin/wa?SUBED1=STDS-802-3-10SPE&A=1