US007715410B2

(12) Unlted States Patent (10) Patent N0.: US 7,715,410 B2 Nemirovsky et a1. 45 Date of Patent: *Ma y 11 a 2010

(54) QUEUEING SYSTEM FOR PROCESSORS IN (52) US. Cl...... 370/395.7; 370/412; 710/52; PACKET ROUTING OPERATIONS 710/310; 711/154; 711/170 (58) Field of Classi?cation Search ...... None (75) Inventors: Mario Nemirovsky, Saratoga, CA (US); See application ?le for complete search history. Enric Mus0ll, San Jose, CA (US); . Stephen Melvin, San Francisco, CA (56) References Clted (US); Narendra Sankar, Santa Clara, U.S. PATENT DOCUMENTS CA (Us); Nandakumar samPath’ Santa 4,200,927 A 4/1980 Hughes et a1. Clara, CA (Us); Adolfo Nemlrovskys 4,707,784 A 11/1987 Ryan et a1. San Jose, CA (US) 4,942,518 A 7/1990 Weatherford et a1. (73) Assignee: MIPS Technologies, Inc., Sunnyvale, (Continued) CA (Us) FOREIGN PATENT DOCUMENTS ( * ) Notice: Subject to any disclaimer, the term of this JP 07'273773 10/1995 patent is extended or adjusted under 35 (Continued) U.S.C. 154 (b ) b y 127 d ays . OTHER PUBLICATIONS This patent is subject to a terminal dis- U.S. Appl. No. 09/591,510, ?led Jun. 12, 2000, Gelinas et a1. claimer. (Continued). (21) APP1- NOJ 11/277,293 Primary ExamineriGregory B Sefcheck _ (74) Attorney, Agent, or FirmiSterne, Kessler, Goldstein &

USFlled: 2006/0159104 Mar.Prior 23, A1 Publication J 1.20 Data2006 FOX

u ’ In a data-packet processor, a con?gurable queuing system for Related US Application Data packet accounting during processing has a plurality of queues _ _ _ _ arranged in one or more clusters, an identi?cation mechanism (63) Commuanon of aPPhCatlOn NO- 09/ 737,375, ?led on for creating a packet identi?er for arriving packets, insertion Dec- 14, 2000, HOW Pat- N0~ 7,058,064 logic for inserting packet identi?ers into queues and for deter (60) Provisional application No. 60/181,364, ?led on Feb. mining into which queue to insert a packet identi?er’ and 8 2000 selection logic for selecting packet identi?ers from queues to ’ initiate processing of identi?ed packets, doWnloading of (51) Int_ CL completed packets, or for requeuing of the selected packet H04L 12/56 (2006.01) identi?ers G06F 13/00 (2006.01) G06F 12/00 (2006.01) 21 Claims, 53 Drawing Sheets

Network/Switching Fabric Interface

f 209 Paging Local Packet Memory A Memory Management 8 (LPM) Unit ‘a ‘J PMMU “\w ‘E a 211\ 1, ~.\_ Queueing g . System 0 (Q5) U 107 \ I System Interface Unit (SIU) |-4 9-) I To system 105 " SRAM CAM Stream Processing Uni (SPU) 229 227 US 7,715,410 B2 Page 2

