{"id":"https://openalex.org/W3006884129","doi":"https://doi.org/10.1145/3373087.3375324","title":"Programming Abstractions for Configurable Hardware","display_name":"Programming Abstractions for Configurable Hardware","publication_year":2020,"publication_date":"2020-02-23","ids":{"openalex":"https://openalex.org/W3006884129","doi":"https://doi.org/10.1145/3373087.3375324","mag":"3006884129"},"language":"en","primary_location":{"id":"doi:10.1145/3373087.3375324","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3373087.3375324","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2020 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays","raw_type":"proceedings-article"},"type":"article","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/A5075001760","display_name":"Samuel Dewan","orcid":null},"institutions":[{"id":"https://openalex.org/I67031392","display_name":"Carleton University","ror":"https://ror.org/02qtvee93","country_code":"CA","type":"education","lineage":["https://openalex.org/I67031392"]}],"countries":["CA"],"is_corresponding":true,"raw_author_name":"Samuel Dewan","raw_affiliation_strings":["Carleton University, Ottawa, ON, Canada"],"affiliations":[{"raw_affiliation_string":"Carleton University, Ottawa, ON, Canada","institution_ids":["https://openalex.org/I67031392"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5073035900","display_name":"Paulo Garcia","orcid":"https://orcid.org/0000-0002-1041-5205"},"institutions":[{"id":"https://openalex.org/I67031392","display_name":"Carleton University","ror":"https://ror.org/02qtvee93","country_code":"CA","type":"education","lineage":["https://openalex.org/I67031392"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Paulo Garcia","raw_affiliation_strings":["Carleton University, Ottawa, ON, Canada"],"affiliations":[{"raw_affiliation_string":"Carleton University, Ottawa, ON, Canada","institution_ids":["https://openalex.org/I67031392"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5075001760"],"corresponding_institution_ids":["https://openalex.org/I67031392"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.01885673,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"310","last_page":"310"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9973000288009644,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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/T10260","display_name":"Software Engineering Research","score":0.9973000288009644,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9969000220298767,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"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.9923999905586243,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8529436588287354},{"id":"https://openalex.org/keywords/toolchain","display_name":"Toolchain","score":0.7480455636978149},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6791770458221436},{"id":"https://openalex.org/keywords/domain-specific-language","display_name":"Domain-specific language","score":0.5256506204605103},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.5208169221878052},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.46417614817619324},{"id":"https://openalex.org/keywords/computer-architecture","display_name":"Computer architecture","score":0.4566279351711273},{"id":"https://openalex.org/keywords/programmer","display_name":"Programmer","score":0.4381549656391144},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.4118094742298126}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8529436588287354},{"id":"https://openalex.org/C2777062904","wikidata":"https://www.wikidata.org/wiki/Q545406","display_name":"Toolchain","level":3,"score":0.7480455636978149},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6791770458221436},{"id":"https://openalex.org/C135257023","wikidata":"https://www.wikidata.org/wiki/Q691358","display_name":"Domain-specific language","level":2,"score":0.5256506204605103},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.5208169221878052},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.46417614817619324},{"id":"https://openalex.org/C118524514","wikidata":"https://www.wikidata.org/wiki/Q173212","display_name":"Computer architecture","level":1,"score":0.4566279351711273},{"id":"https://openalex.org/C2778514511","wikidata":"https://www.wikidata.org/wiki/Q1374194","display_name":"Programmer","level":2,"score":0.4381549656391144},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.4118094742298126}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3373087.3375324","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3373087.3375324","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2020 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":0,"referenced_works":[],"related_works":["https://openalex.org/W2013037783","https://openalex.org/W2909413202","https://openalex.org/W4385243142","https://openalex.org/W1999008563","https://openalex.org/W4233332105","https://openalex.org/W156394931","https://openalex.org/W2060824677","https://openalex.org/W4310506228","https://openalex.org/W4281950471","https://openalex.org/W2788011716"],"abstract_inverted_index":{"Programming":[0],"abstractions":[1,23,56],"decrease":[2],"the":[3,12,65,79,86,111,114,158],"cognitive":[4],"gap":[5],"between":[6],"program":[7],"idealization":[8],"and":[9,35,106,132,151,155],"expression.":[10],"In":[11,98],"software":[13,96],"domain,":[14],"this":[15,44,99],"high-level":[16],"expressive":[17],"power":[18],"is":[19,46],"achieved":[20],"through":[21],"layered":[22],"-":[24,30],"virtual":[25],"machines,":[26],"compilers,":[27],"operating":[28],"systems":[29],"which":[31],"translate,":[32],"at":[33],"design":[34,105,115,124],"runtime,":[36],"programmer":[37],"visible":[38],"code":[39],"into":[40],"hardware-compatible":[41],"code.":[42],"While":[43],"paradigm":[45],"ideal":[47],"for":[48,78,147],"static,":[49],"i.e.,":[50],"unmodifiable,":[51],"hardware,":[52],"several":[53],"of":[54,64,113,122],"these":[55,141],"break":[57],"down":[58],"when":[59],"programming":[60],"configurable":[61],"hardware.":[62],"State":[63],"art":[66],"hardware/software":[67,107,148],"co-design":[68,108],"techniques":[69],"(e.g.,":[70],"High":[71],"Level":[72],"Synthesis":[73],"(HLS),":[74],"Intermediate":[75],"Fabrics)":[76],"are,":[77],"most":[80],"part,":[81],"ad":[82],"hoc":[83],"patches":[84],"to":[85,92],"traditional":[87],"abstraction":[88],"stack,":[89],"applicable":[90],"only":[91],"specific":[93],"toolchains":[94],"or":[95],"components.":[97],"paper,":[100],"we":[101],"survey":[102],"current":[103],"hardware":[104],"abstractions,":[109],"from":[110],"perspective":[112],"language/toolchain.":[116],"We":[117,138],"perform":[118],"a":[119],"systematic":[120],"analysis":[121],"different":[123],"paradigms,":[125],"including":[126],"HLS,":[127],"Domain":[128],"Specific":[129],"Languages":[130,136],"(DSL),":[131],"new-generation":[133],"Hardware":[134],"Description":[135],"(HDL).":[137],"analyze":[139],"how":[140],"paradigms":[142],"differ":[143],"in":[144],"expressiveness,":[145],"support":[146],"interaction,":[149],"hierarchy":[150],"modularity,":[152],"HDL":[153],"interoperability,":[154],"interface":[156],"with":[157],"outside":[159],"world.":[160]},"counts_by_year":[],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
