Network switch having system for automatically detecting change in network node connection |
| What is claimed is: 1. A multiport data communication system for transferring data packets between ... |
|
Method and apparatus for reordering packet data units in storage queues for reading and writing memory |
| The invention is directed to a method and system for reordering data units that are to be written ... |
|
Enqueue operations for multi-buffer packets |
| Referring to FIG. 1, a network system 10 for processing data packets includes a source 12 of data ... |
|
Method for aging table entries in a table supporting multi-key searches |
| The invention is for use with a table containing a plurality of data entries, each of the data ... |
|
Coherency coverage of data across multiple packets varying in sizes |
| The present invention overcomes the disadvantages of the prior art by providing a technique that ... |
|
Scratchpad memory |
| According to one aspect, a integrated circuit includes a random-access memory (RAM) storage and a ... |
|
Bus interface with a first-in-first-out memory |
| According to one aspect of the invention, a method is described of receiving bytes of data from a ... |
|
|
Method, system, and program for managing requests to a cache using flags to queue and dequeue data in a buffer
| Details |
Inventors: Slane, Albert Alfonse;
Assignee: International Business Machines Corporation (Armonk, NY)
Primary Examiner: Gossage; Glenn
Assistant Examiner:
Attorney, Agent or Firm: Konrad Raynes Victor & Mann LLP
Provided is a system, method, and program for managing read and write requests to a cache to process enqueue and dequeue operations for a queue. Upon receiving a data access request to a data block in a memory, a determination is made as to whether any data block is maintained in a cache line entry in the cache. If so, a cache line entry maintaining the data block is accessed to perform the data access request. A first flag, such as a read flag, associated with the accessed cache line entry is set "on" if the data access request is a read request. Further, if the data access request is a write request to update the data block in the memory, a second flag, such as a write flag, associated with the cache line entry including the data to update may be set "on". The update data may be data to be enqueued onto a queue, where the queue may be, but is not limited to, a circular buffer in the memory having a head and tail pointer. Still further, a cache line having each first flag set "on" and each second flag set "on" may be selected if there is no cache line having each first flag set "on" and each second flag set "off", and entries in the selected cache line having their second flag set "on" may be flushed. |
|
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS In the following description, reference is made to the accompanying drawings which form a part hereof and which illustrate several embodiments of the present invention. It is understood that other embodiments may be utilized and structural and operational changes may be made without departing from the scope of the present invention. Computing Environment FIG. 2 illustrates a computing environment with an arrangement of a cache and memory device including a circular buffer in which preferred embodiments are implemented. The computing environment includes a queue user 52, which may comprise a processor unit, CPU, hardware, etc. , and a cache 54. The cache 54 would include a directory of the data stored in cache, data, and control logic to use the directory to access entries in cache. A main memory 60 may be comprised of any volatile memory device known in the art, such as a Dynamic Random Access Memory (DRAM), Static Random Access Memory (SRAM), Random Access Memory (RAM), etc. The main memory 60 includes a circular buffer data structure 62 having head and tail pointers 64 and 66 in a manner known in the art. As shown, the main memory 60 may include multiple circular buffers accessible to the queue user 52. To access data from the main memory 60, the cache 54 must access the data via a bus 68 or memory read/write interface in a manner known in the art. The cache 54 would store data blocks in the memory included in the circular buffer 62 to provide the queue user 52 faster access to the data in the circular buffer 62 than can be provided from the main memory 60. Entries from the circular buffer 62 are staged into the cache 54. As shown in FIG. 2, the queue user 52 performs enqueue and dequeue operations to the queue 62. The enqueue operation places new data at the tail 66 of the queue 62 and therefore does a memory write. The dequeue operation removes data from the head 64 of the queue 62, and therefore does a memory read. These memory reads and writes are presented to the cache 54 to fulfill
|
| Related patents |
|
|
High-speed data bus for network switching
The specification will be organized as follows: 1. BlazePath.TM./BlazeFire.TM. Architecture/Chip Set 2. Header "Canonicalization" and Packet "Cellularization" 3. BlazeW...
|
|
|
Method and apparatus for data buffer management in a communications switch
OF A PREFERRED EMBODIMENT OF THE INVENTION Generally, the present invention provides a method and apparatus for buffering data cells in a queuing element included in ...
|
|
|
Handling contiguous memory references in a multi-queue system
What is claimed is: 1. A controller for a random access memory comprises: control logic, including an arbiter that detects a status of outstanding memory references to ...
|
|
|
Communication between processors
Referring to FIG. 1, a computer system 26 includes two processors 1, 2. Each processor 1, 2 has a corresponding static random access memory (SRAM) 21, 22 for storing ...
|
|
|
Optimizations to receive packet status from fifo bus
According to one aspect of the invention, a method is described of receiving bytes of data from a media device includes issuing N consecutive requests, each for M bytes, ...
|
|
|
Storing frame modification information in a bank in memory
The present invention comprises a method and system for reserving frame modification information in a data storage unit. In one embodiment, a system comprises a ...
|
|
|
Scratchpad memory
According to one aspect, a integrated circuit includes a random-access memory (RAM) storage and a controller both located on the same semiconductor chip. The controller ...
|
|
|
Read lock miss control and queue management
According to one aspect of the invention, a method is described of managing memory access to random access memory includes fetching a read lock memory reference request ...
|
|
|
Architecture for high speed class of service enabled linecard
Introduction The present invention is a linecard architecture that provides packet routing with very low latency. Portions of the linecard operate at line rate, also ...
|
|
|
Approximated per-flow rate limiting
Overview The present Application discloses a rate limit scheme, using actual flow data rate requirements rather than type/class of service identifiers, that adapts to ...
|
|
|