{"id":"https://openalex.org/W4379536406","doi":"https://doi.org/10.1145/3591237","title":"Loop Rerolling for Hardware Decompilation","display_name":"Loop Rerolling for Hardware Decompilation","publication_year":2023,"publication_date":"2023-06-06","ids":{"openalex":"https://openalex.org/W4379536406","doi":"https://doi.org/10.1145/3591237"},"language":"en","primary_location":{"id":"doi:10.1145/3591237","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3591237","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3591237","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3591237","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5033021268","display_name":"Zachary D. Sisco","orcid":"https://orcid.org/0009-0003-8349-7701"},"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":"Zachary D. Sisco","raw_affiliation_strings":["University of California at Santa Barbara, USA"],"raw_orcid":"https://orcid.org/0009-0003-8349-7701","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"],"raw_orcid":"https://orcid.org/0000-0003-1443-1373","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"],"raw_orcid":"https://orcid.org/0000-0002-6550-6075","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"],"raw_orcid":"https://orcid.org/0009-0008-1199-6129","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":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":4.7449,"has_fulltext":true,"cited_by_count":11,"citation_normalized_percentile":{"value":0.95214442,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":96,"max":99},"biblio":{"volume":"7","issue":"PLDI","first_page":"420","last_page":"442"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9997000098228455,"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.9997000098228455,"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/T11241","display_name":"Advanced Malware Detection Techniques","score":0.9991999864578247,"subfield":{"id":"https://openalex.org/subfields/1711","display_name":"Signal Processing"},"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9988999962806702,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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.7581673860549927},{"id":"https://openalex.org/keywords/hardware-description-language","display_name":"Hardware description language","score":0.6197133660316467},{"id":"https://openalex.org/keywords/benchmark","display_name":"Benchmark (surveying)","score":0.5185390114784241},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5091976523399353},{"id":"https://openalex.org/keywords/computer-hardware","display_name":"Computer hardware","score":0.4866541028022766},{"id":"https://openalex.org/keywords/netlist","display_name":"Netlist","score":0.48402899503707886},{"id":"https://openalex.org/keywords/high-level-synthesis","display_name":"High-level synthesis","score":0.4720017910003662},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.46477511525154114},{"id":"https://openalex.org/keywords/computer-architecture","display_name":"Computer architecture","score":0.40565037727355957},{"id":"https://openalex.org/keywords/field-programmable-gate-array","display_name":"Field-programmable gate array","score":0.39323917031288147}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7581673860549927},{"id":"https://openalex.org/C42143788","wikidata":"https://www.wikidata.org/wiki/Q173341","display_name":"Hardware description language","level":3,"score":0.6197133660316467},{"id":"https://openalex.org/C185798385","wikidata":"https://www.wikidata.org/wiki/Q1161707","display_name":"Benchmark (surveying)","level":2,"score":0.5185390114784241},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5091976523399353},{"id":"https://openalex.org/C9390403","wikidata":"https://www.wikidata.org/wiki/Q3966","display_name":"Computer hardware","level":1,"score":0.4866541028022766},{"id":"https://openalex.org/C177650935","wikidata":"https://www.wikidata.org/wiki/Q1760303","display_name":"Netlist","level":2,"score":0.48402899503707886},{"id":"https://openalex.org/C58013763","wikidata":"https://www.wikidata.org/wiki/Q5754574","display_name":"High-level synthesis","level":3,"score":0.4720017910003662},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.46477511525154114},{"id":"https://openalex.org/C118524514","wikidata":"https://www.wikidata.org/wiki/Q173212","display_name":"Computer architecture","level":1,"score":0.40565037727355957},{"id":"https://openalex.org/C42935608","wikidata":"https://www.wikidata.org/wiki/Q190411","display_name":"Field-programmable gate array","level":2,"score":0.39323917031288147},{"id":"https://openalex.org/C205649164","wikidata":"https://www.wikidata.org/wiki/Q1071","display_name":"Geography","level":0,"score":0.0},{"id":"https://openalex.org/C13280743","wikidata":"https://www.wikidata.org/wiki/Q131089","display_name":"Geodesy","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3591237","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3591237","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3591237","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3591237","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3591237","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3591237","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"sustainable_development_goals":[{"display_name":"Industry, innovation and infrastructure","score":0.6000000238418579,"id":"https://metadata.un.org/sdg/9"}],"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/G480730029","display_name":"Collaborative Research: SHF: Small: Integrating Synthesis and Optimization in Satisfiability Modulo Theories","funder_award_id":"2006542","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G7947950375","display_name":null,"funder_award_id":"2006542, 1763699, 1717779","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/W4379536406.pdf","grobid_xml":"https://content.openalex.org/works/W4379536406.grobid-xml"},"referenced_works_count":36,"referenced_works":["https://openalex.org/W1489909987","https://openalex.org/W1583099307","https://openalex.org/W1978537577","https://openalex.org/W2091694893","https://openalex.org/W2109943392","https://openalex.org/W2123594341","https://openalex.org/W2138756793","https://openalex.org/W2143851897","https://openalex.org/W2149236697","https://openalex.org/W2180849554","https://openalex.org/W2298125715","https://openalex.org/W2515967056","https://openalex.org/W2600578627","https://openalex.org/W2618215639","https://openalex.org/W2761973445","https://openalex.org/W2808648285","https://openalex.org/W2884646805","https://openalex.org/W2898543817","https://openalex.org/W2919561762","https://openalex.org/W3007651336","https://openalex.org/W3011737828","https://openalex.org/W3030753750","https://openalex.org/W3033423882","https://openalex.org/W3117137355","https://openalex.org/W3192343331","https://openalex.org/W4214573907","https://openalex.org/W4220706374","https://openalex.org/W4232809066","https://openalex.org/W4236986999","https://openalex.org/W4238759521","https://openalex.org/W4240494655","https://openalex.org/W4245576734","https://openalex.org/W4248886231","https://openalex.org/W4251523731","https://openalex.org/W4253682642","https://openalex.org/W6912966825"],"related_works":["https://openalex.org/W2145339442","https://openalex.org/W4243305727","https://openalex.org/W3217774925","https://openalex.org/W2543290882","https://openalex.org/W4235515009","https://openalex.org/W2171413119","https://openalex.org/W1557016741","https://openalex.org/W1964556228","https://openalex.org/W2895905110","https://openalex.org/W2077870657"],"abstract_inverted_index":{"We":[0,128],"introduce":[1],"the":[2,79,113,124,145,164],"new":[3],"problem":[4,60],"of":[5,29,61,67,78,139,161,163,175,194],"hardware":[6,13,54,62,85,130,134,140,177],"decompilation":[7,14,63,135,178],".":[8,88],"Analogous":[9],"to":[10,39,48,99],"software":[11],"decompilation,":[12],"is":[15],"about":[16],"analyzing":[17],"a":[18,23,27,35,53,65,81,137],"low-level":[19],"artifact\u2014in":[20],"this":[21,70],"case":[22],"netlist":[24],",":[25],"i.e.,":[26],"graph":[28],"wires":[30],"and":[31,44,95,117,148,155,170,196],"logical":[32],"gates":[33],"representing":[34],"digital":[36],"circuit\u2014in":[37],"order":[38],"recover":[40],"higher-level":[41],"programming":[42],"abstractions,":[43],"using":[45],"those":[46],"abstractions":[47],"generate":[49],"code":[50],"written":[51,143],"in":[52,103,112,123,144,158,166],"description":[55],"language":[56],"(HDL).":[57],"The":[58],"overall":[59],"requires":[64],"number":[66],"pieces.":[68],"In":[69],"paper":[71],"we":[72,83,171],"focus":[73],"on":[74,201],"one":[75],"specific":[76],"piece":[77],"puzzle:":[80],"technique":[82],"call":[84],"loop":[86,90,131],"rerolling":[87,91,132],"Hardware":[89],"leverages":[92],"clone":[93],"detection":[94],"program":[96],"synthesis":[97],"techniques":[98],"identify":[100],"repeated":[101],"logic":[102],"netlists":[104,165,190],"(such":[105],"as":[106],"would":[107],"be":[108],"synthesized":[109],"from":[110],"loops":[111,122,157],"original":[114],"HDL":[115,126,147],"code)":[116],"reroll":[118],"them":[119],"into":[120],"syntactic":[121],"recovered":[125],"code.":[127],"evaluate":[129],"for":[133],"over":[136,189],"set":[138],"design":[141],"benchmarks":[142],"PyRTL":[146],"industry":[149],"standard":[150],"SystemVerilog.":[151],"Our":[152],"implementation":[153],"identifies":[154],"rerolls":[156],"52":[159],"out":[160],"53":[162],"our":[167],"benchmark":[168],"suite,":[169],"show":[172],"three":[173],"examples":[174],"how":[176],"can":[179],"provide":[180],"concrete":[181],"benefits:":[182],"transpilation":[183],"between":[184],"HDLs,":[185],"faster":[186],"simulation":[187],"times":[188],"(with":[191],"mean":[192],"speedup":[193],"6x),":[195],"artifact":[197],"compaction":[198],"(39%":[199],"smaller":[200],"average).":[202]},"counts_by_year":[{"year":2026,"cited_by_count":4},{"year":2025,"cited_by_count":3},{"year":2024,"cited_by_count":4}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
