This paper is a shorter version of the information within my thesis.
Much of the current research in computer networks focuses on providing increasing levels of functionality at very high bandwidths. Traditional implementations using application specific integrated circuits (ASICs) can process data very quickly, but do not allow modification when protocols or algorithms change. Software-based implementations provide the ability to change functionality very easily, but often can not support high bandwidths. The third generation Cal Poly Intelligent Network Interface Card (CiNIC), presented in this paper, combines the speed of hardware implementation with the flexibility of a software-based system by using field programmable gate arrays (FPGAs) and a hardcore processor to perform network protocol processing. Utilizing the CiNIC within a network device allows developers and researchers to implement additional functionality in various ways. The CiNIC Platform has been developed for flexibility and may be used for a broad range of research and development projects including hardware/software co-design, embedded systems, and distributed systems.Download Paper PDF Format ~59kB