throbber
US 7,496,689 B2
`(10) Patent No.:
`(12) Unlted States Patent
`Sharp et al.
`(45) Date of Patent:
`Feb. 24, 2009
`
`
`USOO7496689B2
`
`(54) TCP/IP OFFLOAD DEVICE
`
`(75)
`
`Inventors: Colin C. Sharp, Santa Cruz, CA (US);
`Clive M. Philbrick San Jose CA (US)
`Daryl D. Starr, Milpitas, CA (US);
`Stephen E. J. Blightman, San Jose, CA
`(Us)
`
`(73) Assignee: Alacritech, Inc., San Jose, CA (US)
`
`(
`
`) Nome.
`
`subJeCt.tO any (31153121111163; the :lermefflgl:
`Ijjatselg 11552)???) 693091“; JuSte un er
`i
`i
`i
`( ) y
`ays.
`
`(21) Appl. N05 10/420,364
`.
`F11ed:
`
`Apr. 22’ 2003
`
`(22)
`
`(65)
`
`Prior Publication Data
`
`US 2004/0062245 A1
`
`Apr. 1, 2004
`_
`_
`Related U-S- Appllcatlon Data
`(60) Provisional application No. 60/374 788 filed on Apr.
`22 2002
`a
`a
`’
`Int. Cl.
`G06F 15/1 73
`G06F 15/16
`G06F 12/00
`H04L 15/00
`
`i
`
`(51)
`
`(2006 01)
`(2006.01)
`(200601)
`2006.01
`(
`'
`)
`
`(52) US. Cl.
`
`....................... 709/250; 709/238; 711/108;
`370/463
`
`(58) Field of Classification Search ................. 709/238,
`709/250; 711/108; 370/463; 375/219
`See application file for complete search history.
`
`(56)
`
`W0
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`4,366,538 A
`
`12/1982 Johnson et a1.
`(Contmued)
`FOREIGN PATENT DOCUMENTS
`W0 98/19412
`5/1998
`
`............. 364/200
`
`(Continued)
`OTHER PUBLICATIONS
`Internet pages entitled “Hardware Assisted Protocol Processing”,
`(which Eugene Feinberis working on), 1 page, printedNov. 25, 1998.
`(Continued)
`
`Primary ExamineriArio Etienne
`Assistant ExamineriPhili
`J Chea
`P
`(74) Attorney, Agent, or FirmiMark Lauer; Silicon Edge
`L
`G
`LLP
`aw roup
`
`ABSTRACT
`(57)
`A TCP/IP offload network interface device (NID) is inte-
`grated with a processing device that executes a stack. The
`TCP/IP ofl=load NID can either be a full TCP/IP offload device
`or a partial TCP/IP offload device. Common types ofpackets
`are processed by the NID in a fast-path such that the stack is
`ofl=loaded of TCP and IP protocol processing tasks. A hash is
`made from the packet header and is pushed onto a queue. The
`hash is later popped off the queue and is used to identify an
`associated TCB number from a hash table. A mechanism
`caches hash buckets in SRAM and stores other hash buckets
`in DRAM. An “IN SRAM CAM” is used to determine
`whether the TCB associated with the identified TCB number
`is cached in SRAM or whether it must be moved from DRAM
`into the SRAM cache. A lock table and a “lock table CAM”
`mechanism is disclosed that facilitates multiple processors
`working on the protocol processing of a single packet.
`
`21 Claims, 72 Drawing Sheets
`
`I —————————————————————————————————————————— 1
`
`INTEL EX. 1258.001
`
`|I
`
`
`
`PROCESSOR THAT
`IM PLEM ENTS
`PROTOCOL STACK
`
`115
`
`
`
`
`
`
`
`
`
`
`II
`
`l
`
`SYSTEM
`.----------------------------I
`1|
`I
`
`'III
`
`'I
`
`II
`I
`II
`I
`
`II
`I
`C023? LOCK
`HASH
`'I
`I
`114
`TABLE
`
`BUCKETS 11
`I
`CAM
`
`
`NETWORK
`105
`I
`I
`|
`I
`INSRAM 17
`
`I
`I
`IN INTERFACE
`CAM
`
`HASH
`I:
`i
`DEVICE
`1e\2
`AsIcg
`3
`TABLE
`'I
`I
`(CACHED :1
`.
`CAM CAM
`SRAM
`
`
`H7
`HASH
`I
`I
`E TCB
`1
`2
`
`BU‘i’éETS)11\ E 1::
`A
`14
`A
`I
`m
`I,
`
`
`
`
`
`
`E!
`— P1
`P2
`P3
`I:
`:9
`Q
`
`
`19
`1221
`H 11
`I
`In
`
`
`
`
`QUEUE
`TX
`NETWORK I
`|
`I
`
`I].
`E
`
`
`
`:HOSTBUS
`I Ei‘ g
`SEQUENCER
`
`
`
`
`
`
`RX
`E
`II
`I
`e
`LOC/gLBUS
`2
`
`
`
`II
`I
`20 mm:
`is
`(
`I}
`i
`CONTROL
`STORE
`22
`
`1
`I
`I
`I
`I
`I
`I
`I
`I
`i
`I
`I
`I
`.
`I
`STORAGE :

`1
`I
`I
`I
`|
`
`CPU
`4
`,
`
`INTEL Ex. 1258.001
`
`

