같은 실행이라도 무엇을 검사했는지가 다릅니다
| 질문 | 필요한 증거 | 그것만으로 알 수 없는 것 |
|---|---|---|
| 명령 결과가 ISA와 맞는가 | 시험 목록, 구현 설정, 참조 결과와 비교 판정 | 제외한 명령·예외와 모든 시간 조합 |
| 응답이 늦거나 분기해도 올바른가 | RTL 시나리오, assertion, seed, 실패 trace | 시험하지 않은 경로와 실제 보드의 전기적 조건 |
| 보드에서 프로그램이 실행되는가 | 비트스트림·소프트웨어·보드 조건과 관측 | 전체 ISA 적합성 또는 장시간 안정성 |
RISCOF 설명의 아키텍처 시험은 대상과 참조 모델의 결과를 대조하는 흐름입니다. 시험을 통과했다는 사실을 일반적인 기능 검증의 대체물로 삼지 않습니다. HOLY CORE의 화면 시연 역시 별도의 시스템 통합 사례입니다.
DHRUT-V의 버전과 제외 목록을 먼저 읽습니다
Sudeep Joshi의 프로젝트 소개를 다룬 인계 원고에서 출발해, 공개 저장소의 커밋 be721c48을 직접 읽었습니다. 해당 README의 2-wide in-order RV32IM_Zicsr·Tang Nano 20K 설명은 제작자의 이 버전 설명입니다. 이를 과거 소개 당시의 구현 상태나 독립 측정 결과로 바꾸지 않습니다.
같은 커밋의 filter_testlist.py는 경로에 /pmp/가 있는 항목과 파일 이름이 misalign으로 시작하는 항목을 제외합니다. 통과 개수뿐 아니라 최종 목록과 제외 이유를 보존해야 무엇을 검사하지 않았는지 알 수 있습니다. 여기서는 그 필터를 실행하거나 통과 개수를 재현하지 않았습니다.
즉시 응답만 하는 메모리로는 대기 경로를 보기 어렵습니다
cocotb는 Python 테스트와 HDL 시뮬레이터를 연결합니다. pyuvm은 cocotb 위에서 Python으로 UVM의 주요 검증 구조를 제공합니다. 도구 이름 자체가 시험 범위나 통과를 증명하지는 않습니다.
DHRUT-V의 instruction memory driver에는 확률적으로 응답을 늦추는 경로와 응답 전 요청의 유효성·주소·flush를 확인하는 코드가 있습니다. data memory driver도 지연 모드를 구분합니다. 단, 선택한 실행 모드가 어느 응답기로 연결되는지까지 읽어야 합니다. 파일에 random 지연 코드가 있다는 이유로 모든 시험에 그 지연이 적용됐다고 단정할 수 없습니다.
추가 시험을 설계한다면 대기 중 요청 유지, 분기 후 오래된 fetch 응답의 폐기, load 결과와 후속 의존 명령의 순서를 각각 관측 대상으로 둡니다. 이는 이 프로젝트에서 해당 항목을 모두 통과했다는 보고가 아니라 확인할 질문의 예입니다.
tohost 종료와 서명 비교를 분리합니다
고정 버전의 scoreboard.py는 홀수 tohost 쓰기를 종료로 취급하고 val >> 1이 0이면 PASS로 판정합니다. 이는 이 테스트 환경의 약속이지 모든 RISC-V 시스템의 종료 규칙이 아닙니다.
같은 파일의 서명 저장 경로는 SIGNATURE_FILE이 없으면 돌아가며, SIG_BEGIN 또는 SIG_END가 없으면 빈 파일을 만듭니다. 따라서 종료 코드가 성공인 것, 서명 파일이 존재하는 것, 참조 서명과 실제로 일치하는 것은 서로 다른 사실입니다. 이 함수에서 서명 비교까지 수행했다고 쓰지 않습니다. 비교기 실행과 기대값·실제값·판정을 별도로 남겨야 합니다.
이전 RISCOF 기록을 새 인증 결과로 바꾸지 않습니다
ACT4 고정 커밋 cbbb9f0e의 README는 deprecated RISCOF를 대체하는 흐름을 설명합니다. UDB의 구현 설정, 대상에 맞는 rvmodel_macros.h와 linker 설정으로 시험을 만들며, 생성한 ELF를 실제 DUT에서 실행하는 책임은 사용자에게 있습니다. 생성·컴파일 성공은 DUT 통과가 아닙니다.
ACT4도 일반 기능 검증을 대신하지 않는다고 명시합니다. 재현 기록에는 설계 커밋, ISA·환경 설정, 선택·제외 목록, 참조 모델, seed, 메모리 지연 모드, ELF와 결과 파일 해시, 판정기 버전을 함께 묶습니다. 같은 이름의 프로젝트라도 이 조건이 달라지면 다른 시험입니다.
직접 확인한 것은 코드와 문서입니다
인계 원고와 위 고정 버전 README·필터·메모리 driver·scoreboard를 대조했습니다. LinkedIn 원본 첨부를 다시 열지 않았으므로 터미널 그림의 통과 항목 수나 당시 파이프라인 상태를 새 관찰로 주장하지 않습니다. RTL 시뮬레이션·ACT4 실행·FPGA 보드 시험·공식 인증을 수행한 글이 아닙니다.
English summary. ISA outcomes, timing scenarios and board demonstrations are separate evidence. At the pinned DHRUT-V revision, filtered tests, selected memory-response modes, tohost termination and signature output must be recorded independently. ACT4 generation is not DUT execution. No hardware or RTL test was run for this review.