throbber
Protocols,
`
`ADDISON-WESLEY
`
`HUAWEI EX. 1006 - 1/312
`
`HUAWEI EX. 1006 - 1/312
`
`

`

`-·-
`The
`SCSI Bus
`and
`IDE Interface
`---·--
`
`HUAWEI EX. 1006 - 2/312
`
`

`

`-·-
`The
`SCSI Bus
`and
`IDE Interface
`
`Protocols, Applications and Programming
`
`-------·-------
`
`Friedheim Schmidt
`Translated by
`J. Michael Schultz
`TransTech Translations
`
`I
`
`'
`
`......
`......
`ADDISON-WESLEY
`PUBLISHING
`COMPANY
`
`:, ..
`
`Wokingham, England • Reading, Massachusetts • Menlo Park, California • New York
`Don Mills, Ontario • Amsterdam • Bonn • Sydriey • Singapore

`Tokyo • Madrid • San Juan • Milan • Paris • Mexico City • Seoul • Taipei
`
`HUAWEI EX. 1006 - 3/312
`
`

`

`© 1995 Addison-Wesley Publishers Ltd.
`© 1995 Addison-Wesley Publishing Company Inc ..
`
`Translated from the German edition SCSI-Bus und IDE-Schnittstelle
`published by Addison-Wesley (Deutschland) GmbH.
`
`All rights reserved. No part of this publication may be reproduced, stored in a retrieval
`system, or transmitted in any form or by any means, electronic, mechanical,
`photocopying, recording or otherwise, without prior written permission of the
`publisher.
`
`The programs in this book have been included for their instructional value. They have
`been tested with care but are not guaranteed for any particular purpose. The publisher
`does not offer any warranties or representations nor does it accept any liabilities with
`respect to the programs.
`
`Many of the designations used by manufacturers and sellers to distinguish their
`products are claimed as trademarks. Addison-Wesley has made every attempt to
`supply trademark information about manufacturers and their products mentioned in
`this book.
`
`Cover designed by Designers & Partners, Oxford
`and printed by The Riverside Printing Co. (Reading) Ltd.
`Typeset by VAP Group, Kidlington, Oxon.
`Printed and bound in Great Britain at T.J. Press (Padstow) Ltd, Padstow, Cornwall
`
`First printed 1995
`
`ISBN 0-201-42284-0
`
`British Library Cataloguing in Publication Data
`A catalogue record for this book is available from the British Library.
`
`Library of Congress Cataloging-in-Publication Data
`Schmidt. Friedheim
`(SCSI-Bus und IDE-Schnittstelle. English)
`The SCSI bus and IDE interface/Friedheim Schmidt; translated by
`Michael Schultz.
`p. em.
`Includes index.
`ISBN 0-201-42284-0
`1,SCSI (Computer bus) 2. IDE (Standard)
`TK7895.B87S36 1995
`004 .. 6'2--dc20
`
`I. Title
`
`94-23813
`CW
`
`HUAWEI EX. 1006 - 4/312
`
`

