US Patent No: 5,412,782

Number of patents in Portfolio can not be more than 2000

Programmed I/O ethernet adapter with early interrupts for accelerating data transfer

Stats

ATTORNEY / AGENT: (SPONSORED)
 

Importance

Loading Importance Indicators... loading....

Abstract

In a Local Area Network (LAN) system, an ethernet adapter exchanges data with a host through programmed I/O (PIO) and FIFO buffers. The receive PIO employs a DMA ring buffer backup so incoming packets can be copied directly into host memory when the PIO FIFO buffer is full. The adapter may be programmed to generate early receive interrupts when only a portion of a packet has been received from the network, so as to decrease latency. The adapter may also be programmed to generate a second early interrupt so that the copying of a large packet to the host may overlap reception of the packet end. The adapter may also be programmed to begin packet transmission before the packet is completely transferred from the host to the adapter, which further reduces latency. The minimal latency of the adapter allows it to employ receive and transmit FIFO buffers which are small enough to be contained within RAM internal to an Application Specific Integrated Circuit (ASIC) containing the transceiver, ethernet controller, FIFO control circuitry and the host interface as well.

Loading the Abstract Image... loading....

First Claim

Related Publications

Loading Related Publications... loading....

Patent Owner(s)

Patent OwnerAddressTotal Patents
U.S. ETHERNET INNOVATIONS, LLCSANTA CLARA, CA12

International Classification(s)

  • [Classification Symbol]
  • [Patents Count]

Inventor(s)

Inventor Name Address # of filed Patents Total Citations
Connery, Glenn W Sunnyvale, CA 17 486
Hausman, Richard Soquel, CA 9 270
Reid, Richard S Mountain View, CA 10 351
Rivers, James P Saratoga, CA 22 404
Sherer, Paul W Sunnyvale, CA 3 209
Strohl, Niles E Tracy, CA 12 416
Zikmund, Cynthia Boulder Creek, CA 7 250

Cited Art

Patent Info (Count) # Cites Year
 
GLOBALFOUNDRIES INC. (1)
5,210,749 Configuration of SRAMS as logical FIFOS for transmit and receive of packet data 75 1990
 
HITACHI, LTD. (1)
4,754,399 Data transfer control system for controlling data transfer between a buffer memory and input/output devices 23 1984
 
INTERNATIONAL BUSINESS MACHINES CORPORATION (1)
4,860,193 System for efficiently transferring data between a high speed channel and a low speed I/O device 109 1986
 
MAXTOR CORPORATION (1)
5,210,829 Adjustable threshold for buffer management 65 1990
 
OG CORPORATION (1)
4,768,190 Packet switching network 80 1986
 
Storage Technology Corporation (1)
5,121,479 Early start mode data transfer apparatus 41 1990

Patent Citation Ranking

Forward Cites

Patent Info (Count) # Cites Year
 
