Apparatus and methodology for a write hub that supports high speed and low speed data rates
First Claim
Patent Images
1. An apparatus, comprising:
- a write hub having a plurality of registers, each one of said registers to help generate a write address to a different memory bank from amongst a plurality of memory banks, each of said registers arranged in a ring so that each register can pass a pointer value toward a next register within said ring, said ring of registers further comprising a multiplexer between each of said registers, each multiplexer having an output path that flows toward a next register within said ring relative to said multiplexer, each multiplexer to introduce a pointer value to said ring at said next register within said ring.
7 Assignments
0 Petitions
Accused Products
Abstract
A write hub is described. The write hub has a plurality of registers. Each one of the registers helps generate a write address to a different memory bank from amongst a plurality of memory banks. Each of the registers are arranged in a ring so that each register can pass a pointer value toward a next register within the ring. The ring of registers further comprise a multiplexer between each of the registers. Each multiplexer has an output path that flows toward a next register within the ring relative to the multiplexer. Each multiplexer can introduce a pointer value to the ring at a next register within the ring.
-
Citations
85 Claims
-
1. An apparatus, comprising:
a write hub having a plurality of registers, each one of said registers to help generate a write address to a different memory bank from amongst a plurality of memory banks, each of said registers arranged in a ring so that each register can pass a pointer value toward a next register within said ring, said ring of registers further comprising a multiplexer between each of said registers, each multiplexer having an output path that flows toward a next register within said ring relative to said multiplexer, each multiplexer to introduce a pointer value to said ring at said next register within said ring. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56)
-
31. An apparatus, comprising:
-
a write hub having a plurality of registers, each one of said registers to help generate a write address to a different memory bank from amongst a plurality of memory banks, each of said registers arranged in a ring so that each register can pass a pointer value toward a next register within said ring, said ring of registers further comprising a multiplexer between each of said registers, each multiplexer having an output path that flows toward a next register within said ring relative to said multiplexer, each multiplexer to introduce a pointer value to said ring at said next register within said ring, said write hub having a first mode of operation and a second mode of operation wherein; in said first mode of operation said write hub; 1) for every cycle of operation;
focuses upon a next register within said ring to cause a write address to be generated for the particular memory bank that said focused upon register is to help generate a write address for if;a) said write hub has been given access to said particular memory bank and b) said focused upon register is holding a valid pointer value; 2) for every N cycles of operation;
together shifts forward, by one register position within said ring, all pointer values within said ring, wherein, N is the number of registers within said ring;in said second mode of operation said write hub; circulates one valid pointer value within said ring, said one valid pointer value shifted forward to a next register within said ring for each cycle of operation to cause one write address to be generated per cycle of operation for a packet for whom said one valid pointer value is devoted, each write address targeted at the particular memory bank that said next register holding said valid pointer value is to help generate a write address for. - View Dependent Claims (32, 33, 34)
-
-
57. A method, comprising:
-
for every cycle of operation; at a next register within a ring of registers, each one of said registers to help generate a write address to a different memory bank from amongst a plurality of memory banks, causing a write address to be generated for the particular memory bank that said next register is to help generate a write address for if; a) access has been given to said particular memory bank and b) said next register is holding a valid pointer value; and for every N cycles of operation; together shifting forward, by one register position within said ring, all pointer values within said ring, wherein, N is the number of registers within said ring. - View Dependent Claims (58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81)
-
-
82. A machine readable medium having stored thereon a computer program and a description of a circuit, the computer program comprising executable instructions that when executed by a processor direct the processor to emulate the operation of the circuit, said operation comprising:
-
using a write hub having a plurality of registers, each one of said registers configured to help generate a write address to a different memory bank from amongst a plurality of memory banks, each of said registers arranged in a ring; passing a pointer value toward a next register within said ring, said ring of registers further comprising a multiplexer between each of said registers, each multiplexer having an output path that flows toward a next register within said ring relative to said multiplexer, each multiplexer configured to introduce a pointer value to said ring at said next register within said ring; and causing a write address to be generated for the particular memory bank that said next register is to help generate a write address for if; a) access has been given to said particular memory bank and b) said next register is holding a valid pointer value; and for every N cycles of operation;
together shifting forward, by one register position within said ring, all pointer values within said ring, wherein, N is the number of registers within said ring. - View Dependent Claims (83, 84, 85)
-
Specification