G06F2212/304

TRACKING STORES AND LOADS BY BYPASSING LOAD STORE UNITS

A system and method for tracking stores and loads to reduce load latency when forming the same memory address by bypassing a load store unit within an execution unit is disclosed. The system and method include storing data in one or more memory dependent architectural register numbers (MdArns), allocating the one or more MdArns to a MEMFILE, writing the allocated one or more MdArns to a map file, wherein the map file contains a MdArn map to enable subsequent access to an entry in the MEMFILE, upon receipt of a load request, checking a base, an index, a displacement and a match/hit via the map file to identify an entry in the MEMFILE and an associated store, and on a hit, providing the entry responsive to the load request from the one or more MdArns.

Multicore shared cache operation engine

Techniques including receiving configuration information for a trigger control channel of the one or more trigger control channels, the configuration information defining a first one or more triggering events, receiving a first memory management command, store the first memory management command, detecting a first one or more triggering events, and triggering the stored first memory management command based on the detected first one or more triggering events.

Virtual network pre-arbitration for deadlock avoidance and enhanced performance

A device includes a data path, a first interface configured to receive a first memory access request from a first peripheral device, and a second interface configured to receive a second memory access request from a second peripheral device. The device further includes an arbiter circuit configured to, in a first clock cycle, a pre-arbitration winner between a first memory access request and a second memory access request based on a first number of credits allocated to a first destination device and a second number of credits allocated to a second destination device. The arbiter circuit is further configured to, in a second clock cycle select a final arbitration winner from among the pre-arbitration winner and a subsequent memory access request based on a comparison of a priority of the pre-arbitration winner and a priority of the subsequent memory access request.

MANAGEMENT-SUBSYSTEM-BASED SOFTWARE RAID CONFIGURATION SYSTEM

A management-subsystem-based software RAID configuration system includes a chassis housing storage devices that each include a respective storage device memory subsystem and that are each coupled to a management subsystem and a software RAID subsystem. The software RAID subsystem uses the storage devices to create a RAID. When the software RAID subsystem receives a configuration command that instructs a configuration of the RAID from the management subsystem via the respective storage device memory subsystem in a first of the storage devices, it identifies a subset of the storage devices that require configuration based on the configuration command, generates a respective configuration sub-command that instructs the configuration of each of the subset of the storage devices to provide the configuration of the RAID according to the configuration command, and transmits the respective configuration sub-command to each of the subset of the storage devices for which that respective configuration sub-command was generated.

Method of managing dynamic memory reallocation and device performing the method

A method of managing dynamic memory reallocation includes receiving an input address including a block bit part, a tag part, and an index part and communicating the index part to a tag memory array, receiving a tag group communicated by the tag memory array based on the index part, analyzing the tag group based on the block bit part and the tag part and changing the block bit part and the tag part based on a result of the analysis, and outputting an output address including a changed block bit part, a changed tag part, and the index part.

Address translation in a data processing apparatus

Address translation circuitry and a method of operating such a translation circuitry are provided. The address translation circuitry is configured to receive a first address used in a first addressing system and to translate it into a second address used in a second addressing system. Translation pipeline circuitry has plural pipeline stages configured to translate the first address into the second address over the course of the plural pipeline stages. Address comparison circuitry is configured to identify an address match condition when a received first address at least partially matches a previously received first address. Insertion circuitry is configured to determine a stage of progress of the previously received first address in the plural pipeline stages and to cause content of the stage of progress of the previously received first address to be unchanged at a next pipeline cycle when the address comparison circuitry identifies the address match condition.

CONFIGURABLE CACHE FOR COHERENT SYSTEM
20250060873 · 2025-02-20 ·

A device includes a memory bank. The memory bank includes data portions of a first way group. The data portions of the first way group include a data portion of a first way of the first way group and a data portion of a second way of the first way group. The memory bank further includes data portions of a second way group. The device further includes a configuration register and a controller configured to individually allocate, based on one or more settings in the configuration register, the first way and the second way to one of an addressable memory space and a data cache.

Memory system managing counters
12229412 · 2025-02-18 · ·

A memory system includes a nonvolatile memory that includes a plurality of regions; a volatile memory; and a controller that is connected to the nonvolatile memory and the volatile memory. The controller is configured to store in the volatile memory a plurality of first counter values each indicating the number of times each of the plurality of regions has been accessed and a plurality of second counter values respectively corresponding to the plurality of first counter values, and write the first counter value of a first region of the plurality of regions to the nonvolatile memory in response to the second counter value of the first region being equal to or more than a threshold value.

OPPORTUNISTIC CLEANING OF COHERENCE DIRECTORIES TO REDUCE CACHE-COHERENCE OVERHEAD
20250053513 · 2025-02-13 ·

A cache-coherent computer system node includes a network-on-chip, a number of computing elements in communication with the network-on-chip, a coherence directory including a number of addresses for cache of the computing elements, a number of coherence states of the addresses, and a number of tracking vectors of the addresses, and a coherence directory controller configured to send a probe to the computing elements during a free cycle of the network-on-chip. The probe is configured to inquire whether an address of the addresses stored in the coherence directory is in the cache of the computing elements, and the coherence directory is configured clean the coherence directory to remove the address in response to an acknowledgement indicating that the address is not in the cache.

Multicore, multibank, fully concurrent coherence controller

A system includes a multi-core shared memory controller (MSMC). The MSMC includes a snoop filter bank, a cache tag bank, and a memory bank. The cache tag bank is connected to both the snoop filter bank and the memory bank. The MSMC further includes a first coherent slave interface connected to a data path that is connected to the snoop filter bank. The MSMC further includes a second coherent slave interface connected to the data path that is connected to the snoop filter bank. The MSMC further includes an external memory master interface connected to the cache tag bank and the memory bank. The system further includes a first processor package connected to the first coherent slave interface and a second processor package connected to the second coherent slave interface. The system further includes an external memory device connected to the external memory master interface.