ALACRITECH, INC. (55)
6,434,620 TCP/IP offload network interface device 258 1999
6,470,415 Queue system involving SRAM head, SRAM tail and DRAM body 106 1999
6,247,060 Passing a communication control block from host to a local device such that a message is processed on the device 222 1999
6,427,173 Intelligent network interfaced device and system for accelerated communication 178 1999
6,427,171 Protocol processing stack for use with intelligent network interface device 184 2000
6,807,581 Intelligent network storage interface system 174 2000
6,334,153 Passing a communication control block from host to a local device such that a message is processed on the device 164 2000
6,757,746 Obtaining a destination address so that a network interface device can write network data without headers directly into host memory 116 2001
6,687,758 Port aggregation for network connections that are offloaded to network interface devices 121 2001
7,076,568 Data communication apparatus for computer intelligent network interface card which transfers data between a network and a storage device according designated uniform datagram protocol socket 73 2001
7,042,898 Reducing delays associated with inserting a checksum into a network message 70 2001
6,658,480 Intelligent network interface system and method for accelerated protocol processing 107 2001
6,393,487 Passing a communication control block to a local device such that a message is processed on the device 141 2001
7,133,940 Network interface device employing a DMA command queue 50 2001
7,124,205 Network interface device that fast-path processes solicited session layer read commands 73 2001
7,167,926 TCP/IP offload network interface device 62 2001
6,965,941 Transmit fast-path processing on TCP/IP offload network interface device 87 2001
7,167,927 TCP/IP offload device with fast-path TCP ACK generating and transmitting mechanism 55 2002
6,591,302 Fast-path apparatus for receiving data corresponding to a TCP connection 164 2002
7,174,393 TCP/IP offload network interface device 59 2002
7,089,326 Fast-path processing for receiving data on TCP connection offload devices 64 2002
6,697,868 Protocol processing stack for use with intelligent network interface device 141 2002
6,938,092 TCP offload device that load balances and fails-over between aggregated ports having different MAC addresses 131 2002
7,284,070 TCP offload network interface device 45 2002
7,337,241 Fast-path apparatus for receiving data corresponding to a TCP connection 26 2002
7,237,036 Fast-path apparatus for receiving data corresponding a TCP connection 61 2002
7,191,241 Fast-path apparatus for receiving data corresponding to a TCP connection 58 2002
8,019,901 Intelligent network storage interface system 0 2002
7,185,266 Network interface device for error detection using partial CRCS of variable length message portions 98 2003
6,751,665 Providing window updates from a computer to a network interface device 98 2003
7,543,087 Freeing transmit memory on a network interface device prior to receiving an acknowledgement that transmit data has been received by a remote device 28 2003
7,496,689 TCP/IP offload device 12 2003
7,472,156 Transferring control of a TCP connection between devices 14 2003
8,447,803 Method and apparatus for distributing network traffic processing on a multiprocessor computer 0 2003
8,131,880 Intelligent network interface device and system for accelerated communication 1 2003
6,941,386 Protocol processing stack for use with intelligent network interface device 98 2003
7,502,869 Intelligent network interface system and method for accelerated protocol processing 7 2003
6,996,070 TCP/IP offload device with reduced sequential processing 95 2003
7,461,160 Obtaining a destination address so that a network interface device can write network data without headers directly into host memory 7 2004
7,584,260 Method to synchronize and upload an offloaded network stack connection with a network stack 7 2004
7,844,743 Protocol stack that offloads a TCP connection from a host computer to a network interface device 0 2004
7,809,847 Network interface device that can transfer control of a TCP connection to a host CPU 0 2005
7,627,001 Protocol stack that offloads a TCP connection from a host computer to a network interface device 8 2005
7,627,684 Network interface device that can offload data transfer processing for a TCP connection from a host CPU 8 2005
7,620,726 Zero copy method for receiving data by a network interface 7 2005
7,640,364 Port aggregation for network connections that are offloaded to network interface devices 8 2005
8,248,939 Transferring control of TCP connections between hierarchy of processing mechanisms 0 2005
7,738,500 TCP timestamp synchronization for network connections that are offloaded to network interface devices 6 2005
7,664,883 Network interface device that fast-path processes solicited session layer read commands 16 2006
7,694,024 TCP/IP offload device with fast-path TCP ACK generating and transmitting mechanism 8 2007
7,664,868 TCP/IP offload network interface device 7 2007
7,853,723 TCP/IP offload network interface device 1 2007
7,673,072 Fast-path apparatus for transmitting data corresponding to a TCP connection 10 2007
7,945,699 Obtaining a destination address so that a network interface device can write network data without headers directly into host memory 0 2008
8,341,286 TCP offload send optimization 0 2009
 
COASES INVESTMENTS BROS. L.L.C. (19)
5,842,033 Padding apparatus for passing an arbitrary number of bits through a buffer in a pipeline system 12 1995
5,768,561 Tokens-based adaptive video processing arrangement 45 1995
6,435,737 Data pipeline system and data encoding method 22 1995
6,263,422 Pipeline processing machine with interactive stages operable in response to tokens and system and methods relating thereto 20 1995
6,035,126 Data pipeline system and data encoding method 8 1995
5,878,273 System for microprogrammable state machine in video parser disabling portion of processing stages responsive to sequence.sub.-- end token generating by token generator responsive to received data 6 1995
5,907,692 Data pipeline system and data encoding method 11 1997
5,956,519 Picture end token in a system comprising a plurality of pipeline stages 61 1997
6,038,380 Data pipeline system and data encoding method 12 1997
6,079,009 Coding standard token in a system compromising a plurality of pipeline stages 17 1997
5,809,270 Inverse quantizer 11 1997
5,881,301 Inverse modeller 10 1997
6,067,417 Picture start token 11 1997
5,978,592 Video decompression and decoding system utilizing control and data tokens 8 1997
6,018,776 System for microprogrammable state machine in video parser clearing and resetting processing stages responsive to flush token generating by token generator responsive to received data 10 1997
6,112,017 Pipeline processing machine having a plurality of reconfigurable processing stages interconnected by a two-wire interface bus 18 1997
6,122,726 Data pipeline system and data encoding method 5 1997
6,330,665 Video parser 15 1997
7,711,938 Multistandard video decoder and decompression system for processing encoded bit streams including start code detection and methods relating thereto 13 2001
 
HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. (8)
5,898,889 Qualified burst cache for transfer of data between disparate clock domains 8 1996
6,016,513 Method of preventing packet loss during transfers of data packets between a network interface card and an operating system of a computer 56 1998
6,574,694 Interrupt optimization using time between succeeding peripheral component events 21 1999
6,529,986 Interrupt optimization using storage time for peripheral component events 7 1999
6,351,785 Interrupt optimization using varying quantity threshold 12 1999
6,192,440 System and method for dynamically selecting interrupt storage time threshold parameters 13 1999
6,189,066 System and method for dynamically selecting interrupt time interval threshold parameters 10 1999
6,189,067 System and method for dynamically selecting interrupt quantity threshold parameters 9 1999
 
ENTERASYS NETWORKS, INC. (6)
5,995,995 Apparatus and method for scheduling virtual circuit data for DMA from a host memory to a transmit buffer memory 5 1996
5,970,229 Apparatus and method for performing look-ahead scheduling of DMA transfers of data from a host memory to a transmit buffer memory 20 1996
5,941,952 Apparatus and method for transferring data from a transmit buffer memory at a particular rate 18 1996
5,922,046 Method and apparatus for avoiding control reads in a network node 4 1996
6,067,563 Method and apparatus for avoiding control reads in a network node 3 1999
6,466,997 Method and apparatus for performing TX raw cell status report frequency and interrupt frequency mitigation in a network node 13 1999
 
INTERNATIONAL BUSINESS MACHINES CORPORATION (6)
5,752,078 System for minimizing latency data reception and handling data packet error if detected while transferring data packet from adapter memory to host memory 88 1995
6,072,781 Multi-tasking adapter for parallel network applications 108 1996
6,073,181 Multi-buffer error detection for an open data-link interface LAN adapter 9 1997
6,938,040 Pattern matching in communications network where first memory stores set of patterns, and second memory stores mask data identifying patterns in the first memory 0 1998
6,408,341 Multi-tasking adapter for parallel network applications 36 2000
7,707,344 Interrupt mitigation on multiple network adapters 2 2008
 
TALON RESEARCH, LLC (5)
5,835,792 Token-based adaptive video processing arrangement 35 1995
5,828,907 Token-based adaptive video processing arrangement 28 1995
5,768,629 Token-based adaptive video processing arrangement 71 1995
5,995,727 Video decompression 7 1997
6,799,246 Memory interface for reading/writing data from/to a memory 145 1997
 
CIRRUS LOGIC, INC. (4)
6,351,780 Network controller using held data frame monitor and decision logic for automatically engaging DMA data transfer when buffer overflow is anticipated 14 1996
5,630,171 Translating from a PIO protocol to DMA protocol with a peripheral interface circuit 14 1996
5,822,618 System for automatically switching to DMA data transfer mode to load and unload data frames when there are excessive data frames in memory buffer 28 1997
5,878,217 Network controller for switching into DMA mode based on anticipated memory overflow and out of DMA mode when the host processor is available 18 1997
 
INTEL CORPORATION (4)
5,903,774 External network network interface device without interim storage connected to high-speed serial bus with low latency and high transmission rate 7 1996
6,430,628 Method and apparatus for reducing direct memory access transfers using smart coalescing 24 1998
6,765,878 Selective use of transmit complete interrupt delay on small sized packets in an ethernet controller 21 2000
7,299,350 Internet protocol security decryption with secondary use speculative interrupts 2 2002
 
KABUSHIKI KAISHA TOSHIBA (3)
5,999,980 Apparatus and method for setting a congestion indicate bit in an backwards RM cell on an ATM network 9 1996
5,966,546 Method and apparatus for performing TX raw cell status report frequency and interrupt frequency mitigation in a network node 9 1996
8,327,252 Data receiving apparatus, data receiving method, and computer-readable recording medium 0 2009
 