US. PATENT DOCUMENTS 6,477,562 B2 11/2002 Nemirovsky et al. 6,477,580 B1 11/2002 Bowman-Amuah 5,023,776 A 6/1991 Gregor _ 6,483,804 B1 11/2002 Muller 6161. 5,121,383 A 6/1992 6916mm 6,502,213 B1 12/2002 Bowman-Amuah 5,166,674 A * 11/1992 Baum et al...... 714/752 6,523,109 B1 2/2003 Meier 5,271,000 A 12/1993 Engb-ersen etal. 6,529,515 B1 3/2003 RaZ etal‘ 5291481 A 3/1994 D9Sh19ta1~ 6,535,905 B1 3/2003 Kalafatis 6161. 5,408,464 A 4/1995 Jurkevwh 6,539,476 B1 3/2003 Marianettietal. 5,465,331 A 11/1995 Yang eta1~ _ 6,546,366 B1 4/2003 Roncaetal. 5,471,598 A 11/1995 Quattromamet al. 6,549,996 B1 4/2003 Manryalv et a1‘ 5521916 A 5/1996 Choudhury eta1~ 6,567,839 B1 5/2003 Borkenhagen etal. 5,559,970 A 9/1996 Shanna 6,574,230 B1 6/2003 Almulhem e161...... 370/412 5,619,497 A 4/1997 Gallagher et al. 6,581,102 B1 6/2003 Amini et 31‘ 5,629,937 A 5/1997 HayteretaL 6,611,724 B1 8/2003 Budaetal. 5,634,015 A 5/1997 Chang etal 6,614,796 B1 9/2003 Blacketal. 5,659,797 A 8/1997 Zandveld et al. 6,618,820 B1 9/2003 Krum 5,675,790 A 10/1997 Walls 6,625,808 B1 9/2003 Tarditi 5,684,797 A 11/1997 AZnar eta1~ 6,640,248 B1 10/2003 Jorgensen 5,708,814 A V1998 Short eta1~ 6,650,640 B1 11/2003 Muller et al. 5,724,565 A 3/1998 Dubey eta1~ 6,721,794 B2 4/2004 Taylor etal. 5,737,525 A 4/1998 Plcazo et al. 6,738,371 B1 5/2004 Ayres 5,784,649 A 7/1998 Beguretal 6,738,378 B2 5/2004 Tuck, 1116161. 5,784,699 A 7/1998 McMahon et al. 6,792,509 B2 9/2004 Rodriguez 5,796,966 A 8/1998 $191999 etal- 6,813,268 B1 11/2004 Kalkunte etal. 5,809,321 A 9/1998 Hansen eta1~ 6,820,087 B1 11/2004 Langendorfetal. 5,812,810 A 9/1998 3989f 6,965,982 B2 11/2005 Nemawarkar 5,835,491 A 11/1998 Davlsetal 7,042,887 B2 5/2006 Sampath 6161. 5,892,966 A 4/1999 Pe?rick eta1~ 7,058,065 B2 6/2006 Musolletal. 5,893,077 A 4/1999 Gr_1f?n 7,065,096 B2 6/2006 Musolletal. 5,896,517 A 4/1999 WIISOII 7,072,972 B2 7/2006 Chin 6161. 5,918,050 A 6/1999 Rosenthalet al. 7,165,257 B2 1/2007 Musollet al‘ 5951670 A 9/1999 GleW eta1~ 7,257,814 B1 8/2007 Melvin etal. 5,951,679 A 9/1999 A11d-ers0n et al. 7,272,659 B2 9/2007 Fukuoka 5,978,570 A 11/1999 H1111S_ 7,502,876 B1 3/2009 Nemirovsky 6131. 5,978,893 A 11/1999 B91619 er a1~ 2001/0004755 A1 6/2001 Levy 6161. 5,983,005 A 11/1999 Montelro etal- 2001/0005253 A1 6/2001 Komatsu 5,987,578 A 11/1999 Bu?cher 2001/0024456 A1 9/2001 Zaun 6161. 6,009,516 A 12/1999 Stews er 91- 2001/0043610 A1 11/2001 Nemirovsky 6161. 6,016,308 A V2000 Crf1yf9rdeta1~ 2001/0052053 A1 12/2001 Nemirovsky 6161. 6,023,738 A 2/2000 Prlém eta1~ 2002/0016883 A1 2/2002 Musolletal. 6,047,122 A 4/2000 splllér 2002/0049964 A1 4/2002 Takayama 6161. 6,058,267 A 5/2000 Kanal eta1~ 2002/0054603 A1 5/2002 Musolletal. 6,067,608 A * 5/2000 Pe-rry ...... 711/203 2002/0062435 A1 5/2002 Nemirovsky et al‘ 6070202 A 5/2000 Mlnkoffetal 2002/0071393 A1 6/2002 Musoll 6,073,251 A 6/2000 Jewert eta1~ 2002/0083173 A1 6/2002 Musolletal. 6,088,745 A 7/2000 Bértagna eta1~ 2002/0107962 A1 8/2002 Richter etal. 6,131,163 A 10/2000 Wwgel 2002/0124262 A1 9/2002 Basso 6161. 6,151,644 A 11/2000 Wu 2002/0174244 A1 11/2002 Beckwith 6161. 2112212212: $5888 $11636 1 2003/0210252 A1 11/2003 Ludtke e161. , , ara eta~ 2004/0015598 A1 1/2004 Lin 6,169,745 B1 V2001 Liu eta1~ 2004/0049570 A1 3/2004 Frank 6161. 6,173,327 B1 V2001 De Borst 9t a1~ 2004/0148382 A1 7/2004 Narad 6161. 6,188,699 B1 2/2001 Lang eta? 2004/0148420 A1 7/2004 Hinshaw 6161. 6,195,680 B1 2/2001 G0ld5zm1dtetal. 2004/0172471Al 9/2004 Porter gig/3Z2 E Z588; Z132? it a11~ 2004/0172504 A1 9/2004 Balazich 6161. ’ ’ If e a . 2004/0213251 A1 10/2004 Tranetal. 6,223,274 B1 ‘"2001 Catthooretal' 2005/0060427 A1 3/2005 Phillips et al. 6’226’680 B1 5/2001 Boucher et 31' 2005/0061401 A1 3/2005 Tokoro etal 6,247,040 B1 6/2001 Born 6161. . ' 6,247,105 B1 6,2001 G01 dstein etal‘ 2005/0066028 A1 3/2005 111116611 etal. 6,249,801 B1 6,2001 zisapeletal‘ 2006/0036705 A1 2/2006 M11S011 et a1. 6,249,846 B1* 6/2001 Van Doren e161...... 711/144 2006/0090039 A1 ‘V2006 Jam 9 a1~ 6,253,313 B1 6/2001 Morrison et a1‘ 2006/0153197 A1 7/2006 Nem1r0vsky et al. 6,263,452 B1 7/2001 Jewett et a1‘ 2006/0215670 A1 9/2006 Sampath et al. 6,377,972 B1 4/2002 Guo et a1, 2006/0215679 A1 9/2006 Musollet a1. 6,381,242 B1 4/2002 Maher, 111 et a1, 2006/0225080 A1 10/2006 Nemirovsky et a1. 6,389,449 B1 5/2002 Nemirovsky et a1. 2006/0282544 A1 12/2006 Monteiro et al. 6,389,468 B1 5/2002 Muller et a1. 2006/0292292 A1 12/2006 Brightman 6161. 6,393,028 B1* 5/2002 Leung ...... 370/412 2007/0008989 A1 1/2007 Joglekar 6,412,004 B1 6/2002 Chen 6161. 2007/0074014 A1 3/2007 MuSOll et a1. 6,438,135 B1 8/2002 Tzeng 2007/0110090 A1 5/2007 MuSOll et a1. 6,453,360 B1 9/2002 Muller et a1. 2007/0168748 A1 7/2007 MuSOll 6,460,105 B1 10/2002 1611636151. 2007/0256079 A1 11/2007 MuSOll et a1. US 7,715,410 B2 Page 3

