Primitives
All primitives are four characters in length. They begin with the control character K28.5, followed by three data characters. In some primitives the three data characters are fixed, in others they can be varied to change the meaning or to act as parameters for the primitive. In some cases the last two parameter characters are identical.
Parameters are shown in the table below in the form of their hexadecimal 8-bit values. This is clearer than their full 10-bit (Dxx.x) form as shown in the Fibre Channel standards:
Mnemonic | Meaning | Parameters | Comments |
ARB |
Arbitrate |
94F0F0 | Request fairness |
94FFFF | Fill word | ||
94yyyy | Request arbitration for AL_PA=yy | ||
CLS | Close | 85B5B5 | Ends communication, cancelling previous OPN commands. |
DHD | Dynamic Half-Duplex | 8AB5B5 | |
EOF | End of frame | See note 1 | |
IDLE | Idle | 95B5B5 | |
LIP |
Loop Initialization |
15F7F7 | Request AL_PA |
15F7xx | Reinitialise AL_PA=xx | ||
15F8F7 | Loop failure at unknown AL_PA | ||
15F8xx | Loop failure at AL_PA=xx | ||
15FFxx | Reset all, originating AL_PA=xx | ||
15yyxx | Reset AL_PA=yy, originating AL_PA=xx | ||
LPB |
Loop Port Bypass |
09yyxx | Bypass AL_PA=yy, originating AL_PA=xx |
09FFxx | Bypass all, originating AL_PA=xx | ||
LPE |
Loop Port Enable |
05yyxx | Enable AL_PA=yy, originating AL_PA=xx |
05FFxx | Enable all, originating AL_PA=xx | ||
LR | Link Reset | 49BF49 | |
LRR | Link Reset Response | 35BF49 | |
MRK | Mark | 5Fxxxx | Vendor unique - clock sync, spindle sync etc. |
NOS | Not Operational | 55BF45 | Link has failed |
OLS | Offline | 358A55 | Going offline (due to received NOS or other event) |
OPN |
Open |
91FFFF | Open broadcast replicate (see note 2) |
91yyFF | Open selective replicate (see note 2) | ||
91yyxx | Open full duplex between AL_PA=xx and AL_PA=yy | ||
91yyyy | Open half duplex to AL_PA=yy | ||
R_RDY | Receiver_Ready | 954949 | |
SOF | Start of frame | B5cccc | See note 3 |
SYN |
Synchronise |
7Fxxxx | Clock Synchronization word X |
BFyyyy | Clock Synchronization word Y | ||
DFzzzz | Clock Synchronization word Z | ||
VC_RDY | Virtual Circuit Ready | F5vvvv | Where vv is the virtual circuit ID |
Note 1: The first parameter byte of the EOF primitive can have one of four different values (8A, 95, AA, or B5). This is done so that the EOF primitive can rebalance the disparity of the whole frame. The remaining two parameter bytes define whether the frame is ending normally, terminating the transfer, or is to be aborted due to an error.
Note 2: The Open selective replicate variant can be repeated a number of times in order to communicate with more than one destination port simultaneously. The Open broadcast replicate variant will allow communication with all ports simultaneously.
Note 3: The SOF primitive contains a pair of control bytes (shown as cccc in the table) to designate the type of frame.
Read more about this topic: Fibre Channel Network Protocols