`

`US 7,496,689 B2
`
`Page 2
`
`US. PATENT DOCUMENTS
`
`4,589,063 A
`4,700,185 A
`4,991,133 A
`5056058 A
`5,058,110 A
`5,097,442 A
`5,163,131 A
`5212778 A
`5,280,477 A
`5289580 A
`5303344 A
`5412782 A
`5418912 A
`5448566 A
`5,485,455 A
`5,485,460 A
`5,485,579 A
`5506966 A
`5,511,169 A
`5,517,668 A
`5524250 A
`5,535,375 A
`5548730 A
`5,566,170 A
`5,574,919 A
`5,588,121 A
`5,590,328 A
`5,592,622 A
`5,598,410 A
`5619650 A
`5629933 A
`5,633,780 A
`5634099 A
`5634127 A
`5,642,482 A
`5664114 A
`5,671,355 A
`5678060 A
`5,682,534 A
`5,692,130 A
`5,699,317 A
`5,699,350 A
`5,701,434 A
`5701516 A
`5,727,142 A
`5,742,765 A
`5749095 A
`5,751,715 A
`5,752,078 A
`5,758,084 A
`5758089 A
`5,758,186 A
`5,758,194 A
`5,768,618 A
`5771349 A
`5,774,660 A
`5778013 A
`5,778,419 A
`5,790,804 A
`5794061 A
`5,802,258 A
`5,802,580 A
`5,809,328 A
`5,809,527 A
`5,812,775 A
`5,815,646 A
`5,828,835 A
`5,848,293 A
`5,872,919 A
`5,878,225 A
`5,892,903 A
`
`
`
`5/1986 Shah etal.
`..................... 710/8
`10/1987 138113116131 ~~
`~ 370/451
`
`2/1991 Davis 9181 ~~
`~ 364/900
`10/1991 Hiram 6131 ~
`~ 709/230
`10/1991 Beacheta1~ ~
`~~ 370/856
`3/1992 Ward 6131
`365/78
`11/1992 Row eta1~ ~
`~ 395/200
`5/1993 Dally 6181 ~~
`~ 395/400
`1/1994 Trapp ~~~~~~~~~
`370/851
`2/1994 Latif et a1 ~~~~~~
`395/275
`
`4/1994 Yokoyama et 31 ~
`~ 395/200
`5/1995 Hausmaneta1~
`~ 395/250
`5/1995 Christenson
`709/234
`
`9/1995 Richter 9181
`370/941
`1/1996 Dobbins etal.
`~
`~370/255
`1/1996 Schrieret al.
`703/227
`
`.. 395/200.12
`1/1996 Hitz et al.
`4/1996 Ban ~~~~~~~~~~~~~~~ 395/250
`
`4/1996 Suda ................
`395/280
`5/1996 Szwerinskieta1
`~ 395/800
`6/1996 (3116550116131
`~ 395/775
`
`7/1996 Eshel
`~~~~~~~~~
`~~ 703/27
`
`8/1996 Young 9181 ~
`~ 395/280
`10/1996 Bakke etal.
`370/60
`
`11/1996 Netravaliet al.
`712/220
`~~ 395/20015
`12/1996 Reddin et a1
`
`....... 395/675
`12/1996 Seno et al.
`1/1997 18161616131 ~~
`395/20002
`
`1/1997 Stone ............. 370/469
`4/1997 1380116131
`395/20001
`
`5/1997 Delp 6131
`370/411
`5/1997 Cronin ................. 361/220
`5/1997 Andrews 6131
`395/20007
`
`5/1997 Cloud et a1
`395/680
`6/1997 Pardillos ........
`395/200.2
`9/1997 Kreohalr~etal~
`~ 395/20064
`
`
`9/1997 Collins .............
`. 395/200.2
`10/1997 Yokoyama 6131 ~
`~ 709/212
`
`10/1997 Kapooreta1 ~~
`709/203
`
`11/1997 Shobu etal.
`.
`.. 395/200.12
`12/1997 Sartore et al.
`.. 395/230.06
`~~~~~~~ 370/254
`12/1997 Kraslavsky
`
`12/1997 Nakagawa ~~
`395/484
`
`12/1997 Cheng 6181 ~
`~ 395/842
`3/1998 Chen ..........
`.395/181
`
`4/1998 Wong 6131 ~~
`709/230
`5/1998 Hagersten
`711/141
`
`5/1998 Chan et a1
`~ 370/455
`5/1998 Delp et al.
`.................. 395/827
`5/1998 Silverstein et a1.
`395/200.58
`
`~- 395/20064
`5/1998 Gentryetal.
`5/1998 Hamilton etal.
`............ 395/831
`5/1998 Kuzma ....................... 395/886
`
`6/1998 Erickson 6131 ~
`~~~~~~~ 710/9
`6/1998 Pioazoalrota1 ~~~~~~ 395/18801
`6/1998 Brendelet al.
`......... 395/200.31
`
`7/1998 Jedwab ~~~~~~~~~~
`714/807
`.............. 711/112
`7/1998 Hansen et al.
`8/1998 Osborne ..................... 709/245
`
`~~ 395/80001
`8/1998 Hansen 9131
`9/1998 Chen ..................... 395/182.08
`9/1998 McAlpice ................... 711/149
`
`9/1998 Nogales 6181 ~~
`~ 395/825
`9/1998 Cooper 9181 ~~~~~~~~~~~~~~~ 711/133
`9/1998 Van Seeters et al.
`395/200.43
`
`9/1998 Purcell 6131
`395/163
`................. 709/200
`10/1998 Isfeld et al.
`12/1998 Gentry .......................... 710/5
`2/1999 Wakeland ................... 709/230
`3/1999 Bilansky eta1.
`........ 395/200.57
`4/1999 Klaus ......................... 709/227
`
`
`
`5,898,713 A
`................. 371/53
`4/1999 Melzeretal.
`5,913,028 A
`.....
`. 395/200.33
`6/1999 Wang eta1.
`
`5,920,566 A
`............... 370/401
`7/1999 Hendelet 31.
`5,930,830 A
`7/1999 Mendelson eta1.
`......... 711/171
`
`5,931,918 A
`8/1999 Row eta1.
`.............
`709/300
`5,935,205 A
`.......... 709/216
`8/1999 Murayarna eta1.
`5,937,169 A
`8/1999 Conneryetal.
`.......... 395/200.8
`
`5,941,969 A
`8/1999 Rarnetal.
`...... 710/128
`5,941,972 A
`................ 710/129
`8/1999 Hoese eta1.
`5,950,203 A
`9/1999 Stakuis eta1.
`................. 707/10
`5,987,022 A
`.. 370/349
`11/1999 Geiger eta1.
`
`5,991,299 A
`............. 370/392
`11/1999 Radogna eta1.
`5,996,013 A
`11/1999 Delp eta1.
`.................. 709/226
`5,996,024 A
`11/1999 Blumenau
`709/301
`
`6,005,849 A
`................ 370/276
`12/1999 Roach eta1.
`6,009,478 A
`12/1999 Panneretal.
`.................. 710/5
`6,009,504 A * 12/1999 Krick ..........
`711/220
`
`6,016,513 A
`1/2000 Lowe
`709/250
`2/2000 Gentryet 31.
`6,021,446 A
`709/303
`
`2/2000 Chen ................. 714/2
`6,021,507 A
`6,026,452 A
`2/2000 Pitts
`710/56
`
`3/2000 Minami eta1.
`..
`6,034,963 A
`370/401
`3/2000 Anjur eta1. ............. 707/10
`6,038,562 A
`
`3/2000 Flanders eta1.
`6,041,058 A
`370/401
`3/2000 Hoese ............
`6,041,381 A
`710/129
`
`6,044,438 A
`3/2000 Olnowich .
`711/130
`
`6,047,323 A
`4/2000 Krause .....
`711/129
`..
`6,047,356 A
`4/2000 Anderson eta1.
`711/129
`6,049,528 A
`4/2000 Hendelet 31.
`......
`370/235
`6,057,863 A
`5/2000 Olarig ............
`345/520
`
`6,061,368 A
`5/2000 Hitzelberger
`370/537
`6,065,096 A
`5/2000 Day eta1.
`.......
`711/114
`6,067,569 A
`5/2000 Khaki eta1.
`709/224
`6,070,200 A
`5/2000 Gates etal. ............. 710/20
`
`6,078,564 A
`6/2000 Lakshman eta1.
`.
`370/235
`6,078,733 A
`6/2000 Osborne ............
`709/250
`6,097,734 A
`8/2000 Gotesman et 31.
`..
`370/474
`
`6,101,555 A
`8/2000 Gosheyetal.
`.....
`709/321
`...... 359/123
`6,111,673 A
`8/2000 Chang et 31.
`
`6,115,615 A
`9/2000 Ota eta1.
`........
`455/4221
`...... 709/230
`6,122,670 A
`9/2000 Bennett eta1.
`..
`
`6,141,701 A
`10/2000 Whitney ......
`710/5
`6,141,705 A
`10/2000 Anandetal.
`.
`.. 710/15
`6,145,017 A
`11/2000 Ghaffari ............... 710/5
`.. 709/228
`6,157,955 A
`12/2000 Narad eta1.
`
`............. 370/401
`6,172,980 B1
`1/2001 Flanders eta1.
`6,173,333 B1
`1/2001 Jolitz et 31.
`370/412
`.
`6,181,705 B1
`1/2001 Branstad eta1.
`6,202,105 B1
`3/2001 Gates eta1. ............. 710/20
`6,226,680 B1
`5/2001 Boucheretal.
`.
`709/230
`6,233,242 B1
`5/2001 Mayer et 31.
`370/392
`6,246,683 B1
`6/2001 Conneryetal.
`370/392
`6,247,060 B1
`6/2001 Boucheretal.
`709/238
`6,279,051 B1
`8/2001 Gates etal. .......... 710/20
`6,289,023 B1
`9/2001 Dowling et 31.
`.
`370/419
`6,298,403 B1
`10/2001 Suri eta1.
`.......
`710/100
`6,324,649 B1
`11/2001 Eyres eta1.
`.....
`713/202
`6,334,153 B2
`12/2001 Boucher et 31.
`.
`709/230
`6,343,360 B1
`1/2002 Feinleib ................ 713/1
`6,345,301 B1
`2/2002 Burns et 31.
`.....
`709/230
`6,345,302 B1
`2/2002 Bennett et 31.
`..
`709/236
`6,356,951 B1
`3/2002 Gentryetal.
`709/250
`6,370,599 B1
`4/2002 Anand et 31.
`..... 710/15
`
`......
`6,385,647 B1
`5/2002 Wills et 31.
`.. 709/217
`
`............... 709/226
`6,389,468 B1
`5/2002 Muller eta1.
`6,389,479 B1
`5/2002 Boucher ..................... 709/243
`6,393,487 B2
`5/2002 Boucher et 31.
`.
`709/238
`
`6,421,742 B1
`7/2002 Tillier
`........................... 710/1
`7/2002 Hoese et 31.
`................ 710/129
`6,421,753 131
`6,427,169 B1
`7/2002 Elzur
`709/224
`
`7/2002 Craft eta1.
`.................. 709/230
`6,427,171 B1
`6,427,173 B1
`7/2002 Boucheretal.
`............. 709/238
`6,434,620 B1
`8/2002 Boucheretal.
`............. 709/230
`
`
`
`
`
`
`
`INTEL EX. 1258.002
`
`INTEL Ex. 1258.002
`
`

`

