[comp.periphs.scsi] SCSI vs. SCSI II

dhuber@aut.autelca.ascom.ch (Daniel Huber) (04/01/91)

What's the difference between SCSI and SCSI II ?

Is it only the higher speed?

Daniel

-- 
Daniel Huber AD-KT2.6   VOICE: +41 31 52 96 64 FAX: +41 31 52 97 51
Ascom Autelca AG        Network Engineer, Network,Mail and News Manager
CH-3073 Guemligen       EMAIL:  dhuber@autelca.ascom.ch
Switzerland             UUCP:   uunet!chx400!hslrswi!aut!dhuber

neese@adaptx1.UUCP (04/05/91)

>/* ---------- "SCSI vs. SCSI II" ---------- */
>What's the difference between SCSI and SCSI II ?
>
>Is it only the higher speed?

SCSI-1 did not define commands for device types such as CD-ROM, Mag-Opt,
Printer, Communications, Processor, nor tape very well.

So SCSI-2 does and SCSI-3 will do it better.

There is no perfromance to be gained with SCSI-2, unless the device supports
the optional FAST SCSI-2 spec.  And even then, there may be no performance
to be gained as anything that can negotiate for speeds less than 200ns
is to be considered FAST SCSI-2.  So if a device negotiates for 190ns
periods, it is considered FAST SCSI-2 even though it is only running at
5.2MB/sec instead of 5.0MB/sec.  Thene there is the real issue,..........
sustained data rates.  Something you normally find out *after* you buy
the device.  It is usually not specified in the device flyers and for most
manufacturers, it is quite wise.  As a matter of fact, the only drive 
manufacturer I know that actually states the sustained data rate, is Imprimis
and only on the Elite series.  They have a right to brag about it as they
claim a sustained rate of 4MB/sec.  Probably the fastest SCSI drive around.
I should have one in my hands in a few days and will make further comment
on it if this proves to be false.

			Roy Neese
			Adaptec Senior SCSI Applications Engineer
			UUCP @  neese@adaptex
				uunet!cs.utexas.edu!utacfd!merch!adaptex!neese

kc@hprnd.rose.hp.com (Kurt Chan) (04/07/91)

    > What's the difference between SCSI and SCSI II ?

Happy reading,

Kurt Chan
Hewlett-Packard
Roseville Networks Division

------------------------------------------------------------------------------

                          SCSI-1_versus_SCSI-2

In 1985, when the first SCSI standard was being finalized as an American
National Standard, the X3T9.2 Task Group was approached by a group of
manufacturers.  The group wanted to increase the mandatory requirements of
SCSI and to define further features for direct-access devices.  Rather than
delay the SCSI standard, X3T9.2 formed an ad hoc group to develop a working
paper that was eventually called the Common Command Set (CCS).  Many products
were designed to this working paper.

In parallel with the development of the CCS working paper, X3T9.2 sought
permission to begin working on an enhanced SCSI standard, to be called SCSI-2.
SCSI-2 would include the results of the CCS working paper, caching commands,
performance enhancement features, and whatever else X3T9.2 deemed worthwhile.
While SCSI-2 was to go beyond the original SCSI standard (now referred to as
SCSI-1), it was to retain a high degree of compatibility with SCSI-1 devices.

How is SCSI-2 different from SCSI-1?

1.  Several options were removed from SCSI-1:

   a.  Single initiator option was removed.

   b.  Non-arbitrating Systems option was removed.

   c.  Non-extended sense data option was removed.

   d.  Reservation queuing option was removed.

   e.  The read-only device command set was replaced by the CD-ROM command
       set.

   f.  The alternative 1 shielded connector was dropped.


2.  There are several new low-level requirements in SCSI-2:

   a.  Parity must be implemented.

   b.  Initiators must provide TERMPWR -- Targets may provide TERMPWR.

   c.  The arbitration delay was extended to 2.4 us from 2.2 us.

   d.  Message support is now required.


