Bitmicro LLC

United States of America

Back to Profile

1-60 of 60 for Bitmicro LLC Sort by
Query
Aggregations
IPC Class
G06F 3/06 - Digital input from, or digital output to, record carriers 18
G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal 14
G06F 12/02 - Addressing or allocationRelocation 10
G06F 13/16 - Handling requests for interconnection or transfer for access to memory bus 9
G06F 12/00 - Accessing, addressing or allocating within memory systems or architectures 8
See more
Found results for  patents

1.

Bit-mapped DMA transfer with dependency table configured to monitor channel between DMA and array of bits to indicate a completion of DMA transfer

      
Application Number 16532064
Grant Number 10872050
Status In Force
Filing Date 2019-08-05
First Publication Date 2020-12-22
Grant Date 2020-12-22
Owner BiTMICRO LLC (USA)
Inventor
  • Ponce, Cyrill C.
  • Fuentes, Marizonne O.
  • Noble, Gianico G.

Abstract

In an embodiment of the invention, a method comprises: A method, comprising: issuing, by a Direct Memory Access (DMA) engine, an update request to a dependency table if the DMA engine has finished executing a first descriptor; and issuing, by the DMA engine, a monitoring request if the DMA engine is executing a second descriptor that depends on a completion of a data transfer so that the DMA engine can monitor a status of a selected subindex related to the data transfer, wherein the subindex is in the dependency table. In another embodiment of the invention, an apparatus comprises: a Direct Memory Access (DMA) engine configured to issue an update request to a dependency table if the DMA engine has finished executing a first descriptor, and configured to issue a monitoring request if the DMA engine is executing a second descriptor that depends on a completion of a data transfer so that the DMA engine can monitor a status of a selected subindex related to the data transfer, wherein the subindex is in the dependency table.

IPC Classes  ?

  • G06F 13/00 - Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
  • G06F 13/37 - Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a physical-position-dependent priority, e.g. daisy chain, round robin or token passing
  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal
  • G06F 3/06 - Digital input from, or digital output to, record carriers

2.

Multi-dimensional computer storage system

      
Application Number 15482684
Grant Number 10552050
Status In Force
Filing Date 2017-04-07
First Publication Date 2020-02-04
Grant Date 2020-02-04
Owner BiTMICRO LLC (USA)
Inventor
  • Verdan, Marlon B.
  • Bruce, Ricardo H.

Abstract

In an embodiment of the invention, an apparatus comprises: a multi-dimensional memory that is expandable in a first direction; wherein the multi-dimensional memory comprises a serial chain; wherein the serial chain comprises a first serial chain that is expandable in a first direction; and wherein the first serial chain comprises a first memory controller, a first memory module coupled to the first memory controller, a second memory controller coupled to the first memory controller, and a second memory module coupled to the second memory controller. In another embodiment of the invention, a method comprises: providing a multi-dimensional memory that is expandable in a first direction; wherein the multi-dimensional memory comprises a serial chain; wherein the serial chain comprises a first serial chain that is expandable in a first direction; and wherein the first serial chain comprises a first memory controller, a first memory module coupled to the first memory controller, a second memory controller coupled to the first memory controller, and a second memory module coupled to the second memory controller. Data can be stored into the serial chain, wherein the data is written by a memory transaction from a host.

IPC Classes  ?

  • G06F 3/06 - Digital input from, or digital output to, record carriers
  • G06F 12/1081 - Address translation for peripheral access to main memory, e.g. direct memory access [DMA]

3.

Scatter-gather approach for parallel data transfer in a mass storage system

      
Application Number 14690243
Grant Number 10489318
Status In Force
Filing Date 2015-04-17
First Publication Date 2019-11-26
Grant Date 2019-11-26
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Ricardo H.
  • Santos, Avnher Villar
  • Verdan, Marlon Basa
  • Villapana, Elsbeth Lauren Tagayo

Abstract

In an embodiment of the invention, an apparatus comprises: a first flash module comprising a first flash device; and a second flash module comprising a second flash device; wherein the first flash module and second flash module are coupled by a flash interconnect; wherein the first flash device is configured to store a first data stripe of a data and wherein the second flash device is configured to store a second data stripe of the data. In another embodiment of the invention, a method comprises: storing, in a first flash device in a first flash module, a first data stripe of a data; and storing, in a second flash device in a second flash module, a second data stripe of the data; wherein the first flash module and second flash module are coupled by a flash interconnect. In yet another embodiment of the invention, an article of manufacture comprises a non-transient computer-readable medium having stored thereon instructions that permit a method comprising: storing, in a first flash device in a first flash module, a first data stripe of a data; and storing, in a second flash device in a second flash module, a second data stripe of the data; wherein the first flash module and second flash module are coupled by a flash interconnect.

IPC Classes  ?

  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal
  • G06F 13/42 - Bus transfer protocol, e.g. handshakeSynchronisation
  • G06F 3/06 - Digital input from, or digital output to, record carriers

4.

Data storage system with configurable prefetch buffers

      
Application Number 15904322
Grant Number 10459842
Status In Force
Filing Date 2018-02-24
First Publication Date 2019-10-29
Grant Date 2019-10-29
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Rey H.
  • Bruce, Ricardo H.
  • Verdan, Marlon B.
  • Tagayo-Villapaña, Elsbeth Lauren

Abstract

In an embodiment of the invention, an apparatus comprises: a data storage device comprising a first prefetch buffer, a second prefetch buffer, and a third prefetch buffer; wherein the second prefetch buffer and the third prefetch buffer are both coupled in parallel to the first prefetch buffer; and wherein any of the prefetch buffers is configured to store prefetch data. The prefetch data is available to a host that sends a memory read transaction request to the data storage device. In another embodiment of the invention, a method comprises: storing prefetch data in any one of a first prefetch buffer, a second prefetch buffer, or a third prefetch buffer in a storage device; wherein the second prefetch buffer and the third prefetch buffer are both coupled in parallel to the first prefetch buffer. The prefetch data is available to a host that sends a memory read transaction request to a data storage device.

IPC Classes  ?

  • G06F 12/0862 - Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 13/16 - Handling requests for interconnection or transfer for access to memory bus
  • G06F 3/06 - Digital input from, or digital output to, record carriers
  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal

5.

Write buffering

      
Application Number 15665321
Grant Number 10445239
Status In Force
Filing Date 2017-07-31
First Publication Date 2019-10-15
Grant Date 2019-10-15
Owner BiTMICRO LLC (USA)
Inventor
  • Bruce, Rolando H.
  • Dela Cruz, Elmer Paule
  • Arcedera, Mark Ian Alcid

Abstract

A hybrid storage system is described having a mixture of different types of storage devices comprising rotational drives, flash devices, SDRAM, and SRAM. The rotational drives are used as the main storage, providing lowest cost per unit of storage memory. Flash memory is used as a higher-level cache for rotational drives. Methods for managing multiple levels of cache for this storage system is provided having a very fast Level 1 cache which consists of volatile memory (SRAM or SDRAM), and a non-volatile Level 2 cache using an array of flash devices. It describes a method of distributing the data across the rotational drives to make caching more efficient. It also describes efficient techniques for flushing data from L1 cache and L2 cache to the rotational drives, taking advantage of concurrent flash devices operations, concurrent rotational drive operations, and maximizing sequential access types in the rotational drives rather than random accesses which are relatively slower. Methods provided here may be extended for systems that have more than two cache levels.

IPC Classes  ?

  • G06F 12/0831 - Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
  • G06F 12/0875 - Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack

6.

Bus arbitration with routing and failover mechanism

      
Application Number 15891147
Grant Number 10430303
Status In Force
Filing Date 2018-02-07
First Publication Date 2019-10-01
Grant Date 2019-10-01
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Ricardo H.
  • Ponce, Cyrill Coronel
  • Espuerta, Jarmie Dela Cruz
  • Verdan, Marlon Basa

Abstract

In an embodiment of the invention, an apparatus comprises: a plurality of bus masters and a plurality of bus arbiters to support routing and failover, wherein each bus arbiter is coupled to a plurality of bus masters; and a central processing unit (CPU) coupled to at least one of the bus arbiters; wherein the CPU is configured to execute a firmware that chooses bus re-routing or failover in response to a bus failure. In another embodiment of the invention, a method comprises: choosing, by a central processing unit (CPU) coupled to a plurality of bus arbiters, bus re-routing or failover in response to a bus failure. In yet another embodiment of the invention, an article of manufacture, comprises a non-transient computer-readable medium having stored thereon instructions that permit a method comprising: choosing, by a central processing unit (CPU) coupled to a plurality of bus arbiters, bus re-routing or failover in response to a bus failure.

IPC Classes  ?

  • G06F 11/20 - Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
  • G06F 13/16 - Handling requests for interconnection or transfer for access to memory bus
  • G06F 13/40 - Bus structure

7.

Bus arbitration with routing and failover mechanism

      
Application Number 15790299
Grant Number 10423554
Status In Force
Filing Date 2017-10-23
First Publication Date 2019-09-24
Grant Date 2019-09-24
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Ricardo H.
  • Ponce, Cyrill Coronel
  • Espuerta, Jarmie Dela Cruz

