{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,10]],"date-time":"2026-07-10T02:26:27Z","timestamp":1783650387115,"version":"3.55.0"},"reference-count":36,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2010,12,1]],"date-time":"2010-12-01T00:00:00Z","timestamp":1291161600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Archit. Code Optim."],"published-print":{"date-parts":[[2010,12]]},"abstract":"<jats:p>Reconfigurable computers, where one or more FPGAs are attached to a conventional microprocessor, are promising platforms for code acceleration. Despite their advantages, programmability concerns and the lack of efficient design tools\/compilers for FPGAs are preventing the technology's widespread adoption. The traditional compiler technology is microprocessor-based-systems-specific and needs to be customized and augmented to address the needs in reconfigurable computing. The challenges are several due to the resources and performance constraints for FPGAs being drastically different than those of microprocessors, and also that compiling for FPGAs requires laying the computation in space by a circuit rather than in time by a sequence of instructions.<\/jats:p>\n          <jats:p>ROCCC is an optimizing C-to-VHDL compiler specifically targeting the reconfigurable computer platforms. ROCCC includes several high-level optimizations that parallelize and optimize the source code for minimized area and critical path length and maximized throughput. This article presents the effect of ROCCC's high-level transformations on the performance of the generated VHDL output. ROCCC utilizes: (1) several array access optimizations to eliminate redundant memory accesses, (2) procedure-level optimizations to achieve circuit area reductions of up to 88% compared to circuit areas generated from unoptimized codes, (3) loop-level optimizations to increase the throughput, and (4) transformations unique to certain classes of applications. The preceding listed features help ROCCC generate circuits with very large degrees of parallelism capable of very high computation rates.<\/jats:p>","DOI":"10.1145\/1880043.1880044","type":"journal-article","created":{"date-parts":[[2011,1,4]],"date-time":"2011-01-04T13:21:46Z","timestamp":1294147306000},"page":"1-36","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":12,"title":["Impact of high-level transformations within the ROCCC framework"],"prefix":"10.1145","volume":"7","author":[{"given":"Betul","family":"Buyukkurt","sequence":"first","affiliation":[{"name":"University of California, Riverside, Riverside, CA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"John","family":"Cortes","sequence":"additional","affiliation":[{"name":"University of California, Riverside, Riverside, CA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Jason","family":"Villarreal","sequence":"additional","affiliation":[{"name":"University of California, Riverside, Riverside, CA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Walid A.","family":"Najjar","sequence":"additional","affiliation":[{"name":"University of California, Riverside, Riverside, CA"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2010,12,30]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"Aigner G. Diwan A. Heine D. L. Lam M. S. Moore D. L. Murphy B. R. and Sapuntzakis C. 2010. An overview of the SUIF2 compiler infrastructure. Tech. rep. Computer Systems Laboratory Stanford University.  Aigner G. Diwan A. Heine D. L. Lam M. S. Moore D. L. Murphy B. R. and Sapuntzakis C. 2010. An overview of the SUIF2 compiler infrastructure. Tech. rep. Computer Systems Laboratory Stanford University."},{"key":"e_1_2_1_2_1","unstructured":"Altera. 2010a. Automated generation of hardware accelerators with direct memory access from ANSI\/ISO standard C functions. http:\/\/www.altera.com\/literature\/wp\/wp-aghrdwr.pdf.  Altera. 2010a. Automated generation of hardware accelerators with direct memory access from ANSI\/ISO standard C functions. http:\/\/www.altera.com\/literature\/wp\/wp-aghrdwr.pdf."},{"key":"e_1_2_1_3_1","unstructured":"Altera. 2010b. Nios II C2H user guide. http:\/\/www.altera.com\/literature\/ug\/ug_nios2_c2h_compiler.pdf.  Altera. 2010b. Nios II C2H user guide. http:\/\/www.altera.com\/literature\/ug\/ug_nios2_c2h_compiler.pdf."},{"key":"e_1_2_1_4_1","volume-title":"Proceedings of the IPPS\/SPDP Workshops. 570--578","author":"Bondalapati K.","unstructured":"Bondalapati , K. , Diniz , P. , Duncan , P. , Granacki , J. , Hall , M. , Jain , R. , and Ziegler , H . 1999. Defacto: A design environment for adaptive computing technology . In Proceedings of the IPPS\/SPDP Workshops. 570--578 . Bondalapati, K., Diniz, P., Duncan, P., Granacki, J., Hall, M., Jain, R., and Ziegler, H. 1999. Defacto: A design environment for adaptive computing technology. In Proceedings of the IPPS\/SPDP Workshops. 570--578."},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/1037947.1024396"},{"key":"e_1_2_1_6_1","volume-title":"Proceedings of the Conference on Optimizations for DSP and Embedded Systems (ODES) In conjunction with International Symposium on Code Generation and Optimization (CGO'05)","author":"Buyukkurt B.","unstructured":"Buyukkurt , B. , Guo , Z. , and Najjar , W . 2005. Compiler optimization for configurable accelerators . In Proceedings of the Conference on Optimizations for DSP and Embedded Systems (ODES) In conjunction with International Symposium on Code Generation and Optimization (CGO'05) . Buyukkurt, B., Guo, Z., and Najjar, W. 2005. Compiler optimization for configurable accelerators. In Proceedings of the Conference on Optimizations for DSP and Embedded Systems (ODES) In conjunction with International Symposium on Code Generation and Optimization (CGO'05)."},{"key":"e_1_2_1_7_1","volume-title":"Proceedings of the Workshop On Applied Reconfigurable Computing (ARC'06)","author":"Buyukkurt B.","unstructured":"Buyukkurt , B. , Guo , Z. , and Najjar , W . 2006. Impact of loop unrolling on throughput, area and clock frequency in ROCCC: C to VHDL compiler for FPGAs . In Proceedings of the Workshop On Applied Reconfigurable Computing (ARC'06) . Buyukkurt, B., Guo, Z., and Najjar, W. 2006. Impact of loop unrolling on throughput, area and clock frequency in ROCCC: C to VHDL compiler for FPGAs. In Proceedings of the Workshop On Applied Reconfigurable Computing (ARC'06)."},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1109\/2.839323"},{"key":"e_1_2_1_9_1","unstructured":"Celoxica Inc. 2010. Handel-C language. http:\/\/www.celoxica.com.  Celoxica Inc. 2010. Handel-C language. http:\/\/www.celoxica.com."},{"key":"e_1_2_1_10_1","unstructured":"Dellson A. Sandberg G. and Mohl S. 2006. Turning fpgas into supercomputers\u2014Debunking the myths about fpga-based software acceleration. Tech. rep.  Dellson A. Sandberg G. and Mohl S. 2006. Turning fpgas into supercomputers\u2014Debunking the myths about fpga-based software acceleration. Tech. rep."},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.5555\/795659.795904"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/503048.503082"},{"key":"e_1_2_1_13_1","doi-asserted-by":"crossref","unstructured":"Dydel S. and Bala P. 2004. Large scale protein sequence alignment using fpga reprogrammable logic devices. In Field Programmable Logic and Application. Springer 23--32.  Dydel S. and Bala P. 2004. Large scale protein sequence alignment using fpga reprogrammable logic devices. In Field Programmable Logic and Application. Springer 23--32.","DOI":"10.1007\/978-3-540-30117-2_5"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/1176254.1176322"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/360276.360326"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.5555\/795659.795916"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/997163.997199"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1109\/DATE.2005.234"},{"key":"e_1_2_1_19_1","volume-title":"Proceeding of the International Conference on VLSI Design (VLSI'03)","author":"Gupta S.","unstructured":"Gupta , S. , Dutt , N. , Gupta , R. , and Nicolau , A . 2003. Spark: A high-level synthesis framework for applying parallelizing compiler transformations . In Proceeding of the International Conference on VLSI Design (VLSI'03) . Gupta, S., Dutt, N., Gupta, R., and Nicolau, A. 2003. Spark: A high-level synthesis framework for applying parallelizing compiler transformations. In Proceeding of the International Conference on VLSI Design (VLSI'03)."},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.5555\/1128020.1128563"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1450095.1450105"},{"key":"e_1_2_1_22_1","unstructured":"ImpulseC. 2010. ImpulseC homepage. http:\/\/www.impulsec.com.  ImpulseC. 2010. ImpulseC homepage. http:\/\/www.impulsec.com."},{"key":"e_1_2_1_23_1","first-page":"543","article-title":"Reconfigurable systems for sequence alignment and for general dynamic programming","volume":"4","author":"Jacobi R.","year":"2005","unstructured":"Jacobi , R. , Ayala-Rincon , M. , Carvalho , L. , Llanos , C. , and Hartenstein , R. 2005 . Reconfigurable systems for sequence alignment and for general dynamic programming . Genet Mol. Res. 4 , 3, 543 -- 552 . Jacobi, R., Ayala-Rincon, M., Carvalho, L., Llanos, C., and Hartenstein, R. 2005. Reconfigurable systems for sequence alignment and for general dynamic programming. Genet Mol. Res. 4, 3, 543--552.","journal-title":"Genet Mol. Res."},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2002.1033026"},{"key":"e_1_2_1_25_1","unstructured":"Mentor Graphics. 2010. Catapult C synthesis. http:\/\/www.mentor.com\/products\/c-based.design\/catapult.c.synthesis\/index.cfm.  Mentor Graphics. 2010. Catapult C synthesis. http:\/\/www.mentor.com\/products\/c-based.design\/catapult.c.synthesis\/index.cfm."},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2003.1220583"},{"key":"e_1_2_1_27_1","volume-title":"Proceedings of the 16th International Conference on VLSI Design (VLSID'03)","author":"Puttegowda K.","unstructured":"Puttegowda , K. , Worek , W. , Pappas , N. , Dandapani , A. , Athanas , P. , and Dickerman , A . 2003. A run-time reconfigurable system for gene-sequence searching . In Proceedings of the 16th International Conference on VLSI Design (VLSID'03) . 561--566. Puttegowda, K., Worek, W., Pappas, N., Dandapani, A., Athanas, P., and Dickerman, A. 2003. A run-time reconfigurable system for gene-sequence searching. In Proceedings of the 16th International Conference on VLSI Design (VLSID'03). 561--566."},{"key":"e_1_2_1_28_1","unstructured":"SGI Inc. SGI RASC RC100 Blade. http:\/\/www.sgi.com\/products\/rasc\/datasheets.html.  SGI Inc. SGI RASC RC100 Blade. http:\/\/www.sgi.com\/products\/rasc\/datasheets.html."},{"key":"e_1_2_1_29_1","volume-title":"Proceedings of the 13th Symposium on Integrated Circuits and Systems Design (SBCCI'00)","author":"Singpiel H.","unstructured":"Singpiel , H. , Simmler , H. , Kugel , A. , Manner , R. , Vieira , A. C. C. , Galvez-Durand , F. , de Alcantara , J. M. S. , and Alves , V. C . 2000. Implementation of cryptographic applications on the reconfigurable fpga coprocessor microenable . In Proceedings of the 13th Symposium on Integrated Circuits and Systems Design (SBCCI'00) . IEEE Computer Society, 359. Singpiel, H., Simmler, H., Kugel, A., Manner, R., Vieira, A. C. C., Galvez-Durand, F., de Alcantara, J. M. S., and Alves, V. C. 2000. Implementation of cryptographic applications on the reconfigurable fpga coprocessor microenable. In Proceedings of the 13th Symposium on Integrated Circuits and Systems Design (SBCCI'00). IEEE Computer Society, 359."},{"key":"e_1_2_1_30_1","unstructured":"Smith M. D. and Holloway G. 2010a. An introduction to Machine SUIF and its portable libraries for analysis and optimization. Tech. rep. Division of Engineering and Applied Sciences Harvard University.  Smith M. D. and Holloway G. 2010a. An introduction to Machine SUIF and its portable libraries for analysis and optimization. Tech. rep. Division of Engineering and Applied Sciences Harvard University."},{"key":"e_1_2_1_31_1","unstructured":"Smith M. D. and Holloway G. 2010b. Machine-SUIF SUIFvm Library. Tech. rep. Division of Engineering and Applied Sciences Harvard University.  Smith M. D. and Holloway G. 2010b. Machine-SUIF SUIFvm Library. Tech. rep. Division of Engineering and Applied Sciences Harvard University."},{"key":"e_1_2_1_32_1","unstructured":"Synfora I. 2010a. Synfora homepage. http:\/\/www.synfora.com.  Synfora I. 2010a. Synfora homepage. http:\/\/www.synfora.com."},{"key":"e_1_2_1_33_1","unstructured":"Synfora I. 2010b. PICO technology white paper (v.10). http:\/\/www.synfora.com\/about\/files\/PICO_technology_whitepaper_v1.0.pdf.  Synfora I. 2010b. PICO technology white paper (v.10). http:\/\/www.synfora.com\/about\/files\/PICO_technology_whitepaper_v1.0.pdf."},{"key":"e_1_2_1_34_1","unstructured":"SystemC. 2010. SystemC consortium. http:\/\/www.systemc.org.  SystemC. 2010. SystemC consortium. http:\/\/www.systemc.org."},{"key":"e_1_2_1_35_1","volume-title":"Proceedings of the International Conference on Compiler Construction. 179--196","author":"Thies B.","unstructured":"Thies , B. , Karczmarek , M. , and Amarasinghe , S . 2002. Streamit: A language for streaming applications . In Proceedings of the International Conference on Compiler Construction. 179--196 . Thies, B., Karczmarek, M., and Amarasinghe, S. 2002. Streamit: A language for streaming applications. In Proceedings of the International Conference on Compiler Construction. 179--196."},{"key":"e_1_2_1_36_1","unstructured":"Trimaran. 2010. An infrastructure for research in ILP. http:\/\/www.trimaran.org.  Trimaran. 2010. An infrastructure for research in ILP. http:\/\/www.trimaran.org."}],"container-title":["ACM Transactions on Architecture and Code Optimization"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1880043.1880044","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1880043.1880044","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T10:52:16Z","timestamp":1750243936000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1880043.1880044"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2010,12]]},"references-count":36,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2010,12]]}},"alternative-id":["10.1145\/1880043.1880044"],"URL":"https:\/\/doi.org\/10.1145\/1880043.1880044","relation":{},"ISSN":["1544-3566","1544-3973"],"issn-type":[{"value":"1544-3566","type":"print"},{"value":"1544-3973","type":"electronic"}],"subject":[],"published":{"date-parts":[[2010,12]]},"assertion":[{"value":"2007-03-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2010-08-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2010-12-30","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}