G06F5/06

Nested loop control

A method for compiling and executing a nested loop includes initializing a nested loop controller with an outer loop count value and an inner loop count value. The nested loop controller includes a predicate FIFO. The method also includes coalescing the nested loop and, during execution of the coalesced nested loop, causing the nested loop controller to populate the predicate FIFO and executing a get predicate instruction having an offset value, where the get predicate returns a value from the predicate FIFO specified by the offset value. The method further includes predicating an outer loop instruction on the returned value from the predicate FIFO.

Nested loop control

A method for compiling and executing a nested loop includes initializing a nested loop controller with an outer loop count value and an inner loop count value. The nested loop controller includes a predicate FIFO. The method also includes coalescing the nested loop and, during execution of the coalesced nested loop, causing the nested loop controller to populate the predicate FIFO and executing a get predicate instruction having an offset value, where the get predicate returns a value from the predicate FIFO specified by the offset value. The method further includes predicating an outer loop instruction on the returned value from the predicate FIFO.

Method and apparatus for calibrating write timing in a memory system

A system that calibrates timing relationships between signals involved in performing write operations is described. This system includes a memory controller which is coupled to a set of memory chips, wherein each memory chip includes a phase detector configured to calibrate a phase relationship between a data-strobe signal and a clock signal received at the memory chip from the memory controller during a write operation. Furthermore, the memory controller is configured to perform one or more write-read-validate operations to calibrate a clock-cycle relationship between the data-strobe signal and the clock signal, wherein the write-read-validate operations involve varying a delay on the data-strobe signal relative to the clock signal by a multiple of a clock period.

Method and apparatus for calibrating write timing in a memory system

A system that calibrates timing relationships between signals involved in performing write operations is described. This system includes a memory controller which is coupled to a set of memory chips, wherein each memory chip includes a phase detector configured to calibrate a phase relationship between a data-strobe signal and a clock signal received at the memory chip from the memory controller during a write operation. Furthermore, the memory controller is configured to perform one or more write-read-validate operations to calibrate a clock-cycle relationship between the data-strobe signal and the clock signal, wherein the write-read-validate operations involve varying a delay on the data-strobe signal relative to the clock signal by a multiple of a clock period.

MULTICHIP PACKAGE WITH PROTOCOL-CONFIGURABLE DATA PATHS
20220222193 · 2022-07-14 ·

Integrated circuit packages with multiple integrated circuit dies are provided. A multichip package may include a substrate, a main die that is mounted on the substrate, and multiple transceiver daughter dies that are mounted on the substrate and that are coupled to the main die via corresponding Embedded Multi-die Interconnect Bridge (EMIB) interconnects formed in the substrate. Each of the main die and the daughter dies may include configurable adapter circuitry for interfacing with the EMIB interconnects. The adapter circuitry may include FIFO buffer circuits operable in a 1× mode or 2× mode and configurable in a phase-compensation mode, a clock-compensation mode, an elastic mode, and a register bypass mode to help support a variety of communications protocols with different data width and clocking requirements. The adapter circuitry may also include boundary alignment circuitry for reconstructing (de)compressed data streams.

Data flow control for multi-chip select

A system, method and computer readable medium for operating a First In, First Out (FIFO) buffer that transfers data between a host and a plurality of endpoints using chip select is disclosed. The method includes receiving a current value of a read pointer and a status for an active endpoint and reading data at a location to which the read pointer points and setting a tag associated with the location to which the read pointer points to indicate availability.

Accessing queue data
11385900 · 2022-07-12 · ·

A method and apparatus of accessing queue data is provided. According to the method, a double-layer circular queue is constructed, where the double-layer circular queue includes one or more inner-layer circular queues established based on an array, and the one or more inner-layer circular queues constitute an outer-layer circular queue of the double-layer circular queue based on a linked list. A management pointer of the outer-layer circular queue is set. Data accessing is performed on the inner-layer circular queues by using the management pointer.

True random number generator and method for generating true random number

Disclosed is a true random number generator and a method for generating a true random number. The true random number generator includes a sampling circuit and a random number generating circuit. The sampling circuit is configured to sample N voltage(s) of N capacitors according to a clock signal and thereby generate N sample value(s), in which the N is a positive integer. The random number generating circuit is configured to generate a random number according to at least a part of the N sample value(s).

True random number generator and method for generating true random number

Disclosed is a true random number generator and a method for generating a true random number. The true random number generator includes a sampling circuit and a random number generating circuit. The sampling circuit is configured to sample N voltage(s) of N capacitors according to a clock signal and thereby generate N sample value(s), in which the N is a positive integer. The random number generating circuit is configured to generate a random number according to at least a part of the N sample value(s).

Multi-tiered data storage with archival blockchains
11385840 · 2022-07-12 ·

An archival blockchain system is disclosed that includes a cache-tier storage level where data is stored before it has met a first aging criteria, a disk-tier storage level where the data is migrated to and stored within archival blockchain blocks after it has met the first aging criteria. When the archival blockchain blocks containing the data meet a second aging criteria they are migrated to a tape-tier storage level where the disk-tier archival blockchain blocks are stored within another archival blockchain block stored on the tape-tier. This archival blockchain system also includes a blockchain appliance in digital data communication with the cache-tier, disk-tier, and tape-tier storage levels that maintains a ledger that stores data pointers to the data stored on the cache-tier, disk-tier, and tape-tier storage levels to logically link them into a contiguous data set.