`US 7,496,689 B2
`
`Page 3
`
`6,434,651 B1
`6,449,656 B1
`6,453,360 B1
`6,470,415 B1
`6,473,425 B1
`6,480,489 B1
`6,487,202 B1
`6,487,654 B2
`6,490,631 B1
`6,502,144 B1
`6,523,119 B2
`6,526,446 B1
`6,570,884 B1
`6,591,302 B2
`6,591,310 B1
`6,648,611 B2
`6,650,640 B1
`6,657,757 B1
`6,658,480 B2
`6,678,283 B1
`6,681,364 B1
`6,687,758 B2
`6,697,868 B2
`6,751,665 B2
`6,757,746 B2
`6,765,901 B1
`6,807,581 B1
`6,842,896 B1
`6,912,522 B2
`6,938,092 B2
`6,941,386 B2
`6,965,941 B2
`6,996,070 B2
`7,042,898 B2
`7,076,568 B2
`7,089,326 B2
`7,093,099 B2
`7,124,205 B2
`7,133,940 B2
`7,167,926 B1
`7,167,927 B2
`7,174,393 B2
`7,185,266 B2
`7,191,241 B2
`7,191,318 B2
`7,237,036 B2
`7,254,696 B2
`7,284,070 B2
`2001/0004354 A1
`2001/0025315 A1
`2001/0013059 A1
`2001/0014892 A1
`2001/0014954 A1
`200 1/0048681 A1
`2001/0053148 A1
`2002/0073223 A1
`2002/0112175 A1
`2003/0066011 A1
`2003/0110344 A1
`2003/0165160 A1
`2004/0054814 A1
`2004/0059926 A1
`2004/0153578 A1
`2004/0213290 A1
`2004/0246974 A1
`
`.................. 710/260
`8/2002 Gentry, Jr.
`..
`. 709/236
`9/2002 Elzur et al.
`
`............... 709/250
`9/2002 Muller et al.
`10/2002 Starr et al.
`.................. 711/104
`10/2002 Bellaton et a1
`. 370/392
`
`............... 370/389
`11/2002 Muller et al.
`11/2002 Klausmeier et al.
`...... 370/395.1
`
`11/2002 Dowling ........
`712/244
`................. 709/250
`12/2002 Teich et al.
`12/2002 Accarie ......................... 710/8
`.
`2/2003 Pavlin et a1.
`. 713/192
`
`.................. 709/230
`2/2003 Yang et al.
`5/2003 Connery et a1.
`............. 370/419
`.
`7/2003 Boucher et al.
`. 709/230
`
`7/2003 Johnson ......................... 710/3
`11/2003 Morse et a1.
`................ 417/310
`11/2003 Muller et a1.
`. 370/392
`
`.
`12/2003 Chang et a1.
`. 359/124
`
`. 709/239
`12/2003 Boucher et a1
`1/2004 Teplitsky .......
`. 370/463
`
`1/2004 Calvignac et a1.
`.
`. 714/776
`
`. 709/250
`2/2004 Craft et a1.
`. 709/230
`2/2004 Craft et al.
`
`6/2004 Philbrick et al.
`. 709/224
`.
`6/2004 Boucher et al.
`. 709/250
`
`7/2004 Johnson et al.
`.
`. 370/352
`10/2004 Starr et al.
`. 709/250
`
`1/2005 Redding et al
`. 717/172
`
`6/2005 Edgar .............. 707/10
`
`8/2005 Burns ......
`709/230
`
`9/2005 Craft et al.
`. 709/250
`11/2005 Boucher et al
`. 709/230
`
`2/2006 Starr et al.
`. 370/252
`5/2006 Blightman et a
`. 370/463
`
`7/2006 Philbrick et a1.
`. 709/250
`8/2006 Boucher et al.
`.
`. 709/242
`. 711/206
`.
`8/2006 Bodas et al.
`
`......
`. 709/250
`10/2006 Craft et al.
`
`11/2006 Blightman et al.
`710/22
`.
`. 709/250
`1/2007 Boucher et al.
`
`. 709/250
`1/2007 Philbrick et al.
`.
`. 709/250
`2/2007 Boucher et al.
`
`2/2007 Blightman et al
`. 714/776
`
`.
`3/2007 Boucher et al.
`. 709/230
`.
`3/2007 Tripathy et al.
`. 712/225
`
`.
`6/2007 Boucher et al.
`. 709/245
`. 712/210
`8/2007 Mittal et al.
`
`.
`. 709/250
`10/2007 Boucher et al.
`
`6/2001 Jolitz .........
`370/328
`
`6/2001 Jolitz .........
`709/231
`8/2001 Dawson et al.
`. 709/217
`8/2001 Gaither et al.
`. 707/200
`
`8/2001 Purcell et al.
`714/4
`12/2001 Bilic et al.
`. 370/3 89
`12/2001 Bilic et al.
`. 370/389
`6/2002 Damell et al.
`. 709/232
`
`8/2002 Makofl<a et al.
`. 713/200
`4/2003 Oren ................
`. 714/758
`6/2003 Szczepanek et al.
`. 711/100
`
`..
`. 370/466
`9/2003 Minami et al.
`3/2004 McDaniel
`......
`. 709/250
`
`3/2004 Angelo et al.
`713/168
`8/2004 Elzur
`............
`.. 709/230
`.
`10/2004 Johnson et al.
`370/469
`12/2004 Gyugi et al.
`........... 370/395.31
`
`
`
`..
`..
`
`FOREIGN PATENT DOCUMENTS
`
`W0
`W0
`W0
`
`WO 98/50852
`WO 99/04343
`WO 99/65219
`
`11/1998
`1/1999
`12/1999
`
`W0
`W0
`W0
`W0
`W0
`W0
`W0
`W0
`
`WO 00/13091
`WO 01/04770
`WO 01/05107
`WO 01/05116
`WO 01/05123
`WO 01/40960
`WO 01/59966
`WO 01/86430
`
`3/2000
`1/2001
`1/2001
`1/2001
`1/2001
`6/2001
`8/2001
`11/2001
`
`OTHER PUBLICATIONS
`Zilog product Brief entitled “Z85C30 CMOS SCC Serial Commu-
`nication Controller”, Zilog Inc., 3 pages, 1997.
`Internet pages of Xpoint Technologies, Inc. entitled “Smart LAN
`Work Requests”, 5 pages, printed Dec. 19, 1997.
`Internet pages entitled: Asante and 100BASE-T Fast Ethernet. 7
`pages, printed May 27, 1997.
`Internet pages entitled: A Guide to the Paragon XP/S-A7
`Supercomputer at Indiana University. 13 pages, printed Dec. 21,
`1998.
`Ricth Stevens, “TCP/IP Illustrated, vol. 1, The Protocols”, pp.
`325-326 (1994).
`Internet pages entitled: Northridge/Southbridge vs. Intel Hub Archi—
`lecture, 4 pages, printed Feb. 19, 2001.
`Gigabit Ethernet Technical Brief, Achieving End-to-End Perfor-
`mance. Alteon Networks, Inc., First Edition, Sep. 1996, 15 pages.
`Internet pages directed to Technical Brief on Alteon Ethernet Gigabit
`NIC technology, www.alteon.com, 14 pages, printed Mar. 15, 1997.
`VIA Technologies, Inc. article entitled “VT8501 Apollo MVP4”, pp.
`i-iV, 1-1 1, cover and copyright page, revision 1.3, Feb. 1, 2000.
`iReady News Archives article entitled “iReady Rounding Out Man-
`agement Team with Two Key Executives”, http://www.ireadyco.
`com/archives/keyexechtml, 2 pages, printed Nov. 28, 1998.
`“Toshiba Delivers First Chips to Make Consumer Devices Internet-
`Ready Based On iReady’s Design,” Press Release Oct. 1998, 3 pages,
`printed Nov. 28, 1998.
`Internet pages from iReady Products, web sitehttp://www.ireadyco.
`corn/products,htrnl, 2 pages, downloaded Nov. 25, 1998.
`iReady News Archives, Toshiba, iReady shipping Internet chip, 1
`page, printed Nov. 25, 1998.
`Interprophet article entitled “Technology”, http://www.interprophet.
`corn/technologyhtml, 17 pages, printed Mar. 1, 2000.
`iReady Corporation, article entitled “The I-1000 Internet Tuner”, 2
`pages, date unknown.
`iReady article entitled “About Us Introduction”, Internet pages
`fromhttp://www.iReadyco.com/about.html, 3 pages, printed Nov.
`25, 1998.
`iReady News Archive article entitled “Revolutionary Approach to
`Consumer Electronics Internet Connectivity Funded”, San Jose, CA,
`Nov. 20, 1997. 2 pages, printed Nov. 2, 1998.
`iReady News Archive article entitled “Seiko Instruments Inc. (S11)
`Introduces World’s First Internet-Ready Intelligent LCD Modules
`Based on iReady Technology,” Santa Clara, CA and Chiba, Japan,
`Oct. 26, 1998. 2 pages, printed Nov. 2, 1998.
`NEWSwatch article entitled “iReady internet Tuner to Web Enable
`Devices”, Tuesday, Nov. 5, 1996, printed Nov. 2, 1998, 2 pages.
`EETimes article entitled “Tuner for Toshiba, Toshiba Taps iReady for
`Internet Tuner”, by David Lammers, 2 pages, printed Nov. 2, 1998.
`“Comparison of Novell Netware and TCP/IP Protocol Architec-
`tures”, by J.S. Carbone, 19 pages, printed Apr. 10, 1998.
`Adaptec article entitled “AEA-7110C-a DuraSAN product”, 11
`pages, printed Oct. 1, 2001.
`iSCSI HBA article entitled “iSCSI and 2Gigabit fibre Channel Host
`Bus Adapters from Emulex, QLogic, Adaptec, JNI”, 8 pages, printed
`Oct. 1, 2001.
`iSCSI HBA article entitled “FCE-3210/6410 32 and 64-bit PCI-to-
`Fibre Channel HBA”, 6 pages, printed Oct. 1, 2001.
`ISCSI.com article entitled “iSCSI Storage”, 2 pages, printed Oct. 1,
`2001.
`“Two-Way TCP Traffic Over Rate Controlled Channels: Effects and
`Analysis”, by Kalampoukas et al., IEEE Transactions on Network-
`ing, vol. 6, No. 6, Dec. 1998, 17 pages.
`
`INTEL EX. 1258.003
`
`INTEL Ex. 1258.003
`
`

