728x90 반응형 VLSI15 SystemVerilog 학습 노트 집필 https://wikidocs.net/book/16958 SystemVerilog 학습노트## 소개 한국어로 쓰여진 SystemVerilog 자료가 부족한 국내 환경을 고려하여, 여러 교재와 강의를 참고해 책을 작성하였습니다. SystemVerilog는 **하…wikidocs.net 위키독스에서 SystemVerilog에 대해 공부한 내용을 공유합니다. 2025. 2. 18. [VLSI] Verification vs. Validation [VLSI] Verification vs. Validation Verification 의미Verification은 설계한 RTL Code가 모든 사양(Specification)을 만족하는지 검증하는 과정이다.Simulation Level에서 검증하는 단계이다.주어진 사양을 모두 충족했는지 확인하는, 설계자 관점 검증이다. 방법Simulation : SystemVerilog, UVM 등을 활용한 테스트벤치(Testbench) 기반 시뮬레이션이다. Class 기반으로 Testbench를 구성하며, 필요에 따라 SVA(SystemVerilog Assertion)을 활용하여 검증한다.Formal Verification : 수학적으로 논리적인 오류를 검증한다.Coverage Metrics : Code Cov.. 2025. 2. 2. [SVA] 2-2. SystemVerilog Assertions(SVA) [SVA] 2-2. SystemVerilog Assertions(SVA) Assertion 기본 구조 123456789101112// Simple assert statementassert(expression>); // Assert statement with statements to be executed for pass/fail conditionsassert(expression>) begin// If condition is true, execute these statementsend else begin// If condition is false, execute these statementsend // Optionally give name for the assertion[assert_name] : asser.. 2024. 11. 25. [SVA] 2-1. SystemVerilog Assertions(SVA) [SVA] 2-1. SystemVerilog Assertions(SVA) Assertion Types SVA에서 지원하는 Assertion은 Immediate Assertion, Deferred Immediate Assertion, Concurrent Assertion 세 가지 유형이 있다. Immediate Assertion시간 도메인에서 동작하지 않고, Procedural Block(코드가 순차적으로 실행되는 구조)의 문장처럼 즉시 실행된다.앞에서 언급했던 SW Assertion과 유사한 형태라고 생각해도 무방하다.Deferred (Immediate) AssertionDeferred Assertion는 Immediate Assertion의 일종이다.Immediate Assertion은 변수가 바뀌는 .. 2024. 11. 18. [SVA] 1-4. Introduction [SVA] 1-4. Introduction Assertions의 주요 장점개발 시간 단축된다. SVA를 사용하지 않고 기존 Verilog 문법으로 Checker를 작성하는 것은 어렵고 시간이 많이 걸리며, 오류가 발생할 가능성이 매우 크다. SVA를 사용하면 이해하기 쉬운 문법으로 검증이 가능하며, 요구된 조건이 실제로 실행되었는지도 쉽게 확인이 가능하다. 관련 문법은 추후에 학습할 것이다.버그가 발생한 원인을 가장 가까이서 확인할 수 있다. Assertion은 설계된 Logic과 가까운 곳에 위치하여 작동한다. 따라서, 버그가 발생한 원인을 설계 내부까지 추적할 필요 없이, 문제의 발생 지점에서 바로 확인할 수 있다. Assertion을 배치하기에 유용한 곳은 FIFO, Counter, Block-to.. 2024. 11. 17. [SVA] 1-3. Introduction [SVA] 1-3. Introduction SW vs. HW Assertion 그렇다면, SW Assertion과 HW Assertion의 차이는 무엇일까? SW의 경우, 컴파일러 또는 인터프리터가 number라는 변수에 -5가 저장되어 있는 것을 이미 알고있다. 즉, assert 구문을 마주했을 때 stack(일종의 메모리)에 number에 저장되어 있는 값을 이미 알고 있기 때문에 조건의 참, 거짓을 쉽게 판별할 수 있다. 하지만, HW의 경우 조건의 참, 거짓 여부를 알기 위해서는 조건의 시간적인 정보가 필요하다. 즉, SVA를 잘 사용하기 위해서는 SW와 HW 두 시간 도메인을 잘 이해해야 한다. 이는 SW Assertion 구문보다 SVA 구문이 학습하고 적용하기 어려운 이유가 된다. 2024. 11. 15. 이전 1 2 3 다음 728x90 반응형