Abstract
We propose and evaluate a framework to test the functional correctness of coarse-grained reconfigurable array (CGRA) processors for pre-silicon verification and post-silicon validation. To reflect the reconfigurable nature of CGRAs, an architectural model of the system under test is built directly from the hardware description files. A guided place-and-routing algorithm is used to map operations and operands onto the heterogeneous processing elements (PE). Test coverage is maximized by favoring unexercised parts of the architecture. Requiring no explicit knowledge about the semantics of operations, the random test program generator (RTPG) framework seamlessly supports custom ISA extensions.
The proposed framework is applied to the Samsung Reconfigurable Processor, a modulo-scheduled CGRA integrated in smartphones, cameras, printers, and smart TVs. Experiments demonstrate that the RTPG is versatile, efficient, and quickly achieves a high coverage. In addition to detecting all randomly inserted faults, the generated test programs also exposed two yet unknown actual faults in the architecture.
- Allon Adir, Eli Almog, Laurent Fournier, Eitan Marcus, Michal Rimon, Michael Vinov, and Avi Ziv. 2004. Genesys-Pro: Innovations in Test Program Generation for Functional Processor Verification. IEEE Des. Test 21, 2 (March 2004), 84–93. Google Scholar
Digital Library
- Allon Adir, Shady Copty, Shimon Landa, Amir Nahir, Gil Shurek, Avi Ziv, Charles Meissner, and John Schumann. 2011. A unified methodology for pre-silicon verification and post-silicon validation. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE ’11). 1–6.Google Scholar
Cross Ref
- Allon Adir, Amir Nahir, Avi Ziv, Charles Meissner, and John Schumann. 2011. Reaching Coverage Closure in Post-silicon Validation. In Hardware and Software: Verification and Testing, Sharon Barner, Ian Harris, Daniel Kroening, and Orna Raz (Eds.). Lecture Notes in Computer Science, Vol. 6504. Springer Berlin Heidelberg, 60–75. Google Scholar
Digital Library
- Eyal Bin, Roy Emek, Gil Shurek, and Avi Ziv. 2002. Using a constraint satisfaction formulation and solution techniques for random test program generation. IBM Systems Journal 41, 3 (July 2002), 386–402. Google Scholar
Digital Library
- Youngchul Cho, Seonghun Jeong, J. Jeong, H. Shim, Yenjo Han, Soojung Ryu, and Jeongwook Kim. 2012. Case Study: Verification Framework of Samsung Reconfigurable Processor. In 13th International Workshop on Microprocessor Test and Verification (MTV), 2012. 19–23. Google Scholar
Digital Library
- Edmund M. Clarke, Orna Grumberg, and Doron A. Peled. 1999. Model Checking. The MIT Press. Google Scholar
Digital Library
- Fulvio Corno, Gianluca Cumani, Matteo Sonza Reorda, and Giovanni Squillero. 2003. Fully Automatic Test Program Generation for Microprocessor Cores. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE ’03). IEEE Computer Society, Washington, DC, USA, 11006–. http://dl.acm.org/citation.cfm?id=789083.1022854 Google Scholar
Digital Library
- Julio Oliveira Filho, Stephan Masekowsky, Thomas Schweizer, and Wolfgang Rosenstiel. 2009. CGADL: An Architecture Description Language for Coarse-Grained Reconfigurable Arrays. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 17, 9 (2009), 1247–1259. Google Scholar
Digital Library
- Shai Fine, A. Freund, I. Jaeger, Y. Mansour, Yehuda Naveh, and A. Ziv. 2006. Harnessing Machine Learning to Improve the Success Rate of Stimuli Generation. IEEE Trans. Comput. 55, 11 (2006), 1344–1355. Google Scholar
Digital Library
- Nikos Foutris, Dimitris Gizopoulos, Mihalis Psarakis, Xavier Vera, and Antonio Gonzalez. 2011. Accelerating microprocessor silicon validation by exposing ISA diversity. In Proceedings of the 44th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 44). 386–397. Google Scholar
Digital Library
- Giuseppe Di Guglielmo, Luigi Di Guglielmo, Franco Fummi, and Graziano Pravadelli. 2011. Efficient Generation of Stimuli for Functional Verification by Backjumping Across Extended FSMs. J. Electron. Test. 27, 2 (April 2011), 137–162. Google Scholar
Digital Library
- Alexander Kamkin, Eugene Kornykhin, and Dmitry Vorobyev. 2011. Reconfigurable Model-Based Test Program Generator for Microprocessors. In IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops (ICSTW), 2011. 47–54. Google Scholar
Digital Library
- Changmoo Kim, Mookyoung Chung, Yeongon Cho, Mario Konijnenburg, Soojung Ryu, and Jeongwook Kim. 2012. ULP-SRP: Ultra low power Samsung Reconfigurable Processor for biomedical applications. In Field-Programmable Technology (FPT), 2012 International Conference on. IEEE, 329–334.Google Scholar
Cross Ref
- Ho Fai Ko and Nicola Nicolici. 2008. Automated Trace Signals Identification and State Restoration for Improving Observability in PostSilicon Validation. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE ’08). 1298–1303. Google Scholar
Digital Library
- Heon-Mo Koo and Prabhat Mishra. 2008. Specification-based compaction of directed tests for functional validation of pipelined processors. In Proceedings of the 6th IEEE/ACM/IFIP international conference on Hardware/Software codesign and system synthesis (CODES+ISSS ’08). 137–142. Google Scholar
Digital Library
- Monica Lam. 1988. Software Pipelining: An Effective Scheduling Technique for VLIW Machines. In Proceedings of the ACM SIGPLAN 1988 Conference on Programming Language Design and Implementation (PLDI ’88). ACM, New York, NY, USA, 318–328. Google Scholar
Digital Library
- Jaedon Lee, Youngsam Shin, Won-Jong Lee, Soojung Ryu, and Kim Jeongwook. 2013. Real-time ray tracing on coarse-grained reconfigurable processor. In International Conference on Field-Programmable Technology (FPT). 192–197.Google Scholar
Cross Ref
- Won-Jong Lee, Shi-Hwa Lee, Jae-Ho Nah, Jin-Woo Kim, Youngsam Shin, Jaedon Lee, and Seok-Yoon Jung. 2012. SGRT: a scalable mobile GPU architecture based on ray tracing. In ACM SIGGRAPH 2012 Posters. ACM, 44. Google Scholar
Digital Library
- Xiao Liu and Qiang Xu. 2009. Trace signal selection for visibility enhancement in post-silicon validation. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE ’09). European Design and Automation Association, Leuven, Belgium, 1338–1343. http://dl. acm.org/citation.cfm?id=1874620.1874942 Google Scholar
Digital Library
- B. Mei, B. Sutter, T. Aa, M. Wouters, A. Kanstein, and S. Dupont. 2008. Implementation of a Coarse-Grained Reconfigurable Media Processor for AVC Decoder. Journal of Signal Processing Systems 51, 3 (2008), 225–243. Google Scholar
Digital Library
- Bingfeng Mei, Serge Vernalde, Diederik Verkest, Hugo Man, and Rudy Lauwereins. 2003. Field Programmable Logic and Application: 13th International Conference, FPL 2003, Lisbon, Portugal, September 1-3, 2003 Proceedings. Springer Berlin Heidelberg, Berlin, Heidelberg, Chapter ADRES: An Architecture with Tightly Coupled VLIW Processor and Coarse-Grained Reconfigurable Matrix, 61–70.Google Scholar
- Bingfeng Mei, Serge Vernalde, Diedrik Verkest, Hugo De Man, and Rudy Lauwereins. 2002. DRESC: a retargetable compiler for coarsegrained reconfigurable architectures. In 2002 IEEE International Conference on Field-Programmable Technology, 2002. (FPT). Proceedings. 166–173.Google Scholar
- Prabhat Mishra and Nikil Dutt. 2005. Functional Coverage Driven Test Generation for Validation of Pipelined Processors. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE ’05). IEEE Computer Society, Washington, DC, USA, 678–683. Google Scholar
Digital Library
- Prabhat Mishra and Nikil Dutt. 2008. Specification-driven directed test generation for validation of pipelined processors. ACM Transactions on Design Automation of Electronic Systems 13, 3, Article 42 (July 2008), 36 pages. Google Scholar
Digital Library
- Taewook Oh, Bernhard Egger, Hyunchul Park, and Scott Mahlke. 2009. Recurrence Cycle Aware Modulo Scheduling for Coarse-grained Reconfigurable Architectures. In Proceedings of the 2009 ACM SIG-PLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES ’09). ACM, New York, NY, USA, 21–30. Google Scholar
Digital Library
- Hyunchul Park, Kevin Fan, Scott A. Mahlke, Taewook Oh, Heeseok Kim, and Hong-seok Kim. 2008. Edge-centric modulo scheduling for coarse-grained reconfigurable architectures. In Proceedings of the 17th international conference on Parallel architectures and compilation techniques (PACT ’08). ACM, New York, NY, USA, 166–176. Google Scholar
Digital Library
- Yongjun Park, Hyunchul Park, and Scott Mahlke. 2009. CGRA Express: Accelerating Execution Using Dynamic Operation Fusion. In Proceedings of the 2009 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASES ’09). ACM, New York, NY, USA, 271–280. Google Scholar
Digital Library
- Xiaoke Qin and Prabhat Mishra. 2014. Scalable Test Generation by Interleaving Concrete and Symbolic Execution. In Proceedings of the 27th International Conference on VLSI Design (VLSID ’14). IEEE Computer Society, Washington, DC, USA, 104–109. Google Scholar
Digital Library
- Marc Quax, Jos Huisken, and Jef van Meerbergen. 2004. A Scalable Implementation of a Reconfigurable WCDMA Rake Receiver. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE ’04). IEEE Computer Society, Washington, DC, USA, 30230–. http://dl.acm.org/citation.cfm?id=968880.969243 Google Scholar
Digital Library
- B. Ramakrishna Rau. 1994. Iterative Modulo Scheduling: An Algorithm for Software Pipelining Loops. In Proceedings of the 27th Annual International Symposium on Microarchitecture (MICRO 27). ACM, New York, NY, USA, 63–74. Google Scholar
Digital Library
- Sandy Ray and Warren A. Hunt. 2009. Connecting pre-silicon and post-silicon verification. In Formal Methods in Computer-Aided Design (FMCAD). 160–163.Google Scholar
- Markus Rullmann, Sebastian Siegel, Renate Merker, Julio A. Oliveira Filho, Thomas Schweizer, Tobias Oppold, and Wolfgang; Rosenstiel. 2007. Efficient Mapping and Functional Verification of Parallel Algorithms on a MultiüContext Reconfigurable Architecture. In 20th International Conference on Architecture of Computing Systems (ARCS).Google Scholar
- Ernesto Sanchez, Giovanni Squillero, and Alberto Tonda. 2011. Automatic Generation of Software-based Functional Failing Test for Speed Debug and On-silicon Timing Verification. In 12th International Workshop on Microprocessor Test and Verification (MTV). Google Scholar
Digital Library
- Dongkwan Suh, Kiseok Kwon, Sukjin Kim, Soojung Ryu, and Jeongwook Kim. 2012. Design space exploration and implementation of a high performance and low area Coarse Grained Reconfigurable Processor. In International Conference on Field-Programmable Technology (FPT). 67–70.Google Scholar
Cross Ref
- Miroslav N. Velev and Ping Gao. 2011. Exploiting Abstraction for Efficient Formal Verification of DSPs with Arrays of Reconfigurable Functional Units. In Formal Methods and Software Engineering, Shengchao Qin and Zongyan Qiu (Eds.). Lecture Notes in Computer Science, Vol. 6991. Springer Berlin Heidelberg, 307–322. Google Scholar
Digital Library
Index Terms
Verification of coarse-grained reconfigurable arrays through random test programs
Recommendations
Verification of coarse-grained reconfigurable arrays through random test programs
LCTES 2018: Proceedings of the 19th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded SystemsWe propose and evaluate a framework to test the functional correctness of coarse-grained reconfigurable array (CGRA) processors for pre-silicon verification and post-silicon validation. To reflect the reconfigurable nature of CGRAs, an architectural ...
Random test program generation for verification and validation of the Samsung Reconfigurable Processor
Highlights- A framework for verification and validation of coarse-grained reconfigurable architectures is presented.
AbstractThis paper describes a framework to verify the functional correctness of the Samsung Reconfigurable Processor, a dual-mode very-long instruction word (VLIW) and coarse-grained reconfigurable array (CGRA) processor integrated in ...
A Mixed-Grained Reconfigurable Computing Platform for Multiple-Standard Video Decoding (Abstract Only)
FPGA '15: Proceedings of the 2015 ACM/SIGDA International Symposium on Field-Programmable Gate ArraysA mixed-grained reconfigurable computing platform targeting multiple-standard video decoding is proposed in this paper. The platform integrates eight coarse-grained Reconfigurable Processing Units (RPUs), each of which consists of 16×16 multi-functional ...







Comments