EP1627331A2

Intelligent data storage and processing using fpga devices

Abstract

This record has no abstract on file.

EP1627331A2, drawing sheet 1
Sheet 1 of 2

Term

Term ended

Projected expiry passed 21 May 2024, 2.3 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

97 claims: 13 independent, 84 dependent

  1. 1
    Claims of equivalent WO 2005048134 A2 What is claimed is :1. A programmable logic device in communication with a mass storage medium, said device being configured to manipulate data passing to or from said mass storage medium in a continuous data stream.
  2. 8
    The device of claim l wherein said data manipulation includes at least a compression operation.
  3. 17
    A method of manipulating data moving to or from a mass storage medium in a continuous stream, the method comprising:receiving a continuous data stream moving to or from a mass storage medium;and manipulating data in said continuous stream with reconfigurable hardware logic.
  4. 29
    For a programmable logic device in communication with a mass storage medium, the programmable logic device being configured to process data moving to or from the mass storage medium in accordance with a template loaded thereon, the template defining one or more processing functions, each function having an associated performance characteristic for data processing performed thereby, a method for selecting a template for programming the programmable logic device, the method comprising:selecting a stored template from a plurality of stored templates for loading into the programmable logic device at least partially on the basis of the determined performance characteristics for each function defined by the templates.
  5. 39
    A data processing system comprising:a data storage medium;a processing device in communication with the data storage medium;and a computer system having a system bus, wherein the computer system is configured to communicate with the processing device over the system bus;and wherein the processing device comprises a programmable logic device configured to process the data, as it passes between the data storage medium and the computer system, through a plurality of stages implemented on the programmable logic device as a processing pipeline, each processing stage being dedicated to a different processing operation.
  6. 53
    A hard disk drive accelerator for connection between a hard disk drive and a processor, said accelerator comprising reconfigurable hardware logic arranged such that data read from the hard disk drive streams through the reconfigurable hardware logic prior to being passed on to the processor, wherein the reconfigurable hardware logic is configured to process the data stream through pipeline comprising a plurality of processing stages, each processing stage being configured to perform a data processing operation on the data it receives .
  7. 65
    A device for compressing data, the device comprising:a programmable logic device in communication with a data storage medium, the programmable logic device being configured to (1) receive data from a data source, (2) perform a compression operation on the received data to thereby create compressed data, and (3) store the compressed data in the data storage medium.
  8. 69
    A device for decompressing data, the device comprising:a programmable logic device in communication with a data storage medium, the data storage medium comprising data stored therein in a compressed format, the programmable logic device being configured to (1) receive a continuous stream of compressed data from the data storage medium, and (2) perform a decompression operation on the received continuous stream of compressed data to thereby create decompressed data.
  9. 73
    A data storage medium upon which data is stored magnetically for subsequent retrieval by a magnetic read head, the medium comprising:a rotatable magnetic medium;and a plurality of discontiguous arcs located on the magnetic medium for storing data.
  10. 81
    A method of reading data from a rotatable planar magnetic storage medium upon which data is stored on a plurality of discontiguous circular arcs, and wherein the plurality of discontiguous circular arcs together define a generally helical pattern about a central origin, the method comprising:rotating the magnetic storage medium;and positioning a read head to follow the generally helical pattern on the magnetic storage medium as the storage medium rotates .
  11. 83
    A disk drive system for magnetically storing data, the system comprising:a rotatable disk upon which data is magnetically stored in a plurality of discontiguous arcs, wherein each arc possesses a substantially constant curvature;a device for rotating the disk when data is to be read therefrom;a read head positioned for reading the data stored on the disk as the disk rotates;and a positioning system configured to position the read head over the disk such that, as the disk rotates, the read head follows the generally helical pattern of the discontiguous arcs .
  12. 86
    A method of storing a data file on a storage medium, the data file having a file size comprising a total number of bytes therein, the method comprising:if the file size is an even power of 2, requesting a block of storage space on the storage medium equal to the file size;if the file size is not an even power of 2, requesting a plurality of blocks of storage space on the storage medium, each block having a size that is equal to a power of 2;and if the request is accepted, storing the data file on the storage medium as one or more data file segments in accordance with the request.
  13. 92
    A method of storing a data file on a storage medium, the data file having a file size comprising a total number of bytes therein, the method comprising:maintaining a minimum size 2m for a block of storage space into which the data file or a segment thereof will be stored;if the file size is an even power of 2 and greater than or equal to 2m, requesting a block of storage space on the storage medium equal to the file size;if the file size is less than 2m, requesting a block of storage space on the storage medium equal to 2m;if the file size is not an even power of 2 and greater than 2m, requesting a plurality of blocks of storage space on the storage medium, each block having a size that is equal to a power of 2 and equal to or greater than 2m;and if the request is accepted, storing the data file on the storage medium in accordance with the request.