Browse > Article

Host Interface Design for TCP/IP Hardware Accelerator  

Jung, Yeo-Jin (이화여자대학교 SoC Design Lab.)
Lim, Hye-Sook (이화여자대학교 SoC Design Lab.)
Abstract
TCP/IP protocols have been implemented in software program running on CPU in end systems. As the increased demand of fast protocol processing, it is required to implement the protocols in hardware, and Host Interface is responsible for communication between external CPU and the hardware blocks of TCP/IP implementation. The Host Interface follows AMBA AHB specification for the communication with external world. For control flow, the Host Interface behaves as a slave of AMBA AHB. Using internal Command/status Registers, the Host Interface receives commands from CPU and transfers hardware status and header information to CPU. On the other hand, the Host Interface behaves as a master for data flow. Data flow has two directions, Receive Flow and Transmit Flow. In Receive Flow, using internal RxFIFO, the Host Interface reads data from UDP FIFO or TCP buffer and transfers data to external RAM for CPU to read. For Transmit Flow, the Host Interface reads data from external RAM and transfers data to UDP buffer or TCP buffer through internal TxFIFO. TCP/IP hardware blocks generate packets using the data and transmit. Buffer Descriptor is one of the Command/Status Registers, and the information stored in Buffer Descriptor is used for external RAM access. Several testcases are designed to verify TCP/IP functions. The Host Interface is synthesized using the 0.18 micron technology, and it results in 173 K gates including the Command/status Registers and internal FIFOs.
Keywords
TCP/IP Hardware Accelerator;
Citations & Related Records
연도 인용수 순위
  • Reference
1 Wiznet, http://wiznet.co.kr
2 진교홍, 이정태, '고속통신을 위한 TCP/IP 프로토콜의 하드웨어 설계 및 구현', 한국정보과학학회지, Vol. 12, No.1, pp135-153, Feb. 1998
3 Ethernet Controller Data Sheet Version 1.0
4 James F. Kurose, Keith W. Ross 'Computer Networking: A Top-Down Approach Fraturing the Internet', Addison Wesley, 2002
5 'Introduction to TCP/IP Offload Engine (TOE)', http://www.10gea.org