Patents by Inventor Earl T. Cohen

Earl T. Cohen 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: 20140047210
    Abstract: Described embodiments provide a media controller that receives requests that include a logical address and address range. In response to the request, the media controller determines whether the received request is an invalidating request. If the received request type is an invalidating request, the media controller uses a map to determine one or more entries of the map associated with the logical address and range. Indicators in the map associated with each of the map entries are set to indicate that the map entries are to be invalidated. The media controller acknowledges to a host device that the invaliding request is complete and updates, in an idle mode of the media controller, a free space count based on the map entries that are to be invalidated. The physical addresses associated with the invalidated map entries are made available to be reused for subsequent requests from the host device.
    Type: Application
    Filed: August 9, 2013
    Publication date: February 13, 2014
    Applicant: LSI Corporation
    Inventors: Earl T. Cohen, Leonid Baryudin
  • Publication number: 20140047170
    Abstract: Described embodiments provide a media controller that processes requests including a logical address and address range. A map of the media controller determines physical addresses of a media associated with the logical address and address range of the request. The map is a multi-level map having a plurality of leaf-level map pages that are stored in the media, with a subset of the leaf-level map pages stored in a map cache. Based on the logical address and address range, it is determined whether a corresponding leaf-level map page is stored in the map cache. If the leaf-level map page is stored in the map cache, a cache index and control indicators of the map cache entry are returned in order to enforce ordering rules that selectively enable access to a corresponding leaf-level map page based on the control indicators and a determined request type.
    Type: Application
    Filed: September 10, 2013
    Publication date: February 13, 2014
    Applicant: LSI Corporation
    Inventors: Earl T. Cohen, Leonid Baryudin
  • Publication number: 20140040704
    Abstract: In an SSD controller reading from flash memory, subsequent to failure of an initial soft-decision decoding attempt based on a nominal LLR, soft-decision re-decoding attempts are made using compensated LLR soft-decision information sets, pre-calculated at respective read-equilibrium points corresponding to mean shifts and variance change in the actual charge-state distributions of the flash memory channel. According to embodiment, soft-decision re-decoding attempts are performed without a retry read, or overlapped with one or more retry reads. By overlapping re-decoding with one or more retry reads, the probability of successful decoding increases, the need for further retry reads diminishes, and throughput is improved. The LLR compensation becomes very effective over a large number of retry reads, improving decoding reliability and achieving close to optimal bit error rates, even in the presence of large channel variation.
    Type: Application
    Filed: August 4, 2012
    Publication date: February 6, 2014
    Applicant: LSI CORPORATION
    Inventors: Yunxiang WU, Earl T. COHEN
  • Publication number: 20130343131
    Abstract: An SSD controller dynamically adjusts read thresholds in an NVM to reduce errors due to device threshold voltage distribution shifts, thus improving performance, reliability, and/or cost of a storage sub-system, such as an SSD. In a first aspect, the controller periodically performs offline tracking on a portion of the NVM. The controller reads a representative sub-portion with current read thresholds. If the read meets a condition, then the controller reads the sub-portion with sample read thresholds, estimates the device threshold voltage distributions, and adjusts the current read thresholds of the portion to calculated new operating read thresholds of the sub-portion. In a second aspect, the portion includes data with a known statistical average number of zero and/or one bits.
    Type: Application
    Filed: June 26, 2012
    Publication date: December 26, 2013
    Applicant: LSI CORPORATION
    Inventors: Yingquan WU, Earl T. COHEN
  • Publication number: 20130297894
    Abstract: An I/O device is coupled to a computing host. In some embodiments, the device is enabled to utilize memory of the computing host not directly coupled to the device to store information such as a shadow copy of a map of the device and/or state of the device. Storage of the shadow copy of the map enables one or both of the device and the computing host to utilize the shadow copy of the map, such as to decrease read latency. Storage of the state enables the device to save volatile state that would otherwise be lost when the device enters a low-power state. In some embodiments, the device implements one or more non-standard modifiers of standard commands. The non-standard modifiers modify the execution of the standard commands, providing features not present in a host protocol having only the standard commands.
    Type: Application
    Filed: July 5, 2013
    Publication date: November 7, 2013
    Inventors: Earl T. COHEN, Timothy Lawrence CANEPA
  • Publication number: 20130297986
    Abstract: An SSD controller maintains a zero count and a one count, and/or in some embodiments a zero/one disparity count, for each read unit read from an SLC NVM (or the lower pages of an MLC). In an event that the read unit is uncorrectable in part due to a shift in the threshold voltage distributions away from their nominal distributions, the maintained counts enable a determination of a direction and/or a magnitude to adjust a read threshold to track the threshold voltage shift and restore the read data zero/one balance. In various embodiments, the adjusted read threshold is determined in a variety of described ways (counts, percentages) that are based on a number of described factors (determined threshold voltage distributions, known stored values, past NVM operating events). Extensions of the forgoing techniques are described for MLC memories.
    Type: Application
    Filed: May 4, 2012
    Publication date: November 7, 2013
    Applicant: LSI CORPORATION
    Inventor: Earl T. Cohen
  • Publication number: 20130297988
    Abstract: Described embodiments provide a media controller that performs error correction on data read from a solid-state media. The media controller receives a read operation from a host device to read one or more given read units of the solid-state media. The media controller reads the data for the corresponding read units from the solid-state media employing initial values for one or more read threshold voltages. Only if a disparity between an actual number of bits at a given logic level included in the read data and an expected number of bits at the given logic level included in the read data has not reached a predetermined threshold, the media controller decodes the read data and provides the decoded data to the host device.
    Type: Application
    Filed: January 30, 2013
    Publication date: November 7, 2013
    Applicant: LSI CORPORATION
    Inventors: YingQuan Wu, Earl T. Cohen
  • Publication number: 20130246839
    Abstract: A Solid-State Disk (SSD) controller enables dynamic higher-level redundancy mode management with independent silicon elements to provide graceful degradation as non-volatile (e.g. flash) memory elements fail during operation of an SSD implemented by the controller. Higher-level error correction provides correction of lower-level uncorrectable errors. If a failure of one of the non-volatile memory elements is detected, then the higher-level error correction is dynamically transitioned from operating in a current mode to operating in a new mode. The transition includes one or more of reducing free space available on the SSD, rearranging data storage of the SSD, recovering/storing failed user data (if possible), and determining/storing revised higher-level error correction information. Operation then continues in the new mode. If another failure of the non-volatile memory elements is detected, then another transition is made to another new mode.
    Type: Application
    Filed: November 30, 2011
    Publication date: September 19, 2013
    Applicant: LSI CORPORATION
    Inventors: Jeremy Isaac Nathaniel Werner, Leonid Baryudin, Timothy Lawrence Canepa, Earl T. Cohen
  • Publication number: 20130139035
    Abstract: A Solid-State Disk (SSD) controller uses LDPC decoding to enable flash memory accesses with improved latency and/or error correction capabilities. With SLC flash memory having a BER less than a predetermined value, the SSD controller uses a 1-bit read (single read) hard-decision LDPC decoder to access the flash memory. If the hard-decision LDPC decoder detects an uncorrectable error, then the SSD controller uses a 1.5-bit read (two reads) erasure-decision LDPC decoder to access the flash memory. With flash memory having a raw BER between two other predetermined values, the SSD controller omits the use of the hard-decision LDPC decoder and uses only the erasure-decision LDPC decoder to access the flash memory. Variations of the SSD controller similarly access MLC flash memory. Some SSD controllers dynamically switch between hard-decision and erasure-based decoders based on dynamic decoder selection criteria.
    Type: Application
    Filed: March 11, 2011
    Publication date: May 30, 2013
    Applicant: LSI CORPORATION
    Inventors: Hao Zhong, Yan Li, Radoslav Danilak, Earl T. Cohen
  • Publication number: 20130042064
    Abstract: The present disclosure is directed to a system for dynamically adaptive caching. The system includes a storage device having a physical capacity for storing data received from a host. The system may also include a control module for receiving data from the host and compressing the data to a compressed data size. Alternatively, the data may also be compressed by the storage device. The control module may be configured for determining an amount of available space on the storage device and also determining a reclaimed space, the reclaimed space being according to a difference between the size of the data received from the host and the compressed data size. The system may also include an interface module for presenting a logical capacity to the host. The logical capacity has a variable size and may include at least a portion of the reclaimed space.
    Type: Application
    Filed: August 3, 2012
    Publication date: February 14, 2013
    Applicant: LSI Corporation
    Inventors: Horia Simionescu, Mark Ish, Luca Bert, Robert Quinn, Earl T. Cohen, Timothy Canepa
  • Publication number: 20120311246
    Abstract: A data processing system includes one or more nodes, each node including a memory sub-system. The sub-system includes a fine-grained, memory, and a less-fine-grained (e.g., page-based) memory. The fine-grained memory optionally serves as a cache and/or as a write buffer for the page-based memory. Software executing on the system uses a node address space which enables access to the page-based memories of all nodes. Each node optionally provides ACID memory properties for at least a portion of the space. In at least a portion of the space, memory elements are mapped to locations in the page-based memory. In various embodiments, some of the elements are compressed, the compressed elements are packed into pages, the pages are written into available locations in the page-based memory, and a map maintains an association between the some of the elements and the locations.
    Type: Application
    Filed: August 13, 2012
    Publication date: December 6, 2012
    Inventors: Thomas M. McWilliams, Earl T. Cohen, James M. Bodwin, Ulrich Bruening
  • Patent number: 8325736
    Abstract: A hierarchy of schedules propagate minimum guaranteed scheduling rates among scheduling layers in a hierarchical schedule. The minimum guaranteed scheduling rate for a parent schedule entry is typically based on the summation of the minimum guaranteed scheduling rates of its immediate child schedule entries. This propagation of minimum rate scheduling guarantees for a class of traffic can be dynamic (e.g., based on the active traffic for this class of traffic, active services for this class of traffic), or statically configured. One embodiment also includes multiple scheduling lanes for scheduling items, such as, but not limited to packets or indications thereof, such that different categories of traffic (e.g., propagated minimum guaranteed scheduling rate, non-propagated minimum guaranteed scheduling rate, high priority, excess rate, etc.) of scheduled items can be propagated through the hierarchy of schedules accordingly without being blocked behind a lower priority or different type of traffic.
    Type: Grant
    Filed: April 18, 2009
    Date of Patent: December 4, 2012
    Assignee: Cisco Technology, Inc.
    Inventors: Earl T. Cohen, Robert Olsen, Christopher J. Kappler, Anna Charny
  • Publication number: 20120259889
    Abstract: A distributed database system has multiple compute nodes each running an instance of a database management system (DBMS) program that accesses database records in a local buffer cache. Records are persistently stored in distributed flash memory on multiple storage nodes. A Sharing Data Fabric (SDF) is a middleware layer between the DBMS programs and the storage nodes and has API functions called by the DBMS programs when a requested record is not present in the local buffer cache. The SDF fetches the requested record from flash memory and loads a copy into the local buffer cache. The SDF has threads on a home storage node that locate database records using a node map. A global cache directory locks and pins records to local buffer caches for updating by a node's DBMS program. DBMS operations are grouped into transactions that are committed or aborted together as a unit.
    Type: Application
    Filed: June 20, 2012
    Publication date: October 11, 2012
    Inventors: Darpan Dinker, Andrew David Eckhardt, Darryl Manabu Ouye, Brian Walter O'Krafka, Earl T. Cohen, Thomas M. McWilliams
  • Patent number: 8245014
    Abstract: The present invention provides a network multithreaded processor, such as a network processor, including a thread interleaver that implements fine-grained thread decisions to avoid underutilization of instruction execution resources in spite of large communication latencies. In an upper pipeline, an instruction unit determines an-instruction fetch sequence responsive to an instruction queue depth on a per thread basis. In a lower pipeline, a thread interleaver determines a thread interleave sequence responsive to thread conditions including thread latency conditions. The thread interleaver selects threads using a two-level round robin arbitration. Thread latency signals are active responsive to thread latencies such as thread stalls, cache misses, and interlocks. During the subsequent one or more clock cycles, the thread is ineligible for arbitration. In one embodiment, other thread conditions affect selection decisions such as local priority, global stalls, and late stalls.
    Type: Grant
    Filed: April 14, 2008
    Date of Patent: August 14, 2012
    Assignee: Cisco Technology, Inc.
    Inventors: Donald E Steiss, Earl T Cohen, John J Williams
  • Patent number: 8244969
    Abstract: A data processing system includes one or more nodes, each node including a memory sub-system. The sub-system includes a fine-grained, memory, and a less-fine-grained (e.g., page-based) memory. The fine-grained memory optionally serves as a cache and/or as a write buffer for the page-based memory. Software executing on the system uses a node address space which enables access to the page-based memories of all nodes. Each node optionally provides ACID memory properties for at least a portion of the space. In at least a portion of the space, memory elements are mapped to locations in the page-based memory. In various embodiments, some of the elements are compressed, the compressed elements are packed into pages, the pages are written into available locations in the page-based memory, and a map maintains an association between the some of the elements and the locations.
    Type: Grant
    Filed: May 31, 2011
    Date of Patent: August 14, 2012
    Assignee: Schooner Information Technology, Inc.
    Inventors: Thomas M. McWilliams, Earl T. Cohen, James M. Bodwin, Ulrich Bruening
  • Patent number: 8229945
    Abstract: A distributed database system has multiple compute nodes each running an instance of a database management system (DBMS) program that accesses database records in a local buffer cache. Records are persistently stored in distributed flash memory on multiple storage nodes. A Sharing Data Fabric (SDF) is a middleware layer between the DBMS programs and the storage nodes and has API functions called by the DBMS programs when a requested record is not present in the local buffer cache. The SDF fetches the requested record from flash memory and loads a copy into the local buffer cache. The SDF has threads on a home storage node that locate database records using a node map. A global cache directory locks and pins records to local buffer caches for updating by a node's DBMS program. DBMS operations are grouped into transactions that are committed or aborted together as a unit.
    Type: Grant
    Filed: November 24, 2008
    Date of Patent: July 24, 2012
    Assignee: Schooner Information Technology, Inc.
    Inventors: Darpan Dinker, Andrew David Eckhardt, Darryl Manabu Ouye, Brian Walter O'Krafka, Earl T. Cohen, Thomas M. McWilliams
  • Patent number: 8149708
    Abstract: Streams of packets are dynamically switched among dedicated and shared queues. For example, when a packet stream is in a maintenance mode (such as to keep a tunnel or packet stream associated with a server active) all packet traffic received over a packet stream is directed into the shared queue while the packet stream is not associated with one of the dedicated queues. In response to a detected change in the packet activity status of packet traffic (e.g., the establishment of a call or an increase in packet traffic, especially desirous of individualized quality of service) over a particular packet stream of the packet streams, the particular packet stream is associated with a particular group of dedicated queues such that at least non-control data traffic received over the particular packet stream is subsequently directed into the particular group of dedicated queues while the particular packet stream remains associated with the particular group of dedicated queues.
    Type: Grant
    Filed: April 20, 2006
    Date of Patent: April 3, 2012
    Assignee: Cisco Technology, Inc.
    Inventors: Doron Oz, Earl T. Cohen, Eyal Oren
  • Patent number: 8077618
    Abstract: Schedules may use burst tolerance values to adjust the scheduling in a time-based schedule, such as, but not limited to, adjusting for accumulated but not used bandwidth, and/or adjusting eligibility of schedule entries. A best schedule item associated with an eligible schedule entry of a schedule is identified. Whether or not a particular schedule entry is eligible is typically determined based on the relationship of an associated timestamp with a current scheduling time, such as its timestamp being less than or equal to the current time. A burst tolerance time bound might also be used to allow certain priorities and/or types of items to be considered eligible if even its timestamp exceeds the current time by an amount, but less than or equal to the burst tolerance time bound.
    Type: Grant
    Filed: March 3, 2005
    Date of Patent: December 13, 2011
    Assignee: Cisco Technology, Inc.
    Inventors: Christopher J. Kappler, Anna Charny, Robert Olsen, Earl T. Cohen
  • Publication number: 20110289263
    Abstract: A data processing system includes one or more nodes, each node including a memory sub-system. The sub-system includes a fine-grained, memory, and a less-fine-grained (e.g., page-based) memory. The fine-grained memory optionally serves as a cache and/or as a write buffer for the page-based memory. Software executing on the system uses a node address space which enables access to the page-based memories of all nodes. Each node optionally provides ACID memory properties for at least a portion of the space. In at least a portion of the space, memory elements are mapped to locations in the page-based memory. In various embodiments, some of the elements are compressed, the compressed elements are packed into pages, the pages are written into available locations in the page-based memory, and a map maintains an association between the some of the elements and the locations.
    Type: Application
    Filed: May 31, 2011
    Publication date: November 24, 2011
    Inventors: Thomas M. McWilliams, Earl T. Cohen, James M. Bodwin, Ulrich Bruening
  • Patent number: 8014529
    Abstract: In one embodiment, the invention provides a method for configuring a wireless device, so as to enable the wireless device to join a secured wireless network, by broadcasting a series of broadcast packets encoding a network configuration parameter (e.g., a shared secret key) from a computer coupled to a wireless access point to the wireless device. The information representing the network configuration parameter is encoded, not within the payload portion of the packet, but within the length of each broadcast packet in the series of broadcast packets. Accordingly, a wireless device that has not yet been configured to receive packets from the wireless access point can observe the information encoded in the length of each broadcast packet, and thereby decode the network configuration parameter and join the network.
    Type: Grant
    Filed: August 18, 2006
    Date of Patent: September 6, 2011
    Assignee: Eye-Fi, Inc.
    Inventors: Yuval Koren, Earl T. Cohen, Eugene M. Feinberg, Berend Ozceri