`

`US 7,496,689 B2
`
`Page 4
`
`IReady News article entitled “Toshiba Delivers First Chips to Make
`Consumer Devices Internet-Ready Based on iReady Design”, Santa
`Clara, CA, and Tokyo, Japan, Oct. 14, 1998, printed Nov. 2, 1998, 3
`pages.
`Internet pages of InterProphet entitled “Frequently Asked Ques-
`tions”, by Lynne Jolitz, printed Jun. 14, 2000, 4 pages.
`“File System Design For An NFS File Server Appliance”, Article by
`D. Hitz, et al., 13 pages.
`Adaptec Press Release article entitled “Adaptec Announces
`EtherStorage Technology”, 2 pages, May 4, 2000, printed Jun. 14,
`2000.
`
`Adaptec article entitled “EtherStorage Frequently Asked Questions”,
`5 pages, printed Jul. 19, 2000.
`Adaptec article entitled “EtherStorage White Paper”, 7 pages, printed
`Jul. 19,2000.
`CIBC World Markets article entitled “Computers; Storage”, by J.
`Berlino et al., 9 pages, dated Aug. 7, 2000.
`Merrill Lynch article entitled “Storage Futures”, by S. Milunovich,
`22 pages, dated May 10, 2000.
`CBS Market Watch article entitled “Montreal Start-Up Battles Data
`Storage Bottleneck”, by S. Taylor, dated Mar. 5, 2000, 2 pages,
`printed Mar. 7, 2000.
`Internet-draft article entitled “SCSI/TCP (SCSI over TCP)”, by J.
`Satran et al., 38 pages, dated Feb. 2000, printed May 19, 2000.
`Internet pages entitled Technical White Paper-XPoint’s Disk to LAN
`Acceleration Solution for Windows NT Server, printed Jun. 5, 1997,
`15 pages.
`Jato Technologies article entitled Network Accelerator Chip Archi-
`tecture, twelve-slide presentation, printed Aug. 19, 1998, 13 pages.
`EETimes article entitled Enterprise System Uses Flexible Spec,
`dated Aug. 10, 1998, printed Nov. 25, 1998, 3 pages.
`Internet pages entitled “Smart Ethernet Network Interface Cards”,
`which Berend Ozceri is developing, printed Nov. 25, 1998, 2 pages.
`Internet pages of Xaqti corporation entitled “GigaPower Protocol
`Processor Product Review,” printed Nov. 25, 1999, 4 pages.
`U.S. Appl. No. 60/283,896, Titled: CRC Calculations for Out of
`Order PUDs, filed Apr. 12, 2003, Inventor: Amit Oren, Assignee:
`Siliquent Technologies Ltd.
`Internet pages entitled “DART: Fast Application Level Networking
`via Data-Copy Avoidance,” by Robert J. Walsh, printed Jun. 3, 1999,
`25 pages.
`Andrew S. Tanenbaum, Computer Networks, Third Edition, 1996,
`ISBN 0-13-349945-6.
`
`Rice University article entitled “LRP: A Network Subsystem Archi-
`tecture for Server Systems”, by P. Druschel and G. Banga, 14 pages.
`Internet RFC/STD/FYI/BCP Archives
`article with heading
`“RFC2140” entitled “TCP Control Block Interdependence”, web
`address http://www.faqs.org/ftp/rfc/pdf/rfc2140.txt.pdf, 11 pages,
`Apr. 1997.
`WindRiver article entitled “Tornado: For Intelligent Network Accel-
`eration”, copyright Wind River Systems, 2001, 2 pages.
`WindRiver White Paper entitled “Complete TCP/IP Offload for
`High-Speed Ethernet Networks”, Copyright Wind River Systems,
`2002, 7 pages.
`Intel article entitled “Solving Server Bottlenecks with Intel Server
`Adapters”, Copyright Intel Corporation, 1999, 8 pages.
`
`Schwaderer et al ., IEEE Computer Society Press publication entitled,
`“XTP in VLSI Protocol Decomposition for ASIC Implementation”,
`from 15th Conference on Local Computer Networks, 5 pages, Sep.
`30-Oct. 3, 1990.
`Beach, Bob, IEEE Computer Society Press publication entitled,
`“UltraNet: An Architecture for Gigabit Networking”, from 15th Con-
`ference on Local Computer Networks, 18 pages, Sep. 30-Oct. 3,
`1990.
`Chesson et al., IEEE Syposium Record entitled, “The Protocol
`Engine Chipset”, from Hot Chips III, 16 pages, Aug. 26-27, 1991.
`Maclean et al.,
`IEEE Global Telecommunications Conference,
`Globecom ’91, presentation entitled, “An Outboard Processor for
`High Performance Implementation of Transport Layer Protocols”, 7
`pages, Dec. 2-5, 1991.
`Ross et al., IEEE article entitled“FX1000: Ahigh performance single
`chip Gigabit Ethernet NIC”, from Compcon ’97 Proceedings, 7
`pages, Feb. 23-26, 1997.
`Strayer et al., “Ch. 9: The Protocol Engine” from XTP: The Transfer
`Protocol, 12 pages, Jul. 1992.
`Publication entitled “Protocol Engine Handbook”, 44 pages, Oct.
`1990.
`Koufopavlou et al., IEEE Global Telecommunications Conference,
`Globecom ’92, presentation entitled, “Parallel TCP for High Perfor-
`mance Communication Subsystems”, 7 pages, Dec. 6-9, 1992.
`Lilienkamp et al., Publication entitled “Proposed Host-Front End
`Protocol”, 56 pages, Dec. 1984.
`Thla, Y.H. Publication entitled A Reduced Operational Protocol
`Engine (ROPE) for a multiple-layer bypass architecture, 16 pages.
`U.S. Appl. No. 60/053,240, Titled: TCP/IP Network Accelerator and
`Method oste, filed Jul. 18, 1997, Inventors: Jolitz et al., Assignee:
`InterProphet LLC.
`Thia, Y.H. Publication entitled “High-Speed OSI Protocol Bypass
`Algorithm with Window Flow Control”, Protocols for High Speed
`Networks, pp. 53-68, 1993.
`Form 10-K for Excelan, Inc., for the fiscal year ending Dec. 31, 1987
`(10 pages).
`Form 10-K for Excelan, Inc., for the fiscal year ending Dec. 31, 1988
`(10 pages).
`Internet pages entitled: Northridge/Southbridge vs. Intel Hub Archi—
`tecture, 4 pages, printed Feb. 19, 2001.
`Article from Rice University entitled “LRP: A New Network Sub-
`system Architecture for Server Systems”, by Peter Druschel and
`Gaurav Banga, 14 pages.
`Schwaderer et al ., IEEE Computer Society Press publication entitled,
`“XTP in VLSI Protocol Decomposition for ASIC Implementation”,
`from 15th Conference on Local Computer Networks, 5 pages, Sep.
`30-Oct. 3, 1990.
`Beach, Bob, IEEE Computer Society Press publication entitled,
`“UltraNet: An Architecture for Gigabit Networking”, from 15th Con-
`ference on Local Computer Networks, 18 pages, Sep. 30-Oct. 3,
`1990.
`Thia et al. Publication entitled “High-Speed OSI Protocol Bypass
`Algorithm with Window Flow Control,” Protocols for High Speed
`Networks, pp. 53-68, 1993.
`Thia et al. Publication entitled “A Reduced Operational Protocol
`Engine (ROPE) for a multiple-layer bypass architecture,” Protocols
`for High Speed Networks, pp. 224-239, 1995.
`
`* cited by examiner
`
`INTEL EX. 1258.004
`
`INTEL Ex. 1258.004
`
`

`