`

`Preface
`
`The SCSI bus and IDE interface are without question the two most important
`interfaces for computer peripherals in use today. The IDE hard disk interface is
`found almost exclusively in the world of IBM PC compatibles. The SCSI bus, on
`the other hand, is designed not only for hard drives but also for tape drives, CD(cid:173)
`ROM, scanners, and printers. Almost all modern computers, from PCs to work(cid:173)
`stations to mainframes, are equipped with a SCSI interface.
`Both SCSI and IDE are ANSI standards. However, aside from the actual
`ANSI documentation, there exists almost no additional reference material to
`either specification. The purpose of this book is to fill that void with a clear, con(cid:173)
`cise description of both interfaces. The essential terminology is introduced,
`while the commands and protocols are broken down in full. In the interest of
`economy the less important details and options have been omitted in certain
`cases. Often a specific section in the ANSI documentation will be cited for easy.
`cross-referencing. After reading this book you should be in the position to easily
`understand relevant technical documentation, including the ANSI specifications
`themselves.
`First and foremost, a thorough introduction to the terminology is in
`order. Especially with respect to SCSI, there is a deluge of terms and definitions
`that are used nowhere else or are used differently than in other computer
`domains. These keywords, which include signal names and interface com(cid:173)
`mands, are typeset in small capital letters, for example FORMAT UNIT.
`This book is intended for readers with a broaci range of technical back(cid:173)
`grounds and interests. Those working on the design of mass storage devices, for
`example, will find the protocol descriptions extremely useful. Readers writing soft(cid:173)
`ware or device drivers may have other interests. They will find the hardware
`descriptions, such as that of the physical organization of a disk drive, very helpful.
`This book is not meant to replace the ANSI documentation. On the other
`hand, those specifications are not meant to explain the technology, rather to
`define it. It is very difficult to find your way around in the original documenta(cid:173)
`tion without an understanding of the subject matter. The book's thorough, in(cid:173)
`depth descriptions, along with index and glossary, make it the perfect tutor for
`IDE and SCSI, as well as a helpful guide to the ANSI literature.
`Friedheim Schmidt
`February 1993
`
`v
`
`HUAWEI EX. 1006 - 5/312
`
`

`

`Contents
`
`Preface
`
`Part I Introduction
`
`1 Computers and peripherals
`1.1 Mass storage
`1.2 Peripheral interfaces
`
`2 Traditional peripheral interfaces
`2.1 The RS-232 serial interface
`2.2 The Centronics printer interfl).ce
`2.3 Hard disks and their interfaces
`2.4
`ST506
`2.5 ESDI
`
`3 Computer buses
`3.1 Characteristics of buses
`3.2
`Specialized buses
`
`Part II The IDE interface
`
`4 Background
`4.1 The origin of IDE
`4.2 Overview
`4.3 Outlook
`4.4 Documentation
`
`5 The physical IDE interface
`5.1 The electrical interface
`5.2 Timing specifications
`
`6
`
`IDE protocol
`6.1 The register model of the IDE controller
`6.2 Command execution
`6.3
`Power-up or hardware reset
`
`vi
`
`v
`
`1
`
`3
`4
`5
`
`7
`7
`10
`13
`19
`23
`
`29
`30
`32
`
`35
`
`37
`37
`38
`40
`41
`
`44
`44
`47
`
`50
`50
`55
`58
`
`HUAWEI EX. 1006 - 6/312
`
`

`

`7 The model of an IDE disk drive
`7.1 Organization of the medium
`7.2 Defect management
`7.3 The sector buffer
`7.4
`Power conditions
`
`8
`
`IDE commands
`8.1 Mandatory commands
`8.2 Optional commands
`
`Part III The SCSI bus
`
`9 Background
`9.1 The evolution of SCSI
`9.2 Overview
`9.3 Outlook
`9.4 Documentation
`
`10 SCSI hardware
`10.1 SCSI configurations
`10.2 SCSI signals
`10.3 Cables and connectors
`10.4 Single-ended SCSI
`10.5 Differential SCSI
`10.6 SCSI bus phases
`10.7 Synchronous transfers and Fast SCSI
`10.8 Wide SCSI
`
`11 SCSI bus protocol
`11.1 The message system
`11.2 I/0 processes
`11.3 SCSI pointers
`11.4 Disconnect-reconnect: freeing the bus
`11.5 Transfer options
`11.6 Tagged queues
`11.7 Termination of I/0 processes
`11.8 Error handling in the message system
`11.9 Asynchronous event notification
`
`12 SCSI commands
`12.1 The SCSI target model
`12.2 Command descriptor blocks
`12.3 Commands for all SCSI devices
`12.4 Mode parameter pages for all device classes
`
`Contents
`
`vii
`
`60
`60
`62
`63
`64
`
`66
`66
`70
`
`75
`
`77
`77
`79
`84
`85
`
`89
`89
`92
`96
`96
`100
`102
`113
`116
`
`117
`117
`119
`122
`123
`124
`126
`127
`129
`129
`
`131
`131
`133
`138
`155
`
`HUAWEI EX. 1006 - 7/312
`
`

`

