SCC rev 5 Peripheral device addressing

Binford, Charles cbinford at ppdpost.ks.symbios.com
Tue Jul 18 13:04:00 PDT 1995


     To: SCSI Reflector
   From: Charles.Binford at Symbios.com
Subject: SCC rev 5 Peripheral device addressing


At the Private Loop Profile meeting in Colorado Springs, July 10, I pushed 
for the group to agree on the format of the 8 byte LUN field in FCP we would 
use for multi-LUN drives.  Currently FC drives are single LUN devices and 8 
bytes of zeros is pretty easy.  Multi-LUN drives are on the way, however, 
and mapping 3 to 5 bits into 64 bits leaves a lot of room vendor specific 
implementation.  My suggestion, which was accepted without much discussion, 
was we put the LUN number into byte 1 of the 8 bytes.  This would be using 
level 1 of the 4 level addressing model of SCC and use the Peripheral Device 
Addressing method as described in rev 4.

      =================================================
      |  7  |  6  |  5  |  4  |  3  |  2  |  1  |  0  |
      =================================================
B0    | Add method|               Bus Number          |
      -------------------------------------------------
B1    |                Target / LUN                   |
      -------------------------------------------------


The rule *was* if Bus Number is zero, then Byte 1 (B1) is the LUN at the 
current level.  If Bus Number is 1-63, then Byte 1 is the Target id the 
command is to be forwarded to on the given bus (implying at least a 2 level 
system).  The SCSI disk which happened to have multiple LUNs could follow 
this model and easily fit within the rules.

The wording in Rev 5 of SCC has changed in this area.  I assume the change 
is a result of my public review comments on SCC rev 4 requesting a method of 
specifying a non-zero LUN on a drive/device attached behind an array 
controller.  Rev 5 no longer has the distinction of Bus Number == 0 means 
LUN at current level, Bus Number > 0, pass command to target at next level. 
 Rev 5 simply says byte 1 is the target under the Peripheral Device 
Addressing method.

      =================================================
      |  7  |  6  |  5  |  4  |  3  |  2  |  1  |  0  |
      =================================================
B0    | Add method|               Bus Number          |
      -------------------------------------------------
B1    |                Target                         |
      -------------------------------------------------

The new addressing method defined to address my public review comment, 
Logical unit addressing, satisfies my comment fine, but is does not handle 
the case I'm worrying about now of a single, multi-LUN drive.  While the 
Private Loop Profile could continue putting the LUN into byte 1 of the 8 
byte FCP LUN field without any regard to SCC, I would like to see SCC Rev 5 
changed so the interpretation of the 8 byte LUN would be the same whether or 
not the device was an SCC device, or a multi-LUN disk.

I am suggesting the following:
 - Keep the new Logical unit addressing method
 - Change the definition of use the Peripheral Device Addressing method back 
to what was in Rev 4 of SCC.

Also, I looked at Annex C in Rev 12 of FCP to see what it said concerning 
this.  What I found was FCP referencing SCC, and then giving an example 
based upon Rev 4 of SCC.  Even if the above suggestion is taken (SCC 
Peripheral Device Addressing method is changed back to Rev 4 definition) the 
FCP annex should have the new Logical unit addressing method described.


Thanks, Charles Binford




More information about the T10 mailing list