경로 기반 상징적 실행을 이용한 하드웨어/소프트웨어 공동검증
읽는 시간: 2 분
...
📝 원문 정보
- Title: Hardware/Software Co-verification Using Path-based Symbolic Execution
- ArXiv ID: 2001.01324
- 발행일: 2020-01-07
- 저자: Rajdeep Mukherjee, Saurabh Joshi, John OLeary, Daniel Kroening, Tom Melham
📝 초록 (Abstract)
기존의 하드웨어/소프트웨어 공동 검증 도구들은 유계 모델 체킹 기법을 사용하여 단일 통합 논리식을 생성합니다. 이 방법으로 생성된 논리식은 매우 복잡하고 무관한 논리를 많이 포함하기 때문에, 심지어 최첨단 만족도(SAT) 해석기조차 이를 해결하는 것이 어렵습니다. 일반적인 하드웨어/소프트웨어 공동 설계에서는 펌웨어가 하드웨어 상태 공간의 일부만 실행하므로, 이 관찰을 이용하여 더 간결하고 단순한 논리식을 생성할 수 있습니다. 본 논문에서는 경로 기반 상징적 시뮬레이션을 통해 가능 실행 경로에 해당하는 펌웨어와 하드웨어 로직 파티션을 식별하는 새로운 검증 알고리즘을 제시합니다. 이 방법은 사용자 정의 경로 가지치기, 속성 지향 슬라이싱 및 증분 SAT 해석을 포함하고 있습니다. 본 연구에서는 이러한 접근법을 도구 COVERIF에 구현하였습니다. COVERIF는 HW-CBMC와 실험적으로 비교하였고 안전한 속성을 증명하거나 오픈 소스의 대표적인 UART 설계 및 대형 SoC 설계에서 중요한 공동 설계 버그를 감지하는 데 평균 5배 이상 빠른 것을 확인하였습니다.💡 논문 핵심 해설 (Deep Analysis)
This paper introduces a novel algorithm and tool, COVERIF, for accurately verifying the interaction between hardware and software. Traditional verification tools generate complex logical formulas that are difficult to solve using SAT solvers. The key issue is that these tools do not account for the fact that firmware typically only exercises a fraction of the available hardware state space.To address this problem, COVERIF employs path-based symbolic simulation to focus on feasible execution paths, reducing the complexity and irrelevance in generated formulas. This approach includes domain-specific optimizations such as custom path-pruning, property-guided slicing, and incremental SAT solving.
The results show that COVERIF is up to five times faster than HW-CBMC, a conventional tool, when it comes to proving safety properties or detecting critical co-design bugs in both UART and SoC designs. This makes COVERIF particularly useful for ensuring the stability and reliability of complex systems where accurate verification can prevent costly errors.
📄 논문 본문 발췌 (Translation)
Reference
이 글은 ArXiv의 공개 자료를 바탕으로 AI가 자동 번역 및 요약한 내용입니다.
저작권은 원저자에게 있으며, 인류 지식 발전에 기여한 연구자분들께 감사드립니다.