Abstract

In one embodiment of the invention, a system architecture for bus masters and bus arbiters are provided to support routing and failover. The system comprises large pools of bus masters, a plurality of sets can be configured to control a plurality of slave devices wherein each set contains a collection of bus masters attached to central arbiter driving one of the system buses. Each set controls a group(s) of slave device that are primarily controlled by the bus master(s) within the set. Hence, a system can therefore include of a plurality of sets and can control a group of slave devices.

IPC Classes  ?

  • G06F 13/20 - Handling requests for interconnection or transfer for access to input/output bus
  • G06F 13/366 - Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a centralised polling arbiter
  • G06F 13/00 - Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units

8.

Data storage system configured to write volatile scattered memory metadata to a non-volatile memory

      
Application Number 15803840
Grant Number 10402315
Status In Force
Filing Date 2017-11-06
First Publication Date 2019-09-03
Grant Date 2019-09-03
Owner BITMICRO LLC (USA)
Inventor
  • Fenol, Marvin Dela Cruz
  • Abad, Jik-Jik Oyong
  • Pestano, Precious Nezaiah Umali

Abstract

In an embodiment of the invention, a method comprises: requesting an update or modification on a control data in at least one flash block in a storage memory; requesting a cache memory; replicating, from the storage memory to the cache memory, the control data to be updated or to be modified; moving a clean cache link list to a dirty cache link list so that the dirty cache link list is changed to reflect the update or modification on the control data; and moving the dirty cache link list to a for flush link list and writing an updated control data from the for flush link list to a free flash page in the storage memory.

IPC Classes  ?

  • G06F 12/02 - Addressing or allocationRelocation
  • G06F 12/0831 - Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means

9.

Bit-mapped DMA transfer with dependency table configured to monitor status so that a processor is not rendered as a bottleneck in a system

      
Application Number 16056563
Grant Number 10372643
Status In Force
Filing Date 2018-08-07
First Publication Date 2019-08-06
Grant Date 2019-08-06
Owner BITMICRO LLC (USA)
Inventor
  • Ponce, Cyrill C.
  • Fuentes, Marizonne O.
  • Noble, Gianico G.

Abstract

In an embodiment of the invention, a method comprises: A method, comprising: issuing, by a Direct Memory Access (DMA) engine, an update request to a dependency table if the DMA engine has finished executing a first descriptor; and issuing, by the DMA engine, a monitoring request if the DMA engine is executing a second descriptor that depends on a completion of a data transfer so that the DMA engine can monitor a status of a selected subindex related to the data transfer, wherein the subindex is in the dependency table. In another embodiment of the invention, an apparatus comprises: a Direct Memory Access (DMA) engine configured to issue an update request to a dependency table if the DMA engine has finished executing a first descriptor, and configured to issue a monitoring request if the DMA engine is executing a second descriptor that depends on a completion of a data transfer so that the DMA engine can monitor a status of a selected subindex related to the data transfer, wherein the subindex is in the dependency table.

IPC Classes  ?

  • G06F 13/00 - Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
  • G06F 13/37 - Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a physical-position-dependent priority, e.g. daisy chain, round robin or token passing
  • G06F 3/06 - Digital input from, or digital output to, record carriers
  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal

10.

Adaptive power cycle sequences for data recovery

      
Application Number 16248419
Grant Number 10540242
Status In Force
Filing Date 2019-01-15
First Publication Date 2019-07-18
Grant Date 2020-01-21
Owner BiTMICRO LLC (USA)
Inventor
  • Bruce, Rolando H.
  • Cantong, Richard A.
  • Fuentes, Marizonne Operio

Abstract

The present invention relates to an apparatus, method, and/or sequence that adaptively provide the recovery of data after a power cycle sequence, wherein only minimal updates are provided for control blocks associated with the data.

IPC Classes  ?

  • G06F 11/00 - Error detectionError correctionMonitoring
  • G06F 11/14 - Error detection or correction of the data by redundancy in operation, e.g. by using different operation sequences leading to the same result
  • G06F 3/06 - Digital input from, or digital output to, record carriers
  • G06F 12/0804 - Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating

11.

Multilevel memory bus system

      
Application Number 16197001
Grant Number 10877907
Status In Force
Filing Date 2018-11-20
First Publication Date 2019-03-21
Grant Date 2020-12-29
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Ricardo H.
  • Villapana, Elsbeth Lauren Tagayo
  • Baylon, Joel Alonzo

Abstract

The present invention relates to a multilevel memory bus system for transferring information between at least one DMA controller and at least one solid-state semiconductor memory device, such as NAND flash memory devices or the like. This multilevel memory bus system includes at least one DMA controller coupled to an intermediate bus; a flash memory bus; and a flash buffer circuit between the intermediate bus and the flash memory bus. This multilevel memory bus system may be disposed to support: an n-bit wide bus width, such as nibble-wide or byte-wide bus widths; a selectable data sampling rate, such as a single or double sampling rate, on the intermediate bus; a configurable bus data rate, such as a single, double, quad, or octal data sampling rate; CRC protection; an exclusive busy mechanism; dedicated busy lines; or any combination of these.

IPC Classes  ?

  • G06F 13/16 - Handling requests for interconnection or transfer for access to memory bus
  • G06F 12/00 - Accessing, addressing or allocating within memory systems or architectures
  • G06F 12/02 - Addressing or allocationRelocation
  • G06F 13/36 - Handling requests for interconnection or transfer for access to common bus or bus system

12.

Fast consistent write in a distributed system

      
Application Number 15396557
Grant Number 10216596
Status In Force
Filing Date 2016-12-31
First Publication Date 2019-02-26
Grant Date 2019-02-26
Owner BITMICRO LLC (USA)
Inventor Pudipeddi, Bharadwaj

Abstract

Embodiments of the invention provide a system and method to vastly improve the remote write latency (write to remote server) and to reduce the load that is placed on the remote server by issuing auto-log (automatic log) writes through an integrated networking port in the SSD (solid state drive). Embodiments of the invention also provide a system and method for a PCI-e attached SSD to recover after a failure detection by appropriating a remote namespace.

IPC Classes  ?

  • G06F 11/00 - Error detectionError correctionMonitoring
  • G06F 11/20 - Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
  • G06F 13/42 - Bus transfer protocol, e.g. handshakeSynchronisation
  • G06F 13/20 - Handling requests for interconnection or transfer for access to input/output bus
  • G06F 13/16 - Handling requests for interconnection or transfer for access to memory bus
  • G06F 12/10 - Address translation

13.

Multi-leveled cache management in a hybrid storage system

      
Application Number 15249475
Grant Number 10210084
Status In Force
Filing Date 2016-08-29
First Publication Date 2019-02-19
Grant Date 2019-02-19
Owner BiTMICRO LLC (USA)
Inventor
  • Bruce, Rolando H.
  • Dela Cruz, Elmer Paule
  • Arcedera, Mark Ian Alcid

Abstract

A hybrid storage system is described having a mixture of different types of storage devices comprising rotational drives, flash devices, SDRAM, and SRAM. The rotational drives are used as the main storage, providing lowest cost per unit of storage memory. Flash memory is used as a higher-level cache for rotational drives. Methods for managing multiple levels of cache for this storage system is provided having a very fast Level 1 cache which consists of volatile memory (SRAM or SDRAM), and a non-volatile Level 2 cache using an array of flash devices. It describes a method of distributing the data across the rotational drives to make caching more efficient. It also describes efficient techniques for flushing data from L1 cache and L2 cache to the rotational drives, taking advantage of concurrent flash devices operations, concurrent rotational drive operations, and maximizing sequential access types in the rotational drives rather than random accesses which are relatively slower. Methods provided here may be extended for systems that have more than two cache levels.

IPC Classes  ?

  • G06F 12/0804 - Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
  • G06F 12/0811 - Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
  • G06F 12/0842 - Multiuser, multiprocessor or multiprocessing cache systems for multiprocessing or multitasking
  • G06F 12/0844 - Multiple simultaneous or quasi-simultaneous cache accessing
  • G06F 12/0868 - Data transfer between cache memory and other subsystems, e.g. storage devices or host systems

14.

FPGA functionality mode switch-over

      
Application Number 16024730
Grant Number 10627798
Status In Force
Filing Date 2018-06-29
First Publication Date 2019-01-17
Grant Date 2020-04-21
Owner BITMICRO LLC (USA)
Inventor
  • Sambilay, Jr., Federico
  • Pudipeddi, Bharadwaj
  • Cantong, Richard A.
  • Parairo, Joevanni

Abstract

In an embodiment of the invention, an apparatus comprises: a non-volatile memory device; a complex programmable logic device (CPLD) coupled to the non-volatile memory device; a field programmable gate array (FPGA) coupled to the CPLD; and a host coupled to the FPGA; wherein the apparatus triggers a switch of an FPGA image in the FPGA to another FPGA image. In another embodiment of the invention, a method comprises: triggering, by an apparatus, a switch of an FPGA image in a field programmable gate array (FPGA) to another FPGA image; herein the apparatus comprises: a non-volatile memory device; a complex programmable logic device (CPLD) coupled to the non-volatile memory device; the field programmable gate array (FPGA) coupled to the CPLD; and a host coupled to the FPGA. In yet another embodiment of the invention, an article of manufacture comprises a non-transitory computer-readable medium having stored thereon instructions operable to permit an apparatus to perform a method comprising: triggering, by the apparatus, a switch of an FPGA image in a field programmable gate array (FPGA) to another FPGA image, wherein the apparatus comprises: a non-volatile memory device; a complex programmable logic device (CPLD) coupled to the non-volatile memory device; the field programmable gate array (FPGA) coupled to the CPLD; and a host coupled to the FPGA.

