전체 글 6

[git/github] 기본 사용 방법

레포 가져오기git clone 특정 레포를 현재 레포의 submodule로 연결하기# 현재 위치: ~/hdl_workspace/my_projectgit submodule add ../common lib/common# file 이송에 대한 fetal 에러 발생하는 경우git -c protocol.file.allow=always submodule add ../common lib/common common 내부의 변경사항 적용하기서브모듈 (lib/common에서) 수정할때# submodule git checkout main# 서브모듈 내에서 커밋 (여기서 git은 common_ip 레포를 가리킴)git add git commit -m "Fix: Update logic"git push origin main ..

Resources 2026.03.31

[UVM] Reusable 검증 컴포넌트 생성하기: 3

시나리오 생성 3.10검증 컴포넌트 개발자는 검증환경 사용자가 테스트 작성을 쉽게 할 수 있도록 아래 사항을 준수하며 컴포넌트를 개발해야함테스트 컨트롤을 단순화하기 위한 노브를 데이터 아이쳄 클래스에 배치해야함재시용 가능한 검증가치가 있는 시퀀스 라이브러리를 생성검증자가 환경 내 시퀀서를 구성하여 환경에서 생성되는 패턴 제어새로운 트랜잭션 시퀀스 정의기존 시퀀스를 호출하는 새 시퀀스 정의드라이버를 수정할 수 있도록 노브 기본값을 덮어 씌우고 전반적인 env 동작 수정새로운 동작이나 시퀀스 활성화시퀀스 선언하기uvm_sequence를 직간접적으로 상속받아서 sequence들을 만들어야함uvm_sequence 상속하고 request 및 response 타입을 파라미터로 지정하기uvm_object_utils ..

Projects 2026.01.20

RVVI기반 RISC-V CPU 검증 환경 구축

프로젝트 개요배경지난 프로젝트에서 설계한 single-cycle rv32i는 bubble sorting과 같은 단순 c언어 코드(assembly->기계어변환)로 검증에 그쳤기 때문에 신뢰성을 보장하기 어려운 상태임RVVI 환경에서 공식 시뮬레이터를 활용하여 하드웨어 검증의 객관성과 신뢰성 확보자동화 환경을 만들어 향후 진행할(지도모르는) 코어 확장에도 도입할 수 있도록 함목표 및 구현 볌위RVVI-TRACE: CPU 내부의 PC, Instruction, Register Write 등 핵심 신호를 표준 규격에 맞춰 외부로 추출하는 Tracer 모듈 구현RVVI-TEXT(RVVI-API 대체): 추출된 신호를 표준화된 텍스트 로그 형식으로 기록하여 도구 간 데이터 호환성 확보Reference Model (S..

Projects 2026.01.08