`US. Patent
`
`Feb. 24, 2009
`
`Sheet 1 of 72
`
`US 7,496,689 B2
`
`
`e
`SYSTEM
`I____________________________I
`I
`|
`I
`|
`I
`II
`I
`II
`I
`'I
`CACHED
`I
`
`LOCK
`"
`TCBs
`‘
`
`HASH
`'I
`114
`TABLE
`i
`BUCKETS d
`CAM
`I
`
`NETWORK
`I
`I
`INSRAM 17'
`105
`I
`|
`|
`CAM
`LV INTERFACE
`
`I.
`I
`DEWCE
`
`HASH
`|
`I
`I
`3
`TABLE
`H
`I
`(CACHEDI'
`I
`
`HASH
`I
`BUCKETS)‘
`I
`104
`'
`I
`I
`H}
`I
`I
`I
`NETWORK:
`
`l' _______________________
`|
`
`| |
`
`115
`
`
`
`
`_ _ 'I
`I
`l
`I
`I
`:
`I
`I
`I
`I
`I
`I
`I
`I
`.
`I
`I
`I
`|
`|
`STORAGE |
`I|
`
`m
`o
`9
`D:
`m
`
` HOST BUS
`
`||II|
`
`6
`
`LOCAL BUS
`8
`
`
`CONTROL
`STORE
`22
`
`PROCESSOR THAT
`IMPLEM ENTS
`PROTOCOL STACK
`
`FIG. 1
`
`INTEL EX. 1258.005
`
`INTEL Ex. 1258.005
`
`

`

