DocumentCode
2549901
Title
Distributing C# methods and threads over Ethernet-connected FPGAs using Kiwi
Author
Greaves, David ; Singh, Satnam
Author_Institution
Comput. Lab., Univ. of Cambridge, Cambridge, UK
fYear
2011
fDate
11-13 July 2011
Firstpage
1
Lastpage
9
Abstract
The Kiwi system achieves co-design by allowing nominated regions of C# programs to be targeted at FPGAs while the remainder executes on unmodified .NET and Mono virtual machines. Using C# attributes, certain methods are identified for separate compilation and collections of methods are mapped to multiple FPGAs or to workstations connected to a common Ethernet switch. Individual methods become RPC-callable entities for the top-level C# thread running on one workstation, while server threads may run continually on other workstations or FPGAs. We illustrate the concept using minimal modifications to an Adobe Photoshop plug-in where the processing for each colour channel is farmed over the Ethernet to one or three remote entities which may each be either an FPGA or a workstation.
Keywords
C language; field programmable gate arrays; local area networks; multi-threading; network operating systems; remote procedure calls; .NET; Adobe Photoshop plug-in; C# program; C# thread; Ethernet switch; Ethernet-connected FPGA; Kiwi system; RPC-callable entities; monovirtual machine; server thread; Field programmable gate arrays; Hardware; Instruction sets; Local area networks; Reliability; Servers; Workstations;
fLanguage
English
Publisher
ieee
Conference_Titel
Formal Methods and Models for Codesign (MEMOCODE), 2011 9th IEEE/ACM International Conference on
Conference_Location
Cambridge
Print_ISBN
978-1-4577-0117-7
Electronic_ISBN
978-1-4577-0118-4
Type
conf
DOI
10.1109/MEMCOD.2011.5970505
Filename
5970505
Link To Document