3.  Many options significantly enhancing SCSI were added:

   a.  Wide SCSI (up to 32 bits wide using a second cable)

   b.  Fast SCSI (synchronous data transfers of up to 10 Mega-transfers per
       second -- up to 40 MegaBytes per second when combined with wide SCSI)

   c.  Command queuing (up to 256 commands per initiator on each logical unit)

   d.  High-density connector alternatives were added for both shielded and 
       non- shielded connectors.

   e.  Improved termination for single-ended buses (Alternative 2)

   f.  Asynchronous event notification

   g.  Extended contingent allegiance

   h.  Terminate I/O Process messaging for time- critical process termination


4.  New command sets were added to SCSI-2 including:

   a.  CD-ROM (replaces read-only devices)

   b.  Scanner devices

   c.  Optical memory devices (provides for write-once, read-only, and
       erasable media)

   d.  Medium changer devices

   e.  Communications devices


5.  All command sets were enhanced:

   a.  Device Models were added

   b.  Extended sense was expanded to add:

       + Additional sense codes
       + Additional sense code qualifiers
       + Field replaceable unit code
       + Sense key specific bytes

   c.  INQUIRY DATA was expanded to add:

       + An implemented options byte
       + Vendor identification field
       + Product identification field
       + Product revision level field
       + Vital product data (more extensive product reporting)

   d.  The MODE SELECT and MODE SENSE commands were paged for all device types

   e.  The following commands were added for all device types:

       + CHANGE DEFINITION
       + LOG SELECT
       + LOG SENSE
       + READ BUFFER
       + WRITE BUFFER

   f.  The COPY command definition was expanded to include information on how
       to handle inexact block sizes and to include an image copy option.

   g.  The direct-access device command set was enhanced as follows:

       + The FORMAT UNIT command provides more control over defect management
       + Cache management was added:

          - LOCK/UNLOCK CACHE command
          - PREFETCH command
          - SYNCHRONIZE CACHE command
          - Force unit access bit
          - Disable page out bit

       + Several new commands were added:

          - READ DEFECT DATA
          - READ LONG
          - WRITE LONG
          - WRITE SAME

       + The sequential-access device command set was enhanced as follows:

          - Partitioned media concept was added:

            * LOCATE command
            * READ POSITION command

          - Several mode pages were added
          - Buffered mode 2 was added
          - An immediate bit was added to the WRITE FILEMARKS command

       + The printer device command set was enhanced as follows:

          - Several mode pages defined:

            * Disconnect/reconnect
            * Parallel printer
            * Serial printer
            * Printer options

       + The write-once (optical) device command set was enhanced by:

          - Several new commands were added:

            * MEDIUM SCAN
            * READ UPDATED BLOCK
            * UPDATE BLOCK

          - Twelve-byte command descriptor blocks were defined for several
            commands to accommodate larger transfer lengths.

=============================================================================

The following article was written by Dal Allan of ENDL in April 1990.  It 
was published nine months later in the January 1991 issue of "Computer 
Technology Review".  While it appeared in the Tape Storage Technology 
Section of CTR, the article is general in nature and tape-specific.  In 
spite of the less than timely publication, most of the information is still 
valid.

It is reprinted here with the permission of the author.  If you copy this 
article, please include this notice giving "Computer Technology Review" 
credit for first publication.

------------------------------------------------------------------------------
                            What's New in SCSI-2

Scuzzy is the pronunciation and SCSI (Small Computer System Interface) is 
the acronym, for the best known and most widely used ANSI (American National 
Standards Institute) interface. 

Despite use of the term "Small" in its name, everyone has to agree that 
Scuzzy is large - in use, in market impact, in influence, and unfortunately, 
in documentation. The standards effort that began with a 20-page 
specification in 1980 has grown to a 600 page extravaganza of technical 
information. 

Even before ANSI (American National Standards Institute) published the first 
run of SCSI as standards document in 1986, ASC (Accredited Standards 
Committee) X3T9.2 was hard at work on SCSI-2. 

No technical rationale can be offered as to why SCSI-1 ended and SCSI-2 
began, or as to why SCSI-2 ended and SCSI-3 began. The justification is much 
more simple - you have to stop sometime and get a standard printed. Popular 
interfaces never stop evolving, adapting, and expanding to meet more uses 
than originally envisaged. 