`viii
`
`SCSI Bus and IDE Interface
`
`13 Direct access devices
`13.1 The model of a SCSI disk drive
`13.2 Hard disk commands ·
`13.3 Mode parameter pages for disk drives
`
`14 Tape drives
`14.1 The model of a SCSI tape drive
`14.2 Commands for tape devices
`14.3 Mode parameters for tape devices
`
`15 Printers
`15.1 The model of a SCSI printer
`15.2 Printer commands
`15.3 Mode parameters for printers
`
`16 Scanners
`16.1 The model of a SCSI scanner
`16.2 Scanner commands
`16.3 Mode parameters for scanners
`
`17 Processor devices
`17.1 The model of a SCSI processor device
`17.2 Commands for processor devices
`
`18 Communications devices
`18.1 The model of a SCSI communications device
`18.2 Commands for SCSI communications devices
`18.3 Mode parameter pages for communications devices
`
`19 Optical storage and WORM drives
`19.1 The SCSI model of optical storage
`19.2 Commands for optical storage and WORM drives
`19.3 Mode parameters for optical storage
`
`20 CD-ROM
`20.1 The model of a SCSI CD-ROM drive
`20.2 Commands for CD-ROM
`20.3 Audio commands for CD-ROM
`20.4 Mode parameters for CD-ROMs
`
`21 Medium-changer devices
`21.1 The model of a SCSI medium-changer device
`21.2 Commands for medium-changers
`21.3 Mode parameter pages for medium-changers
`
`22 The SCSI monitor program
`
`158
`158
`165
`173
`
`180
`180
`184
`190
`
`193
`193
`194
`197
`
`200
`200
`202
`204
`
`206
`206
`207
`
`210
`210
`211
`213
`
`214
`214
`215
`220
`
`222
`222
`224
`227
`229
`
`233
`233
`235
`237
`
`240
`
`HUAWEI EX. 1006 - 8/312
`
`

`

`23
`
`Software interfaces
`23.1 The concept of ASPI
`23.2 SCSI request blocks
`23.3 ASPI initialization and function calls
`
`24 Test equipment
`24.1 SCSI analyzers
`24.2 SCSI emulators
`24.3 Examples from industry
`
`25
`
`SCSI protocol chips
`25.1 The NCR 5385
`25.2 Target applications: EMULEX ESP200
`25.3 PC host adapters: FUTURE DOMAIN TMC-950
`
`Appendix A SCSI commands (by opcode)
`
`Appendix B SCSI commands (alphabetically)
`
`Appendix C SCSI sense codes
`
`Appendix D The SCSI bulletin board
`
`Appendix E Source code for SCANSCSI.PAS
`
`Glossary
`Index
`
`Contents
`
`ix
`
`247
`248
`248
`253
`
`257
`257
`258
`259
`
`262
`263
`264
`266
`
`269
`
`273
`
`276
`
`281
`
`283
`
`290
`295
`
`HUAWEI EX. 1006 - 9/312
`
`

`

`HUAWEI EX. 1006 - 10/312
`
`HUAWEI EX. 1006 - 10/312
`
`

`

`Part I
`Introduction
`
`1 Computers and peripherals
`2 Traditional peripheral interfaces
`3 Computer buses
`
`HUAWEI EX. 1006 - 11/312
`
`

`

`HUAWEI EX. 1006 - 12/312
`
`HUAWEI EX. 1006 - 12/312
`
`

`

`

