Modelling and Assertion-Based Verification of Run-Time Reconfigurable Designs Using Functional Programming Abstractions

With the increasing design and production costs and long time-to-market for Application Specific Integrated Circuits (ASICs), implementing digital circuits on reconfigurable hardware is becoming a more common practice. A reconfigurable hardware combines the flexibility of the software domain with the high performance of the hardware domain and provides a flexible life cycle management for the product with a lower cost. A complete design and assertion-based verification flow for Run-Time Reconfigurable (RTR) designs using functional programming abstractions of Haskell are proposed in this article, in which partially reconfigurable hardware is used as the implementation platform. The proposed flow includes modelling of RTR designs in high levels of abstraction by using higher-order functions and polymorphism in Haskell, as well as their implementation on partially reconfigurable Field Programmable Gate Arrays (FPGAs). Assertion-based verification (ABV) is used as the verification approach which is integrated in the early stages of the design flow. Assertions can be used to verify specifications of designs in different verification methods such as simulation-based and formal verification. A partitioning algorithm is proposed for clustering the assertion-checker circuits to implement the verification circuits in a limited reconfigurable area in the target FPGA. The proposed flow is evaluated by using example designs on a Zynq FPGA as the hardware/software implementation platform.

[1]  Laurent Fesquet,et al.  PSL-based online monitoring of digital systems , 2005, FDL.

[2]  Chun-Hsian Huang,et al.  UML-based hardware/software co-design platform for dynamically partially reconfigurable network security systems , 2008, 2008 13th Asia-Pacific Computer Systems Architecture Conference.

[3]  Afreen Siddiqi,et al.  Modeling Methods and Conceptual Design Principles for Reconfigurable Systems , 2008 .

[4]  S. Tahar,et al.  Assertion based verification of PSL for SystemC designs , 2004, 2004 International Symposium on System-on-Chip, 2004. Proceedings..

[5]  Kwang-Ting Cheng,et al.  A case study of Time-Multiplexed Assertion Checking for post-silicon debugging , 2010, 2010 IEEE International High Level Design Validation and Test Workshop (HLDVT).

[6]  Pao-Ann Hsiung,et al.  UML-Based Design Flow and Partitioning Methodology for Dynamically Reconfigurable Computing Systems , 2005, EUC.

[7]  Hsiu-Ming Chang,et al.  Time-Multiplexed Online Checking , 2011, IEEE Transactions on Computers.

[8]  Kenichi Kuroda,et al.  Dynamic Module Library for System Level Modeling and Simulation of Dynamically Reconfigurable Systems , 2008, J. Comput..

[9]  Andreas Raabe Describing and simulating dynamic reconfiguration in systemC exemplified by a dedicated 3D collision detection hardware , 2008 .

[10]  Christian Haubelt,et al.  System Level Modeling and Performance Simulation for Dynamic Reconfigurable Computing Systems in SystemC , 2007, MBMV.

[11]  Yang Qu,et al.  System-Level Modeling of Dynamically Reconfigurable Co-processors , 2004, FPL.

[12]  Alan D. George,et al.  High-Level Synthesis of In-Circuit Assertions for Verification, Debugging, and Timing Analysis , 2011, Int. J. Reconfigurable Comput..

[13]  Sorin Alexander Huss,et al.  Advances in Design and Specification Languages for Embedded Systems , 2007 .

[14]  Steven Skiena,et al.  The Algorithm Design Manual , 2020, Texts in Computer Science.

[15]  Jean-Luc Dekeyser,et al.  MARTE based modeling approach for Partial Dynamic Reconfigurable FPGAs , 2008, 2008 IEEE/ACM/IFIP Workshop on Embedded Systems for Real-Time Multimedia.

[16]  Bahram N. Uchevler,et al.  Synthesizable assertion checkers in high levels of abstraction , 2013, 2013 IEEE 20th International Conference on Electronics, Circuits, and Systems (ICECS).

[17]  Florian Eibensteiner,et al.  SynPSL: Behavioral Synthesis of PSL Assertions , 2009, EUROCAST.

[18]  Florian Dittmann Design of Partially Reconfigurable Systems : From Abstract Modeling to Practical Realization , 2006 .

[19]  A. Vachoux,et al.  Applications of Specification and Design Languages for Socs: Selected Papers from Fdl 2005 , 2006 .

[20]  Guy Gogniat,et al.  UML design for dynamically reconfigurable multiprocessor embedded systems , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[21]  Zeljko Zilic,et al.  Hardware Assertion Checkers in On-line Detection of Faults in a Hierarchical-Ring Network-On-Chip , 2007 .

[22]  Guy Gogniat,et al.  Dynamic applications on reconfigurable systems: From UML model design to FPGAs implementation , 2011, 2011 Design, Automation & Test in Europe.

[23]  Katell Morin-Allory,et al.  Online Monitoring of Properties Built on Regular Expressions Sequences , 2007 .

[24]  Kostas Masselos,et al.  System-level modeling of dynamically reconfigurable hardware with SystemC , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[25]  Christiaan Pieter Rudolf Baaij,et al.  Digital circuit in CλaSH: functional specifications and type-directed synthesis , 2015 .

[26]  Zeljko Zilic,et al.  Generating Hardware Assertion Checkers , 2008 .