Interfaces even live far beyond their technological lifespan. SMD (Storage 
Module Drive) has been called technically obsolete for 5 years but every 
year there are more megabytes shipped on the SMD interface than the year 
before. This will probably continue for another year or so before the high 
point is reached, and it will at least a decade before SMD is considered to 
be insignificant. 

If SCSI enhancements are cut off at an arbitrary point, what initiates the 
decision? Impatience is as good an answer as any. The committee and the 
market get sick of promises that the revision process will "end soon," and 
assert pressure to "do it now."

The SCSI-3 effort is actively under way right now, and the workload of the 
committee seems to be no less than it was a year ago. What is pleasant, is 
that the political pressures have eased. 

There is a major difference between the standards for SCSI in 1986 and SCSI-
2 in 1990. The stated goal of compatibility between manufacturers had not 
been achieved in SCSI in 1986 due to a proliferation of undocumented 
"features." 

Each implementation was different enough that new software drivers had to be 
written for each device. OEMs defined variations in hardware that required 
custom development programs and unique microcode. Out of this diversity 
arose a cry for commonality that turned into CCS (Common Command Set), and 
became so popular that it took on an identity of its own. 

CCS defined the data structures of Mode Select and Mode Sense commands, 
defect management on the Format command and error recovery procedures. CCS 
succeeded because the goals were limited, the objectives clear and the time 
was right. 

CCS was the beginning of SCSI-2, but it was only for disks. Tape and optical 
disks suffered from diversity, and so it was that the first working group 
efforts on SCSI-2 were focused on tapes and optical disks. However, opening 
up a new standards effort is like lifting the lid on Pandora's Box - its 
hard to stay focused on a single task. SCSI-2 went far beyond extending and 
consolidating CCS for multiple device types. 

SCSI-2 represents three years of creative thought by some of the best minds 
in the business. Many of the new features will be useful only in advanced 
systems; a few will find their way into the average user's system. Some may 
never appear in any useful form and will atrophy, as did some original SCSI 
features like Extended Identify.

Before beginning coverage of "what's new in SCSI-2," it might be well to 
list some of the things that aren't new. The silicon chips designed for SCSI 
are still usable. No new features were introduced which obsolete chips. The 
cause of silicon obsolescence has been rapid market shifts in integrating 
functions to provide higher performance. 

Similarly, initiators which were designed properly, according to SCSI in 
1986, will successfully support SCSI-2 peripherals. However, it should be 
pointed out that not all the initiators sold over the last few years behaved 
according to the standard, and they can be "blown away "by SCSI-2 targets. 

The 1986 standard allows either initiators or targets to begin negotiation 
for synchronous transfers, and requires that both initiators and targets 
properly handle the sequence. A surprisingly large percentage of SCSI 
initiators will fail if the target begins negotiation. This has not been as 
much of a problem to date as it will become in the future, and you know as 
well as I do, that these non-compliant initiators are going to blame the 
SCSI-2 targets for being "incompatible." 

Quirks in the 1986 standard, like 4 bytes being transferred on Request 
Sense, even if the requested length was zero have been corrected in SCSI-2. 
Initiators which relied on this quirk instead of requesting 4 bytes will get 
into trouble with a SCSI-2 target. 

A sincere effort has been made to ensure that a 1986-compliant initiator 
does not fail or have problems with a SCSI-2 target. If problems occur, look 
for a non-compliant initiator before you blame the SCSI-2 standard. 

After that little lecture, let us turn to the features you will find in 
SCSI-2 which include: 

 o Wide SCSI: SCSI may now transfer data at bus widths of 16 and 32 bits. 
Commands, status, messages and arbitration are still 8 bits, and the B-Cable 
has 68 pins for data bits. Cabling was a confusing issue in the closing days 
of SCSI-2, because the first project of SCSI-3 was the definition of a 16-
bit wide P-Cable which supported 16-bit arbitration as well as 16-bit data 
transfers. Although SCSI-2 does not contain a definition of the P-Cable, it 
is quite possible that within the year, the P-Cable will be most popular 
non-SCSI-2 feature on SCSI-2 products. The market responds to what it wants, 
not the the arbitrary cutoffs of standards committees.

 o Fast SCSI: A 10 MHz transfer rate for SCSI came out of a joint effort 