`U.S. Patent
`
`Feb. 24, 2009
`
`Sheet20f72
`
`US 7,496,689 B2
`
`
`
`-<0»@£54mmsmAmmEEmwe
`w:.“Av/x6
`:52<mmz_m92“.06520ll
`n:EEB85II
`
`mmoz:mzofiomzzooII
`
`=mw3Z_=..n_<
`
`SEN—Q2_meH.:mx004mOH
`m:mow
`
`«6;9.5”.0EEmzo
`
`0»n5ME“.0:05
`
`._._mmm3-z_mOH
`
`0:.
`
`m0._.
`
`
`
`#HXMHZOAIOfi>>0m
`
`mmfihOAmflAIIIAll
`
`
`5306.,@.m...m5:AmmEEMo:
`“.039¢4(\xjx/La59aGa:6%
`00Ev.\fVK
`Guy—z:_>_<OMn_m<._.v_OO._/\Al
`
`
`
`m9.
`
`Form9.
`
`
`
`Iw<Immo<m1
`
`2:65%:as
`
`NS53gimme
`
`EMU
`
`Non.
`
`2.8105hh3:we”.095¢a;ommmao:2:
`
`
`
`
`mm”:mm9n5Ammikzm2xa;firmNxNEE/p£9::2:a:33
`32mmfo<m«ME/m
`
`.r:9668mmEa
`
`nukomw20mm
`
`INTEL EX. 1258.006
`
`INTEL Ex. 1258.006
`
`
`
`
`
`

`

`US. Patent
`
`Feb. 24, 2009
`
`Sheet 3 of 72
`
`US 7,496,689 B2
`
`START
`
`,~ 200
`
`OBTAIN AVAILABLE "PROCESSOR CONTEXT"
`
`
`201
`
`202
`
`POP RECEIVE DESCRIPTOR AND HASH OFF THE RECEIVE DESCRIPTOR
`QUEUE
`
`
`
`CHECK ATTENTION BIT, IF SET THEN GO TO SLOW-PATH (END)
`
`I
`IF ATTENTION BIT IS NOT SET, THEN START THE DMA OF
`
`THE HEADER FROM DRAM TO SRAM
`
`
`203
`
`I
`
`BITS[13:2] OF THE HASH ARE THE HASH BUCKET NUMBER, CHECK THE
`CORRESPONDING HASH BUCKET STATUS BYTE TO SEE IF THE BUCKET IS IN
`
`SRAM (CACHE)
`I
`IF THE BUCKET IS IN CACHE, THEN WAIT FOR THE HEADER DMA TO
`
`COMPLETE
`
`r' 205
`
`r- 204
`
`IF THE BUCKET IS NOT IN CACHE, THEN IDENTIFY A FREE HASH SLOT FROM
`Q_FREEHASHSLOTS AND DMA THE HASH BUCKET FROM DRAM INTO THE
`FREE SLOT IN SRAM, SET THE HASH BUCKET STATUS BYTE TO POINT TO THE
`NOW OCCUPIED SLOT
`
`206
`
`207
`
`SEARCH THE HASH BUCKET (IN SRAM) FOR THE TCB NUMBER, USE BITS[1:O]
`OF THE HASH TO DETERMINE THE FIRST HASH ENTRY TO CHECK, CHECK
`
`CONSECUTIVE HASH ENTRIES IN THE BUCKET FROM THERE
`
`208
`
`IF A MATCH IS NOT FOUND IN THE BUCKET, THEN GO TO SLOW-PATH (END)
`
`209
`
`IF A MATCH IS FOUND IN THE BUCKET, THEN GET THE TCB NUMBER FROM
`
`THE HASH BUCKET ENTRY
`
`I
`ATTEMPT TO LOCK THE INDICATED TCB BY SETTING THE TCB'S LOCK BIT
`
`210
`
`I
`
`FIG. 3A
`
`INTEL EX. 1258.007
`
`INTEL Ex. 1258.007
`
`

`

`
`5213
`
`
`IF THE TCB SLOT NUMBER IS FOUND IN THE INSRAM CAM, THEN DO FAST-
`
` PATH RECEIVE PROCESSING (END)
`
`
`
`IF THE TCB SLOT NUMBER IS NOT FOUND IN THE INSRAM CAM, THEN
`IDENTIFY A LRU SLOT IN THE TCB SRAM CACHE AND DMA THE TCB FROM
`
`DRAM INTO THE LRU SLOT
`
`PUT THE TCB SLOT NUMBER INTO THE SRAM CAM
`
`216
`
`
`
`
`
`214
`
`US. Patent
`
`Feb. 24, 2009
`
`Sheet 4 of 72
`
`US 7,496,689 B2
`
`
`
`
`
`
`212
`
`
`IF THE TCB IS LOCKED AS INDICATED BY THE LOOK BIT, THEN INSERT THE
`RUNNING PROCESSOR CONTEXT INTO THE TCB LOCK TABLE AND SUSPEND.
`
`WHEN THE TCB IS UNLOCKED BY THE CURRENT OWNER, A TCB LOCK TABLE
`CAM AND THE LOCK TABLE ARE USED TO IDENTIFY THE NEXT WAITING
`PROCESSOR CONTEXT. THIS PROCESSOR CONTEXT IS RESTARTED.
`
`
`
`
`
`ONCE THE PROCESSOR CONTEXT HAS LOCKED THE MATCHED TCB, THEN
`SEARCH THE INSRAM CAM FOR THE TCB SLOT NUMBER. IF THE TCB SLOT
`
`NUMBER IS IN THE INSRAM CAM, THEN THIS TCB IS IN THE TCB SRAM
`
`CACHE.
`
`DO FAST-PATH RECEIVE. PROCESSING (END)
`
`FIG. 38
`
`KEY TO FIG.3
`
`FIG.3A
`
`FIG.BB
`
`FIG.3
`
`INTEL EX. 1258.008
`
`INTEL Ex. 1258.008
`
`

