7.6.1.1.1 Synchronized Spindles. In a synchronized spindle system one drive (the master) or an external source generates a signal which drives use to synchronize their spindles. A separate cable outside the ESDI definition supplies this signal to each drive. There are three conditions: - Spindle is synchronized. - Spindle is not synchronized to an external signal. - Spindle had reported it was synchronized, but is no longer. ATTENTION shall be asserted whenever there is a change from the synchronized condition (bit 11=1) to the unsynchronized condition (bit 11=0). - - - - - - - - - - - - 7.18.1 Synchronized Drives. The controller may use Set Configuration with synchronized drives to set the selected drive to act as master (7-0 = x'01') or as slave to another drive (7-0 = x'00'). If set to Master Control (7-0 = x'03'), the drive shall generate the Master Sync signal and also respond to the Slave Sync signal received from another source. A synchronized drive may be set to unsychronized operation (7-0 = x'02'). 7.18.2 Notched Drives. The controller may use Set Configuration to identify the zone to be worked with (the first zone is numbered as 1 and begins at cylinder 0). When a drive has been set to operate with a zone, then all information reported is relative to that zone. To find the configuration of a notched drive the controller shall repeat the same procedure for each zone (as it would for a drive which does not support notches) until the command is rejected because there are no more zones. The configuration information which may be zone-dependent is identified in Table 16, Table 17 and Table 18. When set to Zone 0 the drive shall not respond as a notched drive but as a regular drive with only one recording frequency, that of the inner radius. If the drive is unable to respond in this way it shall reject the command. 7.18.3 Synchronized Sector Offset When set to a value other than zero, the slave drive a drive designated as Master Control or Slave shall offset its synchronized position by the number specified e.g. if set to 64, the slave drive shall offset its position by one quarter rotation beyond that of the master behind the Slave Sync signal. A drive designated as Master shall reject this command. 7.18.4 Soft Switches. Soft Switch modifiers are available for the vendor to use as a method of defining configuration information. The implementation of this feature provides users the advantage of reduced installation effort and vendors the advantage of being able to set up automatic testing procedures for different drive configurations. As an example of the way in which this command may be used by a vendor, the dip switches could be numbered and parameter used to identify how the switches are to be set (1=On, 0=Off). This command would then override any physical position to which the switches are set. It is recommended that the device be capable of retaining the switch configuration information between power cycles. TABLE 30: SET CONFIGURATION SOFT SWITCH PARAMETER BITS ========================================================================== +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ |15 |14 |13 |12 |11 |10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | P | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | CMD Function | Switch No | Switch Parameter | +---------------+---------------+-----------------------------------+ | 1 1 1 0 | 0 0 0 0 | | | | to | Vendor Unique | | | 0 x x x | | | | 1 0 0 0 | | | | to | Reserved = 0 | | | 1 0 1 1 | | | | 1 1 0 0 | Set Synchronized Drive | | | | x'00' 0000 0000 = Slave | | | | x'01' 0000 0001 = Master | | | | x'11' 0000 0011 = Master Control | | | | 0000 0010 = Unsynchronize | | | 1 1 0 1 | Notched Drive Zone Number | | | 1 1 1 0 | Synchronized Sector Offset | | | 1 1 1 1 | Reserved = 0 | +---------------+---------------+-----------------------------------+ Example: If a magnetic disk drive is capable of supporting soft or hard sector operation according to the setting of Dipswitch 1 then the configuration may be described as follows: +---------------+---------------+-----------------------------------+ | 1 1 1 0 | 0 0 0 1 | xxxx xx01 = Set Soft Sector | | | | xxxx xx10 = Set Hard Sector | +---------------+---------------+-----------------------------------+ ========================================================================== - - - - - - - - - - - - 8.3.2 Intersector Gap (ISG). The minimum Intersector Gap size is determined from the configuration data. The Intersector Gap provides a separation between each sector. The gap size is chosen to provide for the following: - Drive required write-to-read recovery time (the minimum time between negation of WRITE GATE and assertion of READ GATE or ADDRESS MARK ENABLE which is specified in by the "Write-to-Read Recovery Time" subscript, or if subscripts are not supported, by the "ISG Bytes after Index/Sector" in Configuration Data Response. See 7.7.1.8). - Other drive required ISG times. - Variations in detecting INDEX and SECTOR. - Controller decision time between sectors. Annex K: Synchronized Spindles. (informative) The synchronization of spindles between a number of drives may be used to facilitate additional functions such as fault tolerant arrays or higher transfer rate subsystems. A generic implementation that permits a number of variations in configuring the subsystem is accomplished by using a separate cable, supplying additional Configuration Response data and supporting the Set Configuration command for programmed control. There is no requirement that each drive implementation be plug-compatible to the extent that a multiple vendor drive subsystem operate. Mix and match of different manufacturers drives is unlikely because rpm, sync fields, sync bytes etc need to be virtually identical. However, if drives are designed to match the following recommendation, controllers can operate any bank of drives with a single implementation. K.1 Signals. The following signals are used on the separate cable which is daisy chained to each drive (it need not be connected to the controller). Disk Signal Ground Signals Pin Pin ----------- --- --- GROUND 1 <-- MASTER SYNC 2 Reserved 3 --> SLAVE SYNC 4 * * SLAVE SYNC may be a signal generated by the master drive. There can only be one master drive at a time in a configuration. The MASTER SYNC signal from the slave selected to be a master may be turned around by the controller to become SLAVE SYNC, or the controller may direct the master drive to turn around MASTER SYNC internally to become the SLAVE SYNC for the other drives (only one SYNC signal is generated). MASTER SYNC is generated by the drive nominated as the master at least once per rotation, but may optionally be at a higher frequency. SLAVE SYNC received by a drive is used as the synchronization signal to lock the spindles in step. The time to achieve synchronization varies, and is indicated by the slave drive asserting READY. NOTE: A drive nominated as master Master Control does not synchronize to its MASTER SYNC signal but to the SLAVE SYNC received(to avoid any problems that may arise if the controller introduces any delays). In the event that a drive previously synchronized loses synchronization, but is otherwise operational, it does not negate READY. K.2 Configuration Response. The Synchronized Spindle Tolerance values define the range within which Indexes will lock up relative to each other (see also Table 17). +---------+-----+---------------------------------------------------------+ |Command |Subs-| | |Modifier |cript| Configuration Response | |Bits 11-8| 7-0 | | +---------+-----+---------------------------------------------------------+ | 0 0 0 0 | x | Values for Configuration of Drive and Format | +---------+-----+---------------------------------------------------------+ | 20 | Synchronized Spindle Positive Tolerance (usecs) | | 21 | Synchronized Spindle Negative Tolerance (usecs) | +-----+---------------------------------------------------------+ K.3 Set Configuration. +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ |15 |14 |13 |12 |11 |10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | P | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | CMD Function | Switch No | Switch Parameter | +---------------+---------------+-----------------------------------+ | 1 1 1 0 | 1 1 0 0 | Set Synchronized Drive | | | | x'00' 0000 0000 = Slave | | | | x'01' 0000 0001 = Master | | | | x'11' 0000 0011 = Master Control | | | | 0000 0010 = Unsynchronize | +---------------+---------------+-----------------------------------+ If a drive is set to Slave it does not generate MASTER SYNC, and it is responsible to synchronize its index to the SLAVE SYNC signal. If a drive is set to Master it generates MASTER SYNC and transmits it as the SLAVE SYNC signal for the slaves. If a drive is set to Master Control it generates MASTER SYNC and tranmits it as a signal. The output is may be used by the controller to generate SLAVE SYNC to the slaves. If a drive is set to Unsynchronized it ignores the SLAVE SYNC signal. K.4 Electrical. The drivers/receivers used are Open Collector (see 5.2). The driving distance of these parts is limited. In subsystems which contain more than 9 daisy chained units, multiple cables may be needed. K.5 Connector. Space is limited on small form factor drives so there may be variations in the type of connector used. Some manufacturers with a connector used for diagnostics may assign the synchronizing signals to pins in the diagnostics connector.