with the IPI (Intelligent Peripheral Interface) committee in ASC X3T9.3. 
Fast SCSI achieves 10 Megabytes/second on the A-Cable and with wider data 
paths of 16- and 32-bits can rise to 20 Megabytes/second and even 40 
Megabytes/second. However, by the time the market starts demanding 40 
Megabytes/second it is likely that the effort to serialize the physical 
interface for SCSI-3 will attract high-performance SCSI users to the Fiber 
Channel. 

A word of caution. At this time the fast parameters cannot be met by the 
Single Ended electrical class, and is only suitable for Differential. One of 
the goals in SCSI-3 is to identify the improvements needed to achieve 10 MHz 
operation with Single Ended components.

 o Termination: The Single Ended electrical class depends on very tight 
termination tolerances, but the passive 132 ohm termination defined in 1986 
is mismatched with the cable impedance (typically below 100 ohms). Although 
not a problem at low speeds when only a few devices are connected, 
reflections can cause errors when transfer rates increase and/or more 
devices are added. In SCSI-2, an active terminator has been defined which 
lowers termination to 110 ohms and is a major boost to system integrity.

 o Bus Arbitration, Parity and the Identify Message were options of SCSI, 
but are required in SCSI-2. All but the earliest and most primitive SCSI 
implementations had these features anyway, so SCSI-2 only legitimizes the de 
facto market choices. The Identify message has been enhanced to allow the 
target to execute processes, so that commands can be issued to the target 
and not just the LUNs. 

 o Connectors: The tab and receptacle microconnectors chosen for SCSi-2 are 
available from several sources. A smaller connector was seen as essential 
for the shrinking form factor of disk drives and other peripherals. This 
selection was one of the most argued over and contentious decisions made 
during SCSI-2 development. 

 o Rotational Position Locking: A rose by any other name, this feature 
defines synchronized spindles, so than an initiator can manage disk targets 
which have their spindles locked in a known relative position to each other. 
Synchronized disks do not all have to be at Index, they can be set to an 
offset in time relative to the master drive. By arraying banks of 
synchronized disks, faster transfer rates can be achieved. 

 o Contingent Allegiance: This existed in SCSI-1, even though it was not 
defined, and is required to prevent the corruption of error sense data. 
Targets in the Contingent Allegiance state reject all commands from other 
initiators until the error status is cleared by the initiator that received 
the Check Condition when the error occurred. 

Deferred errors were a problem in the original SCSI but were not described. 
A deferred error occurs in buffered systems when the target advises Good 
Status when it accepts written data into a buffer. Some time later, if 
anything goes wrong when the buffer contents are being written to the media, 
you have a deferred error. 

 o Extended Contingent Allegiance (ECA): This extends the utility of the 
Contingent Allegiance state for an indefinite period during which the 
initiator that received the error can perform advanced recovery algorithms. 

 o Asynchronous Event Notification (AEN): This function compensates for a 
deficiency in the original SCSI which did not permit a target to advise the 
initiator of asynchronous events such as a cartridge being loaded into a 
tape drive. 

 o Mandatory Messages: The list of mandated messages has grown: 

  +----------------------+--------------------------+-------------------+
  |       Both           |       Target             |     Initiator     |
  +----------------------+--------------------------+-------------------|
  | Identify             | Abort                    | Disconnect        |
  |                      |                          |                   |
  | Message Reject       | No Operation             | Restore Pointer   |
  |                      |                          |                   |
  | Message Parity Error | Bus Device Reset         | Save Data Pointer |
  |                      |                          |                   |
  |                      | Initiator Detected Error |                   |
  +----------------------+--------------------------+-------------------+

 o Optional messages have been added to negotiate wide transfers and Tags to 
support command queueing. A last-minute inclusion in SCSI-2 was the ability 
to Terminate I/O and receive the residue information in Check Condition 
status (so that only the incomplete part of the command need be re-started 
by the initiator).

 o Command Queueing: In SCSI-1, initiators were limited to one command per 
