burr@nbsvms (BURR, WILLIAM) (07/11/85)
Folks around here who follow info-micro have recently given me copies of netmail with questions and answers on various interface standards, some with incorrect or at least incomplete information. I am chairman of X3T9.2, the SCSI committee and vice-chairman of its parent committee X3T9. I am pretty much aware of everything going on in what is called, somewhat improperly, "ANSI" interface standards activity, as opposed to IEEE activities, which I try to track but do not participate in. In general, the IEEE does backplane bus standards and X3T9 ("ANSI") does peripheral device interface standards. At any rate what follows is my attempt to set the record straight on some of the things I've seen discussed. First X3.80-1981, the Flexible Disk interface standard is more or less current, and the only problems with it at the moment involve the new 1.6 Mbyte 5.25" drives, some of which use one or two lines a little differently than other 5.25" drives. X3T9.3 is considering what to do about the new drives. The other two published ANSI interface standards are X3.91-1982 for Storage Module Interfaces, which is being revised to accommodate the new SMD drives which transfer at rates above 9.67 MHz, and X3.101-1984, "Interface Between Rigid Disk Drive(s) and Host(s)," sometimes advertised as the "ANSI" interface (I do not recommend its use on the pragmatic grounds that it hasn't much cought on). All of these are device level interfaces, rather like ST506 or ST412, for which there is, regrettably, no published standard. All can be ordered from ANSI, 1430 Broadway, New York, NY 10018. There are a large number of interface standards under development at the moment in various X3T9 Task Groups including: Intelligent Peripheral Interface (IPI) - This addresses large, high performance disk and tape drives, cpmes in several (too many) flavors, and is really an updated version of the IBM I/O channel, getting more than twice the transfer rate through half as many wires. Products are not yet available, but it's pretty clear that they will be. Fiber Distributed Data Interface (FDDI) - This is a 100 Mbit/s fiber ring, smilar to IEEE 802.5, but ever so much faster. Support for it is very broad and it looks like it will be possible to accommodate both data communications and telephony on it gracefully. Expect products in about 3 years. Local Distributed Data Interface (LDDI) -This has now become a formalization of a DEC interface, the CI, a 70 Mbit/s passive star broadcast network with a 45 m radius. It is what makes a VAXCLUSTER work. There are something over 2000 of them now installed. The real issue here is will DEC throw in MSCP and SCS, the higher level protocols used by the network, and particularly file servers? Device Level interface for Straeming Cartridge and Cassette Tape Drives - This is an 8-bit parallel interface for up to 4 small streaming tape drives. I believe that it is loosely decended frome something called QIC-02. Small Computer System Interface (SCSI) - This is an 8-bit parallel bus for attaching small computers to intelligent storage peripherals (ie peripherals with built-in controllers) and each other. The ANSI standard will be X3.131 and will probably be published in 1986. Most of what follows is about SCSI. There is no entirely clear distinction between SASI and SCSI. The SCSI or Small Computer Systems Interface is derived from the SASI or Shugart Associates System Interface. When we set out to do an ANSI standard based upon the SASI the first thing we did was change the name, for obvious reasons. It did not occur to any of us, who debated the choice of names for an afternoon, that SCSI would be pronounced SCUZZY. When several months later someone noticed this, the marketing types were horrified, but by then we were stuck with the name and it doesn't seem to have hurt. I digress. The point is that there is no specific, clear distinction between the two, and the choice of names is a marketing decision. In many cases, however, manufacturers do try to distinguish between those products which implement only the most basic functions, or which do not conform to the proposed standard at all, calling them SASI, and those which implement more functionality, calling them SCSI. In general, though the very earliest SASI documents apparently included arbitration, people frequently use the term SASI to denote a peripheral or host adaptor which does not do arbitration, and in some cases may not be able to coexist on the same bus with devices which do arbitrate. There are, I'm told, some SASI devices which don't coexist with much of anything else, which is OK I suppose, as long as you use the bus as a dedicated point-to-point connection. This undoubtedly is the case in many SASI applications. Any device which calls itself SCSI may or may not be capable of arbitration and disconnecting during long latencies, but at least should co-exist on the bus with other bus devices which do arbitrate, disconnect and reconnect. SCSI host adaptors also may or may not implement arbitration, and, if not, should not be used in multihost buses. The logic for this (other than to do otherwise would antagonize vendors with existing products) is simply that many, perhaps most, applications of SCSI involve a single host adaptor and only one or two peripheral devices. There is no reason to arbitrate, disconnect and reconnect in such systems, and some cost (small with VLSI) to doing so. With the apperance of commercial LSI SCSI interface chips, such as the 5380 and 5385, the cost of arbitration, etc. is nearly nothing and I expect that before much longer most SCSI products will do arbitration. While there are a number of SCSI options involving the bus (single-ended vs differential, parity, arbitration, etc.) which can confound plug and play interchangability of peripherals, I believe that the LSI parts will soon relieve many of these problems and whether a product arguably meets the letter of the standard or not, it will be perceived as incompatable if bus level incompatabilities exist with the 5380 or 5385 and other forthcoming variants. The real problem is command sets. The standard is more a "catalog" of commands and options, than a real standard. The probability that a BIOS level driver written for one SCSI disk drive will work with another drive from another vendor is not high, even though the host adaptor and all the drives use the same SCSI interface chip. Except for emulating host adaptors (ie those which pretend to the host system to be some native peripheral) it will almost always be possible to write a driver which runs the new device, but most of us don't want to write a new driver every time we buy a new peripheral. This doesn't deter some OEM's very much, who make their living integrating devices, host adaptors, controllers and the like, but it does reduce the utility of the interface for end users. It also is a problem for system houses who want to use drives from a number of suppliers, and who may not wish to maintain a different driver for each drive model they might use. There are INQUIRY commands which, in principle, allow a driver to find out what the drive does or doesn't do, but their use is spotty and I'm not aware of any broadly selfadapting driver software. The promise is there but it is as yet largely unrealized. The standard also reserves a lot of "Vendor Unique" code points, and the use of these can really confound drivers. The FORMAT command is a particular problem, because there are so many variations on how drives are formatted. Well this is not an entirely accaptable situation. End users don't have too much direct leverage in standards committees (even when they are, as I am, the chairman), because the drive and controller makers, who really initiate the standards, don't much sell to end users. The system houses do, however, and they want second sources. Drive and controller vendors then find that they have to be compatable with others, or its hard to sell the product, a fact which is often overlooked in the rush to get there first with a product. System houses don't make interface commitments until long after drive and controller houses, and the first thing they discover is all the incompatabilities. Then they finally show up in the standards meetings to complain. They're finally showing up in some force, and the drive vendors are starting to realize that a higher degree of compatability is a real market advantage. There are two really good things about the SCSI community: (1) with the exception of Big Blue, practically everybody who is anybody in the US, Japan and Europe is now using or planning to use SCSI in their small computer products, and many are joining the committee, and (2) the SCSI committee (X3T9.2) has been and is a surprisingly accommodating group, with more cooperation and give and take than I've seen elsewhere in similar efforts. We now have an intensive if informal effort under way to define a "common command subset" for disk devices. Hopefully this will be resolved before our August meeting; we hope to forward our draft standard (for the second time) for further processing by X3 as a draft proposed American National Standard by our October meeting, and to publish the first version of the ANSI standard in 1986. We won't be done then, however. People are already jumping out of the woodworks with proposals for up to 64 devices, a 16-bit transfer path, and new device types, such as network gateways, optical scanners and so on. We really need to get something published, however, because the demand for copies can hardly be met by the informal distribution of drafts, and literally hundreds of companies are now building products to those drafts, often many revisions out of date. I would be interested in reports on the ease or difficulty of integrating various SCSI products in small computer systems. I cannot, however, provide comments on the quality of various products, nor, usually, upon who makes what, because it would violate NBS policy (we don't intend to become a competitor to Consumer's Reports). The current draft is Revision 15 and Revision 16 is on the way. The big difference will be the inclusion of a second, shielded connector, called a miniature ribbon, or sometimes a "Centronics" type connector. We hope Rev. 16 will be the draft that ANSI publishes. You can order a copy of Rev. 15 from: X3 Secretariat CBEMA 311 first Street, N. W. Suite 500 Washington, D. C. 20006 Just ask for "SCSI," not X3.131, which is still officially Rev. 14B. Anyone working to any revision earlier than 13 should definately get a new copy. The price is $20. I will try to answer interface standards questions sent to me. Please be patient, I travel a lot, and may therfore not log on for weeks at a time. My address is BURR@NBS-VMS-VGR.ARPA. ------