IPC Classes  ?

  • G05B 19/05 - Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
  • H03K 19/177 - Logic circuits, i.e. having at least two inputs acting on one outputInverting circuits using specified components using elementary logic circuits as components arranged in matrix form
  • A61B 5/00 - Measuring for diagnostic purposes Identification of persons
  • G06F 17/50 - Computer-aided design
  • G05B 19/042 - Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
  • A61B 5/024 - Measuring pulse rate or heart rate
  • H03K 19/1776 - Structural details of configuration resources for memories

15.

Adaptive power cycle sequences for data recovery

      
Application Number 15176156
Grant Number 10180887
Status In Force
Filing Date 2016-06-08
First Publication Date 2019-01-15
Grant Date 2019-01-15
Owner BiTMICRO LLC (USA)
Inventor
  • Bruce, Rolando H.
  • Cantong, Richard A.
  • Fuentes, Marizonne O.

Abstract

The present invention relates to an apparatus, method, and/or sequence that adaptively provide the recovery of data after a power cycle sequence, wherein only minimal updates are provided for control blocks associated with the data.

IPC Classes  ?

  • G06F 11/00 - Error detectionError correctionMonitoring
  • G06F 11/14 - Error detection or correction of the data by redundancy in operation, e.g. by using different operation sequences leading to the same result
  • G06F 3/06 - Digital input from, or digital output to, record carriers
  • G06F 12/0804 - Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating

16.

Solid state drive with improved enclosure assembly

      
Application Number 15414504
Grant Number 10149399
Status In Force
Filing Date 2017-01-24
First Publication Date 2018-12-04
Grant Date 2018-12-04
Owner BiTMICRO LLC (USA)
Inventor
  • Mangay-Ayam, Jr., Rogelio Gazmen
  • Esguerra, Elbert Castro
  • Parazo, Jerico Alge
  • Galvez, Christopher Dayego
  • Cruz, Allan Famitanco

Abstract

The present invention pertains to a hard disk drive form factor compatible solid-state storage device enclosure assembly that protects circuit boards contained within the enclosure from environmental disruption, such as mechanical stress, vibration, external electronic disruption, or any combination of these, while allowing for a variable number of circuit boards in the SSD enclosure. In another embodiment, the solid-state storage device enclosure assembly, or a similar circuit board assembly, includes an alignment guide that precludes a circuit board from being misaligned within the enclosure.

IPC Classes  ?

  • H05K 7/14 - Mounting supporting structure in casing or on frame or rack
  • G11C 5/04 - Supports for storage elementsMounting or fixing of storage elements on such supports
  • G11C 5/00 - Details of stores covered by group
  • H05K 5/00 - Casings, cabinets or drawers for electric apparatus
  • H05K 9/00 - Screening of apparatus or components against electric or magnetic fields
  • H05K 1/14 - Structural association of two or more printed circuits
  • H05K 1/02 - Printed circuits Details

17.

Memory transaction with reduced latency

      
Application Number 14616700
Grant Number 10120586
Status In Force
Filing Date 2015-02-07
First Publication Date 2018-11-06
Grant Date 2018-11-06
Owner BiTMICRO, LLC (USA)
Inventor
  • Bruce, Rey H.
  • Bruce, Ricardo H.
  • Tagayo-Villapana, Elsbeth Lauren

Abstract

A solution for performing reduced latency memory read transactions is disclosed. In one example, a storage apparatus has a memory array that includes: a flash device having a data register, a memory interface coupled to the memory array and a buffer set that includes at least one buffer suitable for use as a prefetch buffer. The memory interface, in response to a memory read transaction request, performs a read operation and, if stored data exists within the memory array that meets a prefetch selection criterion, also performs an internal read operation. The internal read operation includes allocating a prefetch buffer in the buffer set and storing the data as prefetch data in the prefetch buffer. If the memory interface receives a second memory read transaction request for data that is currently available as prefetch data, the memory interface responds by performing a forwarding transaction that includes retrieving the prefetch data from the prefetch buffer and forwarding the prefetch data to a host.

IPC Classes  ?

  • G06F 12/00 - Accessing, addressing or allocating within memory systems or architectures
  • G06F 3/06 - Digital input from, or digital output to, record carriers
  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal

18.

Electronic storage device

      
Application Number 15269967
Grant Number 10082966
Status In Force
Filing Date 2016-09-19
First Publication Date 2018-09-25
Grant Date 2018-09-25
Owner BiTMICRO LLC (USA)
Inventor
  • Bruce, Rolando H.
  • Lanuza, Reyjan C.
  • Lukban, Jose Miguel N.
  • Arcedera, Mark Ian A.
  • Chong, Ryan C.

Abstract

A solution for reducing erase cycles in an electronic storage device that uses at least one erase-limited memory device is disclosed.

IPC Classes  ?

  • G06F 12/02 - Addressing or allocationRelocation
  • G06F 3/06 - Digital input from, or digital output to, record carriers
  • G11C 16/34 - Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
  • G11C 16/16 - Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
  • G11C 16/10 - Programming or data input circuits
  • G11C 16/08 - Address circuitsDecodersWord-line control circuits
  • G11C 16/26 - Sensing or reading circuitsData output circuits
  • G11C 16/20 - InitialisingData presetChip identification

19.

Interrupt coalescing

      
Application Number 14690349
Grant Number 10078604
Status In Force
Filing Date 2015-04-17
First Publication Date 2018-09-18
Grant Date 2018-09-18
Owner BITMICRO LLC (USA)
Inventor
  • Cristobal, Arnaldo
  • Verdan, Marlon

Abstract

In an embodiment of the invention, a method comprises: collecting a plurality of interrupts and servicing coalesced active interrupts to a processor if an interrupt count limit has occurred or if a timeout count has expired. In another embodiment of the invention, an apparatus comprises: an interrupt controller configured to collect a plurality of interrupts and configured to service coalesced active interrupts to a processor if an interrupt count limit has occurred or if a timeout count has expired. In yet another embodiment of the invention, an article of manufacture comprises: a non-transient computer-readable medium having stored thereon instructions that permit a method comprising: collecting a plurality of interrupts and servicing coalesced active interrupts to a processor if an interrupt count limit has occurred or if a timeout count has expired.

IPC Classes  ?

  • G06F 13/24 - Handling requests for interconnection or transfer for access to input/output bus using interrupt
  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt

20.

Writing volatile scattered memory metadata to flash device

      
Application Number 15170768
Grant Number 10055150
Status In Force
Filing Date 2016-06-01
First Publication Date 2018-08-21
Grant Date 2018-08-21
Owner BITMICRO LLC (USA)
Inventor
  • Fenol, Marvin Dela Cruz
  • Abad, Jik-Jik Oyong
  • Pestano, Precious Nezaiah Umali

Abstract

In an embodiment of the invention, a method comprises: requesting an update on a control data in at least one flash block in a storage memory; replicating, from the storage memory to a cache memory, the control data to be updated; moving a clean cache link list to a dirty cache link list so that the dirty cache link list is changed to reflect the update on the control data; and moving the dirty cache link list to a for-flush link list and writing an updated control data from the for-flush link list to a free flash page in the storage memory. In another embodiment of the invention, an apparatus comprises: a control data flushing system configured to: request an update on a control data in at least one flash block in a storage memory; replicate, from the storage memory to a cache memory, the control data to be updated; move a clean cache link list to a dirty cache link list so that the dirty cache link list is changed to reflect the update on the control data; and move the dirty cache link list to a for-flush link list and write an updated control data from the for-flush link list to a free flash page in the storage memory. In yet another embodiment of the invention, an article of manufacture, comprises a non-transient computer-readable medium having stored thereon instructions operable to permit an apparatus to: request an update on a control data in at least one flash block in a storage memory; replicate, from the storage memory to a cache memory, the control data to be updated; move a clean cache link list to a dirty cache link list so that the dirty cache link list is changed to reflect the update on the control data; and move the dirty cache link list to a for-flush link list and write an updated control data from the for-flush link list to a free flash page in the storage memory.

IPC Classes  ?

  • G06F 3/06 - Digital input from, or digital output to, record carriers
  • G06F 12/0804 - Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
  • G06F 12/121 - Replacement control using replacement algorithms

21.

Bit-mapped DMA transfer with dependency table configured to monitor status so that a processor is not rendered as a bottleneck in a system

      
Application Number 15603434
Grant Number 10042799
Status In Force
Filing Date 2017-05-23
First Publication Date 2018-08-07
Grant Date 2018-08-07
Owner BITMICRO, LLC (USA)
Inventor
  • Ponce, Cyrill C.
  • Fuentes, Marizonne O.
  • Noble, Gianico G.