`

`4
`
`SCSI Bus and IDE Interface
`
`is slower and more complicated. Communication with the peripherals is
`accomplished using an interface such as SCSI or IDE. On the other end of the
`interface is a controller, which in tum communicates with the CPU and memory.
`
`1.1 Mass storage
`
`A mass storage device is capable of storing data many times the size of main
`memory. In addition, information stored here is nonvolatile: when the device is
`turned off the data remains intact.
`
`Hard disks
`
`Disk drives or hard disks store information by writing it onto rotating disks. The
`information is divided up into blocks of fixed length, each of which can be
`accessed relatively quickly, typically around 30 milliseconds (ms). For this
`reason hard disks are also referred to as random access mass storage devices.
`Among the different types of mass storage devices are hard disks, exchangeable
`medium drives, diskettes, optical disks and CD-ROM.
`
`Tape devices
`
`1/0 devices
`
`In contrast to hard disks, tape devices (or tape drives) write data sequentially
`onto magnetic tape. The length of time needed to access a specific block of
`information depends on which position is presently underneath the read/write
`head. If it is necessary to rewind or fast forward the tape a very long distance, a
`tape access can take as long as several minutes. Tape drives are also known as
`sequential mass storage devices. Among these are the traditional reel-to-reel
`drives, cassette drives, drives that use video cassettes for recording and 4mm
`digital audio tape (DAT) drives.
`
`Under the heading I/0 devices are the monitor and keyboard used for
`communication between the user and the computer. Further examples of output
`devices are printers, plotters and even speakers used for outputting speech.
`Among the many input devices are mice, analog to digital converters, scanners
`and microphones used in speech recognition.
`Network connections also fall into this category. This is especially so
`today where mass storage is often replaced by a file server across a network.
`Computers with no mass storage of their own are called diskless workstations.
`
`Miscellaneous
`devices
`
`There are many more devices that exchange data with computers, although one
`hardly refers to a computer controlled lathe or a music synthesizer as a
`computer peripheral. Nevertheless, they function as peripherals and
`communicate with the computer using I/0.
`
`HUAWEI EX. 1006 - 14/312
`
`

`

`1.2 Peripheral interfaces
`
`Computers and peripherals
`
`5
`
`Peripheral devices are connected to computer systems via interfaces. The
`abstract model of a peripheral interface is made up of many layers, the
`boundaries of which are not always clear, especially for older interfaces. It is also
`true that some layers are omitted in certain interface definitions. In this book I
`adhere to a model with four layers for the SCSI interface, as was agreed upon by
`the American National Standards Institute (ANSI) committee for the first time
`for SCSI-3. The strata of layers are designed bottom up. All low level layers are
`mandatory for the implementation of an interface. An uppermost layer,
`however, can be omitted in some cases. A high level interface refers to the case
`where all possible levels have been implemented.
`Among those things defined in the lowest level are cable and connector
`types. Also defined are the signal voltages and the current requirements of the
`drivers. Finally, the timing and coordination of all of the signals of the bus are
`described here. This lowest level is referred to as the physical interface.
`Directly above the physical layer resides the protocol layer. The protocol
`of an interface contains, for example, information about the difference between
`data bytes and command bytes and about the exchange of messages between
`devices. If corrupted data is to be corrected through the use of error correction,
`this is described in the interface protocol.
`On top of the protocol layer lies the peripheral device model. Here the
`behavior of devices to be connected to the interface is described. These
`descriptions can be very detailed and precise. The SCSI bus is an example of
`such a detailed model, where in addition to the characteristics of general
`purpose SCSI devices, those of hard disks, tape drives, printers and so on are
`defined.
`Finally, some interfaces go so far as to define which commands must be
`understood by the interface devices. The command set builds upon the device
`model and represents the fourth layer of the interface.
`The term 'interface' always refers to all implemented layers in their
`entirety. There are distinct peripheral interfaces defined using the same physical
`level but a unique protocol level. It is also possible for a single interface to allow
`for different options in the physical level.
`The interface used for printers is a good example of a four-layer
`interface. Figure 1.2 makes the relationships among the layers clear. The two
`lower levels are covered by the Centronics interface. This parallel interface
`contains the definition of the physical and protocol layers. The particular printer
`model in Figure 1.2 is a page printer. This means that the printer constructs an
`entire page in internal memory before printing it. In contrast to line printers, the
`lines of a page can be sent in any order as long as a page boundary is not crossed.
`However, once a page is printed it is impossible to retrieve it in order to make
`changes.
`The page description language PostScript is an excellent example of a
`large and complex command set. It is built upon the page printer model and
`makes it possible to output text as well as various graphic elements. These
`elements can be p0sitioned freely on the current page. Naturally, there are other
`
`HUAWEI EX. 1006 - 15/312
`
`

`