SILICON GRAPHICS INTERNATIONAL, CORP. (3)
5,581,705 Messaging facility with hardware tail pointer and software implemented head pointer message queue for distributed memory massively parallel processing system 95 1993
5,864,738 Massively parallel processing system using two data paths: one connecting router circuit to the interconnect network and the other connecting router circuit to I/O controller 91 1996
5,841,973 Messaging in distributed memory multiprocessing system having shell circuitry for atomic control of message storage queue's tail pointer structure in local memory 116 1996
 
U.S. ETHERNET INNOVATIONS, LLC (3)
5,872,920 Programmed I/O ethernet adapter with early interrupts for accelerating data transfer 45 1995
7,899,937 Programmed I/O ethernet adapter with early interrupts for accelerating data transfer 0 2000
8,239,580 Programmed I/O ethernet adapter with early interrupts for accelerating data transfer 0 2010
 
VITESSES SEMICONDUCTOR CORPORATION (3)
6,108,713 Media access control architectures and network management systems 73 1997
6,085,248 Media access control transmitter and parallel network management system 46 1997
6,076,115 Media access control receiver and network management system 117 1997
 
ALACRITECH CORPORATION (2)
6,226,680 Intelligent network interface system method for protocol processing 290 1998
6,389,479 Intelligent network interface device and system for accelerated communication 188 1998
 
CREATIVE TECHNOLOGY LTD. (2)
6,167,465 System for managing multiple DMA connections between a peripheral device and a memory and performing real-time operations on data carried by a selected DMA connection 142 1998
6,434,645 Methods and apparatuses for managing multiple direct memory access channels 7 2000
 
GLOBALFOUNDRIES INC. (2)
6,304,911 Information packet reception indicator for reducing the utilization of a host system processor unit 14 1997
6,167,480 Information packet reception indicator for reducing the utilization of a host system processor unit 9 1998
 
NATIONAL SEMICONDUCTOR CORPORATION (2)
5,754,764 Combination of input output circuitry and local area network systems 63 1994
5,548,796 Method of automatic retransmission of frames in a local area network 10 1994
 
6 BELLMONT LIMITED LIABILITY COMPANY (1)
6,393,489 Media access control architectures and network management systems 33 2000
 
AG ASSOCIATES (1)
6,216,174 System and method for fast barrier synchronization 30 1998
 
BILLINGS, ROGER E. (1)
6,115,747 Computer network interface that merges remote data received from other computers with local data before transmitting the merged data to a network 24 1996
 
CANON KABUSHIKI KAISHA (1)
6,151,642 System for DMA data reception capable of confirming the content of a received data even if the received data is less than a preset length 3 1998
 
DISCOVISION ASSOCIATES (1)
5,861,894 Buffer manager 6 1995
 
FUJITSU LIMITED (1)
7,529,261 Data communications method selection by data communication system 0 2005
 
HEWLETT-PACKARD COMPANY (1)
5,829,042 Prefetch operation for network peripheral device having shared memory 7 1996
 
HITACHI, LTD. (1)
6,038,607 Method and apparatus in a computer system having plural computers which cause the initiation of functions in each other using information contained in packets transferred between the computers 25 1995
 
IXYS CH GMBH (1)
5,602,537 Technique for eliminating data transmit memory underruns 6 1996
 
MAGNACHIP SEMICONDUCTOR, LTD. (1)
6,401,146 Device and method for controlling PCI ethernet 1 1998
 
MITSUBISHI DENKI KABUSHIKI KAISHA (1)
5,572,676 Network I/O device having fifo for synchronous and asynchronous operation 7 1994
 
MOTOROLA MOBILITY LLC (1)
5,935,220 Apparatus and method for high speed data and command transfer over an interface 31 1996
 
RPX CORPORATION (1)
5,913,028 Client/server data traffic delivery system and method 124 1995
 
STMICROELECTRONICS PVT. LTD. (1)
6,665,737 Microprocessor chip includes an addressable external communication port which connects to an external computer via an adapter 16 1999
 
SUN MICROSYSTEMS, INC. (1)
7,937,499 Methods and apparatus for dynamically switching between polling and interrupt mode for a ring buffer of a network interface card 0 2004
 
TEXAS INSTRUMENTS INCORPORATED (1)
5,832,216 Network adapter having single ported memory which is accessible by network and peripheral bus on a time division multiplexed (TDM) basis 17 1997
 
WINBOND ELECTRONICS CORP. (1)
5,696,991 Method and device for parallel accessing data with optimal reading start 6 1994