Patent classifications
G06F5/12
COMMUNICATION CHIP AND DATA PROCESSING METHOD
Embodiments of the present application provide a communication chip and a data processing method. The communication chip includes a plurality of synchronization modules, a set of buffer modules, and a plurality of alignment modules. The synchronization module is configured to receive data of a corresponding channel, synchronize the received data, and store the synchronized data into the buffer module; the buffer module includes a plurality of first-in-first-out queues FIFO, and the FIFO is configured to buffer the synchronized data output by the corresponding synchronization module; and the alignment module is configured to align the synchronized data of the corresponding channel in the buffer module, and combine and output the aligned data.
COMMUNICATION CHIP AND DATA PROCESSING METHOD
Embodiments of the present application provide a communication chip and a data processing method. The communication chip includes a plurality of synchronization modules, a set of buffer modules, and a plurality of alignment modules. The synchronization module is configured to receive data of a corresponding channel, synchronize the received data, and store the synchronized data into the buffer module; the buffer module includes a plurality of first-in-first-out queues FIFO, and the FIFO is configured to buffer the synchronized data output by the corresponding synchronization module; and the alignment module is configured to align the synchronized data of the corresponding channel in the buffer module, and combine and output the aligned data.
HANDLING RING BUFFER UPDATES
Ring buffer storage circuitry is disclosed which stores a ring buffer comprising multiple slots to hold a queued se-quence of data items. Data processing circuitry executes a plurality of processes to add one or more data items to be processed to the queued sequence and to remove one or more data items for process-ing from the queued sequence. Each process is arranged to perform an acquire process to acquire at least one slot in the ring buffer and to subsequently perform a release process to release the at least one slot. Ring buffer metadata storage circuitry stores metadata for the ring buffer comprising a first reference indicator and a second reference indicator. Corresponding methods and instructions are also disclosed.
HANDLING RING BUFFER UPDATES
Ring buffer storage circuitry is disclosed which stores a ring buffer comprising multiple slots to hold a queued se-quence of data items. Data processing circuitry executes a plurality of processes to add one or more data items to be processed to the queued sequence and to remove one or more data items for process-ing from the queued sequence. Each process is arranged to perform an acquire process to acquire at least one slot in the ring buffer and to subsequently perform a release process to release the at least one slot. Ring buffer metadata storage circuitry stores metadata for the ring buffer comprising a first reference indicator and a second reference indicator. Corresponding methods and instructions are also disclosed.
UNIVERSAL SERIAL BUS DEVICE AND HOST
A universal serial bus (USB) device includes a first storage device, a controller, and a second storage device. The first storage device is configured to store input packets to be transmitted to a USB host. The controller is configured to receive the input packets of the first storage device, respectively compute hash values of the input packets, and respectively label first identifiers in the input packets according to the hash values to correspond to one of cores of a central processing unit at the USB host end. Among the input packets, the input packets with the same hash value are labeled with the same first identifier. The second storage device is configured to store the input packets that are labeled with the first identifier. The controller is further configured to allow the input packets stored in the second storage device to be transmitted to the USB host.
UNIVERSAL SERIAL BUS DEVICE AND HOST
A universal serial bus (USB) device includes a first storage device, a controller, and a second storage device. The first storage device is configured to store input packets to be transmitted to a USB host. The controller is configured to receive the input packets of the first storage device, respectively compute hash values of the input packets, and respectively label first identifiers in the input packets according to the hash values to correspond to one of cores of a central processing unit at the USB host end. Among the input packets, the input packets with the same hash value are labeled with the same first identifier. The second storage device is configured to store the input packets that are labeled with the first identifier. The controller is further configured to allow the input packets stored in the second storage device to be transmitted to the USB host.
Priority determination circuit and method of operating the priority determination circuit for preventing overlapping operation
Provided herein may be a priority determination circuit and a method of operating the priority determination circuit. The priority determination circuit may receive request signals from a plurality of microcontrollers respectively corresponding to the plurality of planes, and output response signals corresponding to the request signals depending on a determined priority.
Priority determination circuit and method of operating the priority determination circuit for preventing overlapping operation
Provided herein may be a priority determination circuit and a method of operating the priority determination circuit. The priority determination circuit may receive request signals from a plurality of microcontrollers respectively corresponding to the plurality of planes, and output response signals corresponding to the request signals depending on a determined priority.
LOCK-FREE SHARING OF LIVE-RECORDED CIRCULAR BUFFER RESOURCES
Novel techniques are described for lock-free sharing of a circular buffer. Embodiments can provide shared, lock-free, constant-bitrate access by multiple consumer systems to a live stream of audiovisual information being recorded to a circular buffer by a producer. For example, when a producer system writes a data stream to the circular buffer, the producer system records shared metadata. When a consumer system desires to begin reading from the shared buffer at a particular time, the shared metadata is used to compute a predicted write pointer location and corresponding dirty region around the write pointer at the desired read time. A read pointer of the consumer system can be set to avoid the dirty region, thereby permitting read access to a stable region of the circular buffer without relying on a buffer lock.
LOCK-FREE SHARING OF LIVE-RECORDED CIRCULAR BUFFER RESOURCES
Novel techniques are described for lock-free sharing of a circular buffer. Embodiments can provide shared, lock-free, constant-bitrate access by multiple consumer systems to a live stream of audiovisual information being recorded to a circular buffer by a producer. For example, when a producer system writes a data stream to the circular buffer, the producer system records shared metadata. When a consumer system desires to begin reading from the shared buffer at a particular time, the shared metadata is used to compute a predicted write pointer location and corresponding dirty region around the write pointer at the desired read time. A read pointer of the consumer system can be set to avoid the dirty region, thereby permitting read access to a stable region of the circular buffer without relying on a buffer lock.