Abstract

In an embodiment of the invention, a method comprises: A method, comprising: issuing, by a Direct Memory Access (DMA) engine, an update request to a dependency table if the DMA engine has finished executing a first descriptor; and issuing, by the DMA engine, a monitoring request if the DMA engine is executing a second descriptor that depends on a completion of a data transfer so that the DMA engine can monitor a status of a selected subindex related to the data transfer, wherein the subindex is in the dependency table. In another embodiment of the invention, an apparatus comprises: a Direct Memory Access (DMA) engine configured to issue an update request to a dependency table if the DMA engine has finished executing a first descriptor, and configured to issue a monitoring request if the DMA engine is executing a second descriptor that depends on a completion of a data transfer so that the DMA engine can monitor a status of a selected subindex related to the data transfer, wherein the subindex is in the dependency table.

IPC Classes  ?

  • G06F 13/37 - Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a physical-position-dependent priority, e.g. daisy chain, round robin or token passing
  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal

22.

Method for transferring and receiving frames across PCI express bus for SSD device

      
Application Number 14688748
Grant Number 10042792
Status In Force
Filing Date 2015-04-16
First Publication Date 2018-08-07
Grant Date 2018-08-07
Owner BITMICRO LLC (USA)
Inventor
  • Ricaborda, Amor Leo Saing
  • Abitria, Alain Vincent Villaranda
  • Orcullo, Rose Fay M.

Abstract

In an embodiment of the invention, a method comprises: transmitting, by a host side, an exchange message protocol (EMP) command frame to a memory device side; informing, by the host side, the memory device side to process the command frame; executing, by the memory device side, the command frame; and transmitting, by the memory device side, an EMP response frame to the host side, in response to the command frame. In another embodiment of the invention, an apparatus comprises: a host side configured to transmit an exchange message protocol (EMP) command frame to a memory device side; wherein the host side is configured to inform the memory device side to process the command frame; wherein the memory device side is configured to execute the command frame; and wherein the memory device side is configured to transmit an EMP response frame to the host side, in response to the command frame.

IPC Classes  ?

  • G06F 13/20 - Handling requests for interconnection or transfer for access to input/output bus
  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal
  • G06F 13/42 - Bus transfer protocol, e.g. handshakeSynchronisation
  • G06F 12/02 - Addressing or allocationRelocation

23.

Exchange message protocol message transmission between two devices

      
Application Number 14690371
Grant Number 10025736
Status In Force
Filing Date 2015-04-17
First Publication Date 2018-07-17
Grant Date 2018-07-17
Owner BITMICRO LLC (USA)
Inventor
  • Ricaborda, Amor Leo Saing
  • Abitria, Alain Vincent Villaranda
  • Orcullo, Rose Fay M.

Abstract

In an embodiment of the invention, a method comprises: transmitting, by a host side, an exchange message protocol (EMP) command frame to a memory device side; informing, by the host side, the memory device side to process the command frame; executing, by the memory device side, the command frame; and transmitting, by the memory device side, an EMP response frame to the host side, in response to the command frame. In another embodiment of the invention, an apparatus comprises: a host side configured to transmit an exchange message protocol (EMP) command frame to a memory device side; wherein the host side is configured to inform the memory device side to process the command frame; wherein the memory device side is configured to execute the command frame; and wherein the memory device side is configured to transmit an EMP response frame to the host side, in response to the command frame.

IPC Classes  ?

  • G06F 3/06 - Digital input from, or digital output to, record carriers
  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal
  • G06F 13/42 - Bus transfer protocol, e.g. handshakeSynchronisation

24.

Multi-level message passing descriptor

      
Application Number 15344537
Grant Number 10013373
Status In Force
Filing Date 2016-11-06
First Publication Date 2018-07-03
Grant Date 2018-07-03
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Ricardo H.
  • Chiw, Bernard Sherwin Leung
  • Somera, Margaret Anne Nadonga

Abstract

In an embodiment of the invention, a method for to use a two level linked list descriptor mechanism to pass information among flash, memory, and IO controller modules is presented. The method includes creating a first level data structure for one or more first level descriptors; creating a second level data structure for one or more second level descriptors, each second level descriptor having a pointer to tracking information that includes start information, running information, and rewind information for a data DMA; using the one or more second level descriptors, the one or more first level descriptors, and the tracking information for a data DMA; updating the tracking information during the data DMA; and updating the tracking information at the end of the data DMA.

IPC Classes  ?

  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal
  • G06F 13/16 - Handling requests for interconnection or transfer for access to memory bus

25.

Multi-mode device for flexible acceleration and storage provisioning

      
Application Number 15483893
Grant Number 10007561
Status In Force
Filing Date 2017-04-10
First Publication Date 2018-06-26
Grant Date 2018-06-26
Owner BITMICRO LLC (USA)
Inventor
  • Pudipeddi, Bharadwaj
  • Bunting, Jeffrey
  • Chang, Lihan

Abstract

The invention is an apparatus for dynamic provisioning available as a multi-mode device that can be dynamically configured for balancing between storage performance and hardware acceleration resources on reconfigurable hardware such as an FPGA. An embodiment of the invention provides a cluster of these multi-mode devices that form a group of resilient Storage and Acceleration elements without requiring a dedicated standby storage spare. Yet another embodiment of the invention provides an interconnection network attached cluster configured to dynamically provision full acceleration and storage resources to meet an application's needs and end-of-life requirements of an SSD.

IPC Classes  ?

  • G06F 9/46 - Multiprogramming arrangements
  • G06F 9/50 - Allocation of resources, e.g. of the central processing unit [CPU]

26.

Storage system with distributed ECC capability

      
Application Number 14708246
Grant Number 09996419
Status In Force
Filing Date 2015-05-09
First Publication Date 2018-06-12
Grant Date 2018-06-12
Owner BitMICRO LLC (USA)
Inventor
  • Bruce, Rey H.
  • Climaco, Joey B.
  • Mateo, Noeme P.

Abstract

Embodiments of the present invention relate to an apparatus, method, and/or sequence for a distributed ECC that may be used in a storage system. In another embodiment of the invention, an apparatus for handling distributed error correction code (ECC) operations, includes: a plurality of ECC engines configured to perform ECC operations in parallel on multiple data parts; the plurality of ECC engines distributed in parallel to receive some of the multiple data parts that are read from storage media devices and to receive some of the other multiple data parts that are to be written to the storage media devices; and the plurality of ECC engines configured to use respective ECC bytes corresponding to respective ones of the multiple data parts.

IPC Classes  ?

  • G06F 11/10 - Adding special bits or symbols to the coded information, e.g. parity check, casting out nines or elevens
  • G06F 3/06 - Digital input from, or digital output to, record carriers
  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal

27.

Self-test solution for delay locked loops

      
Application Number 15232801
Grant Number 09977077
Status In Force
Filing Date 2016-08-09
First Publication Date 2018-05-22
Grant Date 2018-05-22
Owner Bitmicro LLC (USA)
Inventor Raffiñan, Edzel Gerald Dela Cruz

Abstract

A built-in self test (BIST) circuit and method is provided to test a first and a second DLL. The first DLL has a first delay input, a first clock input disposed to receive a clock input signal, and a first clock output that provides a first clock output signal delayed in comparison with the clock input signal. The second DLL has a second delay input, a second clock input disposed to receive the clock input signal, and a second clock output signal delayed in comparison with the clock input signal. The BIST circuitry provides a first delay amount over the first delay input creating a start offset between the first and second clock output signals. If the first DLL is functioning properly the start offset between the output signals should remain unchanged even after the BIST circuitry provides an additional common delay amount to the first and second delay inputs.

IPC Classes  ?

  • G01R 31/02 - Testing of electric apparatus, lines, or components for short-circuits, discontinuities, leakage, or incorrect line connection
  • G01R 25/00 - Arrangements for measuring phase angle between a voltage and a current or between voltages or currents
  • G01R 31/317 - Testing of digital circuits
  • G11C 29/02 - Detection or location of defective auxiliary circuits, e.g. defective refresh counters
  • G11C 29/50 - Marginal testing, e.g. race, voltage or current testing
  • G11C 29/12 - Built-in arrangements for testing, e.g. built-in self testing [BIST]

28.

Scatter-gather approach for parallel data transfer in a mass storage system

      
Application Number 14217249
Grant Number 09971524
Status In Force
Filing Date 2014-03-17
First Publication Date 2018-05-15
Grant Date 2018-05-15
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Ricardo H.
  • Santos, Avnher Villar
  • Verdan, Marlon Basa
  • Villapana, Elsbeth Lauren Tagayo

Abstract

An embodiment of the invention provides a method for optimizing flash device accesses, comprising: interleaving and striping, in tandem, for a transfer of data the other portions of the data.

IPC Classes  ?

  • G06F 3/06 - Digital input from, or digital output to, record carriers

29.

Systematic method on queuing of descriptors for multiple flash intelligent DMA engine operation

      
Application Number 14690339
Grant Number 09952991
Status In Force
Filing Date 2015-04-17
First Publication Date 2018-04-24
Grant Date 2018-04-24
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Ricardo H.
  • Verdan, Marlon B.
  • Jago-On, Rowenah Michelle