2008/ 0072264 A1 3/ 2008 Crayford Pai et al. “An Evaluation of Memory Consistency Models for Shared Memory Systems with ILP Processors” Proceedings of ASPLOS FOREIGN PATENT DOCUMENTS VII, Oct. 1996: pp. 12-23, ACM, Inc. JP 08-316968 11/1996 Yoaz et al. “Speculation Techniques for Improving Load Related JP 09-238142 9/1997 Instruction Scheduling” 1999. pp. 42-53, IEEE. JP 11-122257 4/1999 Kessler, R. E. “The Alpha 21264 : Out-of-Order Execution at 600 MHz” Aug. 1998. W0 WO 99/59078 A1 11/1999 W0 W0 03/005645 A2 1/2003 Donalson et al. “DISC: Dynamic Instruction Stream Computer, An Evaluation of Performance” 26th Hawaii Conference on Systems OTHER PUBLICATIONS Sciences. vol. 1. 1993. pp. 448-456. Nemirovsky et al. “DISC: Dynamic Instruction Stream Computer.” U.S. Appl. No. 09/602,279, Nemirovsky et al. ACM. 1991.pp. 163-171. US. Appl. No. 09/608,750, Nemirovsky et al. Musoll et al. Mechanism to Prevent the Download of a Packet with Diefendorff, Keith. K7 Challenges Intel. Microprocessor Report. Pending Writes Affecting Its Data. Apr. 11, 2001. Disclosure Docu Oct. 26,1998. vol. 12, No. 14. US. ment #492430, USTPO. Knuth, Donanld E. The Art of Computer Programing, 3rd Edition, Ungerer et al. A Survey of Processors with Explicit Multithreading. vol. 1, Fundamental Algorithms, Sec. 2.5 Dynamic Storage Alloca ACM Computing Surveys, vol. 35, No. 1. Mar. 2003. pp. 29-63. tion, 1997, p. 435-456, Addison Wesley, US. Nemirovsky, M., “XStream Logic Packet Processor Core: The First Melvin et al., “Extended Instruction Set for a Packet Processing Dynamic Multistreaming Architecture Optimized for Packet Pro Applications,” Jul. 5, 2001, Disclosure Document #496559, USPTO. cessing,” Oct. 10, 2000. Presentation to Microprocessor Forum, 8 Musoll et a1 ., “Hardware Algorithm for Allocating and De-Allocating pages. Consecutive Blocks of Memory,” Apr. 3, 2001, Disclosure Document Sankar, Narendra, “CNP810TM Network Services Processor Family,” #491557, USPTO. Jun. 14, 2001. Presentation to Network Processor Forum, 8 pages. Musoll et al., “Mechanism to Over?ow Packets to a Software Con Clearwater Networks, “Introducing the CNP810 Family of Network trolled Memory When They Do Not Fit into a Hardware Controlled Services Processors,” Jun. 2001, Press Presentation, 31 pages. Memeory,”, Jul. 3, 2001, Disclosure Document #496391, USPTO. Jouppi, Norman P, “Improving Direct-Mapped Cache Performance Musoll et al., “Mechanism for Allowing a Limited Packet Head by the Addition of a Small Fully-Associative Cache and Prefetch and/or Tail Growth Without Moving the Packet to a Different Buffers,” ISCA 17 Proceedings 1990, Seattle, WA, pp. 364-373. Memeory Location,” Apr. 16, 2001, Disclosure Document #492429, International Search Report, International Appln. No. PCT/US01/ USPTO. 00587, International Filing Date, Jan. 8, 2001, mailed May 2, 2001, Musoll et al., Mechanism to Activate a Context When No Stream is 3 pages. Running in a Multi-Streaming Processing Core,: Apr. 16, 2001, Dis International Search Report, International Appln. No. PCT/US02/ closure Document #492431, USPTO. 20316, mailed Dec. 4, 2002, 2 pages. Musoll, Enrique, “Functional Validation of a Packet Management International Search Report, International Appln. No. PCT/US02/ Unit,” May 18, 2001, Disclosure Document #429011, USPTO. 26474, mailed Feb. 20, 2003, 2 pages. Sampath et al., “Mechanism to Un-speculatively Pre-fetch Instruc Supplementary European Search Report, Appln. No. EP 01 90 1882, tions from the Thread Associated to a Packet,” Apr. 2, 2001, Disclo Jan. 7, 2008, 4 pages. sure Document #491527, USPTO. First Examination Report, European Patent Application No. Yamamoto, Wayne. An Analysis of Multistreamed, Superscalar Pro 01901882.9-2416 mailed Jun. 12,2008, 7 pages. cessor Architectures. University of California Santa Barbara Disser Notice of Rejection (Of?cial Action), Japanese Patent Appln. No. tation. Dec. 1995. Santa Barbara, US. 2001-558844, along with Translation of Notice of Rejection, dated Yamamoto et al. “Increasing Superscalar Performance Through Sep. 21, 2005, mailed Sep. 27, 2005, 2 pages. Multistreaming” Parallel Architectures and Compilation Techniques PCT International Preliminary Examination Report, International (PACT ’95). 1995. Appln. No. PCT/US02/12469, Jan. 21, 2003, 3 pages. The PowerPC Architecture: A Speci?cation for a New Family of PCT International Preliminary Examination Report, International RISC Processors. 2'” Ed. May 1994. pp. 70-72. Morgan Kaufmann. Appln. No. PCT/US02/26474, Apr. 29, 2003, 3 pages. San Francisco, US. English Abstract for Japanese Patent Application Laying Open No. MC68020 32-Bit Microprocessor User’s Manual. 3"’ Ed.. 1989. pp. 11-122257, 1 page. 3-125, 3-126, and 3-127. Prentice Hall, NJ, US. English Abstract for Japanese Patent Application Laying Open No. Potel, M. J. “Real-time Playback in Animation Systems” Proceed ings of the 4th Annual Conference on Computer Graphics and Inter 09-238142, 1 page. active Techniques. 1977. pp. 72-77. San Jose, CA, US. English Abstract for Japanese Patent Application Laying Open No. ARM Architecture Reference Manual. 1996. pp. 3-41, 3-42, 3-43, 08-316968, 1 page. 3-67, and 3-68. Prentice Hall, NJ, US. English Abstract for Japanese Patent Application Laying Open No. ESN390 Principles of Operation. IBM Online Publications Center 07-273773, 1 page. Reference No. SA22-7201-08. Table of Contents and paras. 7.5.31 Of?ce Action, dated Mar. 4, 2009, for European Patent Appl. No. and 7.5.70. IBM Corporation. Boulder, CO, US. 01901882.9-2416, 3 pages. MC88110 Second Generation RISC Microprocessor User’s Manual. Of?ce Communication, dated Nov. 19, 2002, for US. Appl. No. 1991. pp. 10-66, 10-67, and 10-71. , Inc. 09/602,279, ?led Jun. 23, 2000, 6 pages. Diefendorff et al. “Organization of the Superscalar Of?ce Communication, dated Jan. 24, 2006, for US. Appl. No. RISC Microprocessor” IEEE Journal of Microelectronics. Apr. 09/602,279, ?led Jun. 23, 2000, 5 pages. 1992. pp. 40-63. vol. 12, No. 2. IEEE. NewYork, NY, US. Of?ce Communication, dated Jul. 17, 2006, for US. Appl. No. Kane, Gerry. PA-RISC 2.0 Architecture. 1996, pp. 7-106 and 7-107. 09/602,279, ?led Jun. 23, 2000, 4 pages. Prentice Hall. NJ, US. Of?ce Communication, dated Apr. 3, 2008, for US. Appl. No. Diefendorff et al. “AltiVec Extension to PowerPC Accelerates Media 09/602,279, ?led Jun. 23, 2000, 6 pages. Processing” IEEE Journal ofMicroelectronics. vol. 20, No. 2 (2000): Of?ce Communication, dated Mar. 4, 2003, for US. Appl. No. pp. 85-95. 09/608,750, ?led Jun. 30, 2000, 6 pages. Grunewald et al. “Towards Extremely Fast Context Switching in a Of?ce Communication, dated Jul. 21, 2003, for US. Appl. No. Block Multithreaded Processor” Proceedings of EUROMICRO 22, 09/608,750, ?led Jun. 30, 2000, 7 pages. 1996. pp. 592-599. Of?ce Communication, dated Dec. 15, 2003, for US. Appl. No. Bradford et al. “Ef?cient Synchronization for Multithreaded Proces 09/608,750, ?led Jun. 30, 2000, 6 pages. sors” Workshop on Multithreaded Execution, Architecture, and Of?ce Communication, dated Jun. 7, 2004, for US. Appl. No. Compilation. Jan-Feb. 1998. pp. 1-4. 09/608,750, ?led Jun. 30, 2000, 8 pages. US 7,715,410 B2 Page 4