`6
`
`SCSI Bus and IDE Interface
`
`Command set
`
`PostScript
`
`Device model
`
`Printer
`
`Protocol
`
`Physical
`interface
`
`·· ··· ··· Centronics ...
`
`Figure 1.2 Layers of a printer interface.
`
`such page formatting languages written for the page printer model. This makes
`the division between device and language very intuitive.
`As you can see, this interface is complete in that it contains all four
`interface layers. If you purchase a printer with such an interface, it makes no.
`difference which brand name you choose. As long as it is true to the interface
`specification it will work with any computer also equipped with ·the printer
`interface. However, if you were to omit even only the uppermost layer of the
`specification, then the interface description would be incomplete. It would still
`be possible to connect up the printer, but whether it would function properly
`would be a matter of luck.
`The IDE interface and the SCSI bus are likewise complete interface
`definitions. Before getting. to these, however, I would like to introduce in
`Chapter 2 a few classic examples of peripheral interfaces. For the most part their
`definitions contain only the lower layers of the interface model. This chapter will
`help to underscore the difference between traditional interfaces on the one hand
`and the complete IDE and SCSI interfaces on the other.
`
`HUAWEI EX. 1006 - 16/312
`
`

`

`2 Traditional peripheral
`interfaces
`
`This chapter will help to familiarize you with several classic peripheral inter(cid:173)
`faces of the computer industry. As with the printer interface outlined in Chapter
`1, these will be described within the framework of the layered interface model.
`These descriptions are by no means comprehensive; complete specifications
`would turn this book into several volumes.
`I have two goals in mind in presenting these interfaces. First of all, the
`interfaces are very simple; they will allow you to become acquainted with inter(cid:173)
`face characteristics that are valid for all interfaces, including computer buses.
`Secondly, to a certain degree these specifications are the forerunners of competi(cid:173)
`tion to the IDE and SCSI bus interfaces. A background in the more traditional
`interfaces will make it much easier to evaluate and understand their modern
`descendants, the main topic of this book.
`
`2.1 The RS-232 serial interface
`
`RS-232C is the most widely used serial interface. 'Serial' means that the data is
`transferred one bit at a time across a single connection. RS-232C is used mainly
`for the connection of computer terminals and printers.· Nonetheless, it is also
`appropriate for the exchange of data between computers. Machine tools and
`measurement instruments are frequently connected to computers using RS-
`232C. Understandably, it is not a device specific interface. RS-232C is the respon(cid:173)
`sibility of the Electronic Industries Association (EIA).
`The specification for RS-232C contains the physical layer and hardware
`protocol. In addition, there are software protocols, of which only a few build on
`top of the RS-232 hardware protocol. This leads to an uncommon situation with
`RS-232C and other serial interfaces - not all applications use all of the signals.
`Frequently cables are used that conduct only a few of the defined signals, a sit(cid:173)
`uation that would be unthinkable for IDE or SCSI. I concentrate here on a varia(cid:173)
`tion of the interface using only three signals, which I call mini-RS-232.
`
`7
`
`HUAWEI EX. 1006 - 17/312
`
`

