X3T9.2/88-009 REV 1 3 March 88 TO: John Lohmeyer, Chairman X3T9.2 Dal Allan, Vice-Chairman X3T9.2 FROM: Dexter Anderson, Mike Eneboe SMS SUBJECT: TARGET MESSAGE RESPONSE CLARIFICATION This is the first revision to the Message Handling Clarification memorandum that was submitted at the San Jose working group meeting. On Monday, February 22, the following people met to discuss this issue again, Bill Spence, Dave Skinner, Jim McGrath, Dave McIntyre, Paul Boulay, Gene Milligan, John Lohmeyer, Dal Allan and Dennis Appleyard. This proposal is based on the results of that meeting. The problem is the current message structure does not limit the length or content of the messages the Initiator can send in the Message Out phase as long as ATN is true. For example paragraph 5.1.10.2 MESSAGE OUT Phase says "The target shall handshake byte(s) in this phase until ATN goes false, unless an error occurs (See MESSAGE REJECT, 5.5.2).". This does not specify what the target should do if it receives a message such as SYNCHRONOUS DATA TRANSFER REQUEST but leaves ATN true. The proposed solution is to specify when the initiator must negate ATN when in the MESSAGE OUT Phase. The proposal is: Paragraph 5.1.10.2 MESSAGE OUT PHASE Replace "The target shall handshake byte(s) in this phase until ATN goes false, unless an error occurs (See MESSAGE REJECT, 5.5.2)." with "The target shall handshake byte(s) in this phase until ATN goes false except when rejecting a message." Paragraph 5.2.1 ATTENTION Condition (This is just clean up) Move the following words in paragraph "1." to paragraph "4.": "but before the target asserts the REQ for any following MESSAGE IN byte. This permits a MESSAGE PARITY ERROR message from the initiator to be associated with the appropriate message byte." Add these paragraphs: "After the target sends a MESSAGE REJECT message it shall switch to the MESSAGE OUT phase again,if ATN is still asserted." "The initiator must negate ATN before asserting ACK when transferring the last byte of the following messages: BUS DEVICE RESET, MESSAGE PARITY ERROR, ABORT, MESSAGE REJECT, DISCONNECT, and any message that requires negotiation, ie: SDTR and WIDE DATA TRANSFER REQUEST." Paragraph 5.5.2 Messages Remove the words ", regardless of the state of ATN." from ABORT, and BUS DEVICE RESET. (This just clean up.) Remove the repeated paragraphs from the description of the IDENTIFY message. "Only one logical unit..." "When sent from a target..." Paragraph 5.5.5 SYNCHRONOUS DATA TRANSFER REQUEST Message (Optional) Remove the paragraph "If a sequence of messages is received by a target without parity error during continuous assertion of ATN, and if the sequence comprises a responding SDTR message followed by an ABORT message, the SDTR message shall be executed prior to executing the ABORT message. If a target receives the ABORT message prior to receiving the responding SDTR message, both devices shall go to asynchronous data transfer mode for data transfers between the two devices." NOTE: I am not sure if there is some meaning to this paragraph that I am not aware of in which case it may need to be rewritten instead of removed. What does an ABORT do to a previously agreed upon synchronous transfer request?