Spinach
- 11 June 2004
- proceedings article
- Published by Association for Computing Machinery (ACM)
- Vol. 39 (7) , 20-29
- https://doi.org/10.1145/997163.997167
Abstract
This paper presents Spinach, a new simulator toolset specifically designed to target programmable network interface architectures. Spinach models both system components that are common to all programmable environments (e.g., ALUs, control and data paths, registers, instruction processing) and components that are specific to the embedded systems and network interface environments (e.g., software-controlled scratchpad memory, hardware assists for DMA and medium access control).Spinach is built on the Liberty Simulation Environment (LSE) and exploits LSE's modularity to support easy reconfiguration of programmable network interface cards (NICs) and embedded systems, enabling wide design space exploration with little or no code variation. For example, the same underlying C code is used whether supporting a uniprocessor Gigabit network interface, a multiprocessor Gigabit interface, or a multiprocessor 10 Gigabit interface with a highly heterogeneous memory system. The only difference is in a small number of lines of high-level scripting code used to configure the various modules into a simulation model.Spinach is validated by modeling the Tigon-2 programmable Ethernet controller by Alteon Websystems running actual Ethernet processing firmware and by comparing the reported results to actual hardware benchmarks. Spinach is then used to obtain new insights about the performance of Gigabit and 10 Gigabit network interfaces.Keywords
This publication has 14 references indexed in Scilit:
- A TCP offload accelerator for 10 Gb/s ethernet in 90-nm CMOSIEEE Journal of Solid-State Circuits, 2003
- Exploiting task-level concurrency in a programmable network interfacePublished by Association for Computing Machinery (ACM) ,2003
- EMPPublished by Association for Computing Machinery (ACM) ,2001
- Building a robust software-based router using network processorsPublished by Association for Computing Machinery (ACM) ,2001
- CHIMAERAPublished by Association for Computing Machinery (ACM) ,2000
- Cycle-accurate simulation of energy consumption in embedded systemsPublished by Association for Computing Machinery (ACM) ,1999
- A framework for estimation and minimizing energy dissipation of embedded HW/SW systemsPublished by Association for Computing Machinery (ACM) ,1998
- Coherent network interfaces for fine-grain communicationPublished by Association for Computing Machinery (ACM) ,1996
- Software support for outboard buffering and checksummingPublished by Association for Computing Machinery (ACM) ,1995
- Integrating message-passing and shared-memoryPublished by Association for Computing Machinery (ACM) ,1993