Patents by Inventor Hooshmand Torabi

Hooshmand Torabi has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8000153
    Abstract: A flash storage device includes flash storage units that are erased in response to a condition or command while allowing the flash storage device to be used subsequent to the erase. A flash controller interface receives a command for erasing the flash storage device and provides an erase command to flash controllers in the flash storage device. Alternatively, the flash storage device detects a condition in response to which the flash controller interface provides an erase command to the flash controllers. Each flash controller independently erases a flash storage unit in response to receiving the purge command such that the flash storage units are erased substantially in parallel with each other and the erase operations overlap. Subsequent to the erase, certain control data is reconstructed to allow subsequent use of the flash storage device.
    Type: Grant
    Filed: October 1, 2008
    Date of Patent: August 16, 2011
    Assignee: STEC, Inc.
    Inventors: Nader Salessi, Hooshmand Torabi, Chak-Fai Cheng, Hosein Gazeri, Richard Mataya
  • Patent number: 7962687
    Abstract: A flash storage device having improved write performance is provided. The device includes a storage block having a plurality of physical pages and a controller configured to allocate subsets of the plurality of physical pages to a plurality of logical addresses, respectively, and to write data to the plurality of physical pages. Each of the subsets of physical pages includes more than one physical page. Upon receiving a first write request for one of the logical addresses, data from the first write request is written to a first physical page of the physical pages allocated to the logical address. Upon receiving a second write request for one of the logical address, the data from the second write request is written to a second physical page allocated to the logical address and the first physical page allocated to the logical address is invalidated.
    Type: Grant
    Filed: August 17, 2009
    Date of Patent: June 14, 2011
    Assignee: STEC, Inc.
    Inventor: Hooshmand Torabi
  • Patent number: 7958280
    Abstract: A process of data storage utilizing a data management system that transfers data between a host system and multiple storage devices through multiple channels. The data management system receives data from the host system and writes the data as data segments to the multiple storage devices. Each data segment may comprise one sector, more than one sector, or a portion of a sector, depending on the embodiment. The data segments are transferred to and from the multiple storage devices in parallel fashion while the data in each data segment is transferred to its corresponding data storage device sequentially. The data management system reassembles data segments received from the data storage devices and sends the data to the host system.
    Type: Grant
    Filed: October 26, 2007
    Date of Patent: June 7, 2011
    Assignee: STEC, Inc.
    Inventors: Nader Salessi, Hooshmand Torabi
  • Patent number: 7929354
    Abstract: A flash storage device includes flash storage units that are purged in response to a condition or command wherein, during or subsequent to the purge, the purge is verified. A flash controller interface receives a command for purging the flash storage device and provides a purge command to flash controllers in the flash storage device. Alternatively, the flash storage device detects a condition in response to which the flash controller interface provides a purge command to the flash controllers. Each flash controller independently erases a flash storage unit in response to receiving the purge command such that the flash storage units are erased substantially in parallel with each other. The purge of the flash storage device is subsequently verified.
    Type: Grant
    Filed: April 11, 2009
    Date of Patent: April 19, 2011
    Assignee: STEC, Inc.
    Inventors: Nader Salessi, Hooshmand Torabi, Chak-Fai Cheng, Hosein Gazeri, Richard Mataya
  • Patent number: 7903474
    Abstract: A flash storage device includes flash storage units that are purged in response to a condition or command. A flash controller interface receives a command for purging the flash storage device and provides a purge command to flash controllers in the flash storage device. Alternatively, the flash storage device detects a condition in response to which the flash controller interface provides a purge command to the flash controllers. Each flash controller independently erases a flash storage unit in response to receiving the purge command, by writing a pattern of data to the flash storage unit, such that the flash storage units are purged substantially in parallel with each other.
    Type: Grant
    Filed: April 11, 2009
    Date of Patent: March 8, 2011
    Assignee: STEC, Inc.
    Inventors: Nader Salessi, Hooshmand Torabi, Chak-Fai Cheng, Hosein Gazeri, Richard Mataya
  • Patent number: 7894288
    Abstract: A parallel data storage system for storing data received from, or retrieving data to, a host system using multiple data storage devices. The system includes an interface for communicating with the host system and a buffer configured to store data sectors received from the host system via the interface. A switch is used to selectively connect the interface and the data storage devices to the buffer to facilitate the transfer of data into and out of the buffer. The data sectors are transferred by segmenting each sector into multiple smaller data cells and distributing these data cells among the data storage devices using an arbitrated distribution method.
    Type: Grant
    Filed: October 6, 2009
    Date of Patent: February 22, 2011
    Assignee: STEC, Inc.
    Inventors: Hooshmand Torabi, Chak-Fai Cheng, Nader Salessi, Hosein Gazeri
  • Patent number: 7822887
    Abstract: A data storage system includes a data management system that transfers data between a host system and multiple storage devices through multiple channels. The data management system receives data from the host system and writes the data as data segments to the multiple storage devices. Each data segment may comprise one sector, more than one sector, or a portion of a sector, depending on the embodiment. The data segments are transferred to and from the multiple storage devices in parallel fashion while the data in each data segment is transferred to its corresponding data storage device sequentially. The data management system reassembles data segments received from the data storage devices and sends the data to the host system.
    Type: Grant
    Filed: October 26, 2007
    Date of Patent: October 26, 2010
    Assignee: STEC, Inc.
    Inventors: Hooshmand Torabi, Nader Salessi
  • Patent number: 7814265
    Abstract: A flash storage device having improved write performance is provided. The device includes a storage block having a plurality of physical pages and a controller for mapping the plurality of physical pages to a plurality of logical addresses and for writing data to the plurality of physical pages. When updating data previously written to one of the plurality of logical addresses, the controller is configured to write the updated data to a second physical page which is mapped to the logical address. Each of the logical addresses may be associated with a pointer field, which is for storing a pointer value indicating the invalidity of a physical page and/or the location of another physical page.
    Type: Grant
    Filed: June 17, 2008
    Date of Patent: October 12, 2010
    Assignee: STEC, Inc.
    Inventor: Hooshmand Torabi
  • Patent number: 7765339
    Abstract: A data storage system includes a data management system that transfers data between a host system and multiple storage devices through multiple channels. The data addressing is distributed amongst channels to improve system performance and durability. In one embodiment, each channel has an address translation table or address map which is utilized to gain performance improvement during data transfer or erasure, and an increase of the device's useful life span.
    Type: Grant
    Filed: October 26, 2007
    Date of Patent: July 27, 2010
    Assignee: STEC, Inc.
    Inventors: Nader Salessi, Hooshmand Torabi
  • Patent number: 7743277
    Abstract: A data storage system using flash storage maintains a status indicator corresponding to data written into the flash storage. The status indictor of the data indicates whether a disruption, such as a power disruption or a device disconnection, occurred when the data was being written into the flash storage. The data storage system determines whether the data may be corrupted based on one or more of the status indictors. The data storage system may make this determination at a selected time or after a power-up of the data storage system. If the data is determined to possibly be corrupted, the data storage system may optionally discard the corrupted data from the flash storage or flag the corrupted data for future removal.
    Type: Grant
    Filed: February 13, 2006
    Date of Patent: June 22, 2010
    Assignee: STEC, Inc.
    Inventors: Hooshmand Torabi, Chien-Hung Wu
  • Patent number: 7711892
    Abstract: A flash storage device having improved write performance is provided. The device includes a storage block having a plurality of physical pages and a controller for mapping the plurality of physical pages to a plurality of logical addresses at initialization or at run-time of the flash storage device and for writing data to the plurality of physical pages. When updating data previously written to one of the plurality of logical addresses, the controller is configured to write the updated data to a second physical page which is mapped to the logical address. Each of the logical addresses may be associated with a pointer field, which is for storing a pointer value indicating the invalidity of a physical page and/or the location of another physical page.
    Type: Grant
    Filed: June 17, 2008
    Date of Patent: May 4, 2010
    Assignee: STEC, Inc.
    Inventor: Hooshmand Torabi
  • Publication number: 20100023714
    Abstract: A parallel data storage system for storing data received from, or retrieving data to, a host system using multiple data storage devices. The system includes an interface for communicating with the host system and a buffer configured to store data sectors received from the host system via the interface. A switch is used to selectively connect the interface and the data storage devices to the buffer to facilitate the transfer of data into and out of the buffer. The data sectors are transferred by segmenting each sector into multiple smaller data cells and distributing these data cells among the data storage devices using an arbitrated distribution method.
    Type: Application
    Filed: October 6, 2009
    Publication date: January 28, 2010
    Applicant: STEC, INC.
    Inventors: Hooshmand TORABI, Chak-Fai Cheng, Nader Salessi, Hosein Gazeri
  • Publication number: 20090300276
    Abstract: A flash storage device having improved write performance is provided. The device includes a storage block having a plurality of physical pages and a controller configured to allocate subsets of the plurality of physical pages to a plurality of logical addresses, respectively, and to write data to the plurality of physical pages. Each of the subsets of physical pages includes more than one physical page. Upon receiving a first write request for one of the logical addresses, data from the first write request is written to a first physical page of the physical pages allocated to the logical address. Upon receiving a second write request for one of the logical address, the data from the second write request is written to a second physical page allocated to the logical address and the first physical page allocated to the logical address is invalidated.
    Type: Application
    Filed: August 17, 2009
    Publication date: December 3, 2009
    Applicant: STEC, INC.
    Inventor: Hooshmand Torabi
  • Patent number: 7619941
    Abstract: A parallel data storage system for storing data received from, or retrieving data to, a host system using multiple data storage devices. The system includes an interface for communicating with the host system and a buffer configured to store data sectors received from the host system via the interface. A switch is used to selectively connect the interface and the data storage devices to the buffer to facilitate the transfer of data into and out of the buffer. The data sectors are transferred by segmenting each sector into multiple smaller data cells and distributing these data cells among the data storage devices using an arbitrated distribution method.
    Type: Grant
    Filed: May 16, 2008
    Date of Patent: November 17, 2009
    Assignee: STEC, Inc.
    Inventors: Hooshmand Torabi, Chak-Fai Cheng, Nader Salessi, Hosein Gazeri
  • Patent number: 7594067
    Abstract: A flash storage device having improved write performance is provided. The device includes a storage block having a plurality of physical pages and a controller for mapping the plurality of physical pages to a plurality of logical addresses and for writing data to the plurality of physical pages. When updating data previously written to one of the plurality of logical addresses, the controller is configured to write the updated data to a second physical page which is mapped to the logical address. Each of the logical addresses may be associated with a pointer field, which is for storing a pointer value indicating the invalidity of a physical page and/or the location of another physical page.
    Type: Grant
    Filed: October 18, 2006
    Date of Patent: September 22, 2009
    Assignee: STEC, Inc.
    Inventor: Hooshmand Torabi
  • Publication number: 20090201732
    Abstract: A flash storage device includes flash storage units that are purged in response to a condition or command. A flash controller interface receives a command for purging the flash storage device and provides a purge command to flash controllers in the flash storage device. Alternatively, the flash storage device detects a condition in response to which the flash controller interface provides a purge command to the flash controllers. Each flash controller independently erases a flash storage unit in response to receiving the purge command such that the flash storage units are erased substantially in parallel with each other.
    Type: Application
    Filed: April 11, 2009
    Publication date: August 13, 2009
    Inventors: Nader Salessi, Hooshmand Torabi, Chak-Fai Cheng, Hosein Gazeri, Richard Mataya
  • Publication number: 20090201734
    Abstract: A flash storage device includes flash storage units that are purged in response to a condition or command wherein, during or subsequent to the purge, the purge is verified. A flash controller interface receives a command for purging the flash storage device and provides a purge command to flash controllers in the flash storage device. Alternatively, the flash storage device detects a condition in response to which the flash controller interface provides a purge command to the flash controllers. Each flash controller independently erases a flash storage unit in response to receiving the purge command such that the flash storage units are erased substantially in parallel with each other. The purge of the flash storage device is subsequently verified.
    Type: Application
    Filed: April 11, 2009
    Publication date: August 13, 2009
    Inventors: Nader Salessi, Hooshmand Torabi, Chak-Fai Cheng, Hosein Gazeri, Richard Mataya
  • Publication number: 20090204749
    Abstract: A flash storage device includes flash storage units that are purged in response to a condition or command. A flash controller interface receives a command for purging the flash storage device and provides a purge command to flash controllers in the flash storage device. Alternatively, the flash storage device detects a condition in response to which the flash controller interface provides a purge command to the flash controllers. Each flash controller independently erases a flash storage unit in response to receiving the purge command, by writing a pattern of data to the flash storage unit, such that the flash storage units are purged substantially in parallel with each other.
    Type: Application
    Filed: April 11, 2009
    Publication date: August 13, 2009
    Inventors: Nader Salessi, Hooshmand Torabi, Chak-Fai Cheng, Hosein Gazeri, Richard Mataya
  • Publication number: 20090046513
    Abstract: A flash storage device includes flash storage units that are erased in response to a condition or command while allowing the flash storage device to be used subsequent to the erase. A flash controller interface receives a command for erasing the flash storage device and provides an erase command to flash controllers in the flash storage device. Alternatively, the flash storage device detects a condition in response to which the flash controller interface provides an erase command to the flash controllers. Each flash controller independently erases a flash storage unit in response to receiving the purge command such that the flash storage units are erased substantially in parallel with each other and the erase operations overlap. Subsequent to the erase, certain control data is reconstructed to allow subsequent use of the flash storage device.
    Type: Application
    Filed: October 1, 2008
    Publication date: February 19, 2009
    Applicant: STEC, Inc.
    Inventors: Nader Salessi, Hooshmand Torabi, Chak Fai Cheng, Hosein Gazeri, Richard Mataya
  • Publication number: 20080288717
    Abstract: A flash storage device having improved write performance is provided. The device includes a storage block having a plurality of physical pages and a controller for mapping the plurality of physical pages to a plurality of logical addresses and for writing data to the plurality of physical pages. When updating data previously written to one of the plurality of logical addresses, the controller is configured to write the updated data to a second physical page which is mapped to the logical address. Each of the logical addresses may be associated with a pointer field, which is for storing a pointer value indicating the invalidity of a physical page and/or the location of another physical page.
    Type: Application
    Filed: June 17, 2008
    Publication date: November 20, 2008
    Applicant: STEC, Inc.
    Inventor: Hooshmand TORABI