G06F12/0866

PROTOCOL BUFFER-BASED CACHE MIRRORING METHOD

Provided is a cache mirroring method applied to a master node. A batch of small Input/Output (IO) blocks in an all-flash product may be aggregated into a large IO block via a ProtoBuff, and a corresponding mirroring request is sent to a slave node, so as to achieve cache mirroring. In addition, the present application also provides a cache mirroring apparatus applied to a master node, a based cache mirroring method and apparatus applied to a slave node, an all-flash storage device, and an all-flash storage system, the technical effects of which correspond to the technical effects of the method.

Secure fast reboot of a virtual machine

A system for managing a virtual machine is provided. The system includes a processor configured to initiate a session for accessing a virtual machine by accessing an operating system image from a system disk and monitor read and write requests generated during the session. The processor is further configured to write any requested information to at least one of a memory cache and a write back cache located separately from the system disk and read the operating system image content from at least one of the system disk and a host cache operably coupled between the system disk and the at least one processor. Upon completion of the computing session, the processor is configured to clear the memory cache, clear the write back cache, and reboot the virtual machine using the operating system image stored on the system disk or stored in the host cache.

Presentation of direct accessed storage under a logical drive model

In accordance with embodiments disclosed herein, there are provided methods, systems, mechanisms, techniques, and apparatuses for presentation of direct accessed storage under a logical drive model; for implementing a distributed architecture for cooperative NVM Data protection; data mirroring for consistent SSD latency; for boosting a controller's performance and RAS with DIF support via concurrent RAID processing; for implementing arbitration and resource schemes of a doorbell mechanism, including doorbell arbitration for fairness and prevention of attack congestion; and for implementing multiple interrupt generation using a messaging unit and NTB in a controller through use of an interrupt coalescing scheme.

Presentation of direct accessed storage under a logical drive model

In accordance with embodiments disclosed herein, there are provided methods, systems, mechanisms, techniques, and apparatuses for presentation of direct accessed storage under a logical drive model; for implementing a distributed architecture for cooperative NVM Data protection; data mirroring for consistent SSD latency; for boosting a controller's performance and RAS with DIF support via concurrent RAID processing; for implementing arbitration and resource schemes of a doorbell mechanism, including doorbell arbitration for fairness and prevention of attack congestion; and for implementing multiple interrupt generation using a messaging unit and NTB in a controller through use of an interrupt coalescing scheme.

TECHNIQUES FOR ZONED NAMESPACE (ZNS) STORAGE USING MULTIPLE ZONES
20230075437 · 2023-03-09 ·

Described are examples for storing, in a first zone cache, one or more logical blocks (LBs) corresponding to a data chunk, writing, for each LB in the data chunk, a cache element of a cache entry that points to the LB in the first zone cache, where the cache entry includes multiple cache elements corresponding to the multiple LBs of the data chunk, writing, for the cache entry, a table entry in a mapping table that points to the cache entry, and when a storage policy is triggered for the cache entry, writing the multiple LBs, pointed to by each cache element of the cache entry, as contiguous LBs in an isolation block for the data chunk in a second zone stream, and updating the table entry to point to the isolation block in the second zone stream.

PROVIDING A DYNAMIC RANDOM-ACCESS MEMORY CACHE AS SECOND TYPE MEMORY PER APPLICATION PROCESS

A first type memory and a second type memory may be identified in a computing system. The second type memory is slower than the first type memory while having a greater storage capacity compared to the first type memory. An application process executing in the computing system may be identified. A region of the first type memory may be provided as a cache of the second type memory for the application process.

Cache program operation of three-dimensional memory device with static random-access memory

Embodiments of three-dimensional (3D) memory devices with a 3D NAND memory array having a plurality of pages, an on-die cache coupled to the memory array on a same chip and configured to cache a plurality of batches of program data between a host and the memory array, the on-die cache having SRAM cells, and a controller coupled to the on-die cache on the same chip. The controller is configured to check a status of an (N−2).sup.th batch of program data, N being an integer equal to or greater than 2, program an (N−1).sup.th batch of program data into respective pages in the 3D NAND memory array, and cache an N.sup.th batch of program data in respective space in the on-die cache as a backup copy of the N.sup.th batch of program data.

Inter-die memory-bus transaction in a seamlessly integrated microcontroller chip
11599489 · 2023-03-07 · ·

Techniques in electronic systems, such as in systems comprising a CPU die and one or more external mixed-mode (analog) chips, may provide improvements advantages in one or more of system design, performance, cost, efficiency and programmability. In one embodiment, the CPU die comprises at least one microcontroller CPU and circuitry enabling the at least one CPU to have a full and transparent connectivity to an analog chip as if they are designed as a single chip microcontroller, while the interface design between the two is extremely efficient and with limited in number of wires, yet may provide improved performance without impact to functionality or the software model.

Inter-die memory-bus transaction in a seamlessly integrated microcontroller chip
11599489 · 2023-03-07 · ·

Techniques in electronic systems, such as in systems comprising a CPU die and one or more external mixed-mode (analog) chips, may provide improvements advantages in one or more of system design, performance, cost, efficiency and programmability. In one embodiment, the CPU die comprises at least one microcontroller CPU and circuitry enabling the at least one CPU to have a full and transparent connectivity to an analog chip as if they are designed as a single chip microcontroller, while the interface design between the two is extremely efficient and with limited in number of wires, yet may provide improved performance without impact to functionality or the software model.

Memory controller and method of operating the same
11599464 · 2023-03-07 · ·

An electronic device includes a memory controller having an improved operation speed. The memory controller includes a main memory, a processor configured to generate commands for accessing data stored in the main memory, a scheduler configured to store the commands and output the commands according to a preset criterion, a cache memory configured to cache and store data accessed by the processor among the data stored in the main memory, and a hazard filter configured to store information on an address of the main memory corresponding to a write command among the commands, provide a pre-completion response for the write command to the scheduler upon receiving the write command, and provide the write command to the main memory.