EP0942360A2 - Mass storage peripheral device with associated personality ROM - Google Patents

Mass storage peripheral device with associated personality ROM Download PDF

Info

Publication number
EP0942360A2
EP0942360A2 EP99200587A EP99200587A EP0942360A2 EP 0942360 A2 EP0942360 A2 EP 0942360A2 EP 99200587 A EP99200587 A EP 99200587A EP 99200587 A EP99200587 A EP 99200587A EP 0942360 A2 EP0942360 A2 EP 0942360A2
Authority
EP
European Patent Office
Prior art keywords
mass storage
peripheral device
data
storage peripheral
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP99200587A
Other languages
German (de)
French (fr)
Other versions
EP0942360A3 (en
Inventor
Curtis H. Bruner
Tracy D. Harmer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of EP0942360A2 publication Critical patent/EP0942360A2/en
Publication of EP0942360A3 publication Critical patent/EP0942360A3/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Definitions

  • This invention relates to improvements in mass storage peripheral devices, and more particularly to improvements in mass storage peripheral devices for association with a computer architecture to enable operating circuitry and programs of the device to be located remotely from the device.
  • Mass storage peripheral devices have played a large part in the development of modern computers. Typical mass storage devices include hard and floppy disk drives, CD-ROM drives, DVD devices, and the like.
  • a typical mass storage peripheral device that may be associated with a computer has various electronic circuits for the operation of the device that are configured so that the device may be used as universally as possible with various processor or computer configurations.
  • a mass storage peripheral device is constructed with a spinning data medium on which data is at least read, and often times to which data may be written.
  • Such devices also generally include a motor for spinning the medium, and one or more head devices that are movable to selectable locations on the medium to read and record data from the medium.
  • Associated electronic circuitry is often provided on a printed circuit board that is provided in an assembly with the spinning medium to control the rotation of the motor and the selective positioning of the heads.
  • Typical electronic circuitry for example, for a hard disk drive (HDD) assembly may include a servo or motor control circuit for spinning the motor, voice coil control circuitry for positioning the data heads, data preamplifier circuitry for amplifying the signals read by the heads from the spinning medium, read channel processing circuitry for initial processing of the read data, and controller circuitry.
  • the controller circuitry may include buffer memory elements for speed matching and signal timing, signal interfacing circuitry for interfacing the data and other signals to the computer bus and control circuits, error correction and control circuitry, and so on.
  • Such circuitry is generally provided in a number of integrated circuit devices, perhaps contained in as many as nine separate integrated circuit chips, mounted on the printed circuit board that is associated with the particular peripheral device.
  • the hard disk drive electronics is typically connected by one or more buses to corresponding buses on the "mother board" of the host computer.
  • the mother board may have its own supporting electronics for such peripheral devices, such as line driver circuitry and data processing circuitry to route and control the various signals provided to and from the peripheral device.
  • each particular mass storage peripheral device may have its own particular hardware and software characteristics that may be unique to it, typically, mass storage devices may also be required to include their own customized firmware that enable the associated computer to be properly initialized to address and access the data of the device.
  • firmware may include such information as to how addresses are translated from the computer to the particular arrangement of the mass storage device, such as the cylinder, head, sector, zone, of the device, and so on.
  • Such peripheral devices are supplied with custom firmware that is generally loaded upon initialization of the associated computer into the system RAM.
  • software drivers also may be required.
  • Such software drivers may be provided by generic drivers, often supplied with the computer operating system software, and in other cases, the drivers may be separately provided by the manufacturer of the particular peripheral device, particularly when the particular peripheral device has special or unusual characteristics. Therefore, it can be seen that there are limitations on the variations, particularly on the hardware, that may be provided on any peripheral device, as they must be compatible with existing computer hardware architectures and designs.
  • PCI Peripheral Component Interconnect
  • the PCI bus is designed to be both processor and computer system architecture independent, with the PCI electrical, protocol, and hardware interface requirements remaining the same regardless of the CPU or host system computer architecture being used. This allows the same peripheral computer device to be connected to a variety different of host systems without requiring different versions of the device for each type of host system with which the device is intended to be used.
  • PCI bus architecture also allows relocatable expansion ROM location addresses on associated peripheral devices.
  • PCT application number WO 97/18505 entitled “METHOD AND ARRANGEMENT FOR OPERATING A MASS MEMORY STORAGE PERIPHERAL COMPUTER DEVICE CONNECTED TO A HOST COMPUTER", said application being assigned to the assignee hereof, and incorporated herein by reference.
  • mass memory storage peripheral devices may include customized expansion BIOS data that is loaded into the system RAM on initialization of the associated computer. Details of particular BIOS techniques are described in PCT application number WO 97/14095, entitled “SYSTEM FOR PROVIDING BIOS TO HOST COMPUTER", said application being assigned to the assignee hereof and incorporated herein by reference.
  • One of the goals of mass storage peripheral device manufacturers is to reduce the cost of the devices as much as possible. This has been addressed primarily by increasing levels of electronics -integration in concert with decreasing integrated circuit costs for a given function due to decreasing semiconductor geometries.
  • a mass storage peripheral device for use with a host computer.
  • the device has a data medium and a sensor for at least reading information from the data medium to develop data signals for delivery to the computer.
  • a memory device containing computer readable information for characterizing the mass storage peripheral device is provided, and a data transmission path is provided by which the computer can access the information contained in the memory device for characterizing the mass storage peripheral device.
  • the computer readable information for characterizing the mass storage peripheral device comprises physical data definitions.
  • the physical data definitions may include any device characterizing data, and may include, for example, a device identification string, a number of physical heads contained in the device, an identification of a starting cylinder of an expansion BIOS data area, an identification of a starting cylinder of a utility data area, an identification of a starting cylinder of a user data area, a designation of a number of user data area cylinders, a designation of a number of logical cylinders, a number of logical heads, or a number of logical sectors per track.
  • the physical data definitions also may include a designation of a maximum user area logical block address, a designation of a number of internal buffer bytes, a designation of a firmware revision number, a designation of a form factor and manufacture device type code, a designation of a defect method code, a designation of a defect structure code, a designation of read channel and servo data area storage size, a designation of a number of zones, an indication of a first cylinder of a zone, an indication of a number of sectors, an indication of a rotational speed of a motor in the device, an indication of voice coil control characteristics, an indication of zone frequencies, an indication of read channel parameters, an indication of a read channel bandwidth, an indication of read channel boost values, an indication of a read channel programming parameters, an indication of zone boundaries of the device, or the like.
  • the mass storage peripheral device may be, for example, a disk drive assembly, a hard disk drive assembly, a CD-ROM disk drive assembly, a DVD disk drive assembly, a floppy disk drive assembly, or the like.
  • a method for starting a computer.
  • the method includes reading data from a memory of a mass storage peripheral device and configuring the computer based upon the data read from the memory.
  • the data read from the computer may include such characterizing items as outlined above.
  • FIGURE 1 is a box diagram of a data processing path of a computer system having a host computer and a mass storage peripheral device, showing the configuration and location of parts, according to a preferred embodiment of the invention.
  • FIGURE 2 is a block diagram of a computer system in which most of the electronics to support mass storage peripheral devices are placed on a circuit board of a host computer, in accordance with a preferred embodiment of the invention.
  • FIGURE 3 is a block diagram of a portion of a computer system, showing an example of an interface between a mass storage peripheral device and a host computer, in accordance with a preferred embodiment of the invention.
  • a bus mastering bus is a bus in which a device is enabled to make a memory access request without requiring intervention or involvement with the CPU, and may be located on a circuit board, or “motherboard", may be contained within an integrated circuit chip, for example, the CPU chip, cabled, or elsewhere.
  • suitable bus mastering buses are the PCI bus or the 1394 bus, which are well known.
  • PCI Peripheral Computer Interconnect.
  • PCI is a high speed, high bandwidth, 32/64 bit, 33/66 MHz, processor independent expansion bus. It should be understood, however, that any suitable bus mastering bus may be used.
  • the invention is realized by locating many of the operating circuitry, programs, firmware in the host computer that classically were located on a circuit board of the peripheral device.
  • the controller for the mass storage peripheral device is located in the host computer, such as on the motherboard.
  • Additional circuitry may also be located in the host computer, including the servo circuits to spin the motor of the peripheral device, and the voice coil actuating circuitry to position the data sensor of the peripheral device.
  • FIGURE 1 A block diagram of a data processing path of a computer system 10 having a host computer 11 and a mass storage peripheral device 12 is shown in FIGURE 1, showing the configuration and location of parts, according to a preferred embodiment of the invention.
  • the mass storage peripheral device includes a data media 14 and a sensor 15 for at least reading data from the media 14.
  • the physical form of the data media and sensor will depend upon the particular type of device considered. For example, it is envisioned that the principles of the invention will be applicable to such mass storage peripheral devices as hard disk drives, floppy disk drives, high density floppy disk drives, CD-ROM drives, DVD drives, miniature drives, and other such drives.
  • the signals detected by the sensor 15 are conducted by a "flex cable” 17 to a preamplifier 20.
  • the preamplifier 20 may be constructed on the flex cable 17, or it may be separate therefrom.
  • the sensor 15 is positioned by a positioning mechanism 22 to selectable locations on the data media 14, in a known manner.
  • the output of the preamplifier is connected to read/write channel circuitry 24, which, as indicated by dotted lines, may be contained wholly in the mass storage peripheral device 12, wholly in the host computer 11, or partially within each, as discussed in greater detail below.
  • the read/write channel performs various functions on the amplified analog data read by the heads 15, such as filtering, analog-to-digital conversion in the respective read and write paths, automatic gain control, pulse detection, encoding/decoding for read/write functions, and so forth.
  • the output from the read/write channel on line 26 is raw digital data, which is conducted to the peripheral device controller 28.
  • the controller 28 receives the raw digital data on line 26 and formats it in a formatter or sequencer circuit 30.
  • the formatted data is then error corrected in an error correction and control circuit (ECC) 32, and then buffered in a second buffer 34, under the control of a buffer manager 33.
  • ECC error correction and control circuit
  • the function of the ECC circuit 32 is to use an error correction portion of the data read to ensure that the intended data is properly read.
  • the functions are the same, but in reverse order.
  • the ECC circuit 32 in a reverse path generates error correction data and appends it to the data written to the media 14.
  • the entire controller is located in the host computer 11, for example, on an integrated circuit on the motherboard thereof.
  • the controller 28 also typically includes a bus controller circuit 35, servo logic 37, a program ROM 39, and a processing engine 41, as shown.
  • the output from the controller 28 is connected to a bus mastering type bus 36, discussed above, from which it is written or read into a memory, such as RAM 38 under the control of a memory manager 43.
  • a bus mastering type bus 36 discussed above, from which it is written or read into a memory, such as RAM 38 under the control of a memory manager 43.
  • a CPU 40 is included as a part of the host computer 11, it does not necessarily take part in controlling or directing the transfer of data to and from the memory 38.
  • a computer system 50 includes a circuit board 52, such as the motherboard of a host computer. Also, preferably, the controller and other electronics may be included in a single integrated circuit 54, with the servo signals to spin the motors of the peripheral devices being located in a second single integrated circuit 56. Associated with the computer system 50 are three mass exemplar storage peripherals 58, 60, an 62, as shown. Mass storage peripheral device 58, in the embodiment shown, is a hard drive assembly (HDA). An HDA is a portion of a typical hard disk drive (HDD).
  • HDA hard drive assembly
  • HDA This minimum version of the HDD is referred to herein as an HDA. It will be readily appreciated that the cost of an HDA will be significantly less than that of a typical HDD of comparable capacity.
  • Mass storage peripheral device 60 in the embodiment shown, may be a CD-ROM or digital video device (DVD).
  • mass storage peripheral device 62 in the embodiment shown, may be a floppy drive, a high capacity floppy drive, a miniature drive, or other suitable device.
  • Each peripheral device 58, 60, and 62 may also have a respectively associated "personality ROM" 64, 66, and 68.
  • the personality ROMs serve to hold physical data definitions of the characteristics of the particular associated mass storage peripheral device.
  • the circuit board 52 of the host computer includes the PCI mass storage integrated circuit 54, the servo integrated circuit 56, the CPU 70 and its associated CPU chipset 72, and a RAM 73.
  • An example of the chipset and CPU that may be used is a Cyrix "MediaGX" product, in which the "North Bridge” chipset is integrated with a host CPU, although other system arrangements may be used, as well.
  • a bus mastering bus such as the PCI bus 74 shown, interconnects the chipset 72 to the PCI mass storage integrated circuit 54. It should be noted that although the PCI mass storage I/C 54 is shown as a separate chip, it may be integrated into the chipset 74 provided with any particular computer system.
  • the circuitry includes one or more digital signal processors (DSPs), read channel, buffer managers, speed matching buffers, masked ROM, servo logic, formatting, and error detection and correction (EDAC) circuitry.
  • DSPs digital signal processors
  • EDAC error detection and correction
  • the servo I/C 56 contains all of the servo circuits needed to spin and control the motors of the associated mass storage peripheral devices 58, 60, and 62. As shown, three separate servo circuits 74-76 may be integrated onto a single chip. Alternatively, a single servo circuit may be used. It should be noted that the location of the servo I/C 56 on the motherboard 52 is preferred, the servo circuits may be variously located. For example, the servo circuits may be located on the respective mass storage peripheral devices 58, 60, and 62, although the cost and operational advantages will not be fully realized. Or the servo circuits may be distributed with a portion of the servo circuits located on the motherboard 52 and a portion located on the respective mass storage peripheral devices.
  • One feature of the mass storage peripheral devices used in conjunction with the circuit arrangement shown in FIGURE 2 is the provision of a "personality ROM" 64, 66, and 68, respectively with each mass storage peripheral device 58, 60, and 62.
  • the personality ROMs contain information necessary for the host computer to initialize to run properly, without the necessity of detailed driver software. Characterizing data items that may be included in the personality ROM of the mass storage peripheral devices is set forth in the following table. This table is not intended to be all inclusive; other data items may be included, as well. In addition, the table is set forth as an example only, and is not an absolute requirement. Other arrangements will be apparent to those skilled in the art. Offset Size Field Name Description 0-1 2 Structure ID ID number for the current structure definition.
  • the structure described here is defined as structure ID number 0. This allows the firmware to know what structure is being returned from the Mass Storage Device.
  • 2-41 40 Identification String Vendor / Mass Storage Device Identification String. Left Justified string. Space filled to the right.
  • 42-43 Number of Physical Heads Total number of Physical Heads in the Mass Storage Device
  • 44-45 2 Number Of Available Heads Total number of available Physical Heads left active in the mass Storage Device after the manufacturing process.
  • 46-49 4 Valid Head Flag Flag for indicating what physical heads are active and available. This must be set to the number of valid heads left after the manufacturing process and must be used to indicate if any head de-allocation has being done. Least Significant bit is for head 0, Most Significant bit is for head 32. A value of 1 indicates that the head is available.
  • 52-53 2 Starting Cylinder Of The Expansion BIOS Data Area Starting Cylinder of the Expansion BIOS Data Area
  • the starting physical cylinder for the Expansion BIOS Data Area The starting location of a contiguous area on the Mass Storage Device media with no breaks or holes allowed.
  • 54-55 2 Number Of Expansion BIOS Area Cylinders Total number of physical cylinders in the Expansion BIOS Data Area.
  • 56-57 2 Starting Cylinder Of The Utility Data Area The starting physical cylinder for the Utility Data Area.
  • the starting location of a contiguous area on the Mass Storage Device media with no breaks or holes allowed.
  • 58-59 2 Number Of Utility Data Area Cylinders Number of Utility Data Area Cylinders Total number of physical cylinders in the UtiSlity Data Area.
  • 60-61 2 Starting Cylinder Of The User Data Area The starting physical cylinder for the User Data Area. This area may be broken up by and contain within it one of the following data areas: Expansion BIOS Data Area Utility Data Area Grown Defects Area If one, two or all of these areas are contained within the User Data Area, the Number of User Data Area Cylinders does not include the cylinders of these area.
  • User Data Area Cylinders are defined to stop counting on the cylinder prior to one of these areas and start counting immediately after one of these areas.
  • Two or more of the above areas may be grouped together into one large break of the User Data Area.
  • the firmware shall recognize the break and adjust the logical to physical translation for reading and writing user data appropriately.
  • 62-63 2 Number Of User Data Area Cylinders Total number of physical cylinders in the User Data Area.
  • 64-65 2 Starting Cylinder Of The Slipped Defects Area The starting physical cylinder for the Slipped Defects Area. This area must physically follow after the last User Data Area Cylinder.
  • the firmware shall use this value to present the logical model to the operating system when LBA values are not used 72-73 2 Number of Logical Heads The Number of Logical Heads on the Mass Storage Device to be presented to the operating system. This number is Mass Storage Device Manufacture supplied.
  • the firmware shall use this value to present the logical model to the operating system when LBA values are not used 74-75 2 Number of Logical Sectors Per Track The Number of Logical Sectors Per Track on the Mass Storage Device to be presented to the operating system. This number is Mass Storage Device Manufacture supplied.
  • the firm Ware shall use this value to present the logical model to the operating system when LBA values are not used 76-77 4 Maximum User Area Logical Block Address Maximum User Area Logical Block Address.
  • This number represents the last valid logical block address on the drive.
  • This number is the maximum logical block address, which is used on the drive. Logical block addresses start from 0 and count up. Therefore if this number were reported as 999, the actual number of available user sectors is 1000.
  • 78-81 2 Number Internal Buffer Bytes Number of Internal Data Buffer Bytes within the Mass Storage Device.
  • 84-91 2 Form Factor & Manufacture Device Type Code The lower Byte of this code is the Form Factor code, which describes the form factor of the current Mass Storage Device. This will be used to uniquely identify process-related files and data to the current Mass Storage Device.
  • the upper Byte of this code is the Manufacture Device Type Code which is used to unique Differentiate between Mass Storage Device with the same capacity and form factor.
  • This code is Mass Storage Device Manufacturer defined and is only used for manufacturing process-reporting purposes.
  • 92-93 2 Maximum Manufacturing Defects Data Storage Size Storage Size
  • the Maximum Manufacturing Defects Data Area Storage Size identifies to the firmware how much Host memory is required for storing the Mass Storage Device's Manufacturing Defects Data.
  • the firmware will use this number to allocate memory and assign the address of that memory to the Mass Storage Device. This number is the number of BYTES of memory that is required by the Mass Storage Device to store its Manufacturing Defects Data.
  • 94 1 Defect Method Code The Defects Method Code identifies to the firmware what type of low level format is being used by the Mass Storage device firmware.
  • 95 1 Defects Structure Code The Defects Method Code identifies to the firmware what data structure is being used to store defects in. See Section 4.1.3 for details of the defined Defect Structures and what Defect Structure Code has been assigned to each structure.
  • 96-97 2 Read Channel & Servo Data Area Storage Size The Read Channel & Servo Data Area Storage Size identifies to the firmware how much Host memory is required for storing the Mass Storage Device's Read Channel & Servo Data. The firmware will use this number to allocate memory and assign the address of that memory to the Mass Storage Device.
  • This number is the number of BYTES of memory that is required by the Mass Storage Device to store its Read Channel & Servo Data.
  • 98-99 2 Maximum Manufacturing facturing Defects Data Area Storage Size The Maximum Manufacturing Defects Data Area Storage Size identifies to the firmware how much Host memory is required for storing the Mass Storage Device's Manufacturing Defects Data. The firmware will use this number to allocate memory and assign the address of that memory to the Mass Storage Device.
  • This number is the number of BYTES of memory that is required by the Mass Storage Device to store its Manufacturing Defects Data.
  • 100-101 2 Maximum Grown Defects Data Storage Size
  • the Maximum Grown Defects Data Area Storage Size identifies to the firmware how much Host memory is required for storing the Mass Storage Device's Grown Defect Data.
  • FIGURE 3 A block diagram of a portion of a computer system, showing an example of an interface 74 between a mass storage peripheral device 58 and a motherboard 52 of a host computer, in accordance with a preferred embodiment of the invention, is shown in FIGURE 3.
  • the servo I/C 56 provides signal paths to coil terminals A, B, C, and CT of the motor windings 76 to spin and control the motor (not shown) of the mass storage peripheral device 58.
  • the read channel circuitry 80, 80', and 80" is shown in dotted lines to illustrate the possible locations of the circuitry, depending upon the particular needs of the system and of the mass storage peripheral device.
  • the read channel circuitry 80 may be entirely located in the mass storage peripheral device 58, or, alternatively, it may be located at the location 80' entirely within the PCI mass storage I/C 54. It also may be apportioned with one portion within the mass storage peripheral device 58 and another portion within the mass storage peripheral device 58. The read channel circuitry also may be located in a separate chip or integrated circuit at location 80" on the motherboard 52.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Document Processing Apparatus (AREA)

Abstract

A mass storage peripheral device for use with a host computer has a data medium and a sensor for reading information from the data medium to develop data signals for delivery to the computer. A memory device containing computer readable information for characterizing the mass storage peripheral device is provided, and a data transmission path is provided by which the computer can access the information contained in the memory device for characterizing the mass storage peripheral device. The computer readable information for characterizing the mass storage peripheral device comprises physical data definitions. Also, a method is presented for starting a computer. The method includes reading data from a memory of a mass storage peripheral device and configuring the computer based upon the data read from the memory.

Description

    BACKGROUND OF THE INVENTION FIELD OF THE INVENTION
  • This invention relates to improvements in mass storage peripheral devices, and more particularly to improvements in mass storage peripheral devices for association with a computer architecture to enable operating circuitry and programs of the device to be located remotely from the device.
  • RELEVANT BACKGROUND
  • Mass storage peripheral devices have played a large part in the development of modern computers. Typical mass storage devices include hard and floppy disk drives, CD-ROM drives, DVD devices, and the like.
  • A typical mass storage peripheral device that may be associated with a computer has various electronic circuits for the operation of the device that are configured so that the device may be used as universally as possible with various processor or computer configurations. Typically, for example, a mass storage peripheral device is constructed with a spinning data medium on which data is at least read, and often times to which data may be written. Such devices also generally include a motor for spinning the medium, and one or more head devices that are movable to selectable locations on the medium to read and record data from the medium. Associated electronic circuitry is often provided on a printed circuit board that is provided in an assembly with the spinning medium to control the rotation of the motor and the selective positioning of the heads.
  • Particular electronic circuits that may be provided with any particular mass storage device may vary depending upon the type and kind of peripheral device considered. Typical electronic circuitry, for example, for a hard disk drive (HDD) assembly may include a servo or motor control circuit for spinning the motor, voice coil control circuitry for positioning the data heads, data preamplifier circuitry for amplifying the signals read by the heads from the spinning medium, read channel processing circuitry for initial processing of the read data, and controller circuitry. The controller circuitry may include buffer memory elements for speed matching and signal timing, signal interfacing circuitry for interfacing the data and other signals to the computer bus and control circuits, error correction and control circuitry, and so on. Such circuitry is generally provided in a number of integrated circuit devices, perhaps contained in as many as nine separate integrated circuit chips, mounted on the printed circuit board that is associated with the particular peripheral device.
  • The hard disk drive electronics is typically connected by one or more buses to corresponding buses on the "mother board" of the host computer. The mother board may have its own supporting electronics for such peripheral devices, such as line driver circuitry and data processing circuitry to route and control the various signals provided to and from the peripheral device.
  • Because each particular mass storage peripheral device may have its own particular hardware and software characteristics that may be unique to it, typically, mass storage devices may also be required to include their own customized firmware that enable the associated computer to be properly initialized to address and access the data of the device. Among other things, such firmware may include such information as to how addresses are translated from the computer to the particular arrangement of the mass storage device, such as the cylinder, head, sector, zone, of the device, and so on. Such peripheral devices are supplied with custom firmware that is generally loaded upon initialization of the associated computer into the system RAM.
  • In most cases, software drivers also may be required. Such software drivers may be provided by generic drivers, often supplied with the computer operating system software, and in other cases, the drivers may be separately provided by the manufacturer of the particular peripheral device, particularly when the particular peripheral device has special or unusual characteristics. Therefore, it can be seen that there are limitations on the variations, particularly on the hardware, that may be provided on any peripheral device, as they must be compatible with existing computer hardware architectures and designs.
  • As speed of data access increases, hardware and software techniques have been developed to speed up data transfers to and from such mass storage devices. One such technique that is becoming popular is the provision of a Peripheral Component Interconnect (PCI) bus. In addition to providing increased access speed to the data of the peripheral device, the PCI bus is designed to be both processor and computer system architecture independent, with the PCI electrical, protocol, and hardware interface requirements remaining the same regardless of the CPU or host system computer architecture being used. This allows the same peripheral computer device to be connected to a variety different of host systems without requiring different versions of the device for each type of host system with which the device is intended to be used.
  • PCI bus architecture also allows relocatable expansion ROM location addresses on associated peripheral devices. For additional details of PCI bus characteristics in the context of mass storage peripheral devices, reference is made to PCT application number WO 97/18505, entitled "METHOD AND ARRANGEMENT FOR OPERATING A MASS MEMORY STORAGE PERIPHERAL COMPUTER DEVICE CONNECTED TO A HOST COMPUTER", said application being assigned to the assignee hereof, and incorporated herein by reference.
  • In addition, mass memory storage peripheral devices may include customized expansion BIOS data that is loaded into the system RAM on initialization of the associated computer. Details of particular BIOS techniques are described in PCT application number WO 97/14095, entitled "SYSTEM FOR PROVIDING BIOS TO HOST COMPUTER", said application being assigned to the assignee hereof and incorporated herein by reference.
  • One of the goals of mass storage peripheral device manufacturers is to reduce the cost of the devices as much as possible. This has been addressed primarily by increasing levels of electronics -integration in concert with decreasing integrated circuit costs for a given function due to decreasing semiconductor geometries.
  • These reductions, however, have not been predominately at the system level. It can be seen that using this approach the required electronic and hardware requirements similar to a PCI bus.
  • SUMMARY OF THE INVENTION
  • Therefore, in light of the above, it is an object of the invention to provide an improved computer architecture that enables disk drive operating circuitry and programs to be located remotely from the disk drive.
  • It is another object of the invention to provide an improved computer architecture of the type described in which a mass storage integrated circuit for controlling at least some of the functions of an associated mass storage peripheral device is provided remotely from the mass storage peripheral device, for example, on the mother board of the computer.
  • It is still another object of the invention to provide an improved computer architecture of the type described that enables the cost of peripheral devices that are associated with the architecture to be reduced beyond that of devices presently used that include the required device electronics.
  • It is yet another object of the intention to provide a mass storage peripheral device that has an associated personality memory of physical data that reflect various characteristics of the device.
  • These and other objects, features and advantages of the invention will be apparent to those skilled in the art from the following detailed description of the invention, when read in conjunction with the accompanying drawings and appended claims.
  • Thus, according to a broad aspect of the invention, a mass storage peripheral device is presented for use with a host computer. The device has a data medium and a sensor for at least reading information from the data medium to develop data signals for delivery to the computer. A memory device containing computer readable information for characterizing the mass storage peripheral device is provided, and a data transmission path is provided by which the computer can access the information contained in the memory device for characterizing the mass storage peripheral device. The computer readable information for characterizing the mass storage peripheral device comprises physical data definitions.
  • The physical data definitions may include any device characterizing data, and may include, for example, a device identification string, a number of physical heads contained in the device, an identification of a starting cylinder of an expansion BIOS data area, an identification of a starting cylinder of a utility data area, an identification of a starting cylinder of a user data area, a designation of a number of user data area cylinders, a designation of a number of logical cylinders, a number of logical heads, or a number of logical sectors per track.
  • The physical data definitions also may include a designation of a maximum user area logical block address, a designation of a number of internal buffer bytes, a designation of a firmware revision number, a designation of a form factor and manufacture device type code, a designation of a defect method code, a designation of a defect structure code, a designation of read channel and servo data area storage size, a designation of a number of zones, an indication of a first cylinder of a zone, an indication of a number of sectors, an indication of a rotational speed of a motor in the device, an indication of voice coil control characteristics, an indication of zone frequencies, an indication of read channel parameters, an indication of a read channel bandwidth, an indication of read channel boost values, an indication of a read channel programming parameters, an indication of zone boundaries of the device, or the like.
  • The mass storage peripheral device may be, for example, a disk drive assembly, a hard disk drive assembly, a CD-ROM disk drive assembly, a DVD disk drive assembly, a floppy disk drive assembly, or the like.
  • According to another broad aspect of the invention, a method is presented for starting a computer. The method includes reading data from a memory of a mass storage peripheral device and configuring the computer based upon the data read from the memory. The data read from the computer may include such characterizing items as outlined above.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The invention is illustrated in the accompanying drawings, in which:
  • FIGURE 1 is a box diagram of a data processing path of a computer system having a host computer and a mass storage peripheral device, showing the configuration and location of parts, according to a preferred embodiment of the invention.
  • FIGURE 2 is a block diagram of a computer system in which most of the electronics to support mass storage peripheral devices are placed on a circuit board of a host computer, in accordance with a preferred embodiment of the invention.
  • FIGURE 3 is a block diagram of a portion of a computer system, showing an example of an interface between a mass storage peripheral device and a host computer, in accordance with a preferred embodiment of the invention.
  • In the various figures of the drawing, like reference numerals are used to denote like or similar parts.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • The objects of the invention are addressed, as below described in detail, by the construction and arrangement of a mass storage peripheral device and its associated host computer. "Host computer" is used herein to designate any device with which a mass storage device may be operatively associated that has a central processing unit (CPU), a memory, and a bus mastering bus. A bus mastering bus is a bus in which a device is enabled to make a memory access request without requiring intervention or involvement with the CPU, and may be located on a circuit board, or "motherboard", may be contained within an integrated circuit chip, for example, the CPU chip, cabled, or elsewhere. Examples of suitable bus mastering buses are the PCI bus or the 1394 bus, which are well known. (PCI is the acronym for Peripheral Computer Interconnect. PCI is a high speed, high bandwidth, 32/64 bit, 33/66 MHz, processor independent expansion bus.) It should be understood, however, that any suitable bus mastering bus may be used.
  • Briefly, the invention is realized by locating many of the operating circuitry, programs, firmware in the host computer that classically were located on a circuit board of the peripheral device. Thus, for example, the controller for the mass storage peripheral device is located in the host computer, such as on the motherboard. Additional circuitry may also be located in the host computer, including the servo circuits to spin the motor of the peripheral device, and the voice coil actuating circuitry to position the data sensor of the peripheral device. As a consequence, the quantity and expense of electronic circuits traditionally located on the peripheral device are removed from and remotely located from the device.
  • This has the effect of lowering the overall cost of the particular mass storage peripheral device to which the invention pertains. This also allows for a reduction in overall part count.
  • A block diagram of a data processing path of a computer system 10 having a host computer 11 and a mass storage peripheral device 12 is shown in FIGURE 1, showing the configuration and location of parts, according to a preferred embodiment of the invention. The mass storage peripheral device includes a data media 14 and a sensor 15 for at least reading data from the media 14. As will be apparent to those skilled in the art, the physical form of the data media and sensor will depend upon the particular type of device considered. For example, it is envisioned that the principles of the invention will be applicable to such mass storage peripheral devices as hard disk drives, floppy disk drives, high density floppy disk drives, CD-ROM drives, DVD drives, miniature drives, and other such drives.
  • Typically, the signals detected by the sensor 15 are conducted by a "flex cable" 17 to a preamplifier 20. The preamplifier 20 may be constructed on the flex cable 17, or it may be separate therefrom. The sensor 15 is positioned by a positioning mechanism 22 to selectable locations on the data media 14, in a known manner.
  • The output of the preamplifier is connected to read/write channel circuitry 24, which, as indicated by dotted lines, may be contained wholly in the mass storage peripheral device 12, wholly in the host computer 11, or partially within each, as discussed in greater detail below. The read/write channel performs various functions on the amplified analog data read by the heads 15, such as filtering, analog-to-digital conversion in the respective read and write paths, automatic gain control, pulse detection, encoding/decoding for read/write functions, and so forth. The output from the read/write channel on line 26 is raw digital data, which is conducted to the peripheral device controller 28.
  • In a read mode, the controller 28 receives the raw digital data on line 26 and formats it in a formatter or sequencer circuit 30. The formatted data is then error corrected in an error correction and control circuit (ECC) 32, and then buffered in a second buffer 34, under the control of a buffer manager 33. The function of the ECC circuit 32 is to use an error correction portion of the data read to ensure that the intended data is properly read. In a write mode, the functions are the same, but in reverse order. The ECC circuit 32 in a reverse path generates error correction data and appends it to the data written to the media 14. According to a preferred embodiment of the invention, the entire controller is located in the host computer 11, for example, on an integrated circuit on the motherboard thereof. The controller 28 also typically includes a bus controller circuit 35, servo logic 37, a program ROM 39, and a processing engine 41, as shown.
  • The output from the controller 28 is connected to a bus mastering type bus 36, discussed above, from which it is written or read into a memory, such as RAM 38 under the control of a memory manager 43. As discussed above, although a CPU 40 is included as a part of the host computer 11, it does not necessarily take part in controlling or directing the transfer of data to and from the memory 38.
  • Preferably, most of the electronics necessary for the operation of a mass storage peripheral device is located on the motherboard of a host computer, as shown in FIGURE 2. Thus, a computer system 50 includes a circuit board 52, such as the motherboard of a host computer. Also, preferably, the controller and other electronics may be included in a single integrated circuit 54, with the servo signals to spin the motors of the peripheral devices being located in a second single integrated circuit 56. Associated with the computer system 50 are three mass exemplar storage peripherals 58, 60, an 62, as shown. Mass storage peripheral device 58, in the embodiment shown, is a hard drive assembly (HDA). An HDA is a portion of a typical hard disk drive (HDD).
  • As will be understood, with the controller, servo, and other electronics placed on the motherboard 52, the only necessary components of the drive are the data media, a motor to spin the media, a sensor or head mechanism to read or write data to the media, a preamplifier to amplify the data read from or to be written to the media, and a case to house the parts. This minimum version of the HDD is referred to herein as an HDA. It will be readily appreciated that the cost of an HDA will be significantly less than that of a typical HDD of comparable capacity. Mass storage peripheral device 60, in the embodiment shown, may be a CD-ROM or digital video device (DVD). Finally, mass storage peripheral device 62, in the embodiment shown, may be a floppy drive, a high capacity floppy drive, a miniature drive, or other suitable device.
  • Each peripheral device 58, 60, and 62 may also have a respectively associated "personality ROM" 64, 66, and 68. The personality ROMs serve to hold physical data definitions of the characteristics of the particular associated mass storage peripheral device.
  • More particularly, the circuit board 52 of the host computer includes the PCI mass storage integrated circuit 54, the servo integrated circuit 56, the CPU 70 and its associated CPU chipset 72, and a RAM 73. An example of the chipset and CPU that may be used is a Cyrix "MediaGX" product, in which the "North Bridge" chipset is integrated with a host CPU, although other system arrangements may be used, as well. A bus mastering bus, such as the PCI bus 74 shown, interconnects the chipset 72 to the PCI mass storage integrated circuit 54. It should be noted that although the PCI mass storage I/C 54 is shown as a separate chip, it may be integrated into the chipset 74 provided with any particular computer system.
  • With specific reference now to the PCI mass storage integrated circuit, a single I/C is provided in the embodiment illustrated that contains the necessary electronics to support the three mass storage peripheral devices 58, 60, and 62 shown. The circuitry includes one or more digital signal processors (DSPs), read channel, buffer managers, speed matching buffers, masked ROM, servo logic, formatting, and error detection and correction (EDAC) circuitry. The specific circuitry contained in the PCI mass storage I/C 54 is known in the art, and the manner by which an integrated circuit containing such circuits may be fabricated is well within the skill in the art, and is not described in further detail herein.
  • Preferably, as shown, the servo I/C 56 contains all of the servo circuits needed to spin and control the motors of the associated mass storage peripheral devices 58, 60, and 62. As shown, three separate servo circuits 74-76 may be integrated onto a single chip. Alternatively, a single servo circuit may be used. It should be noted that the location of the servo I/C 56 on the motherboard 52 is preferred, the servo circuits may be variously located. For example, the servo circuits may be located on the respective mass storage peripheral devices 58, 60, and 62, although the cost and operational advantages will not be fully realized. Or the servo circuits may be distributed with a portion of the servo circuits located on the motherboard 52 and a portion located on the respective mass storage peripheral devices.
  • One feature of the mass storage peripheral devices used in conjunction with the circuit arrangement shown in FIGURE 2 is the provision of a "personality ROM" 64, 66, and 68, respectively with each mass storage peripheral device 58, 60, and 62. As mentioned, the personality ROMs contain information necessary for the host computer to initialize to run properly, without the necessity of detailed driver software. Characterizing data items that may be included in the personality ROM of the mass storage peripheral devices is set forth in the following table. This table is not intended to be all inclusive; other data items may be included, as well. In addition, the table is set forth as an example only, and is not an absolute requirement. Other arrangements will be apparent to those skilled in the art.
    Offset Size Field Name Description
    0-1 2 Structure ID ID number for the current structure definition. The structure described here is defined as structure ID number 0. This allows the firmware to know what structure is being returned from the Mass Storage Device.
    2-41 40 Identification String Vendor / Mass Storage Device Identification String. Left Justified string. Space filled to the right.
    42-43 2 Number of Physical Heads Total number of Physical Heads in the Mass Storage Device
    44-45 2 Number Of Available Heads Total number of available Physical Heads left active in the mass Storage Device after the manufacturing process.
    46-49 4 Valid Head Flag Flag for indicating what physical heads are active and available. This must be set to the number of valid heads left after the manufacturing process and must be used to indicate if any head de-allocation has being done. Least Significant bit is for head 0, Most Significant bit is for head 32. A value of 1 indicates that the head is available.
    50-51 2 Number Of Accessible Physical Cylinders Total number of Accessible Physical Read / Write cylinders in the Mass Storage Device. The first cylinder may start at any positive (i.e. >= 0) cylinder number.
    52-53 2 Starting Cylinder Of The Expansion BIOS Data Area Starting Cylinder of the Expansion BIOS Data Area
    The starting physical cylinder for the Expansion BIOS Data Area.
    The starting location of a contiguous area on the Mass Storage Device media with no breaks or holes allowed.
    54-55 2 Number Of Expansion BIOS Area Cylinders Total number of physical cylinders in the Expansion BIOS Data Area.
    56-57 2 Starting Cylinder Of The Utility Data Area The starting physical cylinder for the Utility Data Area.
    The starting location of a contiguous area on the Mass Storage Device media with no breaks or holes allowed.
    58-59 2 Number Of Utility Data Area Cylinders Number of Utility Data Area Cylinders Total number of physical cylinders in the UtiSlity Data Area.
    60-61 2 Starting Cylinder Of The User Data Area The starting physical cylinder for the User Data Area.
    This area may be broken up by and contain within it one of the following data areas:
       Expansion BIOS Data Area
       Utility Data Area
       Grown Defects Area
    If one, two or all of these areas are contained within the User Data Area, the Number of User Data Area Cylinders does not
    include the cylinders of these area. User Data Area Cylinders are defined to stop counting on the cylinder prior to one of these areas and start counting immediately after one of these areas. Two or more of the above areas may be grouped together into one large break of the User Data Area.
    The firmware shall recognize the break and adjust the logical to physical translation for reading and writing user data appropriately.
    62-63 2 Number Of User Data Area Cylinders Total number of physical cylinders in the User Data Area.
    64-65 2 Starting Cylinder Of The Slipped Defects Area The starting physical cylinder for the Slipped Defects Area.
    This area must physically follow after the last User Data Area Cylinder.
    65-66 2 Number Of Slipped Defects Area Cylinders Total number of physical cylinders in the Slipped Defects Area
    66-67 2 Starting Cylinder of the Grown Defects Area The starting physical cylinder for the Grown Defects Area
    The starting location of a contiguous area on the Mass Storage Device media with no breaks or holes allowed.
    68-69 2 Number of Grown Defects Area Cylinders Total number of physical cylinders in the Grown Defects Area
    70-71 2 Number of Logical Cylinders The Number of Logical Cylinders on the Mass Storage Device to be presented to the operating system. This number is Mass Storage Device Manufacture supplied. The firmware shall use this value to present the logical model to the operating system when LBA values are not used
    72-73 2 Number of Logical Heads The Number of Logical Heads on the Mass Storage Device to be presented to the operating system. This number is Mass Storage Device Manufacture supplied. The firmware shall use this value to present the logical model to the operating system when LBA values are not used
    74-75 2 Number of Logical Sectors Per Track The Number of Logical Sectors Per Track on the Mass Storage Device to be presented to the operating system. This number is Mass Storage Device Manufacture supplied. The firm Ware shall use this value to present the logical model to the operating system when LBA values are not used
    76-77 4 Maximum User Area Logical Block Address Maximum User Area Logical Block Address. This number represents the last valid logical block address on the drive.
    NOTE: This number is the maximum logical block address, which is used on the drive. Logical block addresses start from 0 and count up. Therefore if this number were reported as 999, the actual number of available user sectors is 1000.
    78-81 2 Number Internal Buffer Bytes Number of Internal Data Buffer Bytes within the Mass Storage Device.
    82-83 8 FW Revision Number The Firware Revision Number.
    84-91 2 Form Factor & Manufacture Device Type Code The lower Byte of this code is the Form Factor code, which describes the form factor of the current Mass Storage Device. This will be used to uniquely identify process-related files and data to the current Mass Storage Device. Filenames shall be created using this field's data along with the Capacity number and HDA ID Code. The following form factor codes are defined:
       'A'  - 1.8" Type III Disk Drive
       'B'  - 1.8" Type II Disk Drive
       'C'  - 1.8" Type I Disk Drive
       `D'  - 2.5" * 12.5mm high Disk Drive
       'E'  - 2.5" * 10mm high Disk Drive
       'F'  - 2.5" * 8 mm high Disk Drive
       'G'  - 3.0" * 1" high Disk Drive
       'H'  - 3.0" * 0.5" high Disk Drive
       'I'  - 3.5" full height Disk Drive
       `J'  - 3.5" 1" high Disk Drive
       'K'  - 3.5" 0.5" high Disk Drive
       'L'  - 5.25" full height Disk Drive
       'M'  - 5.25" half height Disk Drive
       All other Form Factor codes are reserved for future use.
    The upper Byte of this code is the Manufacture Device Type Code which is used to unique Differentiate between Mass Storage Device with the same capacity and form factor. This code is Mass Storage Device Manufacturer defined and is only used for manufacturing process-reporting purposes.
    92-93 2 Maximum Manufacturing Defects Data Storage Size Storage Size The Maximum Manufacturing Defects Data Area Storage Size identifies to the firmware how much Host memory is required for storing the Mass Storage Device's Manufacturing Defects Data. The firmware will use this number to allocate memory and assign the address of that memory to the Mass Storage Device.
    This number is the number of BYTES of memory that is required by the Mass Storage Device to store its Manufacturing Defects Data.
    94 1 Defect Method Code The Defects Method Code identifies to the firmware what type of low level format is being used by the Mass Storage device firmware.
    95 1 Defects Structure Code The Defects Method Code identifies to the firmware what data structure is being used to store defects in. See Section 4.1.3 for details of the defined Defect Structures and what Defect Structure Code has been assigned to each structure.
    96-97 2 Read Channel & Servo Data Area Storage Size The Read Channel & Servo Data Area Storage Size identifies to the firmware how much Host memory is required for storing the Mass Storage Device's Read Channel & Servo Data. The firmware will use this number to allocate memory and assign the address of that memory to the Mass Storage Device.
    This number is the number of BYTES of memory that is required by the Mass Storage Device to store its Read Channel & Servo Data.
    98-99 2 Maximum Manufacturing facturing Defects Data Area Storage Size The Maximum Manufacturing Defects Data Area Storage Size identifies to the firmware how much Host memory is required for storing the Mass Storage Device's Manufacturing Defects Data. The firmware will use this number to allocate memory and assign the address of that memory to the Mass Storage Device.
    This number is the number of BYTES of memory that is required by the Mass Storage Device to store its Manufacturing Defects Data.
    100-101 2 Maximum Grown Defects Data Storage Size The Maximum Grown Defects Data Area Storage Size identifies to the firmware how much Host memory is required for storing the Mass Storage Device's Grown Defect Data. The firmware will use this number to allocate memory and assign the address of that memory to the Mass Storage Device.
    102-125 24 Reserved Reserved for future data.
    126-127 2 Number of Zones The number of Read/Write zones defined for the Mass Storage Device.
    128-up to 255 (128 + (# of zones * of Bytes per zone)-) up to 12B bytes of data Actual = (# of zones * # of Bytes per zone) Zone Specific Data The Zone Specific Data Array contains one structure entry for each zone. This structure provides support for up to 32 zones. Each zone contains 4 bytes of data. 4 bytes of data * 32 zones = 128 bytes maximum of zone data.
    2 First Cylinder Of Zone The total number of sectors per track in zone
    2 Number of Sectors Per Track Total number of sectors per track in zone
  • A block diagram of a portion of a computer system, showing an example of an interface 74 between a mass storage peripheral device 58 and a motherboard 52 of a host computer, in accordance with a preferred embodiment of the invention, is shown in FIGURE 3. Thus, the servo I/C 56 provides signal paths to coil terminals A, B, C, and CT of the motor windings 76 to spin and control the motor (not shown) of the mass storage peripheral device 58. It should be noted that the read channel circuitry 80, 80', and 80" is shown in dotted lines to illustrate the possible locations of the circuitry, depending upon the particular needs of the system and of the mass storage peripheral device. Thus, the read channel circuitry 80 may be entirely located in the mass storage peripheral device 58, or, alternatively, it may be located at the location 80' entirely within the PCI mass storage I/C 54. It also may be apportioned with one portion within the mass storage peripheral device 58 and another portion within the mass storage peripheral device 58. The read channel circuitry also may be located in a separate chip or integrated circuit at location 80" on the motherboard 52.
  • Although the invention has been described and illustrated with a certain degree of particularity, it is understood that the present disclosure has been made only by way of example, and that numerous changes in the combination and arrangement of parts can be resorted to by those skilled in the art without departing from the spirit and scope of the invention, as hereinafter claimed.

Claims (11)

  1. A mass storage peripheral device for use with a host computer, comprising:
    a data medium;
    a sensor for at least reading information from said data medium to develop data signals for delivery to said computer;
    a memory device containing computer readable information for characterizing said mass storage peripheral device; and
    by which said computer can access said information contained in said memory device for characterizing said mass storage peripheral device.
  2. The mass storage peripheral device of claim 1, wherein said computer readable information for characterizing said mass storage peripheral device comprises physical data definitions.
  3. The mass storage peripheral device of claim 2, wherein said physical data definitions comprise a designation of a number of logical cylinders, a number of logical heads, and a number of logical sectors per track.
  4. The mass storage peripheral device of claim 2, wherein said physical data definitions comprises an indication of read channel parameters
  5. The mass storage peripheral device of claim 4, wherein said read channel parameters comprise a read channel bandwidth.
  6. The mass storage peripheral devices of Claim 4, wherein said read channel parameters comprise read channel boost values.
  7. A method for starting a computer, comprising the acts of:
    reading physical data definitions from a memory of a mass storage peripheral device; and configuring said computer based upon the data read from said memory to communicate with said mass storage peripheral.
  8. The method of claim 7, wherein said act of reading data from a memory of a mass storage peripheral device comprises reading device identification string.
  9. The method of claim 7, wherein said act of reading data from a memory of a mass storage peripheral device comprises reading an identification of a starting cylinder of any expansion BIOS data Area.
  10. A method for configuring a mass storage peripheral device upon initializing a computer, comprising the acts of:
    Reading data that characterized physical characteristics of said mass storage peripheral device from a memory of a mass storage peripheral device; and
    Configuring said computer based upon the data read from said memory.
  11. The method of claim 10, wherein said act of reading data from a memory of a mass storage peripheral device comprises reading a designation of a number of logical cylinders, a number of logical heads, and a number of logical sectors per track.
EP99200587A 1998-03-09 1999-03-02 Mass storage peripheral device with associated personality ROM Withdrawn EP0942360A3 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US3756198A 1998-03-09 1998-03-09
US37561 2002-01-04

Publications (2)

Publication Number Publication Date
EP0942360A2 true EP0942360A2 (en) 1999-09-15
EP0942360A3 EP0942360A3 (en) 2005-02-09

Family

ID=21895005

Family Applications (1)

Application Number Title Priority Date Filing Date
EP99200587A Withdrawn EP0942360A3 (en) 1998-03-09 1999-03-02 Mass storage peripheral device with associated personality ROM

Country Status (5)

Country Link
EP (1) EP0942360A3 (en)
JP (1) JP2000030363A (en)
KR (1) KR19990077721A (en)
SG (1) SG90038A1 (en)
TW (1) TW507132B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001166885A (en) * 1999-12-09 2001-06-22 Melco Inc Storage device, storage device control method, medium on which storage device control program is stored, and computer system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0396097A2 (en) * 1989-05-02 1990-11-07 Kabushiki Kaisha Toshiba Method and apparatus for automatically setting the type of hard-disc drive
EP0444886A2 (en) * 1990-02-28 1991-09-04 Seagate Technology International Disk drive accessing system and method of accessing a disk drive
US5721952A (en) * 1995-02-17 1998-02-24 Acer Incorporated Method and apparatus for automatic detection of disk type in a computer system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5355489A (en) * 1989-08-25 1994-10-11 International Business Machines Corp. Bios load for a personal computer system having a removable processor card
US5835760A (en) * 1995-10-13 1998-11-10 Texas Instruments Incorporated Method and arrangement for providing BIOS to a host computer
US6393492B1 (en) * 1995-11-03 2002-05-21 Texas Instruments Incorporated Method and arrangement for operating a mass memory storage peripheral computer device connected to a host computer

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0396097A2 (en) * 1989-05-02 1990-11-07 Kabushiki Kaisha Toshiba Method and apparatus for automatically setting the type of hard-disc drive
EP0444886A2 (en) * 1990-02-28 1991-09-04 Seagate Technology International Disk drive accessing system and method of accessing a disk drive
US5721952A (en) * 1995-02-17 1998-02-24 Acer Incorporated Method and apparatus for automatic detection of disk type in a computer system

Also Published As

Publication number Publication date
EP0942360A3 (en) 2005-02-09
KR19990077721A (en) 1999-10-25
SG90038A1 (en) 2002-07-23
JP2000030363A (en) 2000-01-28
TW507132B (en) 2002-10-21

Similar Documents

Publication Publication Date Title
US6061751A (en) Computer system with controller circuit of an associated mass storage peripheral device located remotely from the device in the host computer
US6633933B1 (en) Controller for ATAPI mode operation and ATAPI driven universal serial bus mode operation and methods for making the same
EP1133730B1 (en) Method for flashing a read only memory (rom) chip of a host adapter with updated bios code
US5875349A (en) Method and arrangement for allowing a computer to communicate with a data storage device
US7702861B2 (en) Format mapping scheme for universal drive device
JP2001505692A (en) Method and apparatus for increasing the reserved area of a disk drive
US20040250055A1 (en) Method and system for changing software access level within or outside a host protected area
US6393492B1 (en) Method and arrangement for operating a mass memory storage peripheral computer device connected to a host computer
US20050125600A1 (en) Method for storing HDD critical data in flash
US20050125602A1 (en) HDD with storage of critical data in FLASH
US6212588B1 (en) Integrated circuit for controlling a remotely located mass storage peripheral device
US7174421B2 (en) HDD with rapid availability of critical data after critical event
US20050125603A1 (en) Method for rapid availability of critical data through re-allocation
US20020015252A1 (en) Method and apparatus for a disc drive adaptive file system
US7546403B2 (en) Method and apparatus for a disc drive client interface
US20050198425A1 (en) Combined optical storage and flash card reader using single ide or sata port and method thereof
EP0942360A2 (en) Mass storage peripheral device with associated personality ROM
US6195216B1 (en) Mass storage peripheral device with operating circuitry and programs located remotely therefrom
EP0942353A2 (en) Computer system with operating circuitry and programs of an associated mass storage peripheral device located remotely from the device
KR19990077504A (en) Computer architecture that enables operating circuitry and programs of an associated mass storage peripheral device to be located remotely from the device
US20050125651A1 (en) Method for providing critical data in an HDD after critical event
US20050122610A1 (en) Rapid availability of critical data through reallocation

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

PUAL Search report despatched

Free format text: ORIGINAL CODE: 0009013

AK Designated contracting states

Kind code of ref document: A3

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE

AX Request for extension of the european patent

Extension state: AL LT LV MK RO SI

RIC1 Information provided on ipc code assigned before grant

Ipc: 7G 06F 3/06 B

Ipc: 7G 06F 9/445 A

17P Request for examination filed

Effective date: 20050809

AKX Designation fees paid

Designated state(s): DE FR GB

AXX Extension fees paid

Extension state: SI

Payment date: 20050809

Extension state: RO

Payment date: 20050809

Extension state: MK

Payment date: 20050809

Extension state: LV

Payment date: 20050809

Extension state: LT

Payment date: 20050809

Extension state: AL

Payment date: 20050809

17Q First examination report despatched

Effective date: 20070831

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20080311