`

`U.S. Patent
`
`Feb. 24, 2009
`
`Sheet 5 of 72
`
`US 7,496,689 B2
`
`300
`__________________ fi_ _ 1
`COMPUTER
`306
`r _______ .fi__
`
`
`I
` NETWORK
`
`NETWORK
`
`CPU EXECUTES
`
`
`
`INSTRUCNONS
`INTERFACE
`I'
`TTmTIMPLEMENT
`I
`I DEva
`
`
`I
`
`STORAGE I
`l
`PROTOCOLSTACK
`I
`
`I
`305
`'I
`I
`:I
`HOSTBUSI
`I
`303
`—————————— I
`
`
`
`CPUEXECUTES
`INSTRUCHONS
`TTMTIMPLEMENT
`PROTOCOLSTACK
`
`
`
`500
`
`I _____________________ d—I
`COMPUTER
`I
`_______________ I
`HOST
`301
`
`
`
`
`NETWORK
`
`INTERFACE
`
`
`DEVICE
`
`
`
`
`
`
`LOCAL BUS
`HOST BUS I
`
`STORAGE
`
`§Q§
`
`
`
`I I
`
`CPU EXECUTES
`
`INSTRUCTIONS
`THAT IMPLEMENT
`PROTOCOL STACK
`
`|
`I
`:
`
`I|
`
`INTEL EX. 1258.009
`
`301
`
`
`
`N ETWORK
`
`NERNORK
`‘flfl
`
`
`INTERFACE
`DEva
`I
`
`
`I
`
`
`HOSTBUS
`I
`
`I
`I
`I
`||
`_____________________ I
`
`SnggeE
`“‘
`
`| L
`
`NETWORK
`
`
`
`
`INTEL Ex. 1258.009
`
`

`

`US. Patent
`
`Feb. 24, 2009
`
`Sheet 6 0f 72
`
`US 7,496,689 B2
`
` BRIDGE
`
`|
`
`CPU EXECUTES
`
`501
`i
`I
`INSTRUCTIONS
`
`,
`:
`THATIMPLEMENT
`
`
`IEEE‘I/RVFOARC:
`I
`I
`PROTOCOL STACK
`l
`l
`
`
`
`
`DEVICE
`'
`I
`LOCAL BUS I
`I
`506
`j
`I
`______________ I
`
`
`
`NETWORK
`
`700
`"—3—”
`I
`:
`
`.|
`
`SEQUENCERS
`
`
`NETWORK i
`COMPUTER
`INTERFACE
`
`PROCESSORS
`DEVICE
`
`701
`
`8
`— i
`g
`I
`m
`:
`STORAGE
`M I|
`
`NETWORK
`
`
`
`
`I
`LOCAL BUS
`HOST BUS
`________________________ |
`
`
`
`
`
`PROCESSOR THAT IMPLEMENTS
`PROTOCOL STACK
`
`F I G 8
`800
`'
`________________________ d__
`CPU
`‘
`NETWORK I
`COMPUTER
`IMPLEMENTS
`'
`'NTERFACE I
`
`'
`DEVICE
`I
`.
`PROTOCOL
`
`'
`I
`STACK
`
`NETWORK
`
`801
`
`BRIDGE
`
`
`INTEL EX. 1258.010
`
`INTEL Ex. 1258.010
`
`

`

`US. Patent
`
`Feb. 24, 2009
`
`Sheet 7 of 72
`
`US 7,496,689 B2
`
`_________________________________________________
`
`Rev
`Seq
`
`th
`Seq
`
`Reg File
`4K1 WCS
`4K1 ROM
`ll
`-—1!= 32 KB Sram
`-
`
`I-"
`
`External
`Memory
`Ctrl
`
`-EEPROM
`
`SDRAM
`
`FLASH
`
`_________________________________________________
`
`INTEL EX. 1258.011
`
`INTEL Ex. 1258.011
`
`

`

`US. Patent
`
`Feb. 24, 2009
`
`Sheet 8 of 72
`
`US 7,496,689 B2
`
`Datapath Bandwidth
`
`(125MB/s/IOOOBasc) x 2 (full duplex) x 1 connections
`
`Average frame size
`
`Frame rate : 250MB/s / 512B
`
`Overhead / frame : (256B context read * 25%) + (968 header read) +
`(192B context write * 25%) + (64B misc.)
`
`Total bandwidth = (5123 in) + (512B out) + (272B Cpu)
`
`Dram Bandwidth required = (1296B/frame) x (488,280 frames/s)
`
`Dram Bandwidth @ ISOMHZ : (64 bytes/ 126.6ns)
`
`PCI Bandwidth required
`
`PC] Bandwidth available @ 33 MHZ, 64b, average
`
`PCI Bandwidth available @ 66 MHZ, 64b, average
`
`=
`
`=
`
`=
`
`=
`
`=
`
`i
`
`=
`
`=
`
`:
`
`=
`
`250 MB/s
`
`512 B
`
`488,280 frames /5
`
`272B / frame
`
`12963 / frame
`
`632.8MB/s
`
`505MB/S
`
`250MB/s
`
`200MB/s
`
`450MB/s
`
`Cpu Bandwidth
`
`Required instructions / frame (per Clive)
`
`Ack frames per receive
`
`Average instructions/Rev = 250 + (220 * .5)
`Receive frame interval : 512B / 125MB/s
`
`:
`
`—
`
`:
`
`250 instructions/rcv
`220 instructions/ack
`
`.5
`
`360 instructions/frame
`
`4.267 us
`
`Instructions / frame @ 100MHz = (4.27us/frame)/(15ns/instruction) =
`
`284 instructions/frame
`
`FIG. 12
`
`INTEL EX. 1258.012
`
`INTEL Ex. 1258.012
`
`

