{"id":"https://openalex.org/W7140900529","doi":"https://doi.org/10.1109/fpl68686.2025.00022","title":"From Errors to Solutions: LLM-Powered Command Scripting for FPGA Cad Tools","display_name":"From Errors to Solutions: LLM-Powered Command Scripting for FPGA Cad Tools","publication_year":2025,"publication_date":"2025-09-01","ids":{"openalex":"https://openalex.org/W7140900529","doi":"https://doi.org/10.1109/fpl68686.2025.00022"},"language":null,"primary_location":{"id":"doi:10.1109/fpl68686.2025.00022","is_oa":false,"landing_page_url":"https://doi.org/10.1109/fpl68686.2025.00022","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2025 35th International Conference on Field-Programmable Logic and Applications (FPL)","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/A5063878178","display_name":"Mohamed A. Elgammal","orcid":"https://orcid.org/0000-0001-8555-7331"},"institutions":[{"id":"https://openalex.org/I185261750","display_name":"University of Toronto","ror":"https://ror.org/03dbr7087","country_code":"CA","type":"education","lineage":["https://openalex.org/I185261750"]}],"countries":["CA"],"is_corresponding":true,"raw_author_name":"Mohamed A. Elgammal","raw_affiliation_strings":["University of Toronto,Dept. of Electrical &#x0026; Computer Engineering,Toronto,Canada"],"affiliations":[{"raw_affiliation_string":"University of Toronto,Dept. of Electrical &#x0026; Computer Engineering,Toronto,Canada","institution_ids":["https://openalex.org/I185261750"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5030184404","display_name":"Vaughn Betz","orcid":"https://orcid.org/0000-0003-0528-6493"},"institutions":[{"id":"https://openalex.org/I185261750","display_name":"University of Toronto","ror":"https://ror.org/03dbr7087","country_code":"CA","type":"education","lineage":["https://openalex.org/I185261750"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Vaughn Betz","raw_affiliation_strings":["University of Toronto,Dept. of Electrical &#x0026; Computer Engineering,Toronto,Canada"],"affiliations":[{"raw_affiliation_string":"University of Toronto,Dept. of Electrical &#x0026; Computer Engineering,Toronto,Canada","institution_ids":["https://openalex.org/I185261750"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5063878178"],"corresponding_institution_ids":["https://openalex.org/I185261750"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.80851508,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"73","last_page":"82"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T12122","display_name":"Physical Unclonable Functions (PUFs) and Hardware Security","score":0.2467000037431717,"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/T12122","display_name":"Physical Unclonable Functions (PUFs) and Hardware Security","score":0.2467000037431717,"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/T11697","display_name":"Numerical Methods and Algorithms","score":0.13979999721050262,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/T10951","display_name":"Cryptographic Implementations and Security","score":0.08569999784231186,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/scripting-language","display_name":"Scripting language","score":0.5019000172615051},{"id":"https://openalex.org/keywords/cad","display_name":"CAD","score":0.4207000136375427},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.33169999718666077},{"id":"https://openalex.org/keywords/field-programmable-gate-array","display_name":"Field-programmable gate array","score":0.3249000012874603},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.29820001125335693}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6766999959945679},{"id":"https://openalex.org/C61423126","wikidata":"https://www.wikidata.org/wiki/Q187432","display_name":"Scripting language","level":2,"score":0.5019000172615051},{"id":"https://openalex.org/C194789388","wikidata":"https://www.wikidata.org/wiki/Q17855283","display_name":"CAD","level":2,"score":0.4207000136375427},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.36070001125335693},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.33169999718666077},{"id":"https://openalex.org/C42935608","wikidata":"https://www.wikidata.org/wiki/Q190411","display_name":"Field-programmable gate array","level":2,"score":0.3249000012874603},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.30660000443458557},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.29820001125335693},{"id":"https://openalex.org/C199639397","wikidata":"https://www.wikidata.org/wiki/Q1788588","display_name":"Engineering drawing","level":1,"score":0.2750999927520752},{"id":"https://openalex.org/C2778751112","wikidata":"https://www.wikidata.org/wiki/Q835016","display_name":"Window (computing)","level":2,"score":0.26930001378059387},{"id":"https://openalex.org/C9390403","wikidata":"https://www.wikidata.org/wiki/Q3966","display_name":"Computer hardware","level":1,"score":0.2612000107765198},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.2535000145435333},{"id":"https://openalex.org/C115901376","wikidata":"https://www.wikidata.org/wiki/Q184199","display_name":"Automation","level":2,"score":0.2533999979496002}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/fpl68686.2025.00022","is_oa":false,"landing_page_url":"https://doi.org/10.1109/fpl68686.2025.00022","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2025 35th International Conference on Field-Programmable Logic and Applications (FPL)","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":25,"referenced_works":["https://openalex.org/W1528837436","https://openalex.org/W1986026297","https://openalex.org/W2124402195","https://openalex.org/W2139637699","https://openalex.org/W2168493238","https://openalex.org/W2343344966","https://openalex.org/W2771269115","https://openalex.org/W2798956872","https://openalex.org/W2950533501","https://openalex.org/W2970641574","https://openalex.org/W3007581096","https://openalex.org/W3028955404","https://openalex.org/W3033033241","https://openalex.org/W3082750925","https://openalex.org/W3099700870","https://openalex.org/W3099950029","https://openalex.org/W3132470343","https://openalex.org/W3160461433","https://openalex.org/W3197603378","https://openalex.org/W4384071683","https://openalex.org/W4389166737","https://openalex.org/W4391455278","https://openalex.org/W4392544408","https://openalex.org/W4403024086","https://openalex.org/W4410344137"],"related_works":[],"abstract_inverted_index":{"Computer-aided":[0],"design":[1,17,42,61],"(CAD)":[2],"tools":[3],"provide":[4],"hundreds":[5],"or":[6],"even":[7],"thousands":[8],"of":[9,140,152,169,183],"options":[10,33,56,93,116],"that":[11,71,117],"control":[12],"various":[13,123],"optimizations":[14],"throughout":[15],"the":[16,53,60,82,91,97,119,170,177,181],"flow.":[18],"While":[19],"this":[20,64],"flexibility":[21],"is":[22],"powerful,":[23],"it":[24],"requires":[25],"significant":[26],"experience":[27],"to":[28,77,95,112,176],"be":[29,49],"familiar":[30],"with":[31],"those":[32],"and":[34,106,126,132,136,142,205],"effectively":[35],"utilize":[36],"them.":[37],"For":[38],"example,":[39],"when":[40],"a":[41,69,150],"fails,":[43],"in":[44,81,138,194],"many":[45],"cases":[46,171],"errors":[47],"can":[48,199],"resolved":[50,166],"by":[51,89,202],"adjusting":[52],"CAD":[54,85,195],"tool":[55,70,86,207],"rather":[57],"than":[58],"modifying":[59,90],"itself.":[62],"In":[63],"work,":[65],"we":[66,148],"propose":[67],"VPR-LLM,":[68],"utilizes":[72,109],"Large":[73],"Language":[74],"Models":[75],"(LLMs)":[76],"automate":[78],"error":[79,101,160],"resolution":[80],"open-source":[83],"FPGA":[84],"Verilog-to-Routing":[87],"(VTR)":[88],"command-line":[92,115],"used":[94],"run":[96,155],"tool.":[98],"VPRLLM":[99],"parses":[100],"logs,":[102],"VTR":[103,154],"help":[104],"messages,":[105],"documentation,":[107],"then":[108],"an":[110,188],"LLM":[111,124,178],"generate":[113],"modified":[114],"resolve":[118],"issue.":[120],"VPR-LLM":[121],"supports":[122],"models":[125,131],"prompting":[127],"techniques.":[128],"All":[129],"these":[130],"techniques":[133],"are":[134],"evaluated":[135],"compared":[137],"terms":[139],"efficiency":[141],"cost.":[143],"To":[144],"evaluate":[145],"our":[146],"method,":[147],"proposed":[149,163],"dataset":[151],"26":[153],"failures":[156],"spanning":[157],"five":[158],"distinct":[159],"categories.":[161],"The":[162],"technique":[164],"successfully":[165],"80":[167],"%":[168],"without":[172],"requiring":[173],"any":[174],"fine-tuning":[175],"model,":[179],"demonstrating":[180],"effectiveness":[182],"VPR-LLM.":[184],"This":[185],"work":[186],"represents":[187],"initial":[189],"step":[190],"toward":[191],"AI-assisted":[192],"debugging":[193],"flows,":[196],"where":[197],"LLMs":[198],"enhance":[200],"productivity":[201],"automatically":[203],"identifying":[204],"correcting":[206],"configurations.":[208]},"counts_by_year":[],"updated_date":"2026-03-28T06:11:35.319607","created_date":"2026-03-27T00:00:00"}