Abstract

In an embodiment of the invention, a method comprises: fetching a first set of descriptors from a memory device and writing the first set of descriptors to a buffer; retrieving the first set of descriptors from the buffer and processing the first set of descriptors to permit a Direct Memory Access (DMA) operation; and if space is available in the buffer, fetching a second set of descriptors from the memory device and writing the second set of descriptors to the buffer during or after the processing of the first set of descriptors. In another embodiment of the invention, an apparatus comprises: a fetching module configured to fetch a first set of descriptors from a memory device and to write the first set of descriptors to a buffer; a sequencer configured to retrieve the first set of descriptors from the buffer and to process the first set of descriptors to permit a Direct Memory Access (DMA) operation; and wherein if space is available in the buffer, the fetching module is configured to fetch a second set of descriptors from the memory device and to write the second set of descriptors to the buffer during or after the processing of the first set of descriptors.

IPC Classes  ?

  • G06F 5/12 - Means for monitoring the fill levelMeans for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations
  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal
  • G06F 13/40 - Bus structure
  • H04L 12/801 - Flow control or congestion control
  • G06F 5/14 - Means for monitoring the fill levelMeans for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations for overflow or underflow handling, e.g. full or empty flags

30.

Embedded system boot from a storage device

      
Application Number 14684399
Grant Number 09934045
Status In Force
Filing Date 2015-04-12
First Publication Date 2018-04-03
Grant Date 2018-04-03
Owner BITMICRO LLC (USA)
Inventor
  • Manlapat, Alvin Anonuevo
  • Beleno, Ian Victor Pasion

Abstract

In an embodiment of the invention, an apparatus comprises an embedded system comprising: a processor configured to execute firmware; a random access memory (RAM) configured to store firmware and a multi-port memory controller configured to interface with the RAM; a power-on reset (POR) sequencer configured to control a boot process of the embedded system; a nonvolatile memory configured to store data used by the POR sequencer in the boot process and a nonvolatile memory controller configured to interface with the nonvolatile memory; a direct memory access (DMA) controller configured initiate and track data transfers; and a configuration and status register (CSR) controller configured to access modules in the embedded system.

IPC Classes  ?

  • G06F 1/12 - Synchronisation of different clock signals
  • G06F 9/44 - Arrangements for executing specific programs
  • G06F 1/24 - Resetting means
  • G06F 12/02 - Addressing or allocationRelocation
  • G11C 7/10 - Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers

31.

Bit-mapped DMA and IOC transfer with dependency table comprising plurality of index fields in the cache for DMA transfer

      
Application Number 15217947
Grant Number 09934160
Status In Force
Filing Date 2016-07-22
First Publication Date 2018-04-03
Grant Date 2018-04-03
Owner BiTMICRO LLC (USA)
Inventor
  • Ponce, Cyrill C.
  • Fuentes, Marizonne Operio
  • Noble, Gianico Geonzon

Abstract

1 are correlated or tied with each other by the processor by providing information to the hardware assist mechanism. The hardware assist mechanism responsible for moderating the data transfer from source to destination. The flow tracker guarantees that data needed by destination exists. By applying the invention to the prior approach/solution, the data latency between the flash & IO bus will be reduced. Processor interrupts will be minimized while data transfer between the flash & IO bus is ongoing.

IPC Classes  ?

  • G06F 3/00 - Input arrangements for transferring data to be processed into a form capable of being handled by the computerOutput arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
  • G06F 12/1081 - Address translation for peripheral access to main memory, e.g. direct memory access [DMA]
  • G11C 7/10 - Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal
  • G06F 13/16 - Handling requests for interconnection or transfer for access to memory bus
  • G06F 12/0875 - Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
  • G06F 3/06 - Digital input from, or digital output to, record carriers

32.

Bus arbitration with routing and failover mechanism

      
Application Number 14688209
Grant Number 09916213
Status In Force
Filing Date 2015-04-16
First Publication Date 2018-03-13
Grant Date 2018-03-13
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Ricardo H.
  • Ponce, Cyrill Coronel
  • Espuerta, Jarmie De La Cruz
  • Verdan, Marlon Basa

Abstract

In an embodiment of the invention, an apparatus comprises: a plurality of bus masters and a plurality of bus arbiters to support routing and failover, wherein each bus arbiter is coupled to a plurality of bus masters; and a central processing unit (CPU) coupled to at least one of the bus arbiters; wherein the CPU is configured to execute a firmware that chooses bus re-routing or failover in response to a bus failure. In another embodiment of the invention, a method comprises: choosing, by a central processing unit (CPU) coupled to a plurality of bus arbiters, bus re-routing or failover in response to a bus failure. In yet another embodiment of the invention, an article of manufacture, comprises a non-transient computer-readable medium having stored thereon instructions that permit a method comprising: choosing, by a central processing unit (CPU) coupled to a plurality of bus arbiters, bus re-routing or failover in response to a bus failure.

IPC Classes  ?

  • G06F 13/36 - Handling requests for interconnection or transfer for access to common bus or bus system
  • G06F 11/20 - Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
  • G06F 13/40 - Bus structure
  • G06F 13/16 - Handling requests for interconnection or transfer for access to memory bus

33.

Network of memory systems

      
Application Number 14217161
Grant Number 09875205
Status In Force
Filing Date 2014-03-17
First Publication Date 2018-01-23
Grant Date 2018-01-23
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Ricardo H.
  • Espuerta, Jarmie De La Cruz
  • Verdan, Marlon Basa

Abstract

A large network of memory system is described comprising a plurality of system controllers and flash memory modules, in accordance with an embodiment of the invention. An apparatus is also described comprising a plurality of flash memory modules interconnected with other flash memory modules and to at least one system controller via a point-to-point communication bus topology, in accordance with another embodiment of the invention.

IPC Classes  ?

34.

Flash electronic disk with RAID controller

      
Application Number 14217334
Grant Number 09842024
Status In Force
Filing Date 2014-03-17
First Publication Date 2017-12-12
Grant Date 2017-12-12
Owner BITMICRO LLC (USA)
Inventor
  • David, Raquel Bautista
  • Climaco, Joey Barreto

Abstract

In an embodiment of the invention, a method is presented to operationally integrate one or more RAID control mechanisms into a flash electronic disk controller. The method includes incorporating one or more RAID features into a flash electronic disk by adding one or more RAID components in a flash controller, wherein the flash electronic disk includes a RAID control module to control the one or more RAID components; receiving a read or write operation command at a flash controller from a host; translating the read or write operation command into a command format understood by one or more flash controllers; translating the command format into an instruction format understood by one or more flash memory devices; and accessing one or more memory locations in the one or more flash memory devices according to the instruction format to perform a read or write operation for the host.

IPC Classes  ?

  • G06F 11/10 - Adding special bits or symbols to the coded information, e.g. parity check, casting out nines or elevens
  • G06F 11/20 - Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
  • G06F 3/06 - Digital input from, or digital output to, record carriers

35.

Data storage system

      
Application Number 14690370
Grant Number 09811461
Status In Force
Filing Date 2015-04-17
First Publication Date 2017-11-07
Grant Date 2017-11-07
Owner BITMICRO LLC (USA)
Inventor
  • Fenol, Marvin Dela Cruz
  • Abad, Jik-Jik Oyong
  • Pestano, Precious Nezaiah Umali

Abstract

In an embodiment of the invention, a method comprises: requesting an update or modification on a control data in at least one flash block in a storage memory; requesting a cache memory; replicating, from the storage memory to the cache memory, the control data to be updated or to be modified; moving a clean cache link list to a dirty cache link list so that the dirty cache link list is changed to reflect the update or modification on the control data; and moving the dirty cache link list to a for flush link list and writing an updated control data from the for flush link list to a free flash page in the storage memory.

IPC Classes  ?

  • G06F 12/02 - Addressing or allocationRelocation
  • G06F 12/0831 - Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means

36.

Bus arbitration with routing and failover mechanism

      
Application Number 14216627
Grant Number 09798688
Status In Force
Filing Date 2014-03-17
First Publication Date 2017-10-24
Grant Date 2017-10-24
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Ricardo H.
  • Ponce, Cyrill Coronel
  • Espuerta, Jarmie Dela Cruz

Abstract

In one embodiment of the invention, a system architecture for bus masters and bus arbiters are provided to support routing and failover. The system comprises large pools of bus masters, a plurality of sets can be configured to control a plurality of slave devices wherein each set contains a collection of bus masters attached to central arbiter driving one of the system buses. Each set controls a group(s) of slave device that are primarily controlled by the bus master(s) within the set. Hence, a system can therefore include of a plurality of sets and can control a group of slave devices.

IPC Classes  ?

  • G06F 13/20 - Handling requests for interconnection or transfer for access to input/output bus
  • G06F 13/366 - Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a centralised polling arbiter
  • G06F 13/00 - Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units

37.

Write buffering

      
Application Number 14689045
Grant Number 09734067
Status In Force
Filing Date 2015-04-16
First Publication Date 2017-08-15
Grant Date 2017-08-15
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Rolando H.
  • Dela Cruz, Elmer Paule
  • Arcedera, Mark Ian Alcid