LUN e.g. a disk drive. Now up to 256 commands can be outstanding to one LUN. 
The target is allowed to re-sequence the order of command execution to 
optimize seek motions. Queued commands require Tag messages which follow the 
Identify. 

 o Disk Cacheing: Two control bits are used in the CDB (Command Descriptor 
Block) to control whether the cache is accessed on a Read or Write command, 
and some commands have been added to control pre-fetching and locking of 
data into the cache. Users do not have to change their software to take 
advantage of cacheing, however, as the Mode Select/Mode Sense Cache page 
allows parameters to be set which optimize the algorithms used in the target 
to maximize cache performance. Here is another area in which improvements 
have already been proposed in SCSI-3, and will turn up in SCSI-2 products 
shipping later this year. 

 o Sense Keys and Sense Codes have been formalized and extended. A subscript 
byte to the Sense Code has been added to provide specifics on the type of 
error being reported. Although of little value to error recovery, the 
additional information about error causes is useful to the engineer who has 
to analyze failures in the field, and can be used by host systems as input 
to prognostic analysis to anticipate fault conditions. 

 o Commands: Many old commands have been reworked and several new commands 
have been added. 

 o Pages: Some method had to be found to pass parameters between host and 
target, and the technique used is known as pages. The concept was introduced 
in CCS and has been expanded mightily in SCSI-2. 

A number of new Common Commands have been added, and the opcode space for 
10-byte CDBs has been doubled. 

 o Change Definition allows a SCSI-2 initiator to instruct a SCSI-2 target 