Of?ce Communication, dated Sep. 17, 2003, for U.S. Appl. No. Of?ce Communication, dated Sep. 21, 2005, for U.S. Appl. No. 09/826,693, ?led Apr. 4, 2001, 5 pages. 09/948,919, ?led Sep. 7, 2001, 9 pages. Of?ce Communication, dated Feb. 27, 2004, for U.S. Appl. No. Of?ce Communication, dated J?IL 6, 2005, for Us APPL NO~ 09/826,693, ?led Apr, 4, 2001, 6 pages, 09/964,827, ?led Sep. 25, 2001, 11 pages. Of?ce Communication, dated Oct‘ 4, 2004, for Us‘ Appl‘ No‘ Of?ce Communication, dated Dec. 14, 2005, for U.S. Appl. No. og/g26’693, ?1edApr‘4, 2001, 8 pages‘ 09/964,827, ?led Sep. 25, 2001, 14 pages. Of?ce Communication, dated Jan. 25, 2006, for U.S. Appl. No. Of?ce Commumcatlon’ dated Apr‘ 3’ 2009’ for Us‘ Appl' NO‘ 09/826,693, ?led Apr. 4, 2001, 9 pages. 1%278J47, ?lecl APP 5, 3006C,‘ 5 P1ageS~ f l Of?ce Communication, dated Sep. 20, 2005, for U.S. Appl. No. 0 Ce Commumcanon’ ate Ju' 12’ 2006’ or US‘ App‘ No’ 11/278,890, ?led Apr. 6, 2006, 4 pages. 09/881,628, ?led Jun. 13,2001, 19 pages. . . . . Of?ce Communication, dated Jul. 12, 2006, for U.S. Appl. No. Of?ce Communication, dated Jun. 20, 2006, for U.S. Appl. No. 09/88l 628 ?l d1 13 2001 20 11/278,901, ?ledApr. 6, 2006, 4 pages. ’ ’ e _ ’ ’ pages‘ Of?ce Communication, dated Oct. 10, 2008, for U.S. Appl. No. Of?ce Communication, dated Jan. 25, 2007, for U.S. Appl. No. 11/360 338 ?led Feb‘ 23 2006 6pages‘ 09/88l’628’ ?led Jun‘ 13,2001’ 23 pages‘ Of?ce Communication, dated Feb. 20, 2009, for U.S. Appl. No. Of?ce Communication, dated Jun. 26, 2007, for U.S. Appl. No. 11/380,924,?1edApr‘29,2006,6 pages‘ 09/881,628,?1ed]un~ 13,2001,21pages~ Of?ce Communication, dated Feb. 9, 2009, for U.S. Appl. No. Of?ce Communication, dated Dec. 19, 2007, for U.S. Appl. No. 11/530,945, ?led Sep, 12, 2006, 19 pages, 09/88l,628,?1€d]l1n. 13,2001, 22 PageS~ Of?ce Communication, dated Aug. 20, 2009, for U.S. Appl. No. Of?ce Communication, dated May 2, 2008, for U.S. Appl. No. 11/530,945, ?led Sep. 12, 2006,24 pages. 09/881,628, ?led Jun. 13,2001, 23 pages. Of?ce Communication, dated Dec. 13, 2007, for U.S. Appl. No. Of?ce Communication, dated Dec. 15, 2004, for U.S. Appl. No. 11/552,764, ?1edOCt~ 25, 2006, 14 Page$~ 09/900,393, ?led Jul, 5, 2001, 4 pages, Of?ce Communication, dated Jul. 10, 2008, for U.S. Appl. No. Of?ce Communication, dated May 5, 2005, for U.S. Appl. No. 11/552,764, ?led Oct 25, 2006, 16 PageS~ 09/924,755,?1edAug‘ 7, 2001, 6 pages‘ Of?ce Communication, dated Nov. 14, 2008, for U.S. Appl. No. Of?ce Communication, dated Nov. 28, 2005, for U.S. Appl. No. 1l/552’764’ ?led Oct‘ 25’ 2006’ 17 pages‘ 09/927,129, ?led Aug. 10, 2001, 12 pages. * cited by examiner US. Patent May 11,2010 Sheet 1 0153 US 7,715,410 B2

