Patents by Inventor Kenneth Herman

Kenneth Herman 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).

  • Publication number: 20120023351
    Abstract: Systems and methods are disclosed for dynamically allocating power for a system having non-volatile memory. A power budgeting manager of a system can determine if the total amount of power available for the system is below a pre-determined power level (e.g., a low power state). While the system is operating in the low power state, the power budgeting manager can dynamically allocate power among various components of the system (e.g., a processor and non-volatile memory).
    Type: Application
    Filed: July 26, 2010
    Publication date: January 26, 2012
    Applicant: Apple Inc.
    Inventors: Nir J. Wakrat, Kenneth Herman, Matthew Byom
  • Publication number: 20110239065
    Abstract: Systems and methods are disclosed for performing run-time tests on a non-volatile memory (“NVM”), such as flash memory. The run-time tests may be tests that are performed on the NVM while the NVM can be operated by an end user (as opposed to during a manufacturing phase). In some embodiments, a controller for the NVM may detect an error event that may be indicative of a systemic failure of a die of the NVM. The controller may then select one or more blocks in the die to test, which may be dies that are currently not being used to store user data. The controller may post process the results of the test to determine whether there is a systemic failure, such as a column failure, and may treat the systemic failure if there is one.
    Type: Application
    Filed: March 24, 2010
    Publication date: September 29, 2011
    Applicant: Apple Inc.
    Inventors: Matthew Byom, Daniel J. Post, Kenneth Herman, Vadim Khmelnitsky
  • Publication number: 20110239064
    Abstract: Systems and methods are disclosed for managing a non-volatile memory (“NVM”), such as a flash memory. The NVM may be managed based on results of a test performed on the NVM. The test may indicate, for example, physical memory locations that may be susceptible to errors, such as certain pages in the blocks of the NVM. Tests on multiple NVMs of the same type may be compiled to create a profile of error tendencies for that type of NVM. In some embodiments, data may be stored in the NVM based on individual test results for the NVM or based on a profile of the NVM type. For example, memory locations susceptible to error may be retired or data stored in those memory locations may be protected by a stronger error correcting code.
    Type: Application
    Filed: March 24, 2010
    Publication date: September 29, 2011
    Applicant: Apple Inc.
    Inventors: Matthew Byom, Nir J. Wakrat, Kenneth Herman, Daniel J. Post
  • Publication number: 20110213945
    Abstract: Systems and methods are disclosed for partitioning data for storage in a non-volatile memory (“NVM”), such as flash memory. In some embodiments, a priority may be assigned to data being stored, and the data may be logically partitioned based on the priority. For example, a file system may identify a logical address within a first predetermined range for higher priority data and within a second predetermined range for lower priority data, such using a union file system. Using the logical address, a NVM driver can determine the priority of data being stored and can process (e.g., encode) the data based on the priority. The NVM driver can store an identifier in the NVM along with the data, and the identifier can indicate the processing techniques used on the associated data.
    Type: Application
    Filed: February 26, 2010
    Publication date: September 1, 2011
    Applicant: Apple Inc.
    Inventors: Daniel J. Post, Matthew Byom, Vadim Khmelnitsky, Nir J. Wakrat, Kenneth Herman
  • Publication number: 20110209028
    Abstract: Systems and methods are disclosed for remapping codewords for storage in a non-volatile memory, such as flash memory. In some embodiments, a controller that manages the non-volatile memory may prepare codeword using a suitable error correcting code. The controller can store a first portion of the codeword in a lower page of the non-volatile memory may store a second portion of the codeword in an upper page of the non-volatile memory. Because upper and lower pages may have different resiliencies to error-causing phenomena, remapping codewords in this manner may even out the bit error rates of the codewords (which would otherwise have a more bimodal distribution).
    Type: Application
    Filed: February 24, 2010
    Publication date: August 25, 2011
    Applicant: Apple Inc.
    Inventors: Daniel J. Post, Kenneth Herman
  • Publication number: 20110173462
    Abstract: Systems and methods are disclosed for managing the peak power consumption of a system, such as a non-volatile memory system (e.g., flash memory system). The system can include multiple subsystems and a controller for controlling the subsystems. Each subsystem may have a current profile that is peaky. Thus, the controller may control the peak power of the system by, for example, limiting the number of subsystems that can perform power-intensive operations at the same time or by aiding a subsystem in determining the peak power that the subsystem may consume at any given time.
    Type: Application
    Filed: July 26, 2010
    Publication date: July 14, 2011
    Applicant: Apple Inc.
    Inventors: Nir J. Wakrat, Daniel J. Post, Kenneth Herman, Vadim Khmelnitsky, Nick Seroff, Hsiao Thio, Matthew Byom
  • Publication number: 20110055454
    Abstract: Systems and methods are provided for storing data in a portion of a non-volatile memory (“NVM”) such that the status of the NVM portion can be determined with high probability on a subsequent read. An NVM interface, which may receive write commands to store user data in the NVM, can store a fixed predetermined sequence (“FPS”) with the user data. The FPS may ensure that a successful read operation on a NVM portion is not misinterpreted as a failed read operation or as an erased NVM portion. For example, if the NVM returns an all-zero vector when a read request fails, the FPS can include at least one “1” or one “0”, as appropriate, to differentiate between successful and unsuccessful read operations. In some embodiments, the FPS may also be used to differentiate between disturbed data, which passes an error correction check, and correct data.
    Type: Application
    Filed: September 1, 2009
    Publication date: March 3, 2011
    Applicant: Apple Inc.
    Inventors: Matthew Byom, Kenneth Herman
  • Publication number: 20110010698
    Abstract: Systems and methods are provided for testing a non-volatile memory, such as a flash memory. The non-volatile memory may be virtually partitioned into a test region and a general purpose region. A test application may be stored in the general purpose region, and the test application can be executed to run a test of the memory locations in the test region. The results of the test may be stored in the general purpose region. At the completion of the test, the test results may be provided from the general purpose region and displayed to a user. The virtual partitions may be removed prior to shipping the electronic device for distribution.
    Type: Application
    Filed: July 13, 2009
    Publication date: January 13, 2011
    Applicant: Apple Inc.
    Inventors: Matthew Byom, Nir J. Wakrat, Kenneth Herman
  • Patent number: 7849365
    Abstract: This invention is directed to allowing an electronic device with a failed file system to dynamically direct a host device to reformat it, by making the storage component appear to be in its unformatted state. Upon detection of file system failure, the device writes changes to its disk to make it appear as factory-new to a host device. The host device treats the electronic device as if it is a brand new device that has never been connected to a host device before, and reformats it. By reformatting the device's storage component, the host device thereby provides a way to maintain communication between the host device and electronic device, allowing a more sophisticated application to then diagnose and recover the contents of the storage component, without the involvement of the user or a specialist. This avoids returns of devices with failed file systems, thereby improving the overall user experience.
    Type: Grant
    Filed: July 30, 2008
    Date of Patent: December 7, 2010
    Assignee: Apple Inc.
    Inventor: Kenneth Herman
  • Publication number: 20100228549
    Abstract: Algorithms for synthesizing speech used to identify media assets are provided. Speech may be selectively synthesized from text strings associated with media assets, where each text string can be associated with a native string language (e.g., the language of the string). When several text strings are associated with at least two distinct languages, a series of rules can be applied to the strings to identify a single voice language to use for synthesizing the speech content from the text strings. In some embodiments, a prioritization scheme can be applied to the text strings to identify the more important text strings. The rules can include, for example, selecting a voice language based on the prioritization scheme, a default language associated with an electronic device, the ability of a voice language to speak text in a different language, or any other suitable rule.
    Type: Application
    Filed: March 9, 2009
    Publication date: September 9, 2010
    Applicant: Apple Inc
    Inventors: Kenneth Herman, Matthew Rogers, Bryan James
  • Publication number: 20100229005
    Abstract: Systems, apparatuses, and methods are provided for whitening and managing data for storage in non-volatile memories, such as Flash memory. In some embodiments, an electronic device such as media player is provided, which may include a system-on-a-chip (SoC) and a non-volatile memory. The SoC may include SoC control circuitry and a memory interface that acts as an interface between the SoC control circuitry and the non-volatile memory. The SoC can also include an encryption module, such as a block cipher based on the Advanced Encryption Standard (AES). The memory interface can direct the encryption module to whiten all types of data prior to storage in the non-volatile memory, including sensitive data, non-sensitive data, and memory management data. This can, for example, prevent or reduce program-disturb problems or other read/write/erase reliability issues.
    Type: Application
    Filed: March 4, 2009
    Publication date: September 9, 2010
    Applicant: Apple Inc.
    Inventors: Kenneth Herman, Matthew Byom, Michael J. Smith, Tahoma M. Toelkes
  • Publication number: 20100082711
    Abstract: Communications systems and methods for minimizing file corruption when communicating between a device and a host are provided. To initiate a file transfer section, a host can transfer data to a device on a primary communications channel. The device can then temporarily store the received data in a memory circuit until a command is received indicating that the file has been completely transferred. In order to avoid interfering with the data transfer, the host can provide such a command to the device on a sideband communications channel. Upon receiving the command, the device can integrate the received data into its file system by transferring the data from the memory circuit to a more permanent storage component. If the communications interface is disconnected before such a command is received, the temporarily stored data can be considered incomplete and can be deleted.
    Type: Application
    Filed: September 26, 2008
    Publication date: April 1, 2010
    Inventors: Kenneth Herman, Daniel Fletcher, Matthew Rogers
  • Publication number: 20100031085
    Abstract: This invention is directed to allowing an electronic device with a failed file system to dynamically direct a host device to reformat it, by making the storage component appear to be in its unformatted state. Upon detection of file system failure, the device writes changes to its disk to make it appear as factory-new to a host device. The host device treats the electronic device as if it is a brand new device that has never been connected to a host device before, and reformats it. By reformatting the device's storage component, the host device thereby provides a way to maintain communication between the host device and electronic device, allowing a more sophisticated application to then diagnose and recover the contents of the storage component, without the involvement of the user or a specialist. This avoids returns of devices with failed file systems, thereby improving the overall user experience.
    Type: Application
    Filed: July 30, 2008
    Publication date: February 4, 2010
    Applicant: Apple Inc.
    Inventor: Kenneth Herman
  • Publication number: 20070174551
    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: January 20, 2006
    Publication date: July 26, 2007
    Inventors: Michael Cornwell, Christopher Dudte, Kenneth Herman
  • Patent number: 6470644
    Abstract: Roofing brackets include a first leg that can be attached to vertical members of a roof structure and a second leg that extends at an angle from the first leg and can be attached to horizontal members of the roof structure and/or to a support surface. A first leg of each bracket is formed with a plurality of preformed patterned holes with a second leg of each bracket being formed with a plurality of different sized holes. The second legs of a first set of brackets being attached to a roofing substrate with the first legs of the first set being attached to lower ends of vertical roofing support members. The first legs of a second set of brackets being attached to upper ends of the vertical support members such that the second legs of the second set of brackets have a desired angular orientation angularly offset with respect to the vertical support members. The second legs of the second set of brackets then being attached to a horizontal roofing support member.
    Type: Grant
    Filed: March 21, 2001
    Date of Patent: October 29, 2002
    Assignee: Varco Pruden Technologies, Inc.
    Inventors: Stephen Mark James, Kenneth Herman Beaty
  • Publication number: 20010025458
    Abstract: Roofing brackets include a first leg that can be attached to vertical members of a roof structure and a second leg that extends at an angle from the first leg and can be attached to horizontal members of the roof structure and/or to a support surface. One or both of the first and second legs includes a plurality of preformed patterned holes having sizes that can receive fasteners. A roofing structure is fabricated using the roofing brackets.
    Type: Application
    Filed: March 21, 2001
    Publication date: October 4, 2001
    Applicant: VP Buildings, Inc.
    Inventors: Stephen Mark James, Kenneth Herman Beaty
  • Patent number: 6240682
    Abstract: Roofing structure includes roofing brackets having a first leg attached to vertical members of a roof structure and a second leg that extends at an angle from the first leg and attached to horizontal members of the roof structure. Brackets serve to attache the vertical members to a support surface of the roof. The first and second legs include a plurality of preformed patterned holes and slots having varying sizes to receive fasteners. The pattern and size of the holes and slots allows for fastening of the brackets to steel bar joists while enabling the fasteners in the slots to be fastened near center lines of the respective bar joists. The slot sizes and positions enable fastening to steel bar joists for most distances between the flanges of their top angle chord members.
    Type: Grant
    Filed: October 19, 1998
    Date of Patent: June 5, 2001
    Assignee: V.P. Buildings, Inc.
    Inventors: Stephen Mark James, Kenneth Herman Beaty
  • Patent number: 4115279
    Abstract: An apparatus for separating oil from a mixture of oil and water wherein a stream of the mixture is directed along an upwardly inclined inverted channel to separate the oil from the mixture by contact of the oil with the under-surface of the channel for flow upwardly in the channel, and wherein the oil is collected from the upper longitudinal end of the channel and wherein the remainder of the stream is allowed to fall downwardly out of the channel.
    Type: Grant
    Filed: September 20, 1976
    Date of Patent: September 19, 1978
    Assignee: Simon-Hartley Limited
    Inventor: Kenneth Herman Toft
  • Patent number: 3939110
    Abstract: Improved aqueous electrocoating materials and methods providing improved coating deposits on metal substrates are obtained by adding an alcohol having from 1 to 8 preferably 2 to 4, carbon atoms to an organic coating resin having reactive sites at least partly but not completely neutralized, so that the alcohol is at least partly dispersed in the resin. The alcohol is preferably added before diluting the resin with water and is about 2.0 to 20 weight percent, preferably about 10 weight percent based on the resin.
    Type: Grant
    Filed: January 2, 1974
    Date of Patent: February 17, 1976
    Assignee: American Can Company
    Inventors: Kenneth Herman Colberg, Ronald Joseph Zukowski