Patents by Inventor Carlos J. Gonzalez

Carlos J. Gonzalez 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: 7970985
    Abstract: The present invention presents techniques for the linking of physical blocks of a non-volatile memory into composite logical structures or “metablocks”. After determining an initial linking of good physical blocks into metablocks, a record of the linking is maintained in the non-volatile memory where it can be readily accessed when needed. In one set of embodiments, the initially linking is deterministically formed according to an algorithm and can be optimized according to the pattern of any bad blocks in the memory. As additional bad blocks arise, the linking is updated using by replacing the bad blocks in a linking with good blocks, preferably in the same sub-array of the memory as the block that they are replacing.
    Type: Grant
    Filed: July 30, 2009
    Date of Patent: June 28, 2011
    Assignee: SanDisk Corporation
    Inventors: Carlos J. Gonzalez, Alan Douglas Bryce, Sergey Anatolievich Gorobets, Alan David Bennett
  • Patent number: 7962777
    Abstract: Multiple copies of firmware code for controlling operation of a non-volatile flash memory system are stored at different suitable locations of the flash memory of a memory system. A map of addresses of these locations is also stored in the flash memory. Upon initialization of the memory system, boot code stored in the memory controller is executed by its microprocessor to reference the address map and load one copy of the firmware from the flash memory into a controller memory, from which it may then be executed by the microprocessor to operate the memory system to store and retrieve user data. An error correction code (ECC) is used to check the data but the best portions of the two or more firmware copies stored in the flash memory are used to reduce the need to use ECC. The firmware code may be stored in the flash memory in two-states when user data is stored in the same memory in more than two-states.
    Type: Grant
    Filed: June 15, 2009
    Date of Patent: June 14, 2011
    Assignee: Sandisk Corporation
    Inventors: Carlos J. Gonzalez, Andrew Tomlin
  • Publication number: 20110099438
    Abstract: A memory using techniques to extract the data content of its storage elements, when the distribution of stored states is degraded, is presented. If the distribution of stored states has degraded, secondary evaluations of the memory cells are performed using modified read conditions. Based upon the results of these supplemental evaluations, the memory device determines the read conditions at which to best decide the data stored.
    Type: Application
    Filed: January 4, 2011
    Publication date: April 28, 2011
    Inventors: Carlos J. Gonzalez, Daniel C. Guterman
  • Publication number: 20110055468
    Abstract: In order to maintain the integrity of data stored in a flash memory that are susceptible to being disturbed by operations in adjacent regions of the memory, disturb events cause the data to be read, corrected and re-written before becoming so corrupted that valid data cannot be recovered. The sometimes conflicting needs to maintain data integrity and system performance are balanced by deferring execution of some of the corrective action when the memory system has other high priority operations to perform. In a memory system utilizing very large units of erase, the corrective process is executed in a manner that is consistent with efficiently rewriting an amount of data much less than the capacity of a unit of erase.
    Type: Application
    Filed: November 12, 2010
    Publication date: March 3, 2011
    Inventors: Carlos J. Gonzalez, Kevin M. Conley
  • Patent number: 7886204
    Abstract: A memory using techniques to extract the data content of its storage elements, when the distribution of stored states is degraded, is presented. If the distribution of stored states has degraded, secondary evaluations of the memory cells are performed using modified read conditions. Based upon the results of these supplemental evaluations, the memory device determines the read conditions at which to best decide the data stored.
    Type: Grant
    Filed: September 27, 2006
    Date of Patent: February 8, 2011
    Assignee: SanDisk Corporation
    Inventors: Carlos J. Gonzalez, Daniel C. Guterman
  • Patent number: 7848149
    Abstract: Storage elements are read multiple times and the results are accumulated and averaged for each storage element to reduce the effects of noise or other transients in the storage elements and associated circuits that may adversely affect the quality of the read. Several techniques may be employed, including: A full read and transfer of the data from the storage device to the controller device for each iteration, with averaging performed by the controller; a full read of the data for each iteration, with the averaging performed by the storage device, and no transfer to the controller until the final results are obtained; one full read followed by a number of faster re-reads exploiting the already established state information to avoid a full read, followed by an intelligent algorithm to guide the state at which the storage element is sensed. These techniques may be used as the normal mode of operation, or invoked upon exception condition, depending on the system characteristics.
    Type: Grant
    Filed: February 12, 2007
    Date of Patent: December 7, 2010
    Assignee: SanDisk Corporation
    Inventors: Carlos J. Gonzalez, Daniel C. Guterman
  • Publication number: 20100205457
    Abstract: A portable mass storage device is used to store large files such as digital pictures, movies and music. The mass storage device has firmware with security mechanisms that limit access to read write operations to ensure reliable operation of the device to prevent unwanted copying or storing of secure content such a copyrighted material. Although the security mechanisms generally limit access, the firmware is operable to work with a virtual machine and allows the virtual machine to access the secure content and work in conjunction with the firmware to read and write data to the mass storage memory, if the virtual machine is present. The virtual machine is either loaded but not activated at the time of manufacture, or is downloaded and activated post manufacture. Any royalty for the virtual machine is paid for only if and when the virtual machine is both present and activated in the device.
    Type: Application
    Filed: April 19, 2010
    Publication date: August 12, 2010
    Inventors: Fabrice Jogand-Coulomb, Bahman Qawami, Farshid Sabet-Shargi, Carlos J. Gonzalez
  • Patent number: 7748031
    Abstract: A portable mass storage device for use in two factor authentication systems and methods. A secure portable mass storage device protects content from being freely copied with security mechanisms and firmware. The security functionality also protects confidential user credentials and passwords, as well as algorithms and seeds needed for two factor authentication or asymmetric authentication methods. A client application residing in the mass storage device acts as both a password manager and an authentication manager that seamlessly performs the authentication procedures in the background while signing a user into various institutions of his choosing. A very high level of security is integrated into a mass storage device the user has for purposes other than two factor authentication, and the convenience of highly secure password management also comes in a convenient pocket sized package easy for the user to transport.
    Type: Grant
    Filed: December 27, 2005
    Date of Patent: June 29, 2010
    Assignee: SanDisk Corporation
    Inventors: Carlos J. Gonzalez, Joerg Ferchau, Fabrice Jogand-Coulomb
  • Publication number: 20100162377
    Abstract: A portable mass storage device for use in two factor authentication systems and methods. A secure portable mass storage device protects content from being freely copied with security mechanisms and firmware. The security functionality also protects confidential user credentials and passwords, as well as algorithms and seeds needed for two factor authentication or asymmetric authentication methods. A client application residing in the mass storage device acts as both a password manager and an authentication manager that seamlessly performs the authentication procedures in the background while signing a user into various institutions of his choosing. A very high level of security is integrated into a mass storage device the user has for purposes other than two factor authentication, and the convenience of highly secure password management also comes in a convenient pocket sized package easy for the user to transport.
    Type: Application
    Filed: February 26, 2010
    Publication date: June 24, 2010
    Inventors: Carlos J. Gonzalez, Joerg Ferchau, Fabrice Jogand-Coulomb
  • Publication number: 20100161927
    Abstract: The embodiments described herein generally use a challenge to protect a removable mobile flash memory storage device, where the challenge may be in the form of a “Completely Automated Public Turing Test to Tell Computers and Humans Apart” (“CAPTCHA”). In one embodiment, a method is provided in which a removable mobile flash memory storage device receives a command from a host device, generates a CAPTCHA challenge, provides the CAPTCHA challenge to the host device, receives a response to the CAPTCHA challenge from the host device, determines if the response satisfies the CAPTCHA challenge, and performs the command only if the response satisfies the CAPTCHA challenge. In another embodiment, a removable mobile flash memory storage device is provided for performing these acts.
    Type: Application
    Filed: December 18, 2008
    Publication date: June 24, 2010
    Inventors: Steven T. Sprouse, Carlos J. Gonzalez, Ron Barzilai, Dhaval Parikh
  • Patent number: 7743409
    Abstract: A portable mass storage device for use in two factor authentication systems and methods. A secure portable mass storage device protects content from being freely copied with security mechanisms and firmware. The security functionality also protects confidential user credentials and passwords, as well as algorithms and seeds needed for two factor authentication or asymmetric authentication methods. A client application residing in the mass storage device acts as both a password manager and an authentication manager that seamlessly performs the authentication procedures in the background while signing a user into various institutions of his choosing. A very high level of security is integrated into a mass storage device the user has for purposes other than two factor authentication, and the convenience of highly secure password management also comes in a convenient pocket sized package easy for the user to transport.
    Type: Grant
    Filed: December 27, 2005
    Date of Patent: June 22, 2010
    Assignee: SanDisk Corporation
    Inventors: Carlos J. Gonzalez, Joerg Ferchau, Fabrice Jogand-Coulomb
  • Patent number: 7725614
    Abstract: A portable mass storage device is used to store large files such as digital pictures, movies and music. The mass storage device has firmware with security mechanisms that limit access to read write operations to ensure reliable operation of the device to prevent unwanted copying or storing of secure content such a copyrighted material. Although the security mechanisms generally limit access, the firmware is operable to work with a virtual machine and allows the virtual machine to access the secure content and work in conjunction with the firmware to read and write data to the mass storage memory, if the virtual machine is present. The virtual machine is either loaded but not activated at the time of manufacture, or is downloaded and activated post manufacture. Any royalty for the virtual machine is paid for only if and when the virtual machine is both present and activated in the device.
    Type: Grant
    Filed: August 8, 2006
    Date of Patent: May 25, 2010
    Assignee: SanDisk Corporation
    Inventors: Fabrice Jogand-Coulomb, Bahman Qawami, Farshid Sabet-Shargi, Carlos J. Gonzalez
  • Patent number: 7716538
    Abstract: A memory using techniques to extract the data content of its storage elements, when the distribution of stored states is degraded, is presented. If the distribution of stored states has degraded, secondary evaluations of the memory cells are performed using modified read conditions. Based upon the results of these supplemental evaluations, the memory device determines the read conditions at which to best decide the data stored.
    Type: Grant
    Filed: September 27, 2006
    Date of Patent: May 11, 2010
    Assignee: SanDisk Corporation
    Inventors: Carlos J. Gonzalez, Daniel C. Guterman
  • Publication number: 20100049908
    Abstract: In a non-volatile memory storage system such as a flash EEPROM system, a controller switches the manner in which data sectors are mapped into blocks and metablocks of the memory in response to host programming and controller data consolidation patterns, in order to improve performance and reduce wear. Data are programmed into the memory with different degrees of parallelism.
    Type: Application
    Filed: October 30, 2009
    Publication date: February 25, 2010
    Inventors: Carlos J. Gonzalez, Mark Sompel, Kevin M. Conley
  • Publication number: 20100023681
    Abstract: The present invention presents a hybrid non-volatile system that uses non-volatile memories based on two or more different non-volatile memory technologies in order to exploit the relative advantages of each these technology with respect to the others. In an exemplary embodiment, the memory system includes a controller and a flash memory, where the controller has a non-volatile RAM based on an alternate technology such as FeRAM. The flash memory is used for the storage of user data and the non-volatile RAM in the controller is used for system control data used by the control to manage the storage of host data in the flash memory. The use of an alternate non-volatile memory technology in the controller allows for a non-volatile copy of the most recent control data to be accessed more quickly as it can be updated on a bit by bit basis.
    Type: Application
    Filed: October 2, 2009
    Publication date: January 28, 2010
    Inventors: Alan Welsh Sinclair, Sergey Anatolievich Gorobets, Kevin M. Conley, Carlos J. Gonzalez
  • Patent number: 7631138
    Abstract: In a non-volatile memory storage system such as a flash EEPROM system, a controller switches the manner in which data sectors are mapped into blocks and metablocks of the memory in response to host programming and controller data consolidation patterns, in order to improve performance and reduce wear. Data are programmed into the memory with different degrees of parallelism.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: December 8, 2009
    Assignee: Sandisk Corporation
    Inventors: Carlos J. Gonzalez, Mark Sompel, Kevin M. Conley
  • Publication number: 20090292944
    Abstract: The present invention presents techniques for the linking of physical blocks of a non-volatile memory into composite logical structures or “metablocks”. After determining an initial linking of good physical blocks into metablocks, a record of the linking is maintained in the non-volatile memory where it can be readily accessed when needed. In one set of embodiments, the initially linking is deterministically formed according to an algorithm and can be optimized according to the pattern of any bad blocks in the memory. As additional bad blocks arise, the linking is updated using by replacing the bad blocks in a linking with good blocks, preferably in the same sub-array of the memory as the block that they are replacing.
    Type: Application
    Filed: July 30, 2009
    Publication date: November 26, 2009
    Inventors: Carlos J. Gonzalez, Alan Douglas Bryce, Sergey Anatolievich Gorobets, Alan David Bennett
  • Publication number: 20090254776
    Abstract: Multiple copies of firmware code for controlling operation of a non-volatile flash memory system are stored at different suitable locations of the flash memory of a memory system. A map of addresses of these locations is also stored in the flash memory. Upon initialization of the memory system, boot code stored in the memory controller is executed by its microprocessor to reference the address map and load one copy of the firmware from the flash memory into a controller memory, from which it may then be executed by the microprocessor to operate the memory system to store and retrieve user data. An error correction code (ECC) is used to check the data but the best portions of the two or more firmware copies stored in the flash memory are used to reduce the need to use ECC. The firmware code may be stored in the flash memory in two-states when user data is stored in the same memory in more than two-states.
    Type: Application
    Filed: June 15, 2009
    Publication date: October 8, 2009
    Inventors: Carlos J. Gonzalez, Andrew Tomlin
  • Patent number: 7594135
    Abstract: Multiple copies of firmware code for controlling operation of a non-volatile flash memory system are stored at different suitable locations of the flash memory of a memory system. A map of addresses of these locations is also stored in the flash memory. Upon initialization of the memory system, boot code stored in the memory controller is executed by its microprocessor to reference the address map and load one copy of the firmware from the flash memory into a controller memory, from which it may then be executed by the microprocessor to operate the memory system to store and retrieve user data. An error correction code (ECC) is used to check the data but the best portions of the two or more firmware copies stored in the flash memory are used to reduce the need to use ECC. The firmware code may be stored in the flash memory in two-states when user data is stored in the same memory in more than two-states.
    Type: Grant
    Filed: December 31, 2003
    Date of Patent: September 22, 2009
    Assignee: Sandisk Corporation
    Inventors: Carlos J. Gonzalez, Andrew Tomlin
  • Publication number: 20090216938
    Abstract: A non-volatile memory system of a type having blocks of memory cells erased together and which are programmable from an erased state in units of a large number of pages per block. If the data of only a few pages of a block are to be updated, the updated pages are written into another block provided for this purpose. The valid original and updated data are then combined at a later time, when doing so does not impact on the performance of the memory. If the data of a large number of pages of a block are to be updated, however, the updated pages are written into an unused erased block and the unchanged pages are also written to the same unused block. By handling the updating of a few pages differently, memory performance is improved when small updates are being made.
    Type: Application
    Filed: April 30, 2009
    Publication date: August 27, 2009
    Inventors: Kevin M. Conley, Carlos J. Gonzalez