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

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

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

2 Citations (Scopus)

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.

Original languageEnglish
Title of host publication25th International Conference on Field Programmable Logic and Applications, FPL 2015
PublisherInstitute of Electrical and Electronics Engineers (IEEE)
ISBN (Electronic)9780993428005
DOIs
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
Country/TerritoryUnited Kingdom
CityLondon
Period2/09/154/09/15

ASJC Scopus subject areas

  • Hardware and Architecture
  • Signal Processing
  • Software
  • Computer Science Applications

Fingerprint

Dive into the research topics of 'PushPush: Seamless integration of hardware and software objects via function calls over AXI'. Together they form a unique fingerprint.

Cite this