This message is from the T13 list server.
Sent to both T13 and T10 - Hale. On Wed, 12 Feb 2003 15:37:38 -0700, Pat LaVarre wrote: >This message is from the T13 list server. Hale said: >> The "host" and device shall understand what the >> command means and both shall have the same >> expectations for any "data stream" transferred by >> that command on the physical interface. Pat replied: >Maybe they shall, but in fact, commonly, they don't. But no I/O works unless the host and device agree. When they don't agree you have a major data integrity or I/O interface protocol problem to deal with. For example, when a host constructs a data stream for a write command the host shall understand the length of that data stream and the contents of that data stream. When the device receives that write command it shall have the same understanding of that command's data stream. If not, then what happens? Some, but not all, of the host data is sent to the device? Some of the data is ignored by the device? The device expects more data than the host is able to provide (resulting in a hung ATA/ATAPI device - device waiting for more data)? There is only one solution that works: The host and device have the exact same understanding of the command and the command's data stream. For example, when a host contructs a read command the host probably has a good idea of the maximum length data stream it will receive and it probably has a good idea what valid data stream contents are (especially for SCSI command like INQUIRY, MODE SENSE, REQUEST SENSE). I used "probably" because some read commands are allowed to transfer a variable amount of data. When the device receives that read command it will construct a data stream to send to the host. There are several valid things that could happen: the device may send no data, the device may send some data, the device may send the maximum amount of data. There is a problem if the device wants to send more data than the host wants (again, resulting in a hung ATA/ATAPI device - device waiting for the host to accept the remaining data). So again, there is only one solution that works: the host and device have the exact same understanding of the command and the command's data stream. Hale *** Hale Landis *** www.ata-atapi.com ***
