Instruction-Level Abstraction (ILA): A Uniform Specification for System-on-Chip (SoC) Verification

被引:30
|
作者
Huang, Bo-Yuan [1 ]
Zhang, Hongce [1 ]
Subramanyan, Pramod [2 ]
Vizel, Yakir [3 ]
Gupta, Aarti [1 ]
Malik, Sharad [1 ]
机构
[1] Princeton Univ, 1 Nassau Hall, Princeton, NJ 08544 USA
[2] Indian Inst Technol Kanpur, Kanpur 208016, Uttar Pradesh, India
[3] Technion Israel Inst Technol, Viazman 87, IL-3200003 Haifa, Haifa District, Israel
关键词
System on chip; hardware specification; application-specific accelerator; architecture; instruction-level abstraction; formal verification; equivalence checking;
D O I
10.1145/3282444
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Modern Systems-on-Chip (SoC) designs are increasingly heterogeneous and contain specialized semi-programmable accelerators in addition to programmable processors. In contrast to the pre-accelerator era, when the ISA played an important role in verification by enabling a clean separation of concerns between software and hardware, verification of these "accelerator-rich" SoCs presents new challenges. From the perspective of hardware designers, there is a lack of a common framework for formal functional specification of accelerator behavior. From the perspective of software developers, there exists no unified framework for reasoning about software/hardware interactions of programs that interact with accelerators. This article addresses these challenges by providing a formal specification and high-level abstraction for accelerator functional behavior. It formalizes the concept of an Instruction Level Abstraction (ILA), developed informally in our previous work, and shows its application in modeling and verification of accelerators. This formal ILA extends the familiar notion of instructions to accelerators and provides a uniform, modular, and hierarchical abstraction for modeling software-visible behavior of both accelerators and programmable processors. We demonstrate the applicability of the ILA through several case studies of accelerators (for image processing, machine learning, and cryptography), and a general-purpose processor (RISC-V). We show how the ILA model facilitates equivalence checking between two ILAs, and between an ILA and its hardware finite-state machine (FSM) implementation. Further, this equivalence checking supports accelerator upgrades using the notion of ILA compatibility, similar to processor upgrades using ISA compatibility.
引用
收藏
页数:24
相关论文
共 50 条
  • [1] ILA-MCM: Integrating Memory Consistency Models with Instruction-Level Abstractions for Heterogeneous System-on-Chip Verification
    Zhang, Hongce
    Trippel, Caroline
    Manerkar, Yatin A.
    Gupta, Aarti
    Martonosi, Margaret
    Malik, Sharad
    [J]. PROCEEDINGS OF THE 2018 18TH CONFERENCE ON FORMAL METHODS IN COMPUTER AIDED DESIGN (FMCAD), 2018, : 12 - 21
  • [2] SoC Protocol Implementation Verification Using Instruction-Level Abstraction Specifications
    Lu, Huaixi
    Xing, Yue
    Gupta, Aarti
    Malik, Sharad
    [J]. ACM TRANSACTIONS ON DESIGN AUTOMATION OF ELECTRONIC SYSTEMS, 2023, 28 (06)
  • [3] Template-Based Parameterized Synthesis of Uniform Instruction-Level Abstractions for SoC Verification
    Subramanyan, Pramod
    Huang, Bo-Yuan
    Vizel, Yakir
    Gupta, Aarti
    Malik, Sharad
    [J]. IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2018, 37 (08) : 1692 - 1705
  • [4] Template-based Synthesis of Instruction-Level Abstractions for SoC Verification
    Subramanyan, Pramod
    Vizel, Yakir
    Ray, Sayak
    Malik, Sharad
    [J]. PROCEEDINGS OF THE 15TH CONFERENCE ON FORMAL METHODS IN COMPUTER-AIDED DESIGN (FMCAD 2015), 2015, : 160 - 167
  • [5] Formal Security Verification of Concurrent Firmware in SoCs using Instruction-Level Abstraction for Hardware
    Huang, Bo-Yuan
    Ray, Sayak
    Gupta, Aarti
    Fung, Jason M.
    Malik, Sharad
    [J]. 2018 55TH ACM/ESDA/IEEE DESIGN AUTOMATION CONFERENCE (DAC), 2018,
  • [6] Electronic system level models for functional verification of system-on-chip
    Adamov, Alexander
    Mostovaya, Karina
    Syzonenko, Inna
    Melnik, Alexey
    [J]. 2007 PROCEEDINGS OF THE 9TH INTERNATIONAL CONFERENCE ON THE EXPERIENCE OF DESIGNING AND APPLICATION OF CAD SYSTEMS IN MICROELECTRONICS, 2007, : 348 - 350
  • [7] System-on-Chip (SOC) Design for CNC System
    Chen, Youdong
    Wei, Hongxing
    Sun, Kai
    Wang, Tianmiao
    Zou, Yong
    [J]. ISIE: 2009 IEEE INTERNATIONAL SYMPOSIUM ON INDUSTRIAL ELECTRONICS, 2009, : 685 - +
  • [8] A Formal Instruction-Level GPU Model for Scalable Verification
    Xing, Yue
    Huang, Bo-Yuan
    Gupta, Aarti
    Malik, Sharad
    [J]. 2018 IEEE/ACM INTERNATIONAL CONFERENCE ON COMPUTER-AIDED DESIGN (ICCAD) DIGEST OF TECHNICAL PAPERS, 2018,
  • [9] Random testing for system-level functional verification of system-on-chip
    Ma Qinsheng
    Cao Yang
    Yang Jun
    Wang Min
    [J]. JOURNAL OF SYSTEMS ENGINEERING AND ELECTRONICS, 2009, 20 (06) : 1378 - 1383
  • [10] Random testing for system-level functional verification of system-on-chip
    Ma Qinsheng 1
    2.State Key Lab.of Software Engineering
    3.Second Dept.
    [J]. Journal of Systems Engineering and Electronics, 2009, 20 (06) : 1378 - 1383