Abstract

A hybrid storage system is described having a mixture of different types of storage devices comprising rotational drives, flash devices, SDRAM, and SRAM. The rotational drives are used as the main storage, providing lowest cost per unit of storage memory. Flash memory is used as a higher-level cache for rotational drives. Methods for managing multiple levels of cache for this storage system is provided having a very fast Level 1 cache which consists of volatile memory (SRAM or SDRAM), and a non-volatile Level 2 cache using an array of flash devices. It describes a method of distributing the data across the rotational drives to make caching more efficient. It also describes efficient techniques for flushing data from L1 cache and L2 cache to the rotational drives, taking advantage of concurrent flash devices operations, concurrent rotational drive operations, and maximizing sequential access types in the rotational drives rather than random accesses which are relatively slower. Methods provided here may be extended for systems that have more than two cache levels.

IPC Classes  ?

  • G06F 12/0831 - Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
  • G06F 12/0875 - Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack

38.

Bit-mapped DMA transfer with dependency table configured to monitor status so that a processor is not rendered as a bottleneck in a system

      
Application Number 14687700
Grant Number 09672178
Status In Force
Filing Date 2015-04-15
First Publication Date 2017-06-06
Grant Date 2017-06-06
Owner BITMICRO LLC (USA)
Inventor
  • Ponce, Cyrill C.
  • Fuentes, Marizonne O.
  • Noble, Gianico G.

Abstract

In an embodiment of the invention, a method comprises: A method, comprising: issuing, by a Direct Memory Access (DMA) engine, an update request to a dependency table if the DMA engine has finished executing a first descriptor; and issuing, by the DMA engine, a monitoring request if the DMA engine is executing a second descriptor that depends on a completion of a data transfer so that the DMA engine can monitor a status of a selected subindex related to the data transfer, wherein the subindex is in the dependency table. In another embodiment of the invention, an apparatus comprises: a Direct Memory Access (DMA) engine configured to issue an update request to a dependency table if the DMA engine has finished executing a first descriptor, and configured to issue a monitoring request if the DMA engine is executing a second descriptor that depends on a completion of a data transfer so that the DMA engine can monitor a status of a selected subindex related to the data transfer, wherein the subindex is in the dependency table.

IPC Classes  ?

  • G06F 3/00 - Input arrangements for transferring data to be processed into a form capable of being handled by the computerOutput arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
  • G06F 13/00 - Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
  • G06F 13/37 - Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a physical-position-dependent priority, e.g. daisy chain, round robin or token passing
  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal

39.

Electronic storage device

      
Application Number 14803107
Grant Number 09484103
Status In Force
Filing Date 2015-07-20
First Publication Date 2016-11-01
Grant Date 2016-11-01
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Rolando H.
  • Lanuza, Reyjan C.
  • Lukban, Jose Miguel N.
  • Arcedera, Mark Ian A.
  • Chong, Ryan C.

Abstract

A solution for reducing erase cycles in an electronic storage device that uses at least one erase-limited memory device is disclosed.

IPC Classes  ?

  • G06F 12/02 - Addressing or allocationRelocation
  • G11C 16/14 - Circuits for erasing electrically, e.g. erase voltage switching circuits
  • G11C 16/26 - Sensing or reading circuitsData output circuits
  • G11C 16/20 - InitialisingData presetChip identification
  • G11C 16/08 - Address circuitsDecodersWord-line control circuits

40.

Adaptive power cycle sequences for data recovery

      
Application Number 13253912
Grant Number 09372755
Status In Force
Filing Date 2011-10-05
First Publication Date 2016-06-21
Grant Date 2016-06-21
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Rolando H.
  • Cantong, Richard A.
  • Fuentes, Marizonne O.

Abstract

The present invention relates to an apparatus, method, and/or sequence that adaptively provide the recovery of data after a power cycle sequence, wherein only minimal updates are provided for control blocks associated with the data.

IPC Classes  ?

  • G06F 11/00 - Error detectionError correctionMonitoring
  • G06F 11/14 - Error detection or correction of the data by redundancy in operation, e.g. by using different operation sequences leading to the same result
  • G06F 3/06 - Digital input from, or digital output to, record carriers

41.

Embedded system boot from a storage device

      
Application Number 14217365
Grant Number 10120694
Status In Force
Filing Date 2014-03-17
First Publication Date 2015-09-17
Grant Date 2018-11-06
Owner BITMICRO LLC (USA)
Inventor
  • Manlapat, Alvin Anonuevo
  • Beleno, Ian Victor Pasion

Abstract

A mechanism of booting up a system directly from a storage device and a means of initializing an embedded system prior to activating a CPU is presented. The said system is comprised of one or more CPUs, a reset controller, a storage device controller, one or more direct memory access controllers, a RAM and its controller, a ROM and its controller, a debug interface and a power-on reset (POR) sequencer. The POR sequencer controls the overall boot process of the embedded system. Said sequencer uses descriptors (POR Sequencer descriptors) which are used to update the configuration registers of the system and to enable CPU-independent data transfers with the use of DMA controllers. Using a minimal amount of non-volatile memory for booting up a system brings down costs associated with increased silicon real estate area and power consumption. Capability of pre-initializing the system even before a CPU is brought out of reset provides flexibility and system robustness. Through the use of the Power-On Reset Sequencer module, integrity of program code and user data used in the boot up process can be verified thus providing a resilient boot up sequence. The present invention provides a mechanism for booting up a system using a minimum amount of nonvolatile memory. This method also enables the embedded system to initialize all configuration registers even before any of the CPUs of the system is brought out of reset. The embedded system consists of multiple controller chips or a single controller chip. The embedded system can have a single or multiple central processing units.

IPC Classes  ?

42.

Multi-profile memory controller for computing devices

      
Application Number 12876113
Grant Number 09135190
Status In Force
Filing Date 2010-09-04
First Publication Date 2015-09-15
Grant Date 2015-09-15
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Ricardo H.
  • Verdan, Marlon B.
  • Somera, Margaret Anne N.
  • Jago-On, Rowenah Michelle D.
  • De Belen, Maria Eliza B.
  • Palacol, Ron Kelvin B.

Abstract

The present invention pertains to a multi-profile memory controller and devices that use multi-profile memory controllers. More particularly, the present invention pertains to a multi-profile memory controller and related methods and systems that can operate with memory locations, memory devices, or both which are associated with different memory attributes, different attribute qualifiers, or the like, while minimizing or avoiding some or all of the disadvantages of the prior art.

IPC Classes  ?

  • G06F 12/00 - Accessing, addressing or allocating within memory systems or architectures
  • G06F 13/16 - Handling requests for interconnection or transfer for access to memory bus
  • G06F 12/02 - Addressing or allocationRelocation

43.

Distributed ECC engine for storage media

      
Application Number 13475878
Grant Number 09043669
Status In Force
Filing Date 2012-05-18
First Publication Date 2015-05-26
Grant Date 2015-05-26
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Rey H.
  • Climaco, Joey B.
  • Mateo, Noeme P.

Abstract

Embodiments of the present invention relate to an apparatus, method, and/or sequence for a distributed ECC that may be used in a storage system. In another embodiment of the invention, an apparatus for handling distributed error correction code (ECC) operations, includes: a plurality of ECC engines configured to perform ECC operations in parallel on multiple data parts; the plurality of ECC engines distributed in parallel to receive some of the multiple data parts that are read from storage media devices and to receive some of the other multiple data parts that are to be written to the storage media devices; and the plurality of ECC engines configured to use respective ECC bytes corresponding to respective ones of the multiple data parts.

IPC Classes  ?

  • H03M 13/00 - Coding, decoding or code conversion, for error detection or error correctionCoding theory basic assumptionsCoding boundsError probability evaluation methodsChannel modelsSimulation or testing of codes
  • G11C 29/00 - Checking stores for correct operationTesting stores during standby or offline operation
  • H03M 13/27 - Coding, decoding or code conversion, for error detection or error correctionCoding theory basic assumptionsCoding boundsError probability evaluation methodsChannel modelsSimulation or testing of codes using interleaving techniques
  • G06F 11/10 - Adding special bits or symbols to the coded information, e.g. parity check, casting out nines or elevens

44.

Reduced latency memory read transactions in storage devices

      
Application Number 12270626
Grant Number 08959307
Status In Force
Filing Date 2008-11-13
First Publication Date 2015-02-17
Grant Date 2015-02-17
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Rey H.
  • Bruce, Ricardo H.
  • Tagayo-Villapaña, Elsbeth Lauren

Abstract

A solution for performing reduced latency memory read transactions is disclosed. In one example, a storage apparatus has a memory array that includes: a flash device having a data register, a memory interface coupled to the memory array and a buffer set that includes at least one buffer suitable for use as a prefetch buffer. The memory interface, in response to a memory read transaction request, performs a read operation and, if stored data exists within the memory array that meets a prefetch selection criterion, also performs an internal read operation. The internal read operation includes allocating a prefetch buffer in the buffer set and storing the data as prefetch data in the prefetch buffer. If the memory interface receives a second memory read transaction request for data that is currently available as prefetch data, the memory interface responds by performing a forwarding transaction that includes retrieving the prefetch data from the prefetch buffer and forwarding the prefetch data to a host.

