A pointcut-based assertion for high-level hardware design

  • Authors:
  • Yusuke Endoh;Takeo Imai;Mikito Iwamasa;Yoshio Kataoka

  • Affiliations:
  • Toshiba Corporation;Toshiba Corporation;Toshiba Corporation;Toshiba Corporation

  • Venue:
  • Proceedings of the 2008 AOSD workshop on Aspects, components, and patterns for infrastructure software
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Verifying very-large-scale integration (VLSI) circuit design using assertions is becoming more common. Herein, an assertion represents a temporal relationship among circuit events over time using temporal logic expression. On the other hand, "high-level design" has also become more common recently. Instead of conventional hardware description languages (HDLs), VLSI designers introduce C-based design languages. Although both of these trends are fairly effective in VLSI development, there is a big gap between these two approaches. Since conventional assertion languages are for conventional HDLs, they only allow specification of change of variables or low-level events raised along with signals. In high-level design, however, there are various high-level events, such as a method call or a state transition which no conventional assertion language can handle. This paper proposes a new assertion language extension, namely, a pointcut-based assertion that enhances an existing assertion language to make assertions available even in high-level design. We introduce a pointcut notion to specify various events from low-level signal-related ones to high-level state transition-related ones. To conduct proof-of-concept, we designed and implemented two assertion languages with pointcut-based assertions, called ASystemC and ASpecC. ASystemC uses the pointcut expressions in AspectC++, and the implementation also uses the AspectC++ compiler as its back-end. We present feasibility and preliminary evaluation of our approach with ASystemC. ASpecC is designed with practical use in mind and based on the continuation join point model with slight modification to support hardware-specific matters. We show that the model is useful for making pointcut-based assertion more robust.