Scheduling and optimal register placement for synchronous circuits derived using software pipelining techniques

Data dependency constraints constitute a lower bound P on the minimal clock period of single-phase clocked sequential circuits. In contrast to methods based on basic retiming, clocked sequential circuits with clock period P can always be obtained using software pipelining techniques. Such circuits c...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:ACM transactions on design automation of electronic systems 2005-04, Vol.10 (2), p.187-204
Hauptverfasser: Chabini, Noureddine, Aboulhamid, El Mostapha, Chabini, Ismaïl, Savaria, Yvon
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 204
container_issue 2
container_start_page 187
container_title ACM transactions on design automation of electronic systems
container_volume 10
creator Chabini, Noureddine
Aboulhamid, El Mostapha
Chabini, Ismaïl
Savaria, Yvon
description Data dependency constraints constitute a lower bound P on the minimal clock period of single-phase clocked sequential circuits. In contrast to methods based on basic retiming, clocked sequential circuits with clock period P can always be obtained using software pipelining techniques. Such circuits can be derived by any method that can be framed in the following four-step process: Step 1, determine P; Step 2, compute a valid periodic schedule of the computational elements; Step 3, place registers back to the circuit; Step 4, assign the clock signals to control registers.Methods with polynomial run-time to implement this process are proposed in the literature. They implement these steps sequentially, starting with Step 1. These methods do not know how to optimally place registers which leads to an unnecessary number of registers. In this article, we address the problem of how to simultaneously implement Steps 2 and 3 in order to minimize the total number of registers. We conjecture that the problem is NP-hard in its general form. We formulate the problem for the first time in the literature, and devise a Mixed Integer Linear Program (MILP) to solve it. From this MILP, we derive a linear program to determine approximate solutions to the problem for large general circuits. We show that the proposed approach can handle nonzero clock skew. Experimental results confirm the effectiveness of the approach and show that significant reductions of the number of registers can be obtained although register sharing is not used. When the schedule is given, the proposed approach provides solutions to the problem of how to place the minimal number of registers in Step 3.
doi_str_mv 10.1145/1059876.1059877
format Article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_miscellaneous_29035458</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>844995731</sourcerecordid><originalsourceid>FETCH-LOGICAL-c299t-66c33a561c0739ead9567d3b3b40aeb191d628cd4bb4c1f4f9455b3aa3d869bf3</originalsourceid><addsrcrecordid>eNpdkDtPwzAUhS0EEuUxs1oMbKF2_Eg8ooqXVIkBmCPHvmldpXawHRD_nkTtxHSOrj6de3QQuqHknlIulpQIVVfy_qDVCVpQIaqiYkSdTp7UvOCTP0cXKe0IIaKSYoHCu9mCHXvnN1h7i8OQ3V73OMLGpQwRD702sAefcRciTr_ebGPwYUzYuGhGlxO2EN03WDymOSWFLv_oCHhwA0y58y2D2Xr3NUK6Qmed7hNcH_USfT49fqxeivXb8-vqYV2YUqlcSGkY00JSQyqmQFslZGVZy1pONLRUUSvL2ljettzQjneKC9EyrZmtpWo7donuDrlDDPPf3OxdMtD32sNUvikVYYKLegJv_4G7MEY_dWvKkkk6LTVDywNkYkgpQtcMcZop_jaUNPP6zXH9o1bsD1_4egE</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>223610008</pqid></control><display><type>article</type><title>Scheduling and optimal register placement for synchronous circuits derived using software pipelining techniques</title><source>ACM Digital Library Complete</source><creator>Chabini, Noureddine ; Aboulhamid, El Mostapha ; Chabini, Ismaïl ; Savaria, Yvon</creator><creatorcontrib>Chabini, Noureddine ; Aboulhamid, El Mostapha ; Chabini, Ismaïl ; Savaria, Yvon</creatorcontrib><description>Data dependency constraints constitute a lower bound P on the minimal clock period of single-phase clocked sequential circuits. In contrast to methods based on basic retiming, clocked sequential circuits with clock period P can always be obtained using software pipelining techniques. Such circuits can be derived by any method that can be framed in the following four-step process: Step 1, determine P; Step 2, compute a valid periodic schedule of the computational elements; Step 3, place registers back to the circuit; Step 4, assign the clock signals to control registers.Methods with polynomial run-time to implement this process are proposed in the literature. They implement these steps sequentially, starting with Step 1. These methods do not know how to optimally place registers which leads to an unnecessary number of registers. In this article, we address the problem of how to simultaneously implement Steps 2 and 3 in order to minimize the total number of registers. We conjecture that the problem is NP-hard in its general form. We formulate the problem for the first time in the literature, and devise a Mixed Integer Linear Program (MILP) to solve it. From this MILP, we derive a linear program to determine approximate solutions to the problem for large general circuits. We show that the proposed approach can handle nonzero clock skew. Experimental results confirm the effectiveness of the approach and show that significant reductions of the number of registers can be obtained although register sharing is not used. When the schedule is given, the proposed approach provides solutions to the problem of how to place the minimal number of registers in Step 3.</description><identifier>ISSN: 1084-4309</identifier><identifier>EISSN: 1557-7309</identifier><identifier>DOI: 10.1145/1059876.1059877</identifier><language>eng</language><publisher>New York: Association for Computing Machinery</publisher><subject>Circuits ; Optimization ; Scheduling ; Software ; Studies</subject><ispartof>ACM transactions on design automation of electronic systems, 2005-04, Vol.10 (2), p.187-204</ispartof><rights>Copyright Association for Computing Machinery Apr 2005</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c299t-66c33a561c0739ead9567d3b3b40aeb191d628cd4bb4c1f4f9455b3aa3d869bf3</citedby><cites>FETCH-LOGICAL-c299t-66c33a561c0739ead9567d3b3b40aeb191d628cd4bb4c1f4f9455b3aa3d869bf3</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,776,780,27901,27902</link.rule.ids></links><search><creatorcontrib>Chabini, Noureddine</creatorcontrib><creatorcontrib>Aboulhamid, El Mostapha</creatorcontrib><creatorcontrib>Chabini, Ismaïl</creatorcontrib><creatorcontrib>Savaria, Yvon</creatorcontrib><title>Scheduling and optimal register placement for synchronous circuits derived using software pipelining techniques</title><title>ACM transactions on design automation of electronic systems</title><description>Data dependency constraints constitute a lower bound P on the minimal clock period of single-phase clocked sequential circuits. In contrast to methods based on basic retiming, clocked sequential circuits with clock period P can always be obtained using software pipelining techniques. Such circuits can be derived by any method that can be framed in the following four-step process: Step 1, determine P; Step 2, compute a valid periodic schedule of the computational elements; Step 3, place registers back to the circuit; Step 4, assign the clock signals to control registers.Methods with polynomial run-time to implement this process are proposed in the literature. They implement these steps sequentially, starting with Step 1. These methods do not know how to optimally place registers which leads to an unnecessary number of registers. In this article, we address the problem of how to simultaneously implement Steps 2 and 3 in order to minimize the total number of registers. We conjecture that the problem is NP-hard in its general form. We formulate the problem for the first time in the literature, and devise a Mixed Integer Linear Program (MILP) to solve it. From this MILP, we derive a linear program to determine approximate solutions to the problem for large general circuits. We show that the proposed approach can handle nonzero clock skew. Experimental results confirm the effectiveness of the approach and show that significant reductions of the number of registers can be obtained although register sharing is not used. When the schedule is given, the proposed approach provides solutions to the problem of how to place the minimal number of registers in Step 3.</description><subject>Circuits</subject><subject>Optimization</subject><subject>Scheduling</subject><subject>Software</subject><subject>Studies</subject><issn>1084-4309</issn><issn>1557-7309</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2005</creationdate><recordtype>article</recordtype><recordid>eNpdkDtPwzAUhS0EEuUxs1oMbKF2_Eg8ooqXVIkBmCPHvmldpXawHRD_nkTtxHSOrj6de3QQuqHknlIulpQIVVfy_qDVCVpQIaqiYkSdTp7UvOCTP0cXKe0IIaKSYoHCu9mCHXvnN1h7i8OQ3V73OMLGpQwRD702sAefcRciTr_ebGPwYUzYuGhGlxO2EN03WDymOSWFLv_oCHhwA0y58y2D2Xr3NUK6Qmed7hNcH_USfT49fqxeivXb8-vqYV2YUqlcSGkY00JSQyqmQFslZGVZy1pONLRUUSvL2ljettzQjneKC9EyrZmtpWo7donuDrlDDPPf3OxdMtD32sNUvikVYYKLegJv_4G7MEY_dWvKkkk6LTVDywNkYkgpQtcMcZop_jaUNPP6zXH9o1bsD1_4egE</recordid><startdate>20050401</startdate><enddate>20050401</enddate><creator>Chabini, Noureddine</creator><creator>Aboulhamid, El Mostapha</creator><creator>Chabini, Ismaïl</creator><creator>Savaria, Yvon</creator><general>Association for Computing Machinery</general><scope>AAYXX</scope><scope>CITATION</scope><scope>JQ2</scope><scope>7SC</scope><scope>7SP</scope><scope>8FD</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>20050401</creationdate><title>Scheduling and optimal register placement for synchronous circuits derived using software pipelining techniques</title><author>Chabini, Noureddine ; Aboulhamid, El Mostapha ; Chabini, Ismaïl ; Savaria, Yvon</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c299t-66c33a561c0739ead9567d3b3b40aeb191d628cd4bb4c1f4f9455b3aa3d869bf3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2005</creationdate><topic>Circuits</topic><topic>Optimization</topic><topic>Scheduling</topic><topic>Software</topic><topic>Studies</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Chabini, Noureddine</creatorcontrib><creatorcontrib>Aboulhamid, El Mostapha</creatorcontrib><creatorcontrib>Chabini, Ismaïl</creatorcontrib><creatorcontrib>Savaria, Yvon</creatorcontrib><collection>CrossRef</collection><collection>ProQuest Computer Science Collection</collection><collection>Computer and Information Systems Abstracts</collection><collection>Electronics &amp; Communications Abstracts</collection><collection>Technology Research Database</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>ACM transactions on design automation of electronic systems</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Chabini, Noureddine</au><au>Aboulhamid, El Mostapha</au><au>Chabini, Ismaïl</au><au>Savaria, Yvon</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Scheduling and optimal register placement for synchronous circuits derived using software pipelining techniques</atitle><jtitle>ACM transactions on design automation of electronic systems</jtitle><date>2005-04-01</date><risdate>2005</risdate><volume>10</volume><issue>2</issue><spage>187</spage><epage>204</epage><pages>187-204</pages><issn>1084-4309</issn><eissn>1557-7309</eissn><abstract>Data dependency constraints constitute a lower bound P on the minimal clock period of single-phase clocked sequential circuits. In contrast to methods based on basic retiming, clocked sequential circuits with clock period P can always be obtained using software pipelining techniques. Such circuits can be derived by any method that can be framed in the following four-step process: Step 1, determine P; Step 2, compute a valid periodic schedule of the computational elements; Step 3, place registers back to the circuit; Step 4, assign the clock signals to control registers.Methods with polynomial run-time to implement this process are proposed in the literature. They implement these steps sequentially, starting with Step 1. These methods do not know how to optimally place registers which leads to an unnecessary number of registers. In this article, we address the problem of how to simultaneously implement Steps 2 and 3 in order to minimize the total number of registers. We conjecture that the problem is NP-hard in its general form. We formulate the problem for the first time in the literature, and devise a Mixed Integer Linear Program (MILP) to solve it. From this MILP, we derive a linear program to determine approximate solutions to the problem for large general circuits. We show that the proposed approach can handle nonzero clock skew. Experimental results confirm the effectiveness of the approach and show that significant reductions of the number of registers can be obtained although register sharing is not used. When the schedule is given, the proposed approach provides solutions to the problem of how to place the minimal number of registers in Step 3.</abstract><cop>New York</cop><pub>Association for Computing Machinery</pub><doi>10.1145/1059876.1059877</doi><tpages>18</tpages></addata></record>
fulltext fulltext
identifier ISSN: 1084-4309
ispartof ACM transactions on design automation of electronic systems, 2005-04, Vol.10 (2), p.187-204
issn 1084-4309
1557-7309
language eng
recordid cdi_proquest_miscellaneous_29035458
source ACM Digital Library Complete
subjects Circuits
Optimization
Scheduling
Software
Studies
title Scheduling and optimal register placement for synchronous circuits derived using software pipelining techniques
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-29T23%3A34%3A06IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Scheduling%20and%20optimal%20register%20placement%20for%20synchronous%20circuits%20derived%20using%20software%20pipelining%20techniques&rft.jtitle=ACM%20transactions%20on%20design%20automation%20of%20electronic%20systems&rft.au=Chabini,%20Noureddine&rft.date=2005-04-01&rft.volume=10&rft.issue=2&rft.spage=187&rft.epage=204&rft.pages=187-204&rft.issn=1084-4309&rft.eissn=1557-7309&rft_id=info:doi/10.1145/1059876.1059877&rft_dat=%3Cproquest_cross%3E844995731%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=223610008&rft_id=info:pmid/&rfr_iscdi=true