Sam-“WON e5 8% ~ wEESbm BmmSSm 5%E58&3:g .ME

2:K

US. Patent May 11,2010 Sheet 4 0153 US 7,715,410 B2

wuwam258412.82 3:52“BEuwwm KNEE #235 All lwlmlas 119018

3:30085cm 05m385 8:30ubwgom 302:2% 085cm8:30 $02:2% 8:30BER/mom 88mQ85

wig 2A:

US. Patent May 11,2010 Sheet 6 0153 US 7,715,410 B2

Packet of256 b tes

Block 0 Allocation Matrix Block 1 Allocation Matrix 55Home wwm?mztq/ um£§=€> omen-33> mv: £2802v he?I_Z_ I uw?BEoZ 246735l 12345 mmEZa: 2E

Fits Vector l 6 Index Vector _ O Enable Vecdtor N E h

Packet of 512 b es

Block 0 Allocation Matrix Block 1 Allocation Matrix

m m w Iw vmenzgtcw vwm?mst:1.1 mnmodegaim 0%?_72Q16? 5mzmam10mg I mumE"a \ ow£288< 4023657l E100%;_: mgm500mg ~MMM~~E>E@ 01123467 mm@5m

Fits Vecto Index Vector MmF Enable Vecdto m

Fig. 5a US. Patent May 11,2010 Sheet 7 0153 US 7,715,410 B2

