Skip to main content
QUICK REVIEW

[논문 리뷰] Instruction-Level Abstraction (ILA): A Uniform Specification for System-on-Chip (SoC) Verification

Bo-Yuan Huang, Hongce Zhang|Rare & Special e-Zone (The Hong Kong University of Science and Technology)|2018. 01. 03.
Formal Methods in Verification참고 문헌 41인용 수 14
한 줄 요약

이 논문은 시스템온칩(SoC) 검증을 위한 형식적이고 통일된 사양으로 지침 수준의 추상화(ILA)를 도입한다. 이는 프로세서와 가속기 모두에 대해 모듈러하고 계층적이며 형식적으로 검증 가능한 모델링을 가능하게 한다. 가속기 명령어를 정의된 상태 전이를 가지는 '지시어'로 간주함으로써, ILA는 ILA 모델과 RTL 구현 간의 동치성 검증을 지원하며, 가속기 업그레이드에 대해 ISA 수준의 호환성을 제공하고 이질적인 SoC에서 확장 가능한 형식적 검증을 가능하게 한다.

ABSTRACT

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 the 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 paper 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.

연구 동기 및 목표

  • 현대의 이질적인 SoC에서 가속기 동작에 대한 공통된 형식적 사양 프레임워크가 부족한 문제를 해결하기 위해.
  • 동일한 방법론을 사용하여 프로세서와 가속기를 모두 형식적으로 검증할 수 있도록 통일된 추상화를 제공하기 위해.
  • 가속기 중심 시스템에서 소프트웨어와 하드웨어 간의 추상화 갭을 해소하기 위해, 가속기 상호작용을 지시어 유사한 동작으로 모델링하기 위해.
  • 고수준의 모듈러하고 계층적인 사양을 통해 하드웨어-소프트웨어 상호작용의 확장 가능한 형식적 검증을 가능하게 하기 위해.
  • ISA 수준의 프로세서 업그레이드와 유사하게 ILA 호환성을 통해 가속기 업그레이드를 지원하기 위해.

제안 방법

  • 각 가속기 명령어를 지속적인 아키텍처 상태에서 상태 전이를 유도하는 지시어로 간주하는 형식적 모델로 ILA를 정의함.
  • 프로세서와 가속기를 모두 동일한 ILA 형식론으로 모델링하여 통일된 사양과 검증을 가능하게 함.
  • SMT 솔버와 형식적 동치성 검증을 사용하여 ILA 모델이 RTL 유한 상태 기계(FSM) 구현과 기능적으로 동치임을 검증함.
  • 복잡한 지시어를 하위 지시어 및 마이크로 지시어의 시퀀스로 구성하는 계층적 조합을 적용하여 모듈러리티와 추상화를 가능하게 함.
  • 기존의 프로세서 검증 기법—예를 들어 동치성 검증과 모델 체킹—을 가속기의 ILA 모델에 적용함.
  • RISC-V(Rocket 코어), 이미지 처리(Gaussian Blur), 암호화(AES), 기계학습(RBM)용 가속기 등에 대한 사례 연구를 통해 접근법을 검증함.

실험 결과

연구 질문

  • RQ1프로세서와 가속기를 모두 위해 일관된 검증이 가능한 통일된 형식적 사양 모델을 어떻게 정의할 수 있는가?
  • RQ2ILA는 복잡한 가속기 동작의 모듈러리티, 계층성, 조합 가능성을 어느 정도 지원할 수 있는가?
  • RQ3ILA 모델과 RTL 구현 간의 동치성 검증이 실제 가속기에서 효과적으로 확장 가능한가?
  • RQ4ILA는 ISA 수준의 프로세서 업그레이드와 유사하게 가속기 호환성 기반 업그레이드를 어떻게 가능하게 하는가?
  • RQ5ILA 기반의 형식적 검증은 실제 가속기 및 프로세서 설계에서의 구현 버그를 탐지할 수 있는가?

주요 결과

  • ILA 모델은 가속기와 프로세서 모두에 대해 ILA 사양과 RTL 구현 간의 형식적 동치성 검증을 성공적으로 가능하게 하였으며, 검증의 상당한 완전성을 달성하였다.
  • 논문은 이전의 ISA 형식화(예: ISA Formal)에서 사양 계층과 구현 구조 간의 차이에 관련된 모델링 갭을 규명하였다.
  • ILA 기반의 형식적 검증을 통해 RISC-V Rocket 코어의 구현에서 버그를 발견하였으며, 이는 실제 설계 검증에서의 방법의 실용적 유용성을 입증하였다.
  • OpenCores의 AES 가속기와 RISC-V Rocket 코어를 ILA 기반 모델 체킹을 통해 검증한 결과, 산업 적용에 대한 확장성과 실용성의 가능성을 입증하였다.
  • ILA 프레임워크는 가속기 중심 시스템에서 신뢰할 수 있는 시뮬레이터 생성, 동시성 추론, 메모리 일관성 모델링을 지원한다.
  • 이 접근법은 ISA 수준의 프로세서 업그레이드와 유사하게 ILA 호환성을 통해 가속기 교체를 가능하게 하여 장기적인 소프트웨어 이식성과 유지보수성을 제공한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.