Patents by Inventor Michael J. Cornwell

Michael J. Cornwell 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: 8677057
    Abstract: Systems and processes may use a host and an external host. The host may be a portable device that includes a memory, a memory controller, and a communication interface for communication with the external host. The portable device may receive a command signal from the external host and initiate a predetermined amount of wear leveling in response to the command signal.
    Type: Grant
    Filed: February 22, 2011
    Date of Patent: March 18, 2014
    Assignee: Apple Inc.
    Inventors: Michael J. Cornwell, Christopher P. Dudte, Nir Jacob Wakrat
  • Publication number: 20140010014
    Abstract: Systems and processes may use a first memory, a second memory, and a memory controller. The second memory is at least as large as a block of the first memory. Data is received and stored in the second memory for further writing to the second memory.
    Type: Application
    Filed: September 10, 2013
    Publication date: January 9, 2014
    Applicant: Apple Inc.
    Inventors: Michael J. Cornwell, Christopher P. Dudte
  • Patent number: 8588008
    Abstract: Systems and methods, including computer software for performing operations enable interleaving of charging operations in a charging pump. A first charge pump is charged to a predetermined level, and a first operation is performed using a charge stored in the first charge pump after it reaches the predetermined level. A second charge pump is charged during a time that overlaps with performing the first operation. A second operation is performed using a charge stored in the second charge pump as a result of charging the second charge pump.
    Type: Grant
    Filed: June 15, 2012
    Date of Patent: November 19, 2013
    Assignee: Apple Inc.
    Inventor: Michael J. Cornwell
  • Publication number: 20130272065
    Abstract: A system and method for storing data uses multiple flash memory dies. Each flash memory die includes multiple flash memory cells. A charge pump is adapted to supply charge at a predetermined voltage to each flash memory die of the flash memory dies, and an interface is adapted to receive instructions for controlling the charge pump.
    Type: Application
    Filed: June 10, 2013
    Publication date: October 17, 2013
    Inventors: Michael J. Cornwell, Christopher P. Dudte
  • Patent number: 8531883
    Abstract: Systems and processes may use a first memory, a second memory, and a memory controller. The second memory is at least as large as a block of the first memory. Data is received and stored in the second memory for further writing to the second memory.
    Type: Grant
    Filed: January 5, 2011
    Date of Patent: September 10, 2013
    Assignee: Apple Inc.
    Inventors: Michael J. Cornwell, Christopher P. Dudte
  • Patent number: 8462550
    Abstract: A system and method for storing data uses multiple flash memory dies. Each flash memory die includes multiple flash memory cells. A charge pump is adapted to supply charge at a predetermined voltage to each flash memory die of the flash memory dies, and an interface is adapted to receive instructions for controlling the charge pump.
    Type: Grant
    Filed: July 5, 2011
    Date of Patent: June 11, 2013
    Assignee: Apple Inc.
    Inventors: Michael J. Cornwell, Christopher P. Dudte
  • Patent number: 8407705
    Abstract: Systems and processes may be implemented to receive threads of execution and assign priorities to the threads of execution. Threads of execution may include nonvolatile memory input/output threads, other input/output threads, and/or other non-input/output threads. A lower priority may be assigned to nonvolatile memory input/output threads than other input/output threads. An algorithm may determine an order of execution of the threads of execution. An order of execution may be at least partially based on assigned priorities.
    Type: Grant
    Filed: August 16, 2011
    Date of Patent: March 26, 2013
    Assignee: Apple Inc.
    Inventors: Michael J. Cornwell, Christopher P. Dudte
  • Patent number: 8364941
    Abstract: Systems, methods, and computer software for operating a device can be used to operate the device in multiple modes. The device can be operated in a first operating mode adapted for processing data, in which a first processor executes a driver for a nonvolatile memory and a second processor performs processing of data stored in files on the nonvolatile memory. An instruction can be received to switch the device to a second operating mode adapted for reading and/or writing files from or to the nonvolatile memory. The driver for the nonvolatile memory can be switched from the first processor to the second processor in response to the instruction, and the driver for the nonvolatile memory can be executed on the second processor after performing the switch. A communications driver can be executed on the first processor in response to the instruction to switch the device to the second operating mode.
    Type: Grant
    Filed: October 11, 2010
    Date of Patent: January 29, 2013
    Assignee: Apple Inc.
    Inventors: Michael J. Cornwell, Christopher P. Dudte
  • Patent number: 8356231
    Abstract: A system and method, including computer software, allows reading data from a flash memory cell. Voltages from a group of memory cells are detected. The group of memory cells have associated metadata for error detection, and each memory cell stores a voltage representing a data value selected from multiple possible data values. Each possible data value corresponds to one range of multiple non-overlapping ranges of analog voltages. Memory cells having uncertain data values are identified based on the detected voltages. Alternative data values for the memory cells having the uncertain data values are determined, and a combination of alternative data values is selected. An error detection test is performed using the metadata associated with the multiple memory cells and the selected combination of alternative data values.
    Type: Grant
    Filed: February 27, 2012
    Date of Patent: January 15, 2013
    Assignee: Apple Inc.
    Inventors: Michael J. Cornwell, Christopher P. Dudte
  • Patent number: 8355284
    Abstract: A flash disk controller includes an input operable to receive analog signals from a flash memory die. The flash memory die includes multiple flash memory cells. The analog signals represent data values stored in the flash memory cells. An analog-to-digital conversion module is coupled to the input to convert received analog signals into digital data. A control module selects memory cells from which the input receives analog signals.
    Type: Grant
    Filed: March 18, 2011
    Date of Patent: January 15, 2013
    Assignee: Apple Inc.
    Inventors: Christopher P. Dudte, Michael J. Cornwell
  • Publication number: 20130013861
    Abstract: A method for managing data storage is described. The method includes receiving data from an external host at a peripheral storage device, detecting a file system type of the external host, and adapting a caching policy for transmitting the data to a memory accessible by the storage device, wherein the caching policy is based on the detected file system type. The detection of the file system type can be based on the received data. The detection bases can include a size of the received data. In some implementations, the detection of the file system type can be based on accessing the memory for file system type indicators that are associated with a unique file system type. Adapting the caching policy can reduce a number of data transmissions to the memory. The detected file system type can be a file allocation table (FAT) system type.
    Type: Application
    Filed: September 15, 2012
    Publication date: January 10, 2013
    Inventors: Michael J. Cornwell, Christopher P. Dudle, Kenneth L. Herman
  • Patent number: 8291166
    Abstract: A method for managing data storage is described. The method includes receiving data from an external host at a peripheral storage device, detecting a file system type of the external host, and adapting a caching policy for transmitting the data to a memory accessible by the storage device, wherein the caching policy is based on the detected file system type. The detection of the file system type can be based on the received data. The detection bases can include a size of the received data. In some implementations, the detection of the file system type can be based on accessing the memory for file system type indicators that are associated with a unique file system type. Adapting the caching policy can reduce a number of data transmissions to the memory. The detected file system type can be a file allocation table (FAT) system type.
    Type: Grant
    Filed: May 24, 2010
    Date of Patent: October 16, 2012
    Assignee: Apple Inc.
    Inventors: Michael J. Cornwell, Christopher P. Dudte, Kenneth L. Herman
  • Publication number: 20120260026
    Abstract: Systems and processes may include a memory coupled to a memory controller. Command signals for performing memory access operations may be received. Attributes of the command signals, such as type, time lapsed since receipt, and relatedness to other command signals, may be determined. Command signals may be sequenced in a sequence of execution based on the attributes. Command signals may be executed in the sequence of execution.
    Type: Application
    Filed: April 23, 2012
    Publication date: October 11, 2012
    Inventors: Michael J. Cornwell, Christopher P. Dudte, Thomas R. Colligan
  • Publication number: 20120250422
    Abstract: Systems and methods, including computer software for performing operations enable interleaving of charging operations in a charging pump. A first charge pump is charged to a predetermined level, and a first operation is performed using a charge stored in the first charge pump after it reaches the predetermined level. A second charge pump is charged during a time that overlaps with performing the first operation. A second operation is performed using a charge stored in the second charge pump as a result of charging the second charge pump.
    Type: Application
    Filed: June 15, 2012
    Publication date: October 4, 2012
    Inventor: Michael J. Cornwell
  • Publication number: 20120224434
    Abstract: Systems and methods, including computer software for performing operations enable interleaving of charging operations in a charging pump. A first charge pump is charged to a predetermined level, and a first operation is performed using a charge stored in the first charge pump after it reaches the predetermined level. A second charge pump is charged during a time that overlaps with performing the first operation. A second operation is performed using a charge stored in the second charge pump as a result of charging the second charge pump.
    Type: Application
    Filed: May 14, 2012
    Publication date: September 6, 2012
    Inventor: Michael J. Cornwell
  • Publication number: 20120155174
    Abstract: A system and method, including computer software, allows reading data from a flash memory cell. Voltages from a group of memory cells are detected. The group of memory cells have associated metadata for error detection, and each memory cell stores a voltage representing a data value selected from multiple possible data values. Each possible data value corresponds to one range of multiple non-overlapping ranges of analog voltages. Memory cells having uncertain data values are identified based on the detected voltages. Alternative data values for the memory cells having the uncertain data values are determined, and a combination of alternative data values is selected. An error detection test is performed using the metadata associated with the multiple memory cells and the selected combination of alternative data values.
    Type: Application
    Filed: February 27, 2012
    Publication date: June 21, 2012
    Applicant: Apple Inc.
    Inventors: Michael J. Cornwell, Christopher P. Dudte
  • Patent number: 8203892
    Abstract: Systems and methods, including computer software for performing operations enable interleaving of charging operations in a charging pump. A first charge pump is charged to a predetermined level, and a first operation is performed using a charge stored in the first charge pump after it reaches the predetermined level. A second charge pump is charged during a time that overlaps with performing the first operation. A second operation is performed using a charge stored in the second charge pump as a result of charging the second charge pump.
    Type: Grant
    Filed: July 21, 2011
    Date of Patent: June 19, 2012
    Assignee: Apple Inc.
    Inventor: Michael J. Cornwell
  • Patent number: 8179728
    Abstract: Systems and methods, including computer software for performing operations enable interleaving of charging operations in a charging pump. A first charge pump is charged to a predetermined level, and a first operation is performed using a charge stored in the first charge pump after it reaches the predetermined level. A second charge pump is charged during a time that overlaps with performing the first operation. A second operation is performed using a charge stored in the second charge pump as a result of charging the second charge pump.
    Type: Grant
    Filed: July 28, 2009
    Date of Patent: May 15, 2012
    Assignee: Apple Inc.
    Inventor: Michael J. Cornwell
  • Patent number: 8171318
    Abstract: Apparatus and associated systems, methods and computer program products relate to using information stored in a flash memory to adjust the operating voltage supplied to the flash memory. The voltage information indicates a minimum operating voltage at which to operate the flash memory device. In general, operating a flash memory device near a minimal operating voltage may substantially minimize power consumption. The minimum operating voltage for individual flash memory devices may vary from IC to IC, by manufacturing lot, and by manufacturer. In a product, the minimum operating voltage for a particular flash memory may be determined, for example, by a controller built-in to a flash memory reporting (automatically or in response to a query) the minimum operating voltage (e.g., 2.5 V, 3.15 V) to a memory controller or microprocessor. The stored voltage information may further include information to adjust the operating voltage based on temperature.
    Type: Grant
    Filed: March 2, 2010
    Date of Patent: May 1, 2012
    Assignee: Apple Inc.
    Inventors: Michael J. Cornwell, Christopher P. Dudte, Joseph R. Fisher, Jr.
  • Patent number: 8166236
    Abstract: Systems and processes may include a memory coupled to a memory controller. Command signals for performing memory access operations may be received. Attributes of the command signals, such as type, time lapsed since receipt, and relatedness to other command signals, may be determined. Command signals may be sequenced in a sequence of execution based on the attributes. Command signals may be executed in the sequence of execution.
    Type: Grant
    Filed: August 8, 2011
    Date of Patent: April 24, 2012
    Assignee: Apple Inc.
    Inventors: Michael J. Cornwell, Christopher P. Dudte, Thomas R. Colligan