{"id":"https://openalex.org/W1626233505","doi":"https://doi.org/10.1109/fpl.2015.7294024","title":"PushPush: Seamless integration of hardware and software objects via function calls over AXI","display_name":"PushPush: Seamless integration of hardware and software objects via function calls over AXI","publication_year":2015,"publication_date":"2015-09-01","ids":{"openalex":"https://openalex.org/W1626233505","doi":"https://doi.org/10.1109/fpl.2015.7294024","mag":"1626233505"},"language":"en","primary_location":{"id":"doi:10.1109/fpl.2015.7294024","is_oa":false,"landing_page_url":"https://doi.org/10.1109/fpl.2015.7294024","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2015 25th International Conference on Field Programmable Logic and Applications (FPL)","raw_type":"proceedings-article"},"type":"conference-paper","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5030827011","display_name":"Shane Fleming","orcid":"https://orcid.org/0000-0002-3224-278X"},"institutions":[{"id":"https://openalex.org/I47508984","display_name":"Imperial College London","ror":"https://ror.org/041kmwe10","country_code":"GB","type":"education","lineage":["https://openalex.org/I47508984"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Shane T. Fleming","raw_affiliation_strings":["Dept. of Electrical and Electronic Engineering, Imperial College, London, UK","Department of Electrical and Electronic Engineering, Imperial College, London, Uk"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Dept. of Electrical and Electronic Engineering, Imperial College, London, UK","institution_ids":["https://openalex.org/I47508984"]},{"raw_affiliation_string":"Department of Electrical and Electronic Engineering, Imperial College, London, Uk","institution_ids":["https://openalex.org/I47508984"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5052658411","display_name":"Ivan Beretta","orcid":null},"institutions":[{"id":"https://openalex.org/I47508984","display_name":"Imperial College London","ror":"https://ror.org/041kmwe10","country_code":"GB","type":"education","lineage":["https://openalex.org/I47508984"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Ivan Beretta","raw_affiliation_strings":["Dept. of Electrical and Electronic Engineering, Imperial College, London, UK","Department of Electrical and Electronic Engineering, Imperial College, London, Uk"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Dept. of Electrical and Electronic Engineering, Imperial College, London, UK","institution_ids":["https://openalex.org/I47508984"]},{"raw_affiliation_string":"Department of Electrical and Electronic Engineering, Imperial College, London, Uk","institution_ids":["https://openalex.org/I47508984"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5081452934","display_name":"David B. Thomas","orcid":"https://orcid.org/0000-0002-9671-0917"},"institutions":[{"id":"https://openalex.org/I47508984","display_name":"Imperial College London","ror":"https://ror.org/041kmwe10","country_code":"GB","type":"education","lineage":["https://openalex.org/I47508984"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"David B. Thomas","raw_affiliation_strings":["Dept. of Electrical and Electronic Engineering, Imperial College, London, UK","Department of Electrical and Electronic Engineering, Imperial College, London, Uk"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Dept. of Electrical and Electronic Engineering, Imperial College, London, UK","institution_ids":["https://openalex.org/I47508984"]},{"raw_affiliation_string":"Department of Electrical and Electronic Engineering, Imperial College, London, Uk","institution_ids":["https://openalex.org/I47508984"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5029829952","display_name":"George A. Constantinides","orcid":"https://orcid.org/0000-0002-0201-310X"},"institutions":[{"id":"https://openalex.org/I47508984","display_name":"Imperial College London","ror":"https://ror.org/041kmwe10","country_code":"GB","type":"education","lineage":["https://openalex.org/I47508984"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"George A. Constantinides","raw_affiliation_strings":["Dept. of Electrical and Electronic Engineering, Imperial College, London, UK","Department of Electrical and Electronic Engineering, Imperial College, London, Uk"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Dept. of Electrical and Electronic Engineering, Imperial College, London, UK","institution_ids":["https://openalex.org/I47508984"]},{"raw_affiliation_string":"Department of Electrical and Electronic Engineering, Imperial College, London, Uk","institution_ids":["https://openalex.org/I47508984"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5072298249","display_name":"Dan R. Ghica","orcid":"https://orcid.org/0000-0002-4003-8893"},"institutions":[{"id":"https://openalex.org/I79619799","display_name":"University of Birmingham","ror":"https://ror.org/03angcq70","country_code":"GB","type":"education","lineage":["https://openalex.org/I79619799"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Dan R. Ghica","raw_affiliation_strings":["School of Computer Science, University of Birmingham, UK","School of Computer Science University of Birmingham, UK"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"School of Computer Science, University of Birmingham, UK","institution_ids":["https://openalex.org/I79619799"]},{"raw_affiliation_string":"School of Computer Science University of Birmingham, UK","institution_ids":["https://openalex.org/I79619799"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":4,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"8"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9993000030517578,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9993000030517578,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10904","display_name":"Embedded Systems Design Techniques","score":0.9990000128746033,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":0.9988999962806702,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7525014877319336},{"id":"https://openalex.org/keywords/embedded-system","display_name":"Embedded system","score":0.6972905397415161},{"id":"https://openalex.org/keywords/microblaze","display_name":"MicroBlaze","score":0.6958832144737244},{"id":"https://openalex.org/keywords/component","display_name":"Component (thermodynamics)","score":0.5973372459411621},{"id":"https://openalex.org/keywords/field-programmable-gate-array","display_name":"Field-programmable gate array","score":0.5289238691329956},{"id":"https://openalex.org/keywords/polling","display_name":"Polling","score":0.502126932144165},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.4958520829677582},{"id":"https://openalex.org/keywords/system-on-a-chip","display_name":"System on a chip","score":0.466502845287323},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.4451019763946533},{"id":"https://openalex.org/keywords/function","display_name":"Function (biology)","score":0.4400627017021179},{"id":"https://openalex.org/keywords/protocol","display_name":"Protocol (science)","score":0.434554785490036},{"id":"https://openalex.org/keywords/component-based-software-engineering","display_name":"Component-based software engineering","score":0.41789865493774414},{"id":"https://openalex.org/keywords/computer-hardware","display_name":"Computer hardware","score":0.3480900526046753},{"id":"https://openalex.org/keywords/software-development","display_name":"Software development","score":0.28649452328681946}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7525014877319336},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.6972905397415161},{"id":"https://openalex.org/C2777575374","wikidata":"https://www.wikidata.org/wiki/Q1644704","display_name":"MicroBlaze","level":3,"score":0.6958832144737244},{"id":"https://openalex.org/C168167062","wikidata":"https://www.wikidata.org/wiki/Q1117970","display_name":"Component (thermodynamics)","level":2,"score":0.5973372459411621},{"id":"https://openalex.org/C42935608","wikidata":"https://www.wikidata.org/wiki/Q190411","display_name":"Field-programmable gate array","level":2,"score":0.5289238691329956},{"id":"https://openalex.org/C204854418","wikidata":"https://www.wikidata.org/wiki/Q1362921","display_name":"Polling","level":2,"score":0.502126932144165},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.4958520829677582},{"id":"https://openalex.org/C118021083","wikidata":"https://www.wikidata.org/wiki/Q610398","display_name":"System on a chip","level":2,"score":0.466502845287323},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.4451019763946533},{"id":"https://openalex.org/C14036430","wikidata":"https://www.wikidata.org/wiki/Q3736076","display_name":"Function (biology)","level":2,"score":0.4400627017021179},{"id":"https://openalex.org/C2780385302","wikidata":"https://www.wikidata.org/wiki/Q367158","display_name":"Protocol (science)","level":3,"score":0.434554785490036},{"id":"https://openalex.org/C174683762","wikidata":"https://www.wikidata.org/wiki/Q609588","display_name":"Component-based software engineering","level":4,"score":0.41789865493774414},{"id":"https://openalex.org/C9390403","wikidata":"https://www.wikidata.org/wiki/Q3966","display_name":"Computer hardware","level":1,"score":0.3480900526046753},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.28649452328681946},{"id":"https://openalex.org/C97355855","wikidata":"https://www.wikidata.org/wiki/Q11473","display_name":"Thermodynamics","level":1,"score":0.0},{"id":"https://openalex.org/C204787440","wikidata":"https://www.wikidata.org/wiki/Q188504","display_name":"Alternative medicine","level":2,"score":0.0},{"id":"https://openalex.org/C121332964","wikidata":"https://www.wikidata.org/wiki/Q413","display_name":"Physics","level":0,"score":0.0},{"id":"https://openalex.org/C78458016","wikidata":"https://www.wikidata.org/wiki/Q840400","display_name":"Evolutionary biology","level":1,"score":0.0},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C71924100","wikidata":"https://www.wikidata.org/wiki/Q11190","display_name":"Medicine","level":0,"score":0.0},{"id":"https://openalex.org/C142724271","wikidata":"https://www.wikidata.org/wiki/Q7208","display_name":"Pathology","level":1,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1109/fpl.2015.7294024","is_oa":false,"landing_page_url":"https://doi.org/10.1109/fpl.2015.7294024","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2015 25th International Conference on Field Programmable Logic and Applications (FPL)","raw_type":"proceedings-article"},{"id":"pmh:oai:pure.atira.dk:openaire_cris_publications/716b13ba-5d1e-4fdd-a1a1-ec079a1d7921","is_oa":false,"landing_page_url":"https://research.birmingham.ac.uk/en/publications/716b13ba-5d1e-4fdd-a1a1-ec079a1d7921","pdf_url":null,"source":{"id":"https://openalex.org/S4306402634","display_name":"University of Birmingham Research Portal (University of Birmingham)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I79619799","host_organization_name":"University of Birmingham","host_organization_lineage":["https://openalex.org/I79619799"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Fleming, S T, Beretta, I, Thomas, D B, Constantinides, G A & Ghica, D R 2015, PushPush : Seamless integration of hardware and software objects via function calls over AXI. in 25th International Conference on Field Programmable Logic and Applications, FPL 2015., 7294024, 25th International Conference on Field Programmable Logic and Applications, FPL 2015, Institute of Electrical and Electronics Engineers (IEEE), 25th International Conference on Field Programmable Logic and Applications, FPL 2015, London, United Kingdom, 2/09/15. https://doi.org/10.1109/FPL.2015.7294024","raw_type":"contributionToPeriodical"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G1796185948","display_name":null,"funder_award_id":"EP/K015214/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"},{"id":"https://openalex.org/G5299827457","display_name":null,"funder_award_id":"EP/K015168/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"}],"funders":[{"id":"https://openalex.org/F4320334627","display_name":"Engineering and Physical Sciences Research Council","ror":"https://ror.org/0439y7842"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":13,"referenced_works":["https://openalex.org/W245282111","https://openalex.org/W1970032753","https://openalex.org/W1980328920","https://openalex.org/W1992975402","https://openalex.org/W2022128349","https://openalex.org/W2025298117","https://openalex.org/W2046964635","https://openalex.org/W2066914818","https://openalex.org/W2088402653","https://openalex.org/W2121108713","https://openalex.org/W2125703639","https://openalex.org/W2137510026","https://openalex.org/W4241502429"],"related_works":["https://openalex.org/W2371772824","https://openalex.org/W2350519679","https://openalex.org/W4393179257","https://openalex.org/W4205624458","https://openalex.org/W2987499578","https://openalex.org/W2376312311","https://openalex.org/W2354823813","https://openalex.org/W2976906885","https://openalex.org/W2146938890","https://openalex.org/W1975283619"],"abstract_inverted_index":{"FPGA":[0],"systems":[1],"are":[2,19],"moving":[3],"towards":[4],"a":[5,27,79,84,163],"system-on-chip":[6],"model,":[7],"both":[8,141],"at":[9,59,204],"the":[10,15,60,115,150],"architectural":[11],"level":[12],"and":[13,23,32,41,75,92,102,130,143,148,177,215],"in":[14,114,124,162,169],"development":[16],"tools.":[17],"Developers":[18],"able":[20],"to":[21,54,70,95,106,136,217],"design":[22],"implement":[24],"IP":[25,39,65],"using":[26,44,166],"mixture":[28],"of":[29,213,224],"HLS,":[30,90],"RTL,":[31,91],"software,":[33],"then":[34],"integrate":[35],"them":[36],"with":[37],"third-party":[38],"cores":[40],"hardened":[42],"CPUs":[43],"one":[45],"or":[46,155,196],"more":[47],"shared":[48],"memory":[49,125],"buses.":[50],"This":[51,81],"allows":[52,89,103],"functionality":[53,67,97],"be":[55],"easily":[56],"connected":[57],"together":[58],"bus":[61,146],"level,":[62],"but":[63],"accessing":[64],"core":[66],"requires":[68],"designers":[69],"support":[71],"each":[72,133],"component's":[73],"protocol":[74,85,118],"co-ordinate":[76],"hardware":[77],"from":[78],"CPU.":[80],"paper":[82],"presents":[83],"called":[86],"PushPush,":[87],"which":[88],"software":[93],"components":[94,167],"expose":[96],"as":[98,128],"strongly":[99],"typed":[100],"functions,":[101],"any":[104,111,183,190,211],"component":[105,113,184],"access":[107],"functions":[108,187],"exposed":[109,188],"by":[110,189],"other":[112,191],"system.":[116],"The":[117],"is":[119,200,203],"designed":[120],"for":[121,152],"maximum":[122],"efficiency":[123],"buses":[126],"such":[127],"AXI":[129],"Avalon,":[131],"reducing":[132],"function":[134,199,208,220],"call":[135,186],"two":[137],"burst":[138],"writes":[139],"delivering":[140],"data":[142],"control,":[144],"minimising":[145],"traffic":[147],"eliminating":[149],"need":[151],"global":[153],"polling":[154],"interrupt":[156],"delivery.":[157],"We":[158,180],"demonstrate":[159],"this":[160],"approach":[161],"Zynq":[164],"environment,":[165],"written":[168],"C++":[170],"(ARM/Linux),":[171],"C":[172],"(Microblaze),":[173],"Vivado":[174,225],"HLS":[175,226],"(Logic),":[176],"Verity":[178],"(Logic).":[179],"show":[181],"that":[182,198],"can":[185],"component,":[192],"without":[193],"knowing":[194],"where":[195],"how":[197],"located.":[201],"Performance":[202],"least":[205],"1":[206],"million":[207,219],"calls/sec":[209,221],"between":[210,222],"pair":[212],"components,":[214],"rises":[216],"4":[218],"pairs":[223],"components.":[227]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2023,"cited_by_count":1},{"year":2017,"cited_by_count":1},{"year":2016,"cited_by_count":1}],"updated_date":"2026-07-14T23:27:15.235271","created_date":"2025-10-10T00:00:00"}
