home *** CD-ROM | disk | FTP | other *** search
/ Collection of Internet / Collection of Internet.iso / protocol / standard / scsi / scsi1_do.7 / text0000.txt < prev   
Encoding:
Text File  |  1993-07-14  |  44.8 KB  |  1,060 lines

  1.  
  2.  
  3. .fo Appendix A                           #
  4. .pn 174
  5. Appendixes    (These Appendixes are not part of American National Standard 
  6.               Small Computer System Interface, X3.131.198_, but are included 
  7.               for information only.)
  8.  
  9. Appendix A
  10.  
  11. SCSI Signal Sequence Example
  12.  
  13. This appendix is included to provide an example of the timing of an SCSI 
  14. command that includes most of the SCSI bus phases (Figure A1).  In this 
  15. example, the target does not disconnect from the SCSI bus prior to completing 
  16. the command.
  17.  
  18.   The following notes apply to Figure A1:
  19.  
  20. GENERAL NOTE:
  21.  
  22.   In a typical system, the computer's host adapter acts as the "initiator" and 
  23. the peripheral device's controller acts as the "target".  In general, this 
  24. standard does not attempt to distinguish between a computer and its host 
  25. adapter.  These functions may be separate or merged.  The term "initiator" 
  26. encompasses both.  Similarly, the term "target" does not distinguish between 
  27. the peripheral device and its controller, which may be separate or merged.  
  28. The term "SCSI device" refers to a device that may be connected to the SCSI 
  29. bus.  An SCSI device may act as in the initiator role, the target role, or 
  30. both roles.
  31.  
  32. TIMING NOTES:
  33.  
  34. Bus Settle Delay.  The minimum time to wait for the SCSI bus to settle after 
  35. changing certain control signals.
  36.  
  37. Bus Free Delay.  The minimum time that an SCSI device must wait from its 
  38. detection of BUS FREE phase until it may assert BSY and its ID bit.
  39.  
  40. Bus Set Delay.  The maximum time that an SCSI device may wait to assert BSY 
  41. and its ID bit after BUS FREE phase was last detected if it intends to 
  42. participate in the ARBITRATION phase.
  43.  
  44. Bus Clear Delay.  The maximum time for an SCSI device to stop driving all 
  45. signals after BUS FREE phase is detected, after SEL is received during 
  46. ARBITRATION phase, or after RST becomes true.
  47.  
  48. Arbitration Delay.  The minimum time that an SCSI device must wait after 
  49. asserting BSY for arbitration until it may examine the DATA BUS to determine 
  50. whether it won.  There is no maximum time.
  51. .pa
  52.  
  53. .. Figure A1 goes here.
  54. .pa
  55.  
  56. DATA BUS NOTES:
  57.  
  58.   (1)  DB(7) is the most significant bit.
  59.  
  60.   (2)  DB(7) is the highest priority arbitration bit.
  61.  
  62.   (3)  DB(P) is the data parity bit (odd).  Parity is not valid during the 
  63. ARBITRATION phase.  Use of parity is a system option (i.e., a system is 
  64. configured so that all SCSI devices on a bus generate parity and have parity 
  65. detection enabled, or all SCSI devices have parity detection disabled or not 
  66. implemented).
  67.  
  68. BUS PHASE NOTES:
  69.  
  70. BUS FREE phase.  BUS FREE phase begins when SEL and BSY are both continuously 
  71. false for a bus settle delay.  It ends when SEL or BSY becomes true.
  72.  
  73. ARBITRATION phase.  Implementation of this phase is optional.  If there is 
  74. more than one initiator, then all initiators must implement this phase.  
  75. Targets that do not implement this phase cannot disconnect from the bus until 
  76. the command has completed.  SCSI devices that implement the COPY command must 
  77. implement ARBITRATION phase.
  78.  
  79.   At least one bus free delay after first detecting BUS FREE phase, but no 
  80. more than a bus set delay after the bus was last free, the initiator asserts 
  81. BSY and its assigned SCSI device ID bit on the DATA BUS.  The initiator waits 
  82. an arbitration delay, then examines the DATA BUS.  If a higher priority SCSI 
  83. device ID bit is true, the initiator loses arbitration and releases BSY and 
  84. its ID bit.  Otherwise, the initiator wins arbitration and asserts SEL.  SCSI 
  85. devices must release BSY and their ID bit within a bus clear delay after SEL 
  86. becomes true (even if they have not yet examined the DATA BUS).
  87.  
  88.   The winning SCSI device waits at least a bus clear delay plus a bus settle 
  89. delay after asserting SEL before changing any signals on the bus.
  90.  
  91. SELECTION phase.  The I/O signal is false during this phase to distinguish it 
  92. >From the RESELECTION phase.
  93.  
  94.   NON-ARBITRATING SYSTEMS:  In such systems, the initiator waits at least a 
  95. bus clear delay after detecting BUS FREE phase, then it asserts the target's 
  96. ID bit and, optionally, the initiator's ID bit on the DATA BUS.  After at 
  97. least two deskew delays, the initiator asserts SEL.
  98.  
  99.   ARBITRATING SYSTEMS:  In such systems, the SCSI device that won arbitration 
  100. has both BSY and SEL asserted.  After at least a bus clear delay plus a bus 
  101. settle delay, it places both the target's and the initiator's ID bits on the 
  102. DATA BUS.  At least two two deskew delays later, it releases BSY.
  103.  
  104.   ALL SYSTEMS:  The target determines that it is selected when SEL and its 
  105. SCSI ID bit are true and BSY and I/O are false for at least a bus settle 
  106. delay.  The target then asserts BSY within a selection abort time after it 
  107. last determined that it was still being selected.  (The target is not required 
  108. to respond to a selection within a selection abort time;  but it must insure 
  109. that it will not assert BSY more than a selection abort time after the 
  110. initiator aborts a selection attempt.)
  111.  
  112.  
  113. .fo Appendix A                         176.1
  114.   At least two deskew delays after the initiator detects BSY true, it releases 
  115. SEL and may change or release the DATA BUS.
  116.  
  117. COMMAND phase.  The target asserts C/D and negates I/O and MSG for all of the 
  118. bytes transferred during this phase.  The direction of transfer is from the 
  119. initiator to the target.
  120.  
  121.   HANDSHAKE PROCEDURE:  The target asserts REQ.  Upon detecting REQ true, the 
  122. initiator drives the DATA BUS to the desired value, waits at least one deskew 
  123. delay plus a cable skew delay and then asserts ACK.  The initiator continues 
  124. to drive the DATA BUS until REQ is false.
  125.  
  126.   When ACK is true at the target, the target reads the DATA BUS and then 
  127. negates REQ.
  128.  
  129.   When REQ becomes false at the initiator, the initiator may change or release 
  130. the DATA BUS and negate ACK.
  131.  
  132.   The target may continue to request command bytes by asserting REQ again.  
  133. The number of command bytes is determined by the group code (most significant 
  134. 3 bits) that is contained in the first command byte.
  135.  
  136. DATA IN phase.  The target asserts I/O and negates C/D and MSG for all of the 
  137. bytes transferred during this phase.  The direction of transfer is from the 
  138. target to the initiator.
  139.  
  140.   HANDSHAKE PROCEDURE:  The target first drives the DATA BUS to their desired 
  141. values, waits at least one deskew delay plus a cable skew delay, and then 
  142. asserts REQ.  The target continues to drive the DATA BUS until ACK is true.
  143.  
  144.   When REQ is true at the initiator, the initiator reads the DATA BUS and then 
  145. asserts ACK.
  146.  
  147.   When ACK is true at the target, the target may change or release the DATA 
  148. BUS and negate REQ.
  149.  
  150.   When REQ is false at the initiator, the initiator negates ACK.  After ACK is 
  151. false, the target may continue the transfer by driving the DATA BUS and 
  152. asserting REQ as described above.
  153.  
  154. DATA OUT phase (not shown in the figure).  The target negates C/D, I/O, and 
  155. MSG for all of the bytes transferred during this phase.  The direction of 
  156. transfer is from the initiator to the target.  (Refer to the handshake 
  157. procedure and the timing chart for the COMMAND phase.)
  158.  
  159. STATUS phase.  The target asserts C/D and I/O and negates MSG for the byte 
  160. transferred during this phase.  The direction of transfer is from the target 
  161. to the initiator.  (Refer to the handshake procedure and the timing chart for 
  162. the DATA IN phase.)
  163.  
  164. MESSAGE phase.  The target C/D, I/O, and MSG during the byte transferred 
  165. during this phase.  Typically, a COMMAND COMPLETE message would be sent at 
  166. this point.  The direction of transfer is from the target to the initiator.  
  167. (Refer to the handshake procedure and the timing chart for the DATA IN phase.)
  168.  
  169. BUS FREE phase.  The target returns to BUS FREE phase by releasing BSY.  Both 
  170.  
  171. the target and the initiator release all bus signals within a bus clear delay 
  172. after BSY is continuously false for a bus settle delay.
  173. .fo Appendix A                         176.2
  174. .pa
  175.  
  176. 
  177. .pn 177
  178. .fo Appendix B                           #
  179. Appendix B
  180.  
  181. Typical Bus Phase Sequence
  182.  
  183. This appendix is included to provide an example of the SCSI bus phase sequence 
  184. for a typical READ command (Tables B1 and B2).  In this example, the target 
  185. does not disconnect from the SCSI bus prior to completing the command.
  186.  
  187.                                    Table B1
  188.                      Typical READ Command Phase Sequence
  189.  
  190. ==============================================================================
  191.                                    Signals
  192.                ---------------------------------------------------------------
  193.                B  S  A  M  C  I  R  A  R    D    D
  194.                S  E  T  S  /  /  E  C  S    B    B
  195. Bus Phase      Y  L  N  G  D  O  Q  K  T  (7-0) (P)    Comment
  196. ------------------------------------------------------------------------------
  197. BUS FREE       -  -  -  -  -  -  -  -  -    -    -     SCSI bus is available. 
  198.  
  199. ARBITRATION    1  -  -  -  -  -  -  -  -    ID   X     Initiator tries to get 
  200.      "            1                                    the SCSI bus.
  201.  
  202. SELECTION      1  1  1  -  -  -  -  0  -  ID I,T V     Initiator has SCSI bus 
  203.      "         -  1                       ID I,T V     and selects a target.
  204.      "         1  1                       ID I,T V     ATN is on. 
  205.      "         1  -                         X    X
  206.  
  207. MESSAGE OUT    1  -  1  1  1  0  0  0  -    X    X     Target has control of
  208.      "               1           1  0       X    X     the bus and gets the 
  209.      "               1           1  0       X    X     IDENTIFY message from
  210.      "               1           1  1    Message V     the initiator. 
  211.      "               1           0  1       X    X
  212.      "               0           0  0       X    X
  213.  
  214. COMMAND        1  -  0  0  1  0  0  0  -    X    X     Target gets a command 
  215.      "                           1  0       X    X     from the initiator. 
  216.      "                           1  1    Command V     (This phase is repeated 
  217.      "                           0  1       X    X     for each byte.)
  218.      "                           0  0       X    X
  219. ==============================================================================
  220. .pa
  221.  
  222.                                    Table B2
  223.                Typical READ Command Phase Sequence (Continued)
  224.  
  225. ==============================================================================
  226.                                    Signals
  227.                ---------------------------------------------------------------
  228.                B  S  A  M  C  I  R  A  R    D    D
  229.                S  E  T  S  /  /  E  C  S    B    B
  230. Bus Phase      Y  L  N  G  D  O  Q  K  T  (7-0) (P)    Comment
  231. ------------------------------------------------------------------------------
  232. DATA IN        1  -  0  0  0  1  0  0  -    X    X     Target sends data to 
  233.      "                           1  0  Read Data V     the initiator.  (This
  234.      "                           1  1       X    X     phase is repeated for
  235.      "                           0  1       X    X     each byte.)
  236.      "                           0  0       X    X
  237.  
  238. STATUS         1  -  0  0  1  1  0  0  -    X    X     Target sends status to 
  239.      "                           1  0    Status  V     the initiator. 
  240.      "                           1  1       X    X
  241.      "                           0  1       X    X
  242.      "                           0  0       X    X
  243.  
  244. MESSAGE IN     1  -  0  1  1  1  0  0  -    X    X     Target sends a COMMAND 
  245.      "                           1  0    Message V     COMPLETE message to the
  246.      "                           1  1       X    X     initiator. 
  247.      "                           0  1       X    X
  248.      "                           0  0       X    X
  249.  
  250.  
  251. BUS FREE       -  -  -  -  -  -  -  -  -    -    -     SCSI bus is available. 
  252. ==============================================================================
  253.  
  254. Key:  -       =  Signal driver is passive.
  255.       0       =  Signal is false.
  256.       1       =  Signal is true.
  257.       "Blank" =  Signal state is the same as the previous line.
  258.       ID      =  SCSI ID for arbitration.
  259.       ID I,T  =  SCSI ID of initiator and target.
  260.       V       =  Parity is valid.
  261.       X       =  The signal is not guaranteed to be in a known state.
  262. .pa
  263.  
  264. 
  265. .pn 179
  266. .fo Appendix C                           #
  267. Appendix C
  268.  
  269. SCSI System Operation
  270.  
  271. This appendix is included to provide an explanation of the relationship of the 
  272. various pieces of an SCSI system.  This appendix also provides additional 
  273. information about the use of SCSI in a multi-tasking system.  Such systems 
  274. typically use a host adapter printed-circuit board to interface from the host 
  275. memory to the SCSI bus.  Although other architectures are possible (including 
  276. native or imbedded SCSI), the host adapter logic still exists as part of the 
  277. system.  The term "initiator" is used throughout this standard to encompass 
  278. all such architectures.  The term "host adapter" is used within this appendix 
  279. to refer to the logic that interfaces from the host memory to the SCSI bus.
  280.  
  281. C1. Host Memory / Host Adapter / SCSI Controller Relationship
  282.  
  283. The SCSI architecture utilizes the concept of host memory blocks for command, 
  284. data, and status interchange between the host system and the SCSI controller.  
  285. In the middle of this exchange is the SCSI host adapter, which acts as the 
  286. SCSI peripheral's gateway into host memory.  The host adapter is an important 
  287. portion of the overall intelligence of SCSI.  Along with providing an 
  288. information path from the SCSI bus to the host bus, the host adapter is 
  289. intimately involved in assuring data integrity and proper performance of the 
  290. I/O subsystem. 
  291.  
  292.   In order to fully understand SCSI operation, the concepts of I/O memory 
  293. blocks and logical threads must be detailed.  Figure C1 presents a block 
  294. diagram of a single host/single peripheral SCSI I/O subsystem.  The host 
  295. memory contains three I/O blocks:  command, data, and status.  The SCSI 
  296. controller needs to read the command block and write to the status block in 
  297. order to perform the task specified by the host (in the command block).  
  298. Likewise, the controller needs to both read and write the data block.  As was 
  299. previously mentioned, the SCSI controller "reaches into host memory" via the 
  300. SCSI host adapter.  The host adapter must know the addresses of the command, 
  301. data, and status blocks in order for it to "reach" into the right spot in 
  302. memory.  In other words, the host adapter must be given a pointer to the start 
  303. of each block by the host.  As the SCSI controller takes information from the 
  304. command block, the memory pointer for the command block advances to the 
  305. next byte.  The same is true for the data and status pointers.
  306.  
  307.   SCSI architecture provides for two sets of three pointers within the host 
  308. adapter.  The first set is known as the current (or active) pointer values.  
  309. These are the pointers to the next command, data, or status byte to be 
  310. transferred between the host memory and the SCSI controller.  There is only 
  311. one set of current pointers in the host adapter.  The current pointers are 
  312. shared amoung all devices and are used by the current device connected to the 
  313. host adapter.  The second set is known as the saved pointer values.  There is 
  314. one set of saved pointers for each supported logical thread.  For command and 
  315. status, these pointers always point to the start of the memory command block 
  316. and memory status block.  The saved data pointer points to the start of the 
  317. data block at the beginning of the SCSI command.  It remains at this value 
  318. until the controller sends a SAVE DATA POINTER message to the host adapter 
  319. which in turn saves the value of the current data pointer.  The controller may 
  320. retrieve the saved value by sending a RESTORE POINTERS message.  This moves 
  321. the saved value of each pointer into the current pointer registers.  Whenever 
  322. an SCSI device disconnects from the bus, only the saved pointer values are 
  323.  
  324. retained.  The current pointer values are set from the saved values upon the 
  325. next reconnection.  The current and saved pointers provide an efficient means 
  326. of error retry and recovery during large data exchanges on the SCSI bus.
  327.  
  328. C2. SCSI READ Command Example
  329.  
  330. One method to understanding the host/host adapter/SCSI peripheral relationship 
  331. is via an example.  Let us consider the case of a multiple sector READ command 
  332. that will cross a cylinder boundary on a direct-access device such as a disk.
  333.  
  334.   The first activity in the I/O operation is for the system to create a 
  335. command descriptor block in memory and determine where the data and status are 
  336. to be written in host memory.  The host then sends a command to the host 
  337. adapter that includes the starting address (pointer) for each of the command, 
  338. data, and status blocks and the SCSI address of the peripheral to perform the 
  339. operation.  In this example, there is only one SCSI controller and physical 
  340. disk, but its address is required in order for the host adapter to select it.
  341.  
  342.   Upon receiving the command, the host adapter arbitrates for the SCSI bus and 
  343. wins (due to the lack of competing devices) and proceeds to select the target 
  344. SCSI device with the ATN signal asserted.  The ATTENTION condition indicates 
  345. to the SCSI target that the initiator (the host adapter) has a message to send 
  346. to the target.
  347.  
  348.   After the SELECTION phase is completed, the disk controller responds to the 
  349. initiator's ATTENTION condition by receiving a message from the initiator.  
  350. This message, generated by the host adapter, indicates the desired logical 
  351. unit number in the target and whether the initiator can support bus 
  352. disconnect.  In this example, the initiator supports disconnect.
  353.  
  354.   Input/output activity from this point will be controlled entirely by the 
  355. target.  The host adapter is simply an "arm" of the target used to reach into 
  356. host memory.  Utilizing this arm, the target reads in the command descriptor 
  357. block (CDB).
  358.  
  359.   After decoding the instruction, the controller determines that a disk seek 
  360. is required to get the starting data block.  Since the SCSI bus will not be 
  361. utilized until data has been read from the disk, the target controller 
  362. disconnects from the bus.  The disconnect process includes the transmission of 
  363. a SAVE DATA POINTER message and DISCONNECT message from the target to the host 
  364. adapter.  The host adapter responds to the SAVE DATA POINTER message by saving 
  365. the current data pointer, which is still set to the start of the data block.  
  366. After transmission of the DISCONNECT message the target will release BSY, 
  367. freeing the bus.
  368.  
  369.   Although the initiator host adapter and target disk controller are 
  370. disconnected, they are logically connected or, "threaded", together.  Both 
  371. devices know they have a command to finish and will return to that job at a 
  372. later point in time.  The principle of logical threads allows many I/O 
  373. commands to execute in the system simultaneously, utilizing a single physical 
  374. bus.  The thread is actually not between the host adapter and the disk 
  375. controller, but runs all the way from the host memory I/O block to the 
  376. peripheral device performing the operation. (See Figure C2 for a pictorial 
  377. presentation of this concept.)
  378.  
  379.   Once the target has started filling its data buffers, it can transmit data 
  380.  
  381. to the initiator, but first it must reestablish the physical path.  The 
  382. reselection process involves the target arbitrating for the bus and 
  383. reselecting the host adapter.  After the physical reconnection is made, the 
  384. target sends an IDENTIFY message to the host adapter to indicate which target 
  385. logical unit is reconnecting.  This information provides reconnection, to the 
  386. correct thread into host memory.  After reconnection, the roles of the 
  387. initiator and target are just as they were prior to disconnect.  The target 
  388. transfers data into host memory via the host adapter.  The data transfer 
  389. continues until the disk reaches the end of its cylinder and the disk 
  390. controller determines that a second physical seek is required to complete the 
  391. READ command.  The target again performs a SAVE DATA POINTER message and a 
  392. DISCONNECT message.  However, this time the current data pointer is not at the 
  393. beginning of the memory data block.  The saved value at disconnect reflects 
  394. the change.
  395.  
  396.   After seek completion and transfer of data into its buffer, the controller 
  397. reconnects to the host adapter and completes the data transfer as requested by 
  398. the READ command.  At this point, the controller sends ending status into host 
  399. memory via the host adapter.  The final action of the target is to send to the 
  400. host adapter a COMMAND COMPLETE message and disconnect from the SCSI bus.  The 
  401. target has completed its operation and considers the logical thread broken.
  402.  
  403.   Upon receipt of the COMMAND COMPLETE message, the host adapter signals the 
  404. host that the I/O command is complete.  This signal can be an interrupt or the 
  405. setting of a flag read by the host in a polled I/O environment.  This action 
  406. by the host adapter breaks the thread between the host adapter and the I/O 
  407. memory blocks of the host.  The host reviews the status of the operation in 
  408. the status block and proceeds to utilize the data transferred into the data 
  409. block.
  410.  
  411. C3. I/O Channel Concept
  412.  
  413. The I/O channel concept fully utilizes the high performance capability of 
  414. SCSI.  The I/O channel is basically an intelligent SCSI host adapter that can 
  415. maintain multiple simultaneous threads between host memory I/O blocks and 
  416. different SCSI devices. 
  417.  
  418.   The I/O channel utilizes a single direct memory access (DMA) path into host 
  419. memory supporting the DMA operations of numerous SCSI peripherals.  Since the 
  420. SCSI bus is a single physical bus and most host computers have a single 
  421. physical backplane bus, multiple DMA channels into memory are not necessary.  
  422. In many implementations of a multiple DMA channel architecture, when a channel 
  423. is accessing memory, all other channels are idle.  In such implementations, a 
  424. single channel supporting multiple threads can supply the same performance as 
  425. separate DMA peripherals.  An obvious advantage to the host is lower system 
  426. cost as well as the saving in backplane card slots.
  427.  
  428.   In the READ command example discussed in Section C2, the I/O channel is the 
  429. SCSI host adapter.  The host gives the I/O channel a command by providing it 
  430. with pointers to the I/O memory blocks and the SCSI peripheral address.  This 
  431. establishes a thread between the host adapter and the host I/O memory blocks.  
  432. The I/O channel then opens a subchannel that is assigned the task of managing 
  433. the physical link and logical thread between the host adapter and the target 
  434. controller.  All physical connections and reconnections to the host adapter 
  435. are managed by this subchannel.  The number of active or open subchannels an 
  436. I/O channel can support is totally dependent upon its design.  The SCSI 
  437.  
  438. definition could, in theory, support an I/O channel with up to 56 subchannels 
  439. (14,336 subchannels, if the EXTENDED IDENTIFY message is implemented).
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.  
  473.  
  474.  
  475.  
  476.  
  477.  
  478.  
  479.  
  480.  
  481.  
  482.  
  483.  
  484.  
  485.  
  486.  
  487.  
  488.  
  489.  
  490.  
  491.  
  492.  
  493.                 Figure C1. Snapshot Prior to Initial Selection
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539.  
  540.  
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.  
  550.                   Figure C2. Snapshot Prior to Data Transfer
  551.  
  552. 
  553. .pn 184
  554. .fo Appendix D                           #
  555. Appendix D  
  556.  
  557. Recommended Shielded Connectors
  558.  
  559.  
  560. Three alternative shielded connector systems are defined by this appendix.  
  561. For each alternative, the connector shielding system shall provide a dc 
  562. resistance of less than 10milliohms from the cable shield at its termination 
  563. point to the SCSI device enclosure.
  564.  
  565.   In order to support daisy-chain connections, SCSI devices that use shielded 
  566. connectors should provide two shielded device connectors on the device 
  567. enclosure.  These two connectors may be wired "one-to-one" with a stub to the 
  568. SCSI device's drivers and receivers provided the maximum stub length is not 
  569. violated.  Alternatively, two cables may be run from the two shielded 
  570. connectors to the drivers and receivers so that the maximum stub length is not 
  571. violated.  The length of the cable within the device enclosure is included 
  572. when calculating the total cable length of the SCSI bus.
  573.  
  574.   D1 Shielded Connector, Alternative 1.  The shielded cable connector 
  575. (Figure D1) shall be a 50-conductor connector consisting of two rows of 25 
  576. female contacts with adjacent contacts 2.54 mm (0.1 in) apart.  The nonmating 
  577. portion of the connector is shown for reference only.
  578.  
  579.   The shielded SCSI device connector (Figure D2) shall be a 50-conductor 
  580. connector consisting of two rows of 25 male pins with adjacent pins 2.54 mm 
  581. (0.1 in) apart.  The nonmating portion of the connector is shown for reference 
  582. only.
  583.  
  584.   The connector pin assignments shall be as shown in Table 4-1 for single-
  585. ended drivers and as shown in Table 4-2 for differential drivers.
  586.  
  587.   D2 Shielded Connector, Alternative 2.  The shielded device connector 
  588. (Figure D3) shall be a 50-conductor connector consisting of two rows of ribbon 
  589. contacts spaced 2.16 mm (0.085 in) apart.  The nonmating portion of the 
  590. connector is shown for reference only.  FCC document Part 68 Subpart F 68.500 
  591. should be used for reference.
  592.  
  593.   The shielded cable connector (Figure D4) shall be a 50-conductor connector 
  594. consisting of two rows of ribbon contacts spaced 2.16 mm (0.085 in) apart. The 
  595. nonmating portion of the connector is shown for reference only.
  596.  
  597.   The connector pin assignments shall be as shown in Table D1 for single-ended 
  598. drivers and as shown in Table D2 for differential drivers.
  599.  
  600.   D3 EUROCARD Boxes  For boards in EUROCARD boxes (IEC 297 or DIN 41494) the 
  601. EMI-screen may be in the front of the boards and in this case a screened cable 
  602. and connector may be attached through the front panel to the board connector 
  603. specified in section 4.3.  It is thereby possible to use the flat ribbon cable 
  604. specified in this standard or the shielded cable, as required by users.
  605. .pa
  606.  
  607.  
  608.  
  609.  
  610.  
  611.  
  612.  
  613.  
  614.  
  615.  
  616.  
  617.  
  618.  
  619.  
  620.  
  621.  
  622.  
  623.  
  624.  
  625.  
  626.  
  627.  
  628.  
  629.  
  630.  
  631.  
  632.  
  633.  
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.        Figure D1a. Female Shielded SCSI Cable Connector, Alternative 1
  661. .pa
  662.  
  663. ==============================================================================
  664. Dimensions    Millimeters              Inches              
  665. ------------------------------------------------------------------------------
  666.    A1         60.96 + 0.15             2.400 + 0.006       
  667.    A2         66.29 + 0.18             2.610 + 0.007
  668.    A3          2.54 + 0.15             0.100 + 0.006
  669.    A4          2.54 + 0.15             0.100 + 0.006
  670.    A5          8.56 + 0.41             0.337 + 0.016       
  671.    A6         11.93 Minimum            0.470 Minimum       
  672.    A7         65.02 + 0.18             2.560 + 0.007
  673.    A8          5.46                    0.215               
  674.    A9          4.14 + 0.25             0.163 + 0.010       
  675.    A10        60.20 Maximum            2.370 Maximum       
  676.    A11         6.60                    0.260               
  677.    A12         1.27 Maximum            0.050 Maximum       
  678.    A13         0.64 Maximum            0.025 Maximum       
  679.    A14         6.604 + 0.25, - 0.13    0.260 + 0.010, - 0.005
  680.    A15        13.46                    
  681. .fo Appendix E                           #
  682. Appendix E
  683.  
  684. Conformance
  685.  
  686. This appendix contains recommendations on conformance statements to this 
  687. standard.
  688.  
  689. E1.  Alternatives
  690.  
  691. This standard contains various alternatives that are mutually exclusive within 
  692. a system.
  693.  
  694.   (1)  Single-ended or differential drivers.
  695.   (2)  Termination power supplied by the cable or not.
  696.   (3)  Parity implemented or not.
  697.   (4)  "Hard" RESET or "soft" RESET.
  698.   (5)  Reservation queuing implemented or not.
  699.  
  700. E2.  Levels of Conformance
  701.  
  702.   By specifying which alternatives (listed above) are implemented, an 
  703. environment is created enabling different features to be implemented.  These 
  704. features are divided into three nested minimum levels as shown in Table E1.
  705.  
  706.                                    Table E1
  707.                             Levels of Conformance
  708.  
  709. ==============================================================================
  710. Level        Initiator                           Target
  711. ------------------------------------------------------------------------------
  712.   0     Accept COMMAND COMPLETE        Implement the mandatory commands   
  713.         message.                       of section 7.                      
  714.                                                                           
  715.         Accept GOOD and CHECK          Implement the mandatory commands   
  716.         CONDITION status codes.        of the supported device type(s).   
  717.                                                                           
  718.                                        Implement the COMMAND COMPLETE     
  719.                                        message.                           
  720.                                                                           
  721.                                        If messages other than COMMAND     
  722.                                        COMPLETE are implemented, then     
  723.                                        implement MESSAGE REJECT message   
  724.                                        also.                              
  725.                                                                           
  726.                                        Implement GOOD and CHECK CONDITION 
  727.                                        statuses.                          
  728. ------------------------------------------------------------------------------
  729.   1     Same as above plus             Same as above.
  730.         ARBITRATION phase.
  731. ------------------------------------------------------------------------------
  732.   2     Same as above plus             Same as above plus implement the
  733.         accept DISCONNECT,             MESSAGE REJECT and IDENTIFY messages
  734.         MESSAGE REJECT,                and implement all extended commands
  735.         IDENTIFY, and SAVE             in section 7 and for the supported
  736.         DATA POINTER messages          device type(s).
  737. ==============================================================================
  738.  
  739. E3.  Options
  740.  
  741. E3.1  Optional Commands.  This standard specifies a number of additional 
  742. commands that can be implemented in each level.  Some of these commands, if 
  743. implemented, require the implementation of other optional commands, messages, 
  744. or both.  In this case, these additional commands, messages, or both shall 
  745. also be implemented.
  746.  
  747. E3.2  Optional Messages.  This standard specifies a number of additional 
  748. optional messages that may be implemented at any level.
  749.  
  750. E3.3  Other options.  Within some commands, additional features, called 
  751. "options", are described.  These options need not necessarily be implemented.
  752.  
  753. E4.  Statement of Conformance
  754.  
  755. Any statement of conformance to this standard should declare which of the 
  756. alternates listed in section E1 and which of the three conformance levels are 
  757. implemented.  In addition, it should indicate which of the options listed in 
  758. section E3 are implemented, if any.  In the case of optional messages, the 
  759. conformance statement should state whether the message is generated, accepted, 
  760. or both.
  761.  
  762.   If the synchronous data transfer option is implemented, any statement of 
  763. conformance should so indicate and state both the maximum REQ/ACK offset and 
  764. the minimum transfer period implemented.
  765. .pa
  766.  
  767. 
  768. .pn 195
  769. .fo Appendix F                           #
  770. Appendix F
  771.  
  772. Additional Medium Type and Density Code Standards
  773.  
  774. In sections 8 and 9 of this standard, the MODE SELECT and MODE SENSE commands 
  775. define medium type codes and density codes for certain flexible disks and 
  776. magnetic tapes.  ANSI standards or X3 draft documents are referenced for code 
  777. values if a standard or draft document exists for that code value.  In many 
  778. cases, other standards also exist for a code value.  Tables F1 and F2 in this 
  779. appendix provide references to those standards for these code values.
  780.  
  781. DISCLAIMER:  It is not the purpose of this appendix to indicate that these 
  782. standards are exactly equivalent to each other.  However, these standards may 
  783. be applicable.  Please refer to sections 8 and 9 for additional information 
  784. concerning the medium type or density code.
  785.  
  786.  
  787.                                  Table F1
  788.                        Direct-access Medium Type Codes
  789.  
  790. ==============================================================================
  791. Code Value                       Medium Type
  792. ----------  ------------------------------------------------------------------
  793.  00H-02H    See section 8.
  794.                    
  795.             Flexible Disk Reference Standard(s)
  796.             ------------------------------------------------------------------
  797.    05H      X3.73-1980,  ECMA-54,  ISO 5654/1-1984, ISO 5654/2-1982
  798.    06H      X3B8-140,    ECMA-59
  799.    09H      X3B8/78-139
  800.    0AH      X3.121-1984, ECMA-69,  ISO 7065/1-1985, ISO 7065/2-1985
  801.    0DH      X3.82-1980,  ECMA-66,  ISO 6596/1-1985, ISO 6596/2-1985
  802.    12H      X3.125-1984, ECMA-70,  ISO 7487/1-1985, ISO 7487/2-1985,
  803.                                    ISO 7487/3-1985
  804.    16H      X3.126-198X, ECMA-78,  DIS 8378/1,      DIS 8378/2,     DIS 8378/3
  805.    1AH      X3B8/85-199, ECMA-99,  DIS 8630/1,      DIS 8630/2
  806.    1EH      X3.137-198X, ECMA-100, DIS 8860/1,      DIS 8860/2
  807.  
  808.             Direct-access Magnetic Tape Standard(s)
  809.             ------------------------------------------------------------------
  810.    40H      X3B5/85-138 (Note 1),  ECMA TC19/83/39
  811.    44H      X3B5/85-138 (Note 1),  ECMA TC19/83/39
  812.  
  813. 80H _ FFH   Vendor unique
  814. All others  Reserved
  815. ==============================================================================
  816. NOTE:
  817.   (1)  The referenced standard is for unrecorded miniature cartridge media.  
  818. The usage referred to here is for serial GCR recording using a format known as 
  819. QIC-100.  Since X3B5 issues a new document number for each revision of their 
  820. working draft document, please contact the Chairman of X3B5 for the latest 
  821. document number.
  822. .pa
  823.  
  824.                                  Table F2
  825.                        Sequential-access Density Codes
  826.  
  827. ==============================================================================
  828. Code Value                             Density
  829. ----------  ------------------------------------------------------------------
  830.    00H      See section 9.
  831.  
  832.             Magnetic Tape Reference Standard(s)
  833.             ------------------------------------------------------------------
  834.    01H      X3.22-1983,                 ECMA-62
  835.    02H      X3.39-1973                  ECMA-62
  836.    03H      X3.54-1976,                 ECMA-62
  837.    04H      Old format known as QIC-11
  838.    05H      X3.136-198X,                ECMA-98
  839.    06H      X3B5/85-98 (Note 1)
  840.    07H      X3.116-198X,                ECMA-79
  841.    08H      X3B5/85-77 (Note 1)
  842.    09H      X3B5/85-76 (Note 1)
  843.    0AH
  844.    0BH      X3.55, X3.56-198X,          ECMA-46, ISO 4057-1979
  845.  
  846. 80H _ FFH   Vendor unique
  847. All others  Reserved
  848. ==============================================================================
  849. NOTES:
  850.   (1)  Working Draft.  X3B5 assigns a new document number to each revision of 
  851. their documents.  Please contact the Chairman of X3B5 for the latest document 
  852. number.
  853. .pa
  854.  
  855. 
  856. .fo Appendix G                           #
  857. Appendix G
  858.  
  859. Future Standardization
  860.  
  861. This appendix is included to provide insight into some possible future 
  862. extensions to SCSI that are being considered by X3T9.2.  Although X3T9.2 has 
  863. addressed some of these extensions, many details remain to be resolved.  
  864. Further work by X3T9.2 may result in changes or additions to these extensions.  
  865. Please contact the Chairman of X3T9.2 for the current status of this activity.
  866.  
  867.   Six new commands are being considered, three for targets that support 
  868. caching, one to provide a means to read the medium defect data, and two to 
  869. provide a standardized method for writing and reading the target's data buffer 
  870. (principally intended to support start-of-day tests that insure data path 
  871. integrity).  The tentative operation codes are as follows:
  872.  
  873. ==============================================================================
  874. Operation
  875.   Code      Type   Command Name             Device Types
  876. ------------------------------------------------------------------------------
  877.    34H       O     PRE-FETCH                \  Direct Access, Write-Once
  878.    35H       O     FLUSH CACHE               > Read-Multiple, and
  879.    36H       O     LOCK/UNLOCK CACHE        /  Read-Only Direct Access
  880.    37H       O     READ DEFECT DATA         Direct Access
  881.    3BH       O     WRITE BUFFER             All
  882.    3CH       O     READ BUFFER              All
  883. ------------------------------------------------------------------------------
  884.  
  885.  
  886.   New parameters are being considered in several of the existing commands:
  887.  
  888.   (1) Cache control bits are being considered for bits 3 and 4 of byte 1 in 
  889. several group 1 commands, including READ, WRITE, WRITE AND VERIFY, and VERIFY.
  890.  
  891.   (2) Byte 1 of the Defect List in the FORMAT UNIT command may be used to 
  892. provide additional defect management control.
  893.  
  894.   (3) Bits 0 _ 3 of byte 3 of the Inquiry Data in the INQUIRY command may be 
  895. used to identify that the device supports certain additions to the standard.  
  896. One such addition that is being considered is optional fields within the 
  897. Inquiry Data to identify the manufacturer and the product model information.
  898.  
  899.   (4) Extensions to the MODE SELECT and MODE SENSE commands are being 
  900. considered to provide a standard means to control certain target parameters.  
  901. Bits 0 _ 5 of byte 2 of the MODE SENSE command are being considered for use in 
  902. controlling which target parameters are returned by this command.
  903. .pa
  904.  
  905. 
  906. William E. Burr (Chairman)
  907. John B. Lohmeyer (Vice Chairman)
  908.  
  909. Ezra R. Alcudia                    Keith Amundsen  Alt
  910. J. L. Amstutz                      Karen Anneberg  
  911. Bob Bender                         Charles Brill 
  912. John Blagaila                      Larry Boucher 
  913. Tom Briggs                         Paul Clement  
  914. David T. Cornaby                   George E. Clark 
  915. David F. Craft, Jr.                Steve Cooper  
  916. Jay Cunningham                     Gary Crowell  
  917. Willard S. Davidson                Jon Ericson  
  918. Terry Dawson                       Tom Fiers 
  919. Phil Devin                         Stephen Fitzgerald  
  920. Louis C. Domshy                    Marty Francis  
  921. Norm Dornseif                      William Homans  
  922. Alan Ebright                       J. V. Howell  
  923. Anita  Freeman                     Skip Kilsdonk 
  924. Abe Gindi                          Jim Korpi 
  925. William A. Horton                  Lawrence J. Lamers  
  926. Frank Krulc                        Keith Mueller 
  927. Patrick E. Lannan                  Don Nanneman  
  928. Daniel Loski                       Doug Nolff  
  929. William C. Mavity                  Richard Reiser  
  930. Gene Milligan                      William H. Roberts  
  931. Bob Mortensen                      Floyd E. Ross 
  932. Gary S. Robinson                   D. Michael Robinson 
  933. Don Rodgers                        Jay Seashore  
  934. Arnold J. Roccati                  Chuck Spatafore 
  935. Jack Schiffhauer                   Jeff Stai 
  936. Ralph H. Schultz                   Paul Stavish  
  937. Moshe Segal
  938. Delbert L. Shoemaker 
  939. Tim Slaton 
  940. Robert N. Snively
  941. Adrienne Turenne 
  942. Norm Zimmerman 
  943. Ron Tranquilli 
  944. Bob Bender                         G. Atterbury 
  945. John Blagaila                      Charles Brill  
  946. Fred Ciechowski                    William E. Burr  
  947. George Clark                       Roger Cormier  
  948. Stephen W. Cooper                  Hank Dorris  
  949. Louis C. Domshy                    Thomas A. Fiers  
  950. Robert Dugan                       Henry Ginter 
  951. Ross H. Jaibaji                    William J. McClain 
  952. Patrick Lannan                     William Mosenthal, Jr. 
  953. Gene Milligan                      Kirk Moulton 
  954. Tom Morrow
  955. Mike Newton
  956. Gary S. Robinson
  957. Arnold John Roccati
  958. Floyd E. Ross
  959. Holly S. White
  960. SCSI secretariat target initiator synchronous asynchronous lsb msb 
  961. millimeter meter millimeters meters inch inches eia rs bsy sel msg req ack atn 
  962.  
  963. rst db arbitration skew deskew assertion selection reselection 
  964. parity 
  965. 0A 0B 0C 0D 0E 0F
  966. 1A 1B 1C 1D 1E 1F
  967. 2A 2B 2C 2D 2E 2F
  968. 3A 3B 3C 3D 3E 3F
  969. 4A 4B 4C 4D 4E 4F
  970. 5A 5B 5C 5D 5E 5F
  971. 6A 6B 6C 6D 6E 6F
  972. 7A 7B 7C 7D 7E 7F
  973. 8A 8B 8C 8D 8E 8F
  974. 9A 9B 9C 9D 9E 9F
  975. A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF
  976. B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE BF
  977. C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF
  978. D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE DF
  979. E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE EF
  980. F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF
  981. FFFFFFFF
  982. reladr filemark filemarks 
  983. eom ili peripheral peripherals optical priority priorities 
  984. descriptor descriptors selftest devofl unitofl bytchk reassign medium 
  985. diagnostic configuring standard standards standardization
  986. mandatory extended optional vendor unique reserve reserved reservation
  987. term defect ascending sector track cylinder address addresses 
  988. appendix appendixes 3rdpty id extent segment exclusive access shared
  989. conflict conflicts logical unit sense select mode allocation
  990. density densities flexible disk magnetic parameter byte bit bytes bits
  991. immed immediate prevent prevention condition conditions status statuses es
  992. capacity substantial pmi
  993. recover recovered recoverable unrecovered unrecoverable 
  994. seek verify verification search 
  995. invert record spndat transfer equal equality inequality
  996. offset displacement terminate pattern length field fields
  997. specify specifies specifying
  998. rdinh wrinh inhibit boundary subsequent beginning load point limit limits
  999. residue operate operating operation
  1000. bytcmp miscompare buffer buffered bpi non inverted nrzi pe phase encoded gcr
  1001. recording group cartridge qic ansc ansi differential ended committee x3 x3t9
  1002. x3t9.2 subcommittee interfaces task conjunction characteristics characteristic
  1003. generators receivers receiver driver drivers balanced digital multipoint 
  1004. systems systems available electronic industries industry association eye 
  1005. street nw washington erase erased erases software hardware re-ten font slew 
  1006. channel flush retain check checks checking ebc wp crc ecc etc blkvfy
  1007. verified intermediate met tasking multi thread threaded reach reaches adapter 
  1008. host subchannel subchannels 
  1009. ns xx awg cdb dma emc esd ncr rmb xxx mil mils ohms abort daisy diode 
  1010. fonts octal octet queue queues queued queuing reset retry tries two's amoung 
  1011. append cmplst elects glitch polled ported pulses resend rewind rezero shroud 
  1012. subset subsets unit's update aborted advalid assists briefly buffers copying 
  1013. deleted detects disable ensure ensures extents fmtdata generic 
  1014. nonzero obtains options simular sourced termpwr timeout totally updates 
  1015. wichita accessed actively backflow diskette entirely equaling executes 
  1016. foreword imbedded mainline nonblank normally pointer pointers
  1017. connect connection connections interconnection interconnections connector 
  1018. connectors 
  1019.  
  1020. decoding device's diffsens disables reselect restores retrieve retrying 
  1021. snapshot target's undriven unsigned verifies accessing adversely backplane 
  1022. circuitry correctly executing impedance initially interlock logically 
  1023. lowercase megabytes milliohms nonlinked nonmating overflows precludes 
  1024. qualifier reconnect removable reselects resending submittal subscript 
  1025. subsystem suppliers tensioned trade offs typically unchanged unprinted 
  1026. unwritten uppercase adequately arbitrates configured contending disconnect 
  1027. exhaustive explicitly handshakes hysteresis identifier impedances initiators 
  1028. interleave internally intimately mismatches moderately nanosecond nongeneric 
  1029. optionally previously reassigned reconnects referenced reselected separately 
  1030. sequential terminator tolerances truncation unshielded addressable 
  1031. arbitrating disconnects effectively encompasses enumeration hexadecimal 
  1032. identically implementor initiator's integrators malfunction microsecond 
  1033. millisecond nanoseconds nonextended nonshielded permissible positioning 
  1034. reselecting terminators uncompleted unprocessed unsatisfied unspecified 
  1035. unsupported additionally collectively continuously determinable electrically 
  1036. implementors intentionally interrogated malfunctions milliseconds 
  1037. nonrecovered peripheral's programmable reconnecting reconnection 
  1038. reselectable subsequently successfully successively transferring 
  1039. architectures compatibility disconnecting disconnection effectiveness 
  1040. inadvertently misconnection noncumulative reconnections reestablish 
  1041. reestablished semiconductor nonarbitrating nonrecoverable unsuccessfully 
  1042. discontinuities electromagnetic implementations
  1043. mm od ol th IDs LSI LUN renegotiate renegotiation 
  1044. negate negates negated negating negation 
  1045. volt volts millivolt millivolts
  1046. amp amps milliamp milliamps
  1047. providing 
  1048. SASI VLSI dpANS backup Harvey Rosenfeld highly widely Adaptec Fujitsu Shugart 
  1049. adapters Adaptive megabyte Bernoulli floodtide unbounded physically processors 
  1050. subsystems intersymbol dramatically multibillion technologies alternatively 
  1051. comparatively formalization clarifications 
  1052. CPI discard nonfatal undefined incorrectly gaithersburg
  1053. CS MC DIS MFM CPMM ECMA IMFM radian cassette serially unrecorded
  1054. BSR FCC PRE cache caching subpart retension superceded superceding 
  1055. principally parenthetical
  1056. TC PN DIN EMI FRC IEC ISO BPMM FTPI FTPMM aborts redrew legible Amphenol 
  1057. EUROCARD mutually alternates computer's disclaimer necessarily
  1058. 
  1059.  
  1060.