Repository logo
 

Kiwi Scientific Acceleration at Large: Incremental Compilation and Multi FPGA HLS Demo

Accepted version
Peer-reviewed

Loading...
Thumbnail Image

Change log

Abstract

The Kiwi project revolves around a compiler that converts C# .NET bytecode into Verilog RTL and/or SystemC. An alpha version of the Kiwi toolchain is now open source and a user community is growing. We will demonstrate an incremental approach to large system assembly of HLS and blackbox components, based on an extended IP-XACT intermediate representation. We show how to address multi- FPGA designs with object passing between components, automatic configuration of shared memory maps and automatic assembly of debugging infrastructure. We will also demonstrate the use of the unsafe subset of the C# language for type casting between byte arrays and structures which is a common coding style for network protocol implementations. Unsafe programming is also needed for user- coded memory managers that need to essentially perform address arithmetic, but such procedures can commonly defeat the memory pool disambiguation algorithms in static analysis.

Description

Journal Title

2017 27th International Conference on Field Programmable Logic and Applications (FPL)

Conference Name

FPL 2017 - The International Conference on Field-Programmable Logic and Applications

Journal ISSN

Volume Title

Publisher

FPL

Rights and licensing

Except where otherwised noted, this item's license is described as http://www.rioxx.net/licenses/all-rights-reserved