PushPush: Seamless integration of hardware and software objects via function calls over AXI

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Authors

  • Shane T. Fleming
  • Ivan Beretta
  • David B. Thomas
  • George A. Constantinides
  • Dan Ghica

Colleges, School and Institutes

External organisations

  • Imperial College London

Abstract

FPGA systems are moving towards a system-on-chip model, both at the architectural level and in the development tools. Developers are able to design and implement IP using a mixture of HLS, RTL, and software, then integrate them with third-party IP cores and hardened CPUs using one or more shared memory buses. This allows functionality to be easily connected together at the bus level, but accessing IP core functionality requires designers to support each component's protocol and co-ordinate hardware from a CPU. This paper presents a protocol called PushPush, which allows HLS, RTL, and software components to expose functionality as strongly typed functions, and allows any component to access functions exposed by any other component in the system. The protocol is designed for maximum efficiency in memory buses such as AXI and Avalon, reducing each function call to two burst writes delivering both data and control, minimising bus traffic and eliminating the need for global polling or interrupt delivery. We demonstrate this approach in a Zynq environment, using components written in C++ (ARM/Linux), C (Microblaze), Vivado HLS (Logic), and Verity (Logic). We show that any component can call functions exposed by any other component, without knowing where or how that function is located. Performance is at least 1 million function calls/sec between any pair of components, and rises to 4 million function calls/sec between pairs of Vivado HLS components.

Details

Original languageEnglish
Title of host publication25th International Conference on Field Programmable Logic and Applications, FPL 2015
Publication statusPublished - 7 Oct 2015
Event25th International Conference on Field Programmable Logic and Applications, FPL 2015 - London, United Kingdom
Duration: 2 Sep 20154 Sep 2015

Publication series

Name25th International Conference on Field Programmable Logic and Applications, FPL 2015

Conference

Conference25th International Conference on Field Programmable Logic and Applications, FPL 2015
CountryUnited Kingdom
CityLondon
Period2/09/154/09/15