`

`8
`
`SCSI Bus and IDE Interface
`
`The physical
`interface
`
`Mini-RS-232 establishes a bidirectional point-to-point connection between
`equipment. Each direction has its own data signal and a single ground signal is
`shared. The data signals are called TD (transmit data) and RD (receive data).
`When two devices are coupled to each other, these signals are crossed such that
`the TD of one device connects to the RD of the other (Figure 2.1).
`
`0
`
`1
`
`0
`
`1
`
`0
`
`1
`
`0
`
`0
`
`- 0 0 , - - - - - - , • • • • o o o o . . - - o•• o o - 00
`
`• o o o o o o o o o o o o , - -
`
`o o o o o o o o · -
`
`OOOOOOOO o o o - 0 0 0 0 0 0 0 0 -
`
`Start bit
`(always 0)
`
`8 Data bits
`
`Stop bit
`(always 1)
`
`+15 v
`
`ov
`
`-15 v
`
`13s 14
`
`. . . . . . . : .. . . . . .. .
`
`tL 2s
`
`Transmit data
`Receive data
`
`Signal ground
`
`Transmit data
`
`14~ 13
`
`.. . . . . . . . . : . . . . .
`
`: • .
`
`Receive data 25 ~ 1
`
`Figure 2.1 Physical interface: rnini-RS-232.
`
`The connector chosen by the EIA standard is the 25-pin DB25. Other con(cid:173)
`nectors, however, are frequently employed, such as the DB9 for the IBM AT or
`the RJll telephone connector used in various minicomputers.
`On the signal lines, a logical 1 is represented by a voltage between +5 V
`and +15 V, and the receiver recognizes anything above +3 Vas such. Likewise,
`logical 0 is represented by a signal voltage between -5 V and -15 V. Again, the
`receiver recognizes any signal below -3 V as such.
`Data transfer takes place serially, character by character. The characters
`are further broken down into bits, which are sent across the line one by one. On
`the other end, the receiver then assembles the bits back into characters. The
`number of bits per character lies between five and eight; eight is precisely what
`is needed to transfer one byte. The data bits are preceded by a start bit and fol(cid:173)
`lowed by a stop bit. In addition, a parity bit may be sent for error detection. The
`transfer rate· can range between 75 and 115 000 bits per second (baud), and a
`cable alone cannot compensate for different transfer rates; the devices must be
`set at the same speed otherwise no exchange of data can take place.
`Now comes a rather confusing point: this method of transfer over the
`serial interface is called asynchronous even though the data is sent and received
`relative to a clock. Among other serial interfaces the term 'synchronous' is used
`whenever a clock is involved. For RS-232C, however, the transfer is referred to
`as asynchronous because the clocks are not tied to each other. The RS-232C spec(cid:173)
`ification includes signals that allow the sender and the receiver to use the same
`clock for data transfer. When these signals are employed the data transfer is
`
`HUAWEI EX. 1006 - 18/312
`
`

`

`

`

`1 0
`
`SCSI Bus and IDE Interface
`
`Summary As you can see, an interface that builds on top of RS-232 has many possible vari(cid:173)
`ations. The complete description of·my printer-PC interface would be: RS-232 at
`9600 baud, 1 stop bit, no parity, XON /XOFF protocol, PostScript. If I were to
`change a parameter for only the printer or only the PC, for example by not send(cid:173)
`ing PostScript or starting to use a parity bit, nothing would print. Although
`mini-RS-232 appears to be simple (only three wires), there are almost an
`uncountable number of ways in which the connection can fail. What is missing
`is a protocol that allows the devices to agree upon the available options.
`Although RS-232 has given a good portion of frustration to just about everyone
`who has worked with it, it nonetheless has the decided advantage that it exists
`on every computer and is also device independent.
`
`2.2 The Centronics printer interface
`
`The Centronics interface is a parallel interface developed for printers. It is an
`industry standard that, to my knowledge, has never been officially approved. As
`a result there are many variations. This is especially so with respect to the status
`signals that reflect the printer's current state. Centronics defines the physical
`interface and the protocol. As a command set, either PostScript or another print(cid:173)
`er language is used.
`Originally developed as a unidirectional interface, the parallel printer
`link for PCs can also be used bidirectionally. This extension is not our concern
`here. We are interested in Centronics mostly as another example of the various
`computer interfaces. However, it is also a good idea to know this interface in
`order to understand the difference from SCSI printers (see Figure 2.3).
`
`The physical
`interface
`
`Centronics uses a shielded twisted-pair cable with 36 signals, of maximum
`length 5 meters (about 16 feet). A 36-pin amphenol connector is used on the
`printer end, which most people have come to refer to as a Centronics connector.
`The computer end of the cable has either a corresponding female Centronics or
`a female DB25.
`
`Electrical
`specifications
`
`The signal voltages correspond to those for transistor-transistor logic (TTL). A 0
`is recognized from 0 V to +0.8 V, a 1 from +2.4 V to +5.0 V. Table 2.1lists the sig(cid:173)
`nals of the Ointronics interface. Note that I have described the data signals start(cid:173)
`ing with 0; that is, using the logical names. The actual signal names, however,
`are DATAl to DATA8.
`Data transfer takes place in parallel across signals DATAl to DATAS. The
`signals STROBE, BUSY and AC.KNLG control the sequencing, which is shown in
`Figure 2.3. The term 'protocol' does not apply completely here. Relative to our
`layer model, this timing belongs to the definition of the physical interface.
`
`HUAWEI EX. 1006 - 20/312
`
`