to stop executing according to the 1986 standard, and provide advanced SCSI-
2 features. Most SCSI-2 targets will power on and operate according to the 
1986 standard (so that there is no risk of "disturbing" the installed 
initiators, and will only begin operating in SCSI-2 mode, offering access to 
the advanced SCSI-2 capabilities, after being instructed to do so by the 
initiator using the Change Definition command.

 o The Mode Select and Mode Sense pages which describe parameters for 
operation have been greatly expanded, from practically nothing in 1986 to 
hundreds of items in SCSI-2. Whenever you hear of something being described 
as powerful and flexible tool, think complicated. Integrators are advised to 
be judicious in their selection of the pages they decide to support. 

 o the Inquiry command now provides all sorts of interesting data about the 
target and its LUNs. Some of this is fixed by the standard, but the main 
benefit may be in the Vendor Unique data segregated into the special 
designation of Vital Product Data, which can be used by integrators as a 
tool to manage the system environment.

 o Select Log and Sense Log have been added so that the initiator can gather 
both historical (e.g. all Check Conditions) and statistical (e.g. number of 
soft errors requiring ECC) data from the target. 

 o Diagnostic capabilities have been extended on the Read/Write Buffer and 
Read/Write Long commands. The ways in which the target can manage bad blocks 
in the user data space have been defined further and regulated to reduce 
inconsistencies in the 1986 standard. A companion capability to Read Defect 
Data permits the initiator to use a standard method to be advised of drive 
defect lists. 

 o A new group of 12-byte command blocks has been defined for all optical 
devices to support the large volume sizes and potentially large transfer 
lengths. The Erase command has been added for rewritable optical disks so 
that areas on the media can be pre-erased for subsequent recording. Write 
Once disks need Media Scan, so that the user can find blank areas on the 
media. 

 o New command sets have been added for Scanners, Medium Changers, and CD 
ROMs. 

All of this technical detail can get boring, so how about some "goodies" in 
SCSI-2 which benefit the common man and help the struggling engineer? First, 
and probably the best feature in SCSI-2 is that the document has been 
alphabetized. No longer do you have to embark on a hunt for the Read command 
because you cannot remember the opcode. 

In the 1986 standard, everything was in numeric sequence, and the only 
engineers who could find things easily were the microprogrammers who had 
memorized all the message and opcode tables. Now, ordinary people can find 
the Read command because it is in alphabetic sequence. This reorganization 
may sound like a small matter but it wasn't, it required a considerable 
amount of effort on the part of the SCSI-2 editors. It was well worth it. 

Another boon is the introduction for each device class of models which 
describe the device class characteristics. The tape model was the most 
needed, because various tape devices use the same acronym but with different 
meanings or different acronyms for the same meaning. 

The SCSI-2 tape model defines the terms used by SCSI-2, and how they 
correspond to the acronyms of the different tapes. For example, on a 9-track 
reel, End of Tape is a warning, and there is sufficient media beyond the 
reflective spot to record more data and a trailer. Not so on a 1/4" tape 
cartridge, End of Tape means out of media and no more data can be written. 
This sort of difference in terms causes nightmares for standardization 
efforts. 

So there it is, a summary of what is in SCSI-2. Its not scary, although it 
is daunting to imagine plowing through a 600-page document. Time for a 
commercial here. The "SCSI Bench Reference" available from ENDL Publications 
(408-867-6642), is a compaction of the standard. It takes the 10% of SCSI-2 
which is constantly referenced by any implementor, and puts it in an easy-
to-use reference format in a small handbook. The author is Jeff Stai, one of 
the earliest engineers to become involved with SCSI implementation, and a 
significant contributor to the development of both the 1986 standard and 
SCSI-2. 

SCSI-2 is not yet published as a standard, but it will be available later 
this year. Until then, the latest revision can be purchased from Global 
Engineering (800-854-7179).

Biography

Consultant and analyst I. Dal Allan is the founder of ENDL and publisher of 
the ENDL Letter and the "SCSI Bench Reference." A pioneer and activist in 
the development and use of standard interfaces, he is Vice Chairman of ASC 
X3T9.2 (SCSI) and Chairman of the SCSI-2 Common Access Method Committee. 

=============================================================================

                                     document  X3T9.2/90-003 R2
  TO: X3T9.2 Committee (SCSI)

FROM: Gerry Houlder (Seagate)

SUBJECT: SCSI-1 and CCS Implementation on SCSI-2 Target

While trying to decide what SCSI-2 features had to be deleted 
from a SCSI-2 target when its "operating definition" is changed 
to SCSI-1, I realized that the SCSI-1 wording "A reserved bit, 
byte, or field shall be set to zero or in accordance with a 
future extension to this standard" allows any SCSI-2 feature to 
legally be present in a SCSI-1 implementation.  We need to choose 
"de facto" definitions of CCS and SCSI-1.

The following table attempts to list the features that may cause 
compatibility problems and proposes which operating definitions 
(SCSI-1, CCS, SCSI-2) the feature is allowed (Y) or not allowed 
(N) to be implemented in.  If such a list can be agreed upon by 
the committee, perhaps it can be included in the SCSI-2 standard 
in an appendix or an implementors note in the CHANGE DEFINITION 
command.

Rev. 1: The table has been reduced to only those features which 
have to change to avoid compatibility problems, per discussions 
at Jan. 9-10 Working Group Meeting.  

             FEATURE                         SCSI1  CCS  SCSI2

   Single Bit Selection                        Y     Y     Y#
   Selection without ATN                       Y     Y     Y#

   Target initiated SDTR, WDTR messages        N     N     Y

   Asynchronous Event Notification             N     N     Y
   EXTENDED CONTINGENT ALLEGIANCE Condition    N     N     Y

   INQUIRY Command
      - EVPD bit (VITAL PRODUCT DATA)          N     N     Y
      - VPD PAGE CODE                          N     N     Y
      - Feature supported bits:                N     N     Y
        AENC, TRMIOP, RELADR, WBUS32, WBUS16,
        SYNC, LINKED, CMDQUE, SFTRES
      - ANSI VERSION Field                     1     1     2
      - RESPONSE DATA FORMAT Field             0     1     2

   REQUEST SENSE Command
    - Return 4 bytes if LENGTH = 0             Y     Y     N
    - Return 0 bytes if LENGTH = 0             N     N     Y

Y# means that SCSI-2 doesn't say what the target should do but 
says initiators shouldn't use these selection modes.  Since 
target response isn't defined in SCSI-2, I believe the target 
must act as defined in SCSI-1.  This is better than being 
"creative" and defining some new response.