Packet of lKB

Block 0 Allocation Matrix Block 1 Allocation Matrix ...m MEN Um§§E> 1234 _Yr_11%:2_ mam@mU@w??w 6 0123456

Fits Vecto Fltq Vecto Index Vector Index Vector Enable Vecdto Emu Emm E Enable Vecdto mam E

Packet of 512 b es

Block O Allocation Matrix Block 1 Allocation Matrix

$28030 1..1DEE; A.011 magma;41....._i mmEUm05% 0123 236mmENE MGMa: E05.22.»

Fits Vector Fits Vector Y Index Vector Index Vector 3 Enable Vecdtor [El Enable Vecdtor N

Fig. 5b US. Patent May 11,2010 Sheet 8 0153 US 7,715,410 B2

Allocation Matrix Scenario A mv: omwm?stg mMN QWQQES a...

0123’115a..... Ex w.0

Fig. 6a

Allocation Matrix ScenarioB 25-5 omwnzmstg $5-2m omwnsms?rw mv: ummnzgtg mMN owmnmgtg Al-Y

owmmoéoz - .(4. 0123456 a.ID. Fig. 6b US. Patent May 11,2010 Sheet 9 0153 US 7,715,410 B2

Data to the Network OB Output Interface 217 k | I 211 \ EarlyFullO, EarlyFulll Data Devl Control 16-byte DevO QS bits line I | PacketPage 219 16-byteline * t 16-byteline Priority (+other info)v 5* Read 8‘E >5—c PMMU Strobea U m > DeviceO Download State Read Devicel Download State Addres; LPM EPM 209 J

Read Read Strobe Address —_> SIU —) Fig. 7 \107 US. Patent May 11,2010 Sheet 10 0153 US 7,715,410 B2

Packet Memory PacketPage << 8

‘5,

(‘*5 a?Q) E A A A A 5. a A $ 3 Head Growth - g 2 ODQ 2 <1‘ w >= u N m -= . .2 \a 2 8 EE 2V i Head Shnnk_ mv 4 “:1: QC: ‘0-) Q) E a & -§ == 2 g ‘2 8 J: m g a, > A Tail Shrink a» 8 4 %” é ' X 1. E TailGrowth ‘m’ A 8 a: 8 E E‘ O 5 2 Y j [-1

16 bytes Fig. 8

US. Patent May 11,2010 Sheet 12 0153 US 7,715,410 B2 533:05320£23 :n...€ A_mnézi?ia AMmn...n‘vNVh...nAhn:.nOV 232218

mm 2 2%.5230\3:26 “228,2593Re.MR@285‘

@5520w mm

E052096cm o

US. Patent May 11,2010 Sheet 14 0153 US 7,715,410 B2

2:330330D8%53 02>®Q@5625EEEQE ES32 o .33 2021325552E US. Patent May 11,2010 Sheet 15 0153 US 7,715,410 B2

mAQggO.QQ£836S£52m8 wAAw?sgO#6520S MAABEEOE05206 NAAEEMBOE05206 NAQggUTAEQEEU6 NAQWggONAAEQEEU8 DEEDE 2.ME

kEBWEQ 2 mm

o