{"id":"https://openalex.org/W3174771846","doi":"https://doi.org/10.1145/3453483.3454037","title":"Wire sorts: a language abstraction for safe hardware composition","display_name":"Wire sorts: a language abstraction for safe hardware composition","publication_year":2021,"publication_date":"2021-06-18","ids":{"openalex":"https://openalex.org/W3174771846","doi":"https://doi.org/10.1145/3453483.3454037","mag":"3174771846"},"language":"en","primary_location":{"id":"doi:10.1145/3453483.3454037","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3453483.3454037","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3453483.3454037","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3453483.3454037","any_repository_has_fulltext":null},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5101637424","display_name":"Michael Christensen","orcid":"https://orcid.org/0000-0002-7614-5295"},"institutions":[{"id":"https://openalex.org/I154570441","display_name":"University of California, Santa Barbara","ror":"https://ror.org/02t274463","country_code":"US","type":"education","lineage":["https://openalex.org/I154570441"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Michael Christensen","raw_affiliation_strings":["University of California at Santa Barbara, USA"],"affiliations":[{"raw_affiliation_string":"University of California at Santa Barbara, USA","institution_ids":["https://openalex.org/I154570441"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5036932071","display_name":"Timothy Sherwood","orcid":"https://orcid.org/0000-0002-6550-6075"},"institutions":[{"id":"https://openalex.org/I154570441","display_name":"University of California, Santa Barbara","ror":"https://ror.org/02t274463","country_code":"US","type":"education","lineage":["https://openalex.org/I154570441"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Timothy Sherwood","raw_affiliation_strings":["University of California at Santa Barbara, USA"],"affiliations":[{"raw_affiliation_string":"University of California at Santa Barbara, USA","institution_ids":["https://openalex.org/I154570441"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5015529604","display_name":"Jonathan Balkind","orcid":"https://orcid.org/0000-0003-1443-1373"},"institutions":[{"id":"https://openalex.org/I154570441","display_name":"University of California, Santa Barbara","ror":"https://ror.org/02t274463","country_code":"US","type":"education","lineage":["https://openalex.org/I154570441"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Jonathan Balkind","raw_affiliation_strings":["University of California at Santa Barbara, USA"],"affiliations":[{"raw_affiliation_string":"University of California at Santa Barbara, USA","institution_ids":["https://openalex.org/I154570441"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5074393511","display_name":"Ben Hardekopf","orcid":"https://orcid.org/0009-0008-1199-6129"},"institutions":[{"id":"https://openalex.org/I154570441","display_name":"University of California, Santa Barbara","ror":"https://ror.org/02t274463","country_code":"US","type":"education","lineage":["https://openalex.org/I154570441"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Ben Hardekopf","raw_affiliation_strings":["University of California at Santa Barbara, USA"],"affiliations":[{"raw_affiliation_string":"University of California at Santa Barbara, USA","institution_ids":["https://openalex.org/I154570441"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5101637424"],"corresponding_institution_ids":["https://openalex.org/I154570441"],"apc_list":null,"apc_paid":null,"fwci":2.1223,"has_fulltext":true,"cited_by_count":11,"citation_normalized_percentile":{"value":0.86909871,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":null,"issue":null,"first_page":"175","last_page":"189"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10904","display_name":"Embedded Systems Design Techniques","score":0.9998999834060669,"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/T10904","display_name":"Embedded Systems Design Techniques","score":0.9998999834060669,"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/T11032","display_name":"VLSI and Analog Circuit Testing","score":0.9984999895095825,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9977999925613403,"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.8119404911994934},{"id":"https://openalex.org/keywords/soundness","display_name":"Soundness","score":0.6275289058685303},{"id":"https://openalex.org/keywords/debugging","display_name":"Debugging","score":0.6105555295944214},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.5395234823226929},{"id":"https://openalex.org/keywords/hardware-description-language","display_name":"Hardware description language","score":0.5007264614105225},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.48811373114585876},{"id":"https://openalex.org/keywords/abstraction","display_name":"Abstraction","score":0.4733193814754486},{"id":"https://openalex.org/keywords/sync","display_name":"sync","score":0.4468138515949249},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.43907737731933594},{"id":"https://openalex.org/keywords/computer-hardware","display_name":"Computer hardware","score":0.3699408173561096},{"id":"https://openalex.org/keywords/embedded-system","display_name":"Embedded system","score":0.3523569703102112},{"id":"https://openalex.org/keywords/frame","display_name":"Frame (networking)","score":0.19005340337753296}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8119404911994934},{"id":"https://openalex.org/C39920170","wikidata":"https://www.wikidata.org/wiki/Q693083","display_name":"Soundness","level":2,"score":0.6275289058685303},{"id":"https://openalex.org/C168065819","wikidata":"https://www.wikidata.org/wiki/Q845566","display_name":"Debugging","level":2,"score":0.6105555295944214},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.5395234823226929},{"id":"https://openalex.org/C42143788","wikidata":"https://www.wikidata.org/wiki/Q173341","display_name":"Hardware description language","level":3,"score":0.5007264614105225},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.48811373114585876},{"id":"https://openalex.org/C124304363","wikidata":"https://www.wikidata.org/wiki/Q673661","display_name":"Abstraction","level":2,"score":0.4733193814754486},{"id":"https://openalex.org/C3913047","wikidata":"https://www.wikidata.org/wiki/Q1956265","display_name":"sync","level":3,"score":0.4468138515949249},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.43907737731933594},{"id":"https://openalex.org/C9390403","wikidata":"https://www.wikidata.org/wiki/Q3966","display_name":"Computer hardware","level":1,"score":0.3699408173561096},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.3523569703102112},{"id":"https://openalex.org/C126042441","wikidata":"https://www.wikidata.org/wiki/Q1324888","display_name":"Frame (networking)","level":2,"score":0.19005340337753296},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.0},{"id":"https://openalex.org/C42935608","wikidata":"https://www.wikidata.org/wiki/Q190411","display_name":"Field-programmable gate array","level":2,"score":0.0},{"id":"https://openalex.org/C76155785","wikidata":"https://www.wikidata.org/wiki/Q418","display_name":"Telecommunications","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3453483.3454037","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3453483.3454037","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3453483.3454037","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"}],"best_oa_location":{"id":"doi:10.1145/3453483.3454037","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3453483.3454037","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3453483.3454037","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G218308366","display_name":null,"funder_award_id":"1717779","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G848032724","display_name":null,"funder_award_id":"Science","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G8861760227","display_name":null,"funder_award_id":"1763699","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W3174771846.pdf","grobid_xml":"https://content.openalex.org/works/W3174771846.grobid-xml"},"referenced_works_count":35,"referenced_works":["https://openalex.org/W616429135","https://openalex.org/W1412227046","https://openalex.org/W1532212856","https://openalex.org/W1583099307","https://openalex.org/W1600560111","https://openalex.org/W1926668751","https://openalex.org/W1978537577","https://openalex.org/W1983394510","https://openalex.org/W2003131643","https://openalex.org/W2018055497","https://openalex.org/W2049600101","https://openalex.org/W2079751107","https://openalex.org/W2116989825","https://openalex.org/W2135211381","https://openalex.org/W2160323811","https://openalex.org/W2160566592","https://openalex.org/W2166029537","https://openalex.org/W2180849554","https://openalex.org/W2183333258","https://openalex.org/W2186104740","https://openalex.org/W2333603443","https://openalex.org/W2605220654","https://openalex.org/W2753285289","https://openalex.org/W2761973445","https://openalex.org/W2809679348","https://openalex.org/W2887015230","https://openalex.org/W2963545172","https://openalex.org/W2965552403","https://openalex.org/W3030488445","https://openalex.org/W3033189783","https://openalex.org/W3033414614","https://openalex.org/W4206312399","https://openalex.org/W4235485872","https://openalex.org/W4253751283","https://openalex.org/W4255744499"],"related_works":["https://openalex.org/W1511249877","https://openalex.org/W1578828174","https://openalex.org/W2950376466","https://openalex.org/W2000943029","https://openalex.org/W2621980927","https://openalex.org/W2002878601","https://openalex.org/W2199396573","https://openalex.org/W4302559785","https://openalex.org/W144240038","https://openalex.org/W168509588"],"abstract_inverted_index":{"Effective":[0],"digital":[1],"hardware":[2,26,73,134],"design":[3,8,173],"fundamentally":[4],"requires":[5],"decomposing":[6],"a":[7,10,16,132,162],"into":[9],"set":[11],"of":[12,19,71,78,83,109,124,152],"interconnected":[13],"modules,":[14],"each":[15],"distinct":[17],"unit":[18],"computation":[20],"and":[21,45,93,98,120,137,143,161,200],"state.":[22],"However,":[23],"naively":[24],"connecting":[25],"modules":[27,74,189],"leads":[28],"to":[29,50,64,81,113],"real-world":[30],"pathological":[31],"cases":[32],"which":[33,46,87],"are":[34,47,194],"surprisingly":[35],"far":[36],"from":[37],"obvious":[38],"when":[39],"looking":[40],"at":[41,147,211],"the":[42,57,76,99,114,122,153,156,191],"interfaces":[43],"alone":[44],"very":[48],"difficult":[49],"debug":[51],"after":[52],"synthesis.":[53],"We":[54,118],"show":[55],"for":[56],"first":[58],"time":[59],"that":[60,168,185,201],"it":[61,101],"is":[62,208],"possible":[63],"soundly":[65],"abstract":[66],"even":[67,144,169],"complex":[68],"combinational":[69],"dependencies":[70],"arbitrary":[72],"through":[75],"assignment":[77],"IO":[79],"ports":[80],"one":[82],"four":[84],"new":[85,96,126],"sorts":[86,193],"we":[88,166],"call:":[89],"to-sync,":[90],"to-port,":[91],"from-sync,":[92],"from-port.":[94],"This":[95],"taxonomy,":[97],"reasoning":[100],"enables,":[102],"facilitates":[103],"modularity":[104],"by":[105,202],"escalating":[106],"problematic":[107],"aspects":[108],"module":[110],"input/output":[111],"interaction":[112],"language-level":[115],"interface":[116],"specification.":[117],"formalize":[119],"prove":[121],"soundness":[123],"our":[125,171,198,206],"wire":[127,204],"sorts,":[128,205],"implement":[129],"them":[130],"in":[131],"practical":[133],"description":[135],"language,":[136],"demonstrate":[138],"they":[139],"can":[140],"be":[141],"applied":[142],"inferred":[145,192],"automatically":[146],"scale.":[148],"Through":[149],"an":[150],"examination":[151],"BaseJump":[154],"STL,":[155],"OpenPiton":[157],"manycore":[158],"research":[159],"platform,":[160],"complete":[163],"RISC-V":[164],"implementation,":[165],"find":[167],"on":[170],"biggest":[172],"containing":[174],"1.5":[175],"million":[176],"primitive":[177],"gates,":[178],"analysis":[179],"takes":[180],"less":[181],"than":[182,214],"31":[183],"seconds;":[184],"across":[186,197],"172":[187],"unique":[188],"analyzed,":[190],"widely":[195],"distributed":[196],"taxonomy;":[199],"using":[203],"tool":[207],"2.6\u201333.9x":[209],"faster":[210],"finding":[212],"loops":[213],"standard":[215],"synthesis-time":[216],"cycle":[217],"detection.":[218]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":2},{"year":2023,"cited_by_count":4},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":1}],"updated_date":"2026-04-10T15:06:20.359241","created_date":"2025-10-10T00:00:00"}
