{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:32:29Z","timestamp":1750221149934,"version":"3.41.0"},"reference-count":36,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2018,5,22]],"date-time":"2018-05-22T00:00:00Z","timestamp":1526947200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"IPM","award":["Shahid Beheshti University","CS1397-2-03"],"award-info":[{"award-number":["Shahid Beheshti University","CS1397-2-03"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Embed. Comput. Syst."],"published-print":{"date-parts":[[2018,5,31]]},"abstract":"<jats:p>The impact of extending the instruction set architecture (ISA) of a conventional binary processor by a set of redundant-digit arithmetic instructions is studied. Selected binary arithmetic instructions within a given code sequence are replaced with appropriate redundant-digit ones. The selection criteria is so enforced to lead to overall reduction of execution energy and energy-delay product (EDP). A special branch and bound algorithm is devised to modify the dataflow graph (DFG) to a new one that takes advantage of the extended redundant-digit instruction set. The DFG is obtained, via an in-house tool, from the intermediate code representation that is normally produced by the utilized compiler. The required redundant-digit arithmetic operations (including a multiplier, a multiply accumulator, and three- to four-operand redundant-digit adders specially designed for this work) have been synthesized on 45nm NanGate technology by a Synopsys Design Compiler. To evaluate the impact of the proposed ISA augmentation on actual code execution, the simulation and evaluation platform of our choice is an MIPS processor whose ISA is extended by the proposed redundant-digit instructions. Several digital signal processing benchmarks are utilized as the source of the baseline MIPS codes, which are converted (via the aforementioned algorithm) to the equivalent mixed binary\/redundant-digit codes. Our experiments, as such, show up to 26% energy and 44% EDP savings.<\/jats:p>","DOI":"10.1145\/3202664","type":"journal-article","created":{"date-parts":[[2018,5,23]],"date-time":"2018-05-23T15:08:42Z","timestamp":1527088122000},"page":"1-21","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":1,"title":["Extended Redundant-Digit Instruction Set for Energy-Efficient Processors"],"prefix":"10.1145","volume":"17","author":[{"given":"Saba","family":"Amanollahi","sequence":"first","affiliation":[{"name":"Shahid Beheshti University, Tehran, Iran"}]},{"given":"Ghassem","family":"Jaberipur","sequence":"additional","affiliation":[{"name":"Shahid Beheshti University, Tehran, Iran"}]}],"member":"320","published-online":{"date-parts":[[2018,5,22]]},"reference":[{"volume-title":"Proceedings of the IEEE International Symposium on Circuits and Systems (ISCAS\u201911)","year":"2011","author":"Baran D.","key":"e_1_2_1_1_1"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1109\/TC.2014.2366738"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1049\/iet-cdt.2011.0059"},{"key":"e_1_2_1_4_1","unstructured":"S. M. Kuo and W. S. Gan. 2005. Digital Signal Processors: Architectures Implementations and Applications. Pearson Prentice Hall.  S. M. Kuo and W. S. Gan. 2005. Digital Signal Processors: Architectures Implementations and Applications. Pearson Prentice Hall."},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/1629395.1629401"},{"key":"e_1_2_1_6_1","doi-asserted-by":"crossref","unstructured":"H. A. H. Fahmy. 2003. A Redundant Digit Floating Point System. PhD Dissertation. Stanford University.   H. A. H. Fahmy. 2003. A Redundant Digit Floating Point System. PhD Dissertation. Stanford University.","DOI":"10.1117\/12.505272"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1109\/TC.2009.152"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/2764458"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/775832.775897"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1109\/TCAD.2005.855950"},{"volume-title":"Arithmetic Circuits for DSP Applications, Pramod Kumar Meher, and Thanos Stouraitis (Eds.), chap. 8","author":"Jaberipur G.","key":"e_1_2_1_11_1"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1109\/TVLSI.2016.2604346"},{"key":"e_1_2_1_13_1","unstructured":"D. A. Patterson and J. L. Hennessy. 2004. Computer Organization and Design: The Hardware\/Software Interface (3rd ed.). Morgan Kaufmann.   D. A. Patterson and J. L. Hennessy. 2004. Computer Organization and Design: The Hardware\/Software Interface (3rd ed.). Morgan Kaufmann."},{"key":"e_1_2_1_14_1","unstructured":"MIPS789. 2014. Retrieved 2017 from https:\/\/opencores.org\/project mips789.  MIPS789. 2014. Retrieved 2017 from https:\/\/opencores.org\/project mips789."},{"key":"e_1_2_1_15_1","unstructured":"The GNU Compiler Collection. 2016. Retrieved 2017 from https:\/\/GCC.gnu.org.  The GNU Compiler Collection. 2016. Retrieved 2017 from https:\/\/GCC.gnu.org."},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.5555\/1128020.1128563"},{"volume-title":"Proceedings of 30th Annual IEEE\/ACM International Symposium on Microarchitecture","year":"1997","author":"Lee C.","key":"e_1_2_1_17_1"},{"volume-title":"Proceedings of Conference Record of the 41st Asilomar Conference on Signals, Systems and Computers","year":"2007","author":"Cardarilli G. C.","key":"e_1_2_1_18_1"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/MCAS.2015.2484118"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1049\/el:20020192"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1109\/TENCON.2014.7022338"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.compeleceng.2009.12.002"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1109\/12.2148"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1109\/4.90098"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF00929624"},{"volume-title":"Proceedings of IEEE North-East Workshop on Circuits and Systems","year":"2006","author":"Belangerm N.","key":"e_1_2_1_26_1"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1109\/PGEC.1964.263830"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1109\/TC.2005.115"},{"key":"e_1_2_1_29_1","unstructured":"NanGate FreePDK Opn Cell Library. 2011. Retrieved 2014 from http:\/\/www.NanGate.com\/?page_id=2325  NanGate FreePDK Opn Cell Library. 2011. Retrieved 2014 from http:\/\/www.NanGate.com\/?page_id=2325"},{"key":"e_1_2_1_30_1","unstructured":"D. A. Patterson. 2007. Computer Architecture: A Quantitative Approach (5th ed.). Morgan Kaufmann.  D. A. Patterson. 2007. Computer Architecture: A Quantitative Approach (5th ed.). Morgan Kaufmann."},{"key":"e_1_2_1_31_1","unstructured":"Jon Stokes. 2007. Inside the machine: An Illustrated Introduction to Microprocessors and Computer Architecture No Starch Press San Francisco.   Jon Stokes. 2007. Inside the machine: An Illustrated Introduction to Microprocessors and Computer Architecture No Starch Press San Francisco."},{"key":"e_1_2_1_32_1","unstructured":"The ARM State Register Set. 2016. Retrieved 2017 from http:\/\/infocenter.arm.com\/help\/index.jsp?topic=\/com.arm.doc.ddi0211h\/ch02s08s01.html.  The ARM State Register Set. 2016. Retrieved 2017 from http:\/\/infocenter.arm.com\/help\/index.jsp?topic=\/com.arm.doc.ddi0211h\/ch02s08s01.html."},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS.2011.52"},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1109\/TVLSI.2008.2001863"},{"key":"e_1_2_1_35_1","unstructured":"K. Cooper and L. Torczon. 2011. Engineering a Compiler (2nd ed.). Morgan Kaufmann.   K. Cooper and L. Torczon. 2011. Engineering a Compiler (2nd ed.). Morgan Kaufmann."},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1109\/TC.2005.156"}],"container-title":["ACM Transactions on Embedded Computing Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3202664","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3202664","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T01:08:22Z","timestamp":1750208902000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3202664"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,5,22]]},"references-count":36,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2018,5,31]]}},"alternative-id":["10.1145\/3202664"],"URL":"https:\/\/doi.org\/10.1145\/3202664","relation":{},"ISSN":["1539-9087","1558-3465"],"issn-type":[{"type":"print","value":"1539-9087"},{"type":"electronic","value":"1558-3465"}],"subject":[],"published":{"date-parts":[[2018,5,22]]},"assertion":[{"value":"2017-07-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2018-03-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2018-05-22","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}