`

`US. Patent
`
`Feb. 24, 2009
`
`Sheet 9 of 72
`
`US 7,496,689 B2
`
`PIN ASSIGNMENTS
`
`BALL
`
`SIGNAL DESCRIPTION
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`M W
`17
`18
`o
`
`<<CC1H<C§HHWW
`
`7
`
`1
`
`ooxoxoooooxo
`
`~<b—lb—l—l1—. \O
`
`2 1 2 2 1
`
`PCIAD61
`
`PCI ACK64L
`
`PCI PAR54
`
`H
`
`oo
`17
`16
`17
`
`"U.5
`1
`W10
`
`L“
`
`y—t
`
`5 6
`
`O’\
`Y15
`14
`E
`
`7 1
`
`6
`Ox
`
`7 1
`
`1
`00
`
`5 1
`
`5
`.— ON
`LII
`4
`
`1 1
`
`3 1
`
`
`
`
`
`PCI ADO
`PCI AD1
`PCI AD2
`PCI AD3
`PCI AD4
`PCI ADS
`PCI AD6
`PCI AD7
`PCI AD8
`PCI AD9
`PCI AD10
`PCI AD11
`PCI AD12
`PCI AD13
`PCI AD14
`PCI AD15
`PCI AD16
`PCI AD17
`PCI AD18
`PCI AD19
`PCI AD20
`PCI AD21
`PCI AD22
`PCI AD23'
`PCI AD24
`PCI AD25
`PCI AD26
`PCI AD27
`PCI AD28
`PCI AD29
`PCI AD30
`PCI AD31
`PCI AD32
`PCI AD33
`PCI AD34
`PCI AD35
`PCI AD36
`PCI AD37
`PCI AD38
`PCI AD39
`PCI AD40
`PCI AD41
`PCI_AD42
`PCI AD43
`PCI AD44
`PCI AD45
`PCI AD46
`
`14
`1
`.— u.)
`12
`12
`M
`
`l 1 1
`
`9g_
`
`10
`_
`
`g.)
`
`A
`
`1
`E
`_
`
`l 1
`
`2
`L1
`M20
`p... O
`
`Oo\100
`
`1 2
`
`p...
`
`N19
`P20
`P19
`2
`E \o
`
`
`
`
`
`___J
`<
`
`1T]P—I.0
`
`1—; U.) \ 1—4
`
`INTEL EX. 1258.013
`
`INTEL Ex. 1258.013
`
`

`

`US. Patent
`
`Feb. 24, 2009
`
`Sheet 10 of 72
`
`US 7,496,689 B2
`
`
`
`SIGNAL DESCRIPTION
`
`
`
`
`
`
`H17
`
`U10
`
`R17
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
` SIGNAL DESCRIPTION
`
`V10
`
`T18
`
`BIO
`
`VDDPC108
`VDDPC109
`
`CLK_SEL_0
`CLK_SEL_1
`PWR_GOOD
`AUx_PWR_GO0D
`NAND_OUT
`
`11
`
`GPIO_2
`>0w
`- GPIO_3
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`_ A
`
`__
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`INTEL EX. 1258.014
`
`<:CU
`
`
`
`
`
`
`
`4 1
`
`tnm<d>CU“WSWNHMAGS:u.\x-P-q-B
`
`1 F
`
` ’1']"£1 N
`
`
`PLL VSS
`
`A p-L N
`
`1
`
`G4
`
`
`
`INTEL Ex. 1258.014
`
`

`

`U.S. Patent
`
`Feb. 24, 2009
`
`Sheet 11 of 72
`
`US 7,496,689 B2
`
`LLgB
`
`NGS
`
`AL DESCRIPTION
`
`L
`
`SIGNAL DESCRIPTION
`
`
`
`EnmnmmmnmmmeTYWYVVJKMPUCCDCBDACGJJRMT
`
`RAM WE L
`RAM D 0 M
`EEPROM SDI
`EEPROM SDO
`EEPROM CS
`EEPROM CLK
`FSH CD L
`NC
`NC
`NC
`NC
`NC
`NC
`NC
`NC
`NC
`NC
`NC
`NC
`NC
`NC
`
`
`
`CCCCCCCCCCCCCCCCCC
`
`
`mmmmmmmmmmnmmmmmumBCABDCBCBBCECEDEFMFGMGGAJHHB
`
`4132231232lzzmnnwwmmwwmummwmwnmmmwwowmowwnnmwo
`
`A TXC
`A CRS
`A COL
`NKA STAT
`A TXDO
`A TXDl
`A TXD2
`A TXD3
`A TXDV
`A TXER
`
`DIO
`M CHK 0
`M CHK 1
`M CHK 2
`M CHK 3
`M CHK 4
`M DATA 0
`M DATA 1
`
`M DATAJ
`M DATA 3
`M DATA 4
`M DATA 5
`M DATA 6
`M DATA 7
`M ADDR_0
`M ADDR 1
`
`M ADD'
`
`M_ADDR 3
`M_ADDR 4
`M ADD 5
`
`M ADDR_6
`M ADDR_7
`M ADDR 8
`
`M ADDR_9
`M ADD' 10
`M ADD'11
`M ADDR 12
`M ADD'
`13
`M ADDR 14
`M ADDR 15
`RAM CLK
`M CKE
`M CS L
`M RAS L
`M CAS L
`
`FIG. 13/3
`
`INTEL EX. 1258.015
`
`INTEL Ex. 1258.015
`
`
`
`
`

`

`US. Patent
`
`Feb. 24, 2009
`
`Sheet 12 of 72
`
`US 7,496,689 B2
`
`ILAG
`Sram LOAD LOAD
`Ctr-lCtr-lCtrl
`Add,lFIL-E ALU FLAG
`BASED
`
`CTX
`
`REGS
`
`CC's
`
`REG’s
`
`Data
`
`addr
`C
`
`din
`C
`
`384x32
`FILE
`
`BAD
`DINAAAFETCH LOAD STACK BAD
`TC“
`)(ChBDgeCTRL
`”RE CTRLCTRL
`III-I
`INSTR FETCH
`Sm] DEBUG
`pc
`STACK &Add:E
`
`REG
`
`Addr
`
`
`
`
`
`
`FILE
`
`ALU
`
`ALU
`
`ALU
`
`TEST
`
`FLAG
`
`CTX
`
`OPD's
`
`CC's
`
`0P
`
`SEL
`
`SEL
`
`QCH
`&
`QCMD
`
`LIT
`
`CTRL
`
`Sm DEBUG
`PC STACK ABA
`“ASE Add,
`
`
`
`
`MUMIMM
`.52
`
`scratchSlam
`AIIIABB
`
`
`
`_NSTRUCTfiI‘i)_PERANDMULTIPLEXERDECODER
`l—flifil‘ WI:
`
`
`‘
`
`
`
`
`MU
`
`II.
`ALU
`ALU
`DEST
`TEST
`OPD
`SEL
`
`OUT
`
`CC's
`
`RSLT
`
`FLAG QFLGs
`&
`QAddf
`
`SEL
`
`LIT
`
`PGM
`
`CTRL
`
`PC STACK
`
`CB
`
`I
`Sm DEBUG
`Addr
`“ASE Addr
`
`
`
`FILE
`
`CTX
`
`FIG. 14
`
`INTEL EX. 1258.016
`
`INTEL Ex. 1258.016
`
`

`

`US. Patent
`
`Feb. 24, 2009
`
`Sheet 13 0f 72
`
`US 7,496,689 B2
`
`INSTRUCTION-WORD FOR

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket