Performance enhancing memory interleaver for data frame processing
First Claim
Patent Images
1. A frame processing engine for receiving and processing a plurality of data frames, each of said data frames having a header and a payload, comprising:
- a first memory;
a second memory;
said first memory having a shorter access time than said second memory;
controller means including allocating means for defining said first memory to have a plurality of first memory blocks with each having the same predetermined first size and said second memory to have a plurality of second memory blocks with each having the same predetermined second size;
said allocating means being further operable for defining a plurality of memory segments, each of said memory segments including one of said first memory blocks of said first memory and one of said second blocks of said second memory; and
said controller means further including storing means for storing, upon receipt of said each data frame, said each data frame in a variable number of said memory segments with at least a portion of said header of said each data frame being stored in one of said first memory blocks, said variable number of said memory segments being dependent upon the size of said payload.
15 Assignments
0 Petitions
Accused Products
Abstract
Disclosed is a frame processing engine for receiving and processing a data frame having a header and a payload, comprising a first memory for receiving at least a portion of the header of the data frame; a second memory for receiving the payload of the data frame; and a controller, upon receipt of the data frame, for storing the header (at least most of it) in the first memory and the remainder of the data frame (including the payload) in the second memory, with the first memory having a shorter access time than the second memory.
-
Citations
21 Claims
-
1. A frame processing engine for receiving and processing a plurality of data frames, each of said data frames having a header and a payload, comprising:
-
a first memory; a second memory; said first memory having a shorter access time than said second memory; controller means including allocating means for defining said first memory to have a plurality of first memory blocks with each having the same predetermined first size and said second memory to have a plurality of second memory blocks with each having the same predetermined second size;
said allocating means being further operable for defining a plurality of memory segments, each of said memory segments including one of said first memory blocks of said first memory and one of said second blocks of said second memory; andsaid controller means further including storing means for storing, upon receipt of said each data frame, said each data frame in a variable number of said memory segments with at least a portion of said header of said each data frame being stored in one of said first memory blocks, said variable number of said memory segments being dependent upon the size of said payload. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A frame processing method for receiving and processing a plurality of data frames, each of the data frames having a header and a payload, said method comprising the steps of:
-
providing a first memory and a second memory with the first memory having a shorter access time than the second memory; allocating said first memory to have a plurality of first memory blocks with each having the same predetermined first size and said second memory to have a plurality of second memory blocks with each having the same predetermined second size;
said step of allocating further including defining a plurality of memory segments, each of said memory segments including one of said first memory blocks of said first memory and one of said second blocks of said second memory; andstoring, upon receipt of said each data frame, said each data frame in a variable number of said memory segments with at least a portion of said header of said each data frame being stored in one of said first memory blocks, said variable number of said memory segments being dependent upon the size of said payload. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A frame processing engine for receiving and processing a plurality of data frames, each of said data frames having a header and a payload, comprising:
-
a first memory; a second memory; said first memory having a shorter access time than said second memory; controller means including allocating means for defining said first memory to have a plurality of first memory blocks and said second memory to have a plurality of second memory blocks;
said allocating means including a first table and a second table;
said first table including, for said each data frame, a first address pointer for pointing to at least one of said first memory blocks;
said second table including, for said each data frame, a second address pointer for pointing to at least one of said second memory blocks; andsaid controller means further including storing means, upon receipt of said each data frame, for storing, based upon said first and second address pointers, at least a portion of said header of said each data frame in said at least one of said first memory blocks and the rest of said each data frame in said at least one of said second memory blocks. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A frame processing method for receiving and processing a plurality of data frames, each of said data frames having a header and a payload, comprising the steps of:
-
providing a first memory and a second memory with the first memory having a shorter access time than the second memory; allocating said first memory to have a plurality of first memory blocks and said second memory to have a plurality of second memory blocks;
said step of allocating further including defining a first table and a second table;
said first table including, for said each data frame, a first address pointer for pointing to at least one of said first memory blocks;
said second table including, for said each data frame, a second address pointer for pointing to at least one of said second memory blocks; andupon receipt of said each data frame, storing, based upon said first and second address pointers, at least a portion of said header of said each data frame in said at least one of said first memory blocks and the rest of said each data frame in said at least one of said second memory blocks. - View Dependent Claims (19, 20, 21)
-
Specification