`

`

`

`12
`
`SCSI Bus and IDE Interface
`
`data signals and send the next STROBE for the next byte. This method of data
`transfer, where a signal is used to indicate a request (here STROBE) and another to
`acknowledge that request (here ACKNLG), is called asynchronous. The mecha(cid:173)
`nism itself is termed request/acknowledge handshake.
`
`Throughput Throughput, or the amount of data transferred per second, is dependent upon
`how long the printer leaves its BUSY signal active for each byte. The other signals
`involved in the handshake need at least 4 microseconds (ps) in total. If a printer
`were exceptionally fast, it could accept a byte in around 10 ps. This would cor(cid:173)
`respond to a data rate of 100 Kbytes per second. The handbook for my laser
`printer reports a value of approximately 100 ps for the length of BUSY, which
`allows for a rate no faster than 10 Kbytes per second.
`
`The protocol The Centronics interface protocol is very simple. The flow of data is solely the
`responsibility of the physical layer. When the printer is not able to receive data
`it simply holds BUSY active. There are, however, a couple of status signals that
`reflect the printer's status. These fall under the category of message exchange,
`which places them in the protocol layer. These signals are PE, SELECT, and ERROR.
`In addition to these are the control signals AUTOFEED, !NIT, and SLCT IN. All of
`these signals are described in Table 2.1.
`
`Summary The Centronics printer interface is our first example of a device specific inter(cid:173)
`face. The method of data transfer is very similar to many parallel interfaces.
`Nevertheless, the status signals for end of paper and carriage return pertain
`strictly to printers. Although this is the case, devices have been developed that
`use Centronics as a general purpose parallel interface simply by ignoring the
`printer specific signals. Examples of these include network adapters and disk
`drives.
`
`The data transfer is parallel and asynchronous, controlled by the hand(cid:173)
`shaking signals STROBE/ ACKNLG. The transfer rate is dependent on the spee<;! of
`the printer: the faster the printer is able to activate its ACKNLG signal, the higl:ter
`the transfer rate. This characteristic of asynchronous transfer will appear again
`when we look at the SCSI bus.
`As in the case of RS-232, the Centronics interface itself contains neither a
`device model nor a command set. As shown in Figure 1.2, all components are
`necessary in order to define a complete printer interface. On the other hand, the
`interface as it stands is flexible. There are even tape back-up devices that take
`advantage of this very adaptable interface.
`Centronics, like RS-232, establishes a point-to-point connection between
`devices. This means that only a single printer can be used for each interface
`because the ability to address different devices is lacking. This new feature
`belongs to the next interface we will discuss.
`
`HUAWEI EX. 1006 - 22/312
`
`

