HOME       UP       PREV       NEXT (Classical High-Level Synthesis Example: Kiwi compilation of Sieve of Eratosthenes.)  

Kiwi : Compiling Concurrent Programs to Hardware

Current project led by David Greaves and Satnam Singh: »Web Site

» Times Table Very Simple Demo

Kiwi is developing a methodology for hardware design using the parallel programming constructs of the C\# language. Specifically, Kiwi consists of a run-time library for native simulation of hardware descriptions within C\# and a compiler that generates RTL from stylised .net bytecode.

The designer uses more concurrency than `natural' for software. This is mapped to concurrent hardware by the Kiwi tools.

Each thread is subject to classical HLS (that generates a static schedulle for that thread) but then threads interact dynamically with arbiters and queues.

22: (C) 2012-17, DJ Greaves, University of Cambridge, Computer Laboratory.