저는 RISC-V에 들어가기 시작했습니다. riscv에서 isa-simulator와 C++ 시뮬레이터의 차이점은 무엇입니까?
나는 소스 코드 저장소에 다이빙 해요 동안
,나는 많은 시뮬레이션 환경이 존재하는 것을 발견했다.
하지만 혼란 스러웠던 것은 로켓 저장소의 chisel3 RTL에서 비롯된 riscv-tool과 C++ 시뮬레이터에서 파생 된 ISA 시뮬레이터가있는 이유입니다.
이 시뮬레이터의 차이점은 무엇입니까?
저는 RISC-V에 들어가기 시작했습니다. riscv에서 isa-simulator와 C++ 시뮬레이터의 차이점은 무엇입니까?
나는 소스 코드 저장소에 다이빙 해요 동안
,나는 많은 시뮬레이션 환경이 존재하는 것을 발견했다.
하지만 혼란 스러웠던 것은 로켓 저장소의 chisel3 RTL에서 비롯된 riscv-tool과 C++ 시뮬레이터에서 파생 된 ISA 시뮬레이터가있는 이유입니다.
이 시뮬레이터의 차이점은 무엇입니까?
C++ 기반의 정확한 사이클 시뮬레이터는 특정 RISCV 구현을위한 것입니다. 각 상황에서 얼마나 많은 프로세서가 각 명령어에 대해 얼마나 많은 사이클을 수행하는지 모델링합니다. 은 하드웨어를 더 자세히 시뮬레이트하므로 스파이크보다 느릴 것으로 예상됩니다. Spike와 마찬가지로 (Verilog 모델과 달리) 보통 컴파일러를 사용하여 C++ 모델을 컴파일하고 일반 소프트웨어로 실행하면 값 비싼 시뮬레이션 도구가 필요하지 않습니다.
명령어 세트 시뮬레이터 (ISS)는 일반적으로 높은 수준의 프로그래밍 언어로 코딩 된 시뮬레이션 모델로 명령어를 "읽고"프로세서의 레지스터를 나타내는 내부 변수를 유지함으로써 메인 프레임 또는 마이크로 프로세서의 동작을 모방합니다.