IPC Classes  ?

  • G06F 12/00 - Accessing, addressing or allocating within memory systems or architectures

45.

Multi-leveled cache management in a hybrid storage system

      
Application Number 14217436
Grant Number 09430386
Status In Force
Filing Date 2014-03-17
First Publication Date 2015-01-08
Grant Date 2016-08-30
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Rolando H.
  • Dela Cruz, Elmer Paule
  • Arcedera, Mark Ian Alcid

Abstract

A hybrid storage system is described having a mixture of different types of storage devices comprising rotational drives, flash devices, SDRAM, and SRAM. The rotational drives are used as the main storage, providing lowest cost per unit of storage memory. Flash memory is used as a higher-level cache for rotational drives. Methods for managing multiple levels of cache for this storage system is provided having a very fast Level 1 cache which consists of volatile memory (SRAM or SDRAM), and a non-volatile Level 2 cache using an array of flash devices. It describes a method of distributing the data across the rotational drives to make caching more efficient. It also describes efficient techniques for flushing data from L1 cache and L2 cache to the rotational drives, taking advantage of concurrent flash devices operations, concurrent rotational drive operations, and maximizing sequential access types in the rotational drives rather than random accesses which are relatively slower. Methods provided here may be extended for systems that have more than two cache levels.

IPC Classes  ?

  • G06F 12/08 - Addressing or allocationRelocation in hierarchically structured memory systems, e.g. virtual memory systems

46.

Hardware-assisted DMA transfer with dependency table configured to permit-in parallel-data drain from cache without processor intervention when filled or drained

      
Application Number 14217467
Grant Number 09400617
Status In Force
Filing Date 2014-03-17
First Publication Date 2015-01-01
Grant Date 2016-07-26
Owner BITMICRO LLC (USA)
Inventor
  • Ponce, Cyrill
  • Fuentes, Marizonne Operio
  • Noble, Gianico Geonzon

Abstract

1 Descriptors are set of instructions that is used to activate the DMA controller. By applying the invention to the prior approach/solution, the data latency between the flash & IO bus will be reduced. Processor interrupts will be minimized while data transfer between the flash & IO bus is ongoing.

IPC Classes  ?

  • G06F 3/00 - Input arrangements for transferring data to be processed into a form capable of being handled by the computerOutput arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
  • G06F 3/06 - Digital input from, or digital output to, record carriers
  • G06F 12/08 - Addressing or allocationRelocation in hierarchically structured memory systems, e.g. virtual memory systems

47.

Copying of power-on reset sequencer descriptor from nonvolatile memory to random access memory

      
Application Number 14217399
Grant Number 09858084
Status In Force
Filing Date 2014-03-17
First Publication Date 2014-11-06
Grant Date 2018-01-02
Owner BITMICRO LLC (USA)
Inventor
  • Manlapat, Alvin Anonuevo
  • Beleno, Ian Victor Pasion

Abstract

A mechanism of booting up a system directly from a storage device and a means of initializing an embedded system prior to activating a CPU is presented. The said system is comprised of one or more CPUs, a reset controller, a storage device controller, one or more direct memory access controllers, a RAM and its controller, a ROM and its controller, a debug interface and a power-on reset (POR) sequencer. The POR sequencer controls the overall boot process of the embedded system. Said sequencer uses descriptors (POR Sequencer descriptors) which are used to update the configuration registers of the system and to enable CPU-independent data transfers with the use of DMA controllers. Using a minimal amount of non-volatile memory for booting up a system brings down costs associated with increased silicon real estate area and power consumption. Capability of pre-initializing the system even before a CPU is brought out of reset provides flexibility and system robustness. Through the use of the Power-On Reset Sequencer module, integrity of program code and user data used in the boot up process can be verified thus providing a resilient boot up sequence.

IPC Classes  ?

  • G06F 1/12 - Synchronisation of different clock signals
  • G06F 9/44 - Arrangements for executing specific programs
  • G06F 1/24 - Resetting means

48.

Multilevel memory bus system

      
Application Number 14297628
Grant Number 10133686
Status In Force
Filing Date 2014-06-06
First Publication Date 2014-09-25
Grant Date 2018-11-20
Owner BiTMICRO LLC (USA)
Inventor
  • Bruce, Ricardo H.
  • Villapana, Elsbeth Lauren Tagayo
  • Baylon, Joel Alonzo

Abstract

The present invention relates to a multilevel memory bus system for transferring information between at least one DMA controller and at least one solid-state semiconductor memory device, such as NAND flash memory devices or the like. This multilevel memory bus system includes at least one DMA controller coupled to an intermediate bus; a flash memory bus; and a flash buffer circuit between the intermediate bus and the flash memory bus. This multilevel memory bus system may be disposed to support: an n-bit wide bus width, such as nibble-wide or byte-wide bus widths; a selectable data sampling rate, such as a single or double sampling rate, on the intermediate bus; a configurable bus data rate, such as a single, double, quad, or octal data sampling rate; CRC protection; an exclusive busy mechanism; dedicated busy lines; or any combination of these.

IPC Classes  ?

  • G06F 13/36 - Handling requests for interconnection or transfer for access to common bus or bus system
  • G06F 13/16 - Handling requests for interconnection or transfer for access to memory bus
  • G06F 12/00 - Accessing, addressing or allocating within memory systems or architectures
  • G06F 12/02 - Addressing or allocationRelocation

49.

Self-test solution for delay locked loops

      
Application Number 14214216
Grant Number 09423457
Status In Force
Filing Date 2014-03-14
First Publication Date 2014-09-25
Grant Date 2016-08-23
Owner BITMICRO LLC (USA)
Inventor Raffiñan, Edzel Gerald Dela Cruz

Abstract

A built-in self test (BIST) circuit and method is provided to test a first and a second DLL. The first DLL has a first delay input, a first clock input disposed to receive a clock input signal, and a first clock output that provides a first clock output signal delayed in comparison with the clock input signal. The second DLL has a second delay input, a second clock input disposed to receive the clock input signal, and a second clock output signal delayed in comparison with the clock input signal. The BIST circuitry provides a first delay amount over the first delay input creating a start offset between the first and second clock output signals. If the first DLL is functioning properly the start offset between the output signals should remain unchanged even after the BIST circuitry provides an additional common delay amount to the first and second delay inputs.

IPC Classes  ?

  • G01R 31/02 - Testing of electric apparatus, lines, or components for short-circuits, discontinuities, leakage, or incorrect line connection
  • G01R 25/00 - Arrangements for measuring phase angle between a voltage and a current or between voltages or currents
  • G01R 31/317 - Testing of digital circuits
  • G11C 29/02 - Detection or location of defective auxiliary circuits, e.g. defective refresh counters
  • G11C 29/50 - Marginal testing, e.g. race, voltage or current testing

50.

Solid state drive with improved enclosure assembly

      
Application Number 14182303
Grant Number 09552848
Status In Force
Filing Date 2014-02-18
First Publication Date 2014-06-12
Grant Date 2017-01-24
Owner BITMICRO LLC (USA)
Inventor
  • Mangay-Ayam, Jr., Rogelio Gazmen
  • Esguerra, Elbert Castro
  • Parazo, Jerico Alge
  • Galvez, Christopher Dayego
  • Cruz, Allan Famitanco

Abstract

The present invention pertains to a hard disk drive form factor compatible solid-state storage device enclosure assembly that protects circuit boards contained within the enclosure from environmental disruption, such as mechanical stress, vibration, external electronic disruption, or any combination of these, while allowing for a variable number of circuit boards in the SSD enclosure. In another embodiment, the solid-state storage device enclosure assembly, or a similar circuit board assembly, includes an alignment guide that precludes a circuit board from being misaligned within the enclosure.

IPC Classes  ?

  • H05K 5/00 - Casings, cabinets or drawers for electric apparatus
  • H05K 7/00 - Constructional details common to different types of electric apparatus
  • H05K 1/14 - Structural association of two or more printed circuits
  • G11C 5/04 - Supports for storage elementsMounting or fixing of storage elements on such supports
  • H05K 7/14 - Mounting supporting structure in casing or on frame or rack
  • H05K 9/00 - Screening of apparatus or components against electric or magnetic fields

51.

Reducing erase cycles in an electronic storage device that uses at least one erase-limited memory device

      
Application Number 14038684
Grant Number 09099187
Status In Force
Filing Date 2013-09-26
First Publication Date 2014-04-17
Grant Date 2015-08-04
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Rolando H.
  • Lanuza, Reyjan C.
  • Lukban, Jose Miguel N.
  • Arcedera, Mark Ian A.
  • Chong, Ryan C.

Abstract

A solution for reducing erase cycles in an electronic storage device that uses at least one erase-limited memory device is disclosed.

IPC Classes  ?

  • G06F 12/02 - Addressing or allocationRelocation
  • G11C 16/16 - Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
  • G06F 3/06 - Digital input from, or digital output to, record carriers

