반응형 RTL18 [UVM 1.1d] 3-2. UVM Components 1. UVM 설정 메커니즘 (UVM Configuration Mechanism)UVM에서는 검증 환경에서 **설정 메커니즘(Configuration Mechanism)**을 통해 여러 컴포넌트 간의 파라미터를 쉽게 전달하고 공유할 수 있습니다. 이는 테스트벤치의 유연성을 높이고, 다양한 검증 시나리오를 구현하는 데 도움을 줍니다. UVM에서는 uvm_config_db와 uvm_resource_db라는 두 가지 주요 설정 메커니즘을 제공합니다.uvm_config_dbuvm_config_db는 검증 환경의 트리 구조 내에서 데이터를 설정하고 검색하는 데 사용됩니다. 설정된 값은 트리 하위 계층에 있는 모든 컴포넌트에서 접근할 수 있습니다. 특징:설정 데이터의 계층적 전달: 상위 컴포넌트에서 설정된 값이 하위.. 2024. 9. 26. [UVM 1.1d] 3-1. UVM Components 3-1장: 재사용 가능한 검증 Component 개발UVM(Universal Verification Methodology)에서는 재사용 가능한 검증 Component를 효율적으로 개발하는 것이 중요합니다. 각 컴포넌트는 데이터 항목(Transaction), 드라이버(Driver), 시퀀서(Sequencer), 모니터(Monitor), 에이전트(Agent), 환경(Environment) 등의 요소로 구성되어 있습니다. 이들은 각각 고유한 역할과 목적을 가지며, 통합하여 강력한 검증 환경을 제공합니다.1. 데이터 항목 (Transaction)목적: 데이터 항목은 설계 검증에서 DUT(Device Under Test)로 전달되는 정보를 표현하는 객체입니다. 트랜잭션은 네트워크 패킷, 버스 트랜잭션, 명령어 등.. 2024. 9. 25. [UVM 1.1d] 2. Transaction-Level Modeling (TLM) 2장: Transaction-Level Modeling (TLM)TLM 개요Transaction-Level Modeling(TLM)은 시스템의 상위 추상화 수준에서 설계 및 검증 작업을 수행하는 기법입니다. TLM은 주로 **데이터 전송(transaction)**을 중심으로 통신을 모델링하며, 설계 검증 시 성능 최적화와 재사용성을 극대화하는 데 도움을 줍니다. TLM 방식은 두 가지 주요 버전인 TLM 1.0과 TLM 2.0으로 나뉘며, 각기 다른 추상화 수준과 활용 방식에서 차이가 있습니다.TLM 1.0과 TLM 2.0 비교TLM 1.0: 메시지 전달 방식(message-passing system)을 기반으로 하며, 타이밍에 대한 명시적 주석이 제공되지 않는 단순한 구조입니다. 주로 이벤트 기반 설계.. 2024. 9. 23. [UVM 1.1d] 1. Overview 1. OverviewUVM 개요 및 검증 방식Universal Verification Methodology (UVM)는 SystemVerilog 기반으로 **테스트벤치(testbench)**를 생성하는 데 필수적인 구조를 제공합니다. 이 가이드는 검증 환경의 재사용성과 효율성을 높이기 위해 설계되었습니다. 특히, UVM은 **Coverage-Driven Verification (CDV)**라는 기법을 통해 테스트 과정에서 자동화된 테스트 생성, 자가 검증 기능을 갖춘 테스트벤치를 사용하며, 이를 통해 검증 커버리지 목표를 달성합니다.1.1 Coverage-Driven Verification (CDV)CDV는 자동 테스트 생성, 자가 검증 테스트벤치, 그리고 커버리지 메트릭스를 결합해 설계 검증의 시간을 .. 2024. 9. 22. [Verilog] 베릴로그 A to Z (2) - Verilog/SystemVerilog/UVM LRM 베릴로그 A to Z (2) - Verilog/SystemVerilog/UVM LRM 안녕하세요, 이번 포스팅을 통해 Verilog/SystemVerilog/UVM의 LRM를 소개하려고 합니다. *LRM(Language Reference Manual)이란? 컴퓨터 프로그래밍 언어의 Reference가 되는 Documentation입니다. 해당 프로그래밍 언어의 문법부터 사용 예시, 그리고 개발자가 주의해야 하는 점 등 언어에 관련된 모든 정보를 담고 있습니다. 보통 코딩을 하다가 막히면 구글이나 스택오버플로우(Stack Overflow)에 많이 검색하실 텐데요, Verilog는 반도체 회로설계 / 하드웨어 설계 등 비교적 마이너 한 분야에서 사용되기 때문에 만족할 만한 답변을 찾기 힘든 경우가 많습니다... 2023. 2. 28. [Verilog] 베릴로그 A to Z (1) - EDA Playground 소개 베릴로그 A to Z (1) - EDA Playground 소개 안녕하세요, 이번 포스팅을 시작으로 Verilog HDL를 이용한 프로젝트를 연재해보려고 합니다. Verilog는 전자 공학 또는 컴퓨터 공학을 전공한다면 배우게 되는 언어입니다. 이를 활용하여 Behavioral Model부터 Transistor Level에 이르기까지 실제 하드웨어 동작을 모델링할 수 있습니다. 실제로 대부분의 반도체 RTL 설계 및 검증 과정에서 Verilog가 사용되는데요, VHDL과 Verilog 둘 중 하나만 배운다면 Verilog를 배워두는게 좋다고 생각합니다. 프로젝트 진행을 하기 위해서는 다른 프로그래밍 언어와 마찬가지로 Verilog를 간편하게 Compile 하고 실행할 수 있는 환경이 필요한데요, Syno.. 2023. 2. 19. 이전 1 2 3 다음 반응형