Abstract:
Provided is a system and method for a modem including one or more processing paths. Also included is a number of interconnected modules sequentially arrayed along the one or more paths. Each module is configured to (i) process signals passed along the paths in accordance with the sequence and (ii) implement predetermined functions to perform the processing. Further, each of the modules has a particular degree of functional programmability and the degrees of functional programmability monotonically vary in accordance with the sequence.
Abstract:
A method for removal of ATM cells (2, 6) from an ATM communications device wherein ATM cells (2, 3, 5, 6) are respectively allocated in pluralities to a common frame (8, 9), whereby all ATM cells (2 . . . 6) of a frame (9) whose first ATM cell (2) is in the waiting list (1) are removed from a waiting list (1) for the administration of a sequence of ATM cells (2, 3, 4, 5, 6). The method makes it possible to quickly and efficiently create space for cells having a higher priority in the ATM communications device.
Abstract:
A method and system for reducing memory accesses by inserting qualifiers in control blocks. In one embodiment, a system comprises a processor configured to process frames of data. The processor may comprise a plurality of buffers configured to store frames of data where each frame of data may be associated with a frame control block. Each frame control block associated with a frame of data may be associated with one or more buffer control blocks. Each control block, e.g., frame control block, buffer control block, may comprise one or more qualifier fields that comprise information unrelated to the current control block. Instead, qualifiers may comprise information related to an another control block. The last frame control block in a queue as well as the last buffer control block associated with a frame control block may comprise fields with no information thereby reducing memory accesses to access information in those fields.
Abstract:
Reproduced time-continuous data is transmitted or discarded in units of a predetermined amount depending on a data processing status of another device connected via a network, whereby matching in temporal relationship with respect to data received by another device is realized.
Abstract:
An apparatus for interfacing with a cell delay variation buffer and a re-assembly memory buffer includes a header and sequence number processing module that can interface with the cell delay variation buffer and a re-assembly processing module that can interface with the re-assembly memory buffer. The header and sequence number processing module causes payloads from the cells to be stored in annotated form in the cell delay variation buffer and then extracted. Payload information from the extracted annotated payload can be passed to the re-assembly processing module which causes it to be stored in the re-assembly memory buffer and extracted therefrom as needed. By splitting the cell delay variation and re-assembly buffer functions, less expensive commodity memory can be used for the cell delay variation buffer function.
Abstract:
A process and architecture to simplify the implementation of a high-speed scheduler. A traditional packet based scheduler works the length of the packet. Instead, the present invention uses a transmit queue that determines how many times a portion of a packet needs to be transmitted independent of the process to modify or transform the packet. The packet could be an ATM cell, it could be a fabric cell, or it could be a portion of a frame-based transmission of the packet. As a result, the transmit queue need only determine how many times (times to transmit (TTT)) to schedule transmission of part of the packet. The determined TTT from the transit queue takes into account the packet-based modifications that will be performed on the packet. The TTT is used to determine how many cells the packet needs to be divided into. In another illustrative embodiment, the number of cells or the TTT is determined prior to adding or removing data from the packet. In a further illustrative embodiment, the transmit queue is separate from the circuitry that modifies the packet. In other words, determining the TTT for a packet is separate from the process of modifying the packet for transmission.
Abstract:
The scheduling queue of the present invention is configured as a systolic array utilizing self-sorting scheduling cells to sort information packets based upon previously assigned priorities, while at the same time yielding a small constant latency independent of the length of the queue. The scheduling queue of the present invention is effective in supporting various Quality of Service (QoS) policies and algorithms, including both Differentiated Services (DiffServ) and Integrated Services (IntServ) having an arbitrary number of flows.
Abstract:
A method and apparatus is provided for scheduling access to a common resource for a plurality of objects queued in a plurality of connection queues. Tokens associated with the connection queues are stored in scheduling queues. Each scheduling queue has a scheduling weight assigned thereto. Each connection queue has a connection weight value assigned thereto. A serving value is used to determine which scheduling queue to select. When a scheduling queue is selected, an object stored in a connection queue having an associated token stored in the selected scheduling queue is provided to the common resource. Tokens are moved among the scheduling queues as a function of the connection weight values, scheduling weights, and serving value. The objects queued in the connection queues may be fixed length cells or variable length packets. When the objects are variable length packets, a residual weight value is also maintained for each connection queue, the residual weight values being useful to prevent the connection queues from receiving an undue amount of service relative to their connection weights during each serving cycle.
Abstract:
An input port for a network switch includes a cell buffer for receiving incoming unicast and multicast cells and for writing each cell into an internal cell memory. The cell buffer thereafter forwards each unicast cell from the cell memory to one network switch output port and forwards a separate copy of each multicast cell to each of several network switch output ports. When the cell buffer writes a unicast cell to the cell memory, it sends a pointer to the storage location of the unicast cell to a queue manager. When the cell buffer writes a multicast cell to the cell memory, it sends several pointers to the queue manager, one for each output port that is to receive a copy of the multicast cell, with each pointer pointing not to the multicast cell's storage location but to an empty storage location in the cell memory. The cell buffer also maintains a database relating each pointer it sent to the queue manager to an actual storage location of a unicast or multicast cell. The queue manager queues the pointers an order in which cells are to be forwarded from the cell buffer, and thereafter returns a pointer to the cell buffer whenever the cell buffer is to forward a unicast cell or a copy of a multicast cell from the cell memory. The cell buffer applies each returned pointer to the database to determine the actual location of the unicast or multicast cell to be forwarded.
Abstract:
A cell disposal avoidance system is provided that can avoid disposal of the cells resided in the QoS buffer when a traffic of a specific QoS class in an ATM switch increases. The ATM switch includes a storage cell number monitor, a software data section 813, and a software controller 812. The storage cell number monitor monitors congestion of plural QoS buffers in the buffer 3, 5. The software data section 813 stores a cell reading priority (WRR value) attached for each QoS buffer. The software controller 812 dynamically changes the WRR value when congestion of a QoS buffer is in a congestion state (at generation of cell disposal or buffer congestion alarm) and increases the WRR value of the QoS buffer in a cell disposal state. Cells are divided in a time division mode according to the weight of the WRR value and read in a round format from the QoS buffer. The ATM switch resets the WRR value to an initial value when the congestion of the QoS buffer ceases.