52.

Solid state drive with improved enclosure assembly

      
Application Number 12876094
Grant Number 08665601
Status In Force
Filing Date 2010-09-03
First Publication Date 2014-03-04
Grant Date 2014-03-04
Owner BITMICRO LLC (USA)
Inventor
  • Mangay-Ayam, Jr., Rogelio Gazmen
  • Esguerra, Elbert Castro
  • Parazo, Jerico Alge
  • Galvez, Christopher Dayego
  • Cruz, Allan Famitanco

Abstract

The present invention pertains to a hard disk drive form factor compatible solid-state storage device enclosure assembly that protects circuit boards contained within the enclosure from environmental disruption, such as mechanical stress, vibration, external electronic disruption, or any combination of these, while allowing for a variable number of circuit boards in the SSD enclosure. In another embodiment, the solid-state storage device enclosure assembly, or a similar circuit board assembly, includes an alignment guide that precludes a circuit board from being misaligned within the enclosure.

IPC Classes  ?

  • H05K 5/00 - Casings, cabinets or drawers for electric apparatus
  • H05K 1/14 - Structural association of two or more printed circuits
  • H05K 7/00 - Constructional details common to different types of electric apparatus

53.

Multilevel memory bus system for solid-state mass storage

      
Application Number 13890229
Grant Number 08788725
Status In Force
Filing Date 2013-05-08
First Publication Date 2013-09-19
Grant Date 2014-07-22
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Ricardo H.
  • Villapana, Elsbeth Lauren Tagayo
  • Baylon, Joel Alonzo

Abstract

The present invention relates to a multilevel memory bus system for transferring information between at least one DMA controller and at least one solid-state semiconductor memory device, such as NAND flash memory devices or the like. This multilevel memory bus system includes at least one DMA controller coupled to an intermediate bus; a flash memory bus; and a flash buffer circuit between the intermediate bus and the flash memory bus. This multilevel memory bus system may be disposed to support: an n-bit wide bus width, such as nibble-wide or byte-wide bus widths; a selectable data sampling rate, such as a single or double sampling rate, on the intermediate bus; a configurable bus data rate, such as a single, double, quad, or octal data sampling rate; CRC protection; an exclusive busy mechanism; dedicated busy lines; or any combination of these.

IPC Classes  ?

  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal

54.

Input-output device and storage controller handshake protocol using key exchange for data security

      
Application Number 11398321
Grant Number 08165301
Status In Force
Filing Date 2006-04-04
First Publication Date 2012-04-24
Grant Date 2012-04-24
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Rey
  • Fuentes, Marizonne Operio
  • David, Raquel Bautista

Abstract

A protocol for providing secured IO device and storage controller handshake protocol; IO device controlled cipher settings, and secured data storage and access in memory. An IO device requesting data transfer with encryption and/or decryption, requests session keys from the processor. The processor generates a fresh public-private key pair for the session. The public key is sent to the requesting IO device; the private key is momentarily saved by the processor for the session. The requesting IO device generates a secret key and its desired cipher setting; furthermore, encrypts the secret key and cipher setting using the public key, and sends secret key and cipher setting to the processor. The processor uses the private key to decrypt the secret key and cipher setting. The cipher setting is used for configuring the data processing core. The secret key is used for encryption and/or decryption of the data being transferred. All keys are not permanently saved.

IPC Classes  ?

  • H04L 9/06 - Arrangements for secret or secure communicationsNetwork security protocols the encryption apparatus using shift registers or memories for blockwise coding, e.g. D.E.S. systems

55.

Reducing erase cycles in an electronic storage device that uses at least one erase-limited memory device

      
Application Number 12882059
Grant Number 08560804
Status In Force
Filing Date 2010-09-14
First Publication Date 2011-05-12
Grant Date 2013-10-15
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Rolando H.
  • Lanuza, Reyjan C.
  • Lukban, Jose Miguel N.
  • Arcedera, Mark Ian A.
  • Chong, Ryan C.

Abstract

A solution for reducing erase cycles in an electronic storage device that uses at least one erase-limited memory device is disclosed.

IPC Classes  ?

  • G06F 12/00 - Accessing, addressing or allocating within memory systems or architectures

56.

Apparatus for networking devices having fibre channel node functionality

      
Application Number 11495868
Grant Number 07729370
Status In Force
Filing Date 2006-07-28
First Publication Date 2010-06-01
Grant Date 2010-06-01
Owner BITMICRO LLC (USA)
Inventor
  • Orcine, Jairone A.
  • Bruce, Ricardo H.

Abstract

This invention relates to data networks, and more particularly, to platforms, modules and systems for networking at least one device having Fibre Channel node functionality with another device. Networking of Fibre Channel-enabled devices is provided by an apparatus that includes a circuit board having a first set of signal paths; a first transceiver having a first optical I/O port, a first transceiver output and a first transceiver input; a first I/O connection for coupling to a first Fibre Channel port and for receiving signals transmitted by the first transceiver output via a subset of the first set of signal paths; and a second I/O connection for coupling to a second Fibre Channel port and for receiving signals from the first Fibre Channel Port.

IPC Classes  ?

57.

Direct memory access controller with encryption and decryption for non-blocking high bandwidth I/O transactions

      
Application Number 11378762
Grant Number 07716389
Status In Force
Filing Date 2006-03-17
First Publication Date 2010-05-11
Grant Date 2010-05-11
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Rey
  • David, Raquel Bautista
  • Estrada, Shielou Vicencio

Abstract

Due to the integration of multiple I/O device controllers in a storage controller and the need to provide secure and fast data transfers between the I/O devices and the storage controller, an architecture that can perform multiple encrypt/decrypt operations simultaneously is therefore needed to service multiple transfer requests without a negative impact on the speed of transfer and processing. The present invention relates to enhancing Direct Memory Access (DMA) operations between multiple IO devices and a storage controller by adding a Data Processing Core. Exemplary implementations are provided to illustrate the background mechanism used by a DMA controller that minimizes central-processing-unit (CPU) intervention and the multi-channel architecture which allows multiple IO requests to be serviced simultaneously.

IPC Classes  ?

  • G06F 3/00 - Input arrangements for transferring data to be processed into a form capable of being handled by the computerOutput arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
  • G06F 13/00 - Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
  • H04Q 7/24 -
  • H04L 12/28 - Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]

58.

Optimizing memory operations in an electronic storage device

      
Application Number 12323461
Grant Number 08010740
Status In Force
Filing Date 2008-11-25
First Publication Date 2009-03-19
Grant Date 2011-08-30
Owner BITMICRO LLC (USA)
Inventor
  • Arcedera, Mark I.
  • Babaylan, Ritchie
  • Lanuza, Reyjan

Abstract

To optimize memory operations, a mapping table may be used that includes: logical fields representing a plurality of LBA sets, including first and second logical fields for representing respectively first and second LBA sets, the first and second LBA sets each representing a consecutive LBA set; PBA fields representing PBAs, including a first PBA disposed for representing a first access parameter set and a second PBA disposed for representing a second access parameter set, each PBA associated with a physical memory location in a memory store, and these logical fields and PBA fields disposed to associate the first and second LBA sets with the first and second PBAs; and, upon receiving an I/O transaction request associated with the first and second LBA sets, the mapping table causes optimized memory operations to be performed on memory locations respectively associated with the first and second PBAs.

IPC Classes  ?

  • G06F 12/00 - Accessing, addressing or allocating within memory systems or architectures

59.

Hybrid multi-tiered caching storage system

      
Application Number 11450023
Grant Number 07613876
Status In Force
Filing Date 2006-06-08
First Publication Date 2007-12-13
Grant Date 2009-11-03
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Rey H.
  • Mateo, Noeme Paz
  • Nite, Ricky Sevilla

Abstract

A hybrid storage system comprising mechanical disk drive means, flash memory means, SDRAM memory means, and SRAM memory means is described. IO processor means and DMA controller means are devised to eliminate host intervention. Multi-tiered caching system and novel data structure for mapping logical address to physical address results in a configurable and scalable high performance computer data storage solution.

IPC Classes  ?

  • G06F 12/00 - Accessing, addressing or allocating within memory systems or architectures

60.

Multiple chip module and package stacking for storage devices

      
Application Number 11322442
Grant Number 07826243
Status In Force
Filing Date 2005-12-29
First Publication Date 2007-07-12
Grant Date 2010-11-02
Owner BITMICRO LLC (USA)
Inventor
  • Bruce, Rey
  • Bruce, Ricardo
  • Bugayong, Patrick Digamon
  • Baylon, Joel Alonzo

Abstract

Stacking techniques are illustrated in example embodiments of the present invention wherein semiconductor dies are mounted in a module to become a MCM which serves as the basic building block. A combination of these modules and dies in a substrate creates a package with specific function or a range of memory capacity. Several example system configurations are provided using BGA and PGA to illustrate the stacking technique. Several pin assignment and signal routing techniques are illustrated wherein internal and external signals are routed from main board to various stacked modules. Expansion can be done both on the vertical and horizontal orientations.

IPC Classes  ?

  • G11C 5/02 - Disposition of storage elements, e.g. in the form of a matrix array