`

`Traditional peripheral interfaces
`
`13
`
`2.3 Hard disks and their interfaces
`
`This section and the following two sections on ST506 and ESDI delve more
`deeply into details than previous sections, because it is here that the foundation
`for understanding IDE and SCSI is laid. If you are not well acquainted with the
`internals and workings of hard disks, you will find this section especially inter(cid:173)
`esting. Here, you will learn the terminology of the disk drive domain.
`
`A little history
`
`Disk drive interfaces were standardized early on. Beginning in 1975, drives with
`a diameter of 14 inches and then 8 inches were shipped with the SMD interface.
`The name comes from the Storage Module Drives of the company, CDC. CDC
`has since sold its drive production to Seagate. During the late 1980s, as a result
`of steady improvements, SMD became the favorite interface for 8 inch high per(cid:173)
`formance drives. SMD-E, the final version, had a transfer rate of 24 MHz or
`about 3 Mbytes per second. The interface, however, could not survive the tran(cid:173)
`sition to 51/• inch drives, primarily because of the very wide cable. As a result
`SMD died along with 8 inch drives in.about 1990.
`Five years after the arrival of SMD, Seagate introduced a 5\4 inch drive
`with a storage capacity of 5 Mbytes. This economical disk drive, at the lower end
`of the performance scale, used a hew interface called ST506. You will often hear
`ST506/ST412 being used to refer to the same interface. ST506 was not developed
`from scratch, but evolved from the floppy interface. The transfer rate was
`increased to 5 MHz (about 62? Kbytes per second) but the method of moving the
`heads by sending step pulses remained the same. lh the past few years,
`advances have allowed the transfer rate to be doubled once again. However, the
`demands of modern PCs have finally exceeded the interface's capabilities: ST506
`has been steadily losing ground to IDE and SCSI since around 1991.
`It was apparent early on that 514 inch drives would be capable of perfor(cid:173)
`mance that ST506 could not support. SMD could have fitted the bill but it was
`too big and too expensive. lh 1983 the disk drive manufacturer Maxtor came out
`with the Enhanced Small Device lhterface (ESDI) to remedy this situation. The
`ESDI used the same cables as ST506 but allowed transfer rates of up to 20 MHz
`(2.4 Mbytes per second).lh addition, ESDI had commands, for example, seek to
`track. Today, ESDI can occasionally be found in the microcomputer and work(cid:173)
`station domain. However, it too is quickly being crowded out by SCSI. New dri(cid:173)
`ves with the ESDI interface are no longer being developed.
`
`The disk drive
`model
`
`On our way to understanding IDE we will make two stops to examine its prede(cid:173)
`cessors, the ST506 and ESDI interfaces. Before we do this, however, we need to
`become acquainted with the basic model of a disk drive. A hard disk drive stores
`information on a set of rotating disks. The information can be written and read
`any number of times and the data remains intact even after the drive is turned off.
`The term 'hard disk' most often refers to a drive with nonremovable
`media although some removable media drives do use hard disks. A hard disk
`contrasts with the flexible media used in floppy drives.
`
`HUAWEI EX. 1006 - 23/312
`
`

`

`

`

`

`

`16
`
`SCSI Bus and IDE Interface
`
`The reading of a sector is relatively simple. As soon as the head is posi(cid:173)
`tioned at the correct cylinder, the desired head is chosen and the formatter chip
`reads headers until the proper address comes by. The data directly following this
`header is the data required.
`Writing a sector is a bit more complicated. A write looks just like a read
`until the proper header is found, then the amplifier circuitry switches from reading
`to writing, and the new data, along with ECC, is written. A write-splice is located
`between the header and the data field to allow time to turn on the write current.
`
`Format
`characteristics
`
`It is not necessarily the case that two sectors with adjacent addresses are adja(cid:173)
`cent to one another on the medium. The limited throughput of early drive con(cid:173)
`trollers made it necessary to employ certain techniques in the format design. The
`techniques discussed here are pertinent to IDE as well SCSI.
`
`Interleave
`
`Track and
`cylinder skew
`
`Early drive controllers had a very small local buffer which held at most a sec(cid:173)
`tor's worth of data. This situation forces the controller to pass the data on to the
`computer before reading the next sector. If this cannot be accomplished in the
`time it takes the head to pass over the short gap between sectors, the controller
`must wait for a complete revolution of the disk for the sector to come around
`again. For drives of this era, this meant waiting 17 ms for the next sector. In order
`to avoid this delay, the format of the track can employ an interleave to insure
`that there is enough time to get ready for the next sector. With a interleave of
`two, for example, the sector with the next adjacent address is two physical sec(cid:173)
`tors away. This makes it possible to read all sectors of a track with only two r

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket