Verification of Scheduling of Conditional Behaviors in High-Level Synthesis
High-level synthesis (HLS) technique translates the behaviors written in high-level languages like C/C++ into register transfer level (RTL) design. Due to its complexity, proving the correctness of an HLS tool is prohibitively expensive. Translation validation is the process of proving that the targ...
Gespeichert in:
Veröffentlicht in: | IEEE transactions on very large scale integration (VLSI) systems 2020-07, Vol.28 (7), p.1638-1651 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | 1651 |
---|---|
container_issue | 7 |
container_start_page | 1638 |
container_title | IEEE transactions on very large scale integration (VLSI) systems |
container_volume | 28 |
creator | Chouksey, Ramanuj Karfa, Chandan |
description | High-level synthesis (HLS) technique translates the behaviors written in high-level languages like C/C++ into register transfer level (RTL) design. Due to its complexity, proving the correctness of an HLS tool is prohibitively expensive. Translation validation is the process of proving that the target code is a correct translation of the source program being compiled. The path-based equivalence checking (PBEC) method is a widely used translation validation method for verification of the scheduling phase of HLS. The existing PBEC methods cannot handle significant control structure modification that occurs in the efficient scheduling of conditional behaviors. Hence, they produce a false-negative result. In this article, we identify some scenarios involving path merge/split where the state-of-the-art PBEC approaches fail to show the equivalence even though behaviors are equivalent. We propose a value propagation-based PBEC method along with a new cutpoint selection scheme to overcome this limitation. Our method can also handle the scenario where adjacent conditional blocks (CBs) having an equivalent conditional expression are combined into one CB. Experimental results demonstrate the usefulness of our method over the existing methods. |
doi_str_mv | 10.1109/TVLSI.2020.2978242 |
format | Article |
fullrecord | <record><control><sourceid>proquest_RIE</sourceid><recordid>TN_cdi_ieee_primary_9042864</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>9042864</ieee_id><sourcerecordid>2418419438</sourcerecordid><originalsourceid>FETCH-LOGICAL-c295t-c7b0111cd76ff4a8f8d426e2df4c3592891098baad6c0002eee97c14ba826a903</originalsourceid><addsrcrecordid>eNo9kE1PwzAMhiMEEmPwB-BSiXOH46ZtcoQJ2EQlDhu7RlmarJlKO5Ju0v49LZvwxbbs1x8PIfcUJpSCeFquisV8goAwQZFzZHhBRjRN81j0dtnHkCUxRwrX5CaELQBlTMCIfKyMd9Zp1bm2iVobLXRlyn3tms2QTdumdENJ1dGLqdTBtT5ErolmblPFhTmYOlocm64ywYVbcmVVHczd2Y_J19vrcjqLi8_3-fS5iDWKtIt1vgZKqS7zzFqmuOUlw8xgaZlOUoFc9B_xtVJlpgEAjTEi15StFcdMCUjG5PE0d-fbn70Jndy2e9-fGCQyyhkVLOF9F566tG9D8MbKnXffyh8lBTlAk3_Q5ABNnqH1ooeTyPVb_wUCGPKMJb_Gb2h5</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2418419438</pqid></control><display><type>article</type><title>Verification of Scheduling of Conditional Behaviors in High-Level Synthesis</title><source>IEEE Electronic Library (IEL)</source><creator>Chouksey, Ramanuj ; Karfa, Chandan</creator><creatorcontrib>Chouksey, Ramanuj ; Karfa, Chandan</creatorcontrib><description>High-level synthesis (HLS) technique translates the behaviors written in high-level languages like C/C++ into register transfer level (RTL) design. Due to its complexity, proving the correctness of an HLS tool is prohibitively expensive. Translation validation is the process of proving that the target code is a correct translation of the source program being compiled. The path-based equivalence checking (PBEC) method is a widely used translation validation method for verification of the scheduling phase of HLS. The existing PBEC methods cannot handle significant control structure modification that occurs in the efficient scheduling of conditional behaviors. Hence, they produce a false-negative result. In this article, we identify some scenarios involving path merge/split where the state-of-the-art PBEC approaches fail to show the equivalence even though behaviors are equivalent. We propose a value propagation-based PBEC method along with a new cutpoint selection scheme to overcome this limitation. Our method can also handle the scenario where adjacent conditional blocks (CBs) having an equivalent conditional expression are combined into one CB. Experimental results demonstrate the usefulness of our method over the existing methods.</description><identifier>ISSN: 1063-8210</identifier><identifier>EISSN: 1557-9999</identifier><identifier>DOI: 10.1109/TVLSI.2020.2978242</identifier><identifier>CODEN: IEVSE9</identifier><language>eng</language><publisher>New York: IEEE</publisher><subject>Complexity theory ; Computer bugs ; Control methods ; Equivalence ; Equivalence checking ; finite state machine with datapaths (FSMDs) model ; formal verification ; High level languages ; High level synthesis ; high-level synthesis (HLS) ; Optimization ; Scheduling ; scheduling verification ; Source programs ; Sparks ; translation validation ; Verification ; Very large scale integration</subject><ispartof>IEEE transactions on very large scale integration (VLSI) systems, 2020-07, Vol.28 (7), p.1638-1651</ispartof><rights>Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2020</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c295t-c7b0111cd76ff4a8f8d426e2df4c3592891098baad6c0002eee97c14ba826a903</citedby><cites>FETCH-LOGICAL-c295t-c7b0111cd76ff4a8f8d426e2df4c3592891098baad6c0002eee97c14ba826a903</cites><orcidid>0000-0003-1565-8588 ; 0000-0002-3835-4184</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/9042864$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>314,776,780,792,27901,27902,54733</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/9042864$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc></links><search><creatorcontrib>Chouksey, Ramanuj</creatorcontrib><creatorcontrib>Karfa, Chandan</creatorcontrib><title>Verification of Scheduling of Conditional Behaviors in High-Level Synthesis</title><title>IEEE transactions on very large scale integration (VLSI) systems</title><addtitle>TVLSI</addtitle><description>High-level synthesis (HLS) technique translates the behaviors written in high-level languages like C/C++ into register transfer level (RTL) design. Due to its complexity, proving the correctness of an HLS tool is prohibitively expensive. Translation validation is the process of proving that the target code is a correct translation of the source program being compiled. The path-based equivalence checking (PBEC) method is a widely used translation validation method for verification of the scheduling phase of HLS. The existing PBEC methods cannot handle significant control structure modification that occurs in the efficient scheduling of conditional behaviors. Hence, they produce a false-negative result. In this article, we identify some scenarios involving path merge/split where the state-of-the-art PBEC approaches fail to show the equivalence even though behaviors are equivalent. We propose a value propagation-based PBEC method along with a new cutpoint selection scheme to overcome this limitation. Our method can also handle the scenario where adjacent conditional blocks (CBs) having an equivalent conditional expression are combined into one CB. Experimental results demonstrate the usefulness of our method over the existing methods.</description><subject>Complexity theory</subject><subject>Computer bugs</subject><subject>Control methods</subject><subject>Equivalence</subject><subject>Equivalence checking</subject><subject>finite state machine with datapaths (FSMDs) model</subject><subject>formal verification</subject><subject>High level languages</subject><subject>High level synthesis</subject><subject>high-level synthesis (HLS)</subject><subject>Optimization</subject><subject>Scheduling</subject><subject>scheduling verification</subject><subject>Source programs</subject><subject>Sparks</subject><subject>translation validation</subject><subject>Verification</subject><subject>Very large scale integration</subject><issn>1063-8210</issn><issn>1557-9999</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2020</creationdate><recordtype>article</recordtype><sourceid>RIE</sourceid><recordid>eNo9kE1PwzAMhiMEEmPwB-BSiXOH46ZtcoQJ2EQlDhu7RlmarJlKO5Ju0v49LZvwxbbs1x8PIfcUJpSCeFquisV8goAwQZFzZHhBRjRN81j0dtnHkCUxRwrX5CaELQBlTMCIfKyMd9Zp1bm2iVobLXRlyn3tms2QTdumdENJ1dGLqdTBtT5ErolmblPFhTmYOlocm64ywYVbcmVVHczd2Y_J19vrcjqLi8_3-fS5iDWKtIt1vgZKqS7zzFqmuOUlw8xgaZlOUoFc9B_xtVJlpgEAjTEi15StFcdMCUjG5PE0d-fbn70Jndy2e9-fGCQyyhkVLOF9F566tG9D8MbKnXffyh8lBTlAk3_Q5ABNnqH1ooeTyPVb_wUCGPKMJb_Gb2h5</recordid><startdate>20200701</startdate><enddate>20200701</enddate><creator>Chouksey, Ramanuj</creator><creator>Karfa, Chandan</creator><general>IEEE</general><general>The Institute of Electrical and Electronics Engineers, Inc. (IEEE)</general><scope>97E</scope><scope>RIA</scope><scope>RIE</scope><scope>AAYXX</scope><scope>CITATION</scope><scope>7SP</scope><scope>8FD</scope><scope>L7M</scope><orcidid>https://orcid.org/0000-0003-1565-8588</orcidid><orcidid>https://orcid.org/0000-0002-3835-4184</orcidid></search><sort><creationdate>20200701</creationdate><title>Verification of Scheduling of Conditional Behaviors in High-Level Synthesis</title><author>Chouksey, Ramanuj ; Karfa, Chandan</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c295t-c7b0111cd76ff4a8f8d426e2df4c3592891098baad6c0002eee97c14ba826a903</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2020</creationdate><topic>Complexity theory</topic><topic>Computer bugs</topic><topic>Control methods</topic><topic>Equivalence</topic><topic>Equivalence checking</topic><topic>finite state machine with datapaths (FSMDs) model</topic><topic>formal verification</topic><topic>High level languages</topic><topic>High level synthesis</topic><topic>high-level synthesis (HLS)</topic><topic>Optimization</topic><topic>Scheduling</topic><topic>scheduling verification</topic><topic>Source programs</topic><topic>Sparks</topic><topic>translation validation</topic><topic>Verification</topic><topic>Very large scale integration</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Chouksey, Ramanuj</creatorcontrib><creatorcontrib>Karfa, Chandan</creatorcontrib><collection>IEEE All-Society Periodicals Package (ASPP) 2005-present</collection><collection>IEEE All-Society Periodicals Package (ASPP) 1998-Present</collection><collection>IEEE Electronic Library (IEL)</collection><collection>CrossRef</collection><collection>Electronics & Communications Abstracts</collection><collection>Technology Research Database</collection><collection>Advanced Technologies Database with Aerospace</collection><jtitle>IEEE transactions on very large scale integration (VLSI) systems</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Chouksey, Ramanuj</au><au>Karfa, Chandan</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Verification of Scheduling of Conditional Behaviors in High-Level Synthesis</atitle><jtitle>IEEE transactions on very large scale integration (VLSI) systems</jtitle><stitle>TVLSI</stitle><date>2020-07-01</date><risdate>2020</risdate><volume>28</volume><issue>7</issue><spage>1638</spage><epage>1651</epage><pages>1638-1651</pages><issn>1063-8210</issn><eissn>1557-9999</eissn><coden>IEVSE9</coden><abstract>High-level synthesis (HLS) technique translates the behaviors written in high-level languages like C/C++ into register transfer level (RTL) design. Due to its complexity, proving the correctness of an HLS tool is prohibitively expensive. Translation validation is the process of proving that the target code is a correct translation of the source program being compiled. The path-based equivalence checking (PBEC) method is a widely used translation validation method for verification of the scheduling phase of HLS. The existing PBEC methods cannot handle significant control structure modification that occurs in the efficient scheduling of conditional behaviors. Hence, they produce a false-negative result. In this article, we identify some scenarios involving path merge/split where the state-of-the-art PBEC approaches fail to show the equivalence even though behaviors are equivalent. We propose a value propagation-based PBEC method along with a new cutpoint selection scheme to overcome this limitation. Our method can also handle the scenario where adjacent conditional blocks (CBs) having an equivalent conditional expression are combined into one CB. Experimental results demonstrate the usefulness of our method over the existing methods.</abstract><cop>New York</cop><pub>IEEE</pub><doi>10.1109/TVLSI.2020.2978242</doi><tpages>14</tpages><orcidid>https://orcid.org/0000-0003-1565-8588</orcidid><orcidid>https://orcid.org/0000-0002-3835-4184</orcidid></addata></record> |
fulltext | fulltext_linktorsrc |
identifier | ISSN: 1063-8210 |
ispartof | IEEE transactions on very large scale integration (VLSI) systems, 2020-07, Vol.28 (7), p.1638-1651 |
issn | 1063-8210 1557-9999 |
language | eng |
recordid | cdi_ieee_primary_9042864 |
source | IEEE Electronic Library (IEL) |
subjects | Complexity theory Computer bugs Control methods Equivalence Equivalence checking finite state machine with datapaths (FSMDs) model formal verification High level languages High level synthesis high-level synthesis (HLS) Optimization Scheduling scheduling verification Source programs Sparks translation validation Verification Very large scale integration |
title | Verification of Scheduling of Conditional Behaviors in High-Level Synthesis |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-03T20%3A53%3A55IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_RIE&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Verification%20of%20Scheduling%20of%20Conditional%20Behaviors%20in%20High-Level%20Synthesis&rft.jtitle=IEEE%20transactions%20on%20very%20large%20scale%20integration%20(VLSI)%20systems&rft.au=Chouksey,%20Ramanuj&rft.date=2020-07-01&rft.volume=28&rft.issue=7&rft.spage=1638&rft.epage=1651&rft.pages=1638-1651&rft.issn=1063-8210&rft.eissn=1557-9999&rft.coden=IEVSE9&rft_id=info:doi/10.1109/TVLSI.2020.2978242&rft_dat=%3Cproquest_RIE%3E2418419438%3C/proquest_RIE%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2418419438&rft_id=info:pmid/&rft_ieee_id=9042864&rfr_iscdi=true |