[논문 리뷰] Enabling Heterogeneous, Multicore SoC Research with RISC-V and ESP
이 논문은 표준화된 AXI 프로토콜과 모듈형 캐시 일관성 확장을 사용하여, 개방형 ESP SoC 플랫폼을 확장하여 최대 네 개의 RISC-V CVA6 코어와 일관성 있는 메모리, Linux SMP 부팅을 지원한다. 그 결과, 확장 가능한 가속기 중심의 프레임워크가 탄생하여 이질적이고 다중코어 SoC의 빠른 FPGA 프로토타이핑이 가능해졌으며, 전체 운영체제 지원이 가능해졌다.
Heterogeneous, multicore SoC architectures are a critical component of today's computing landscape. However, supporting both increasing heterogeneity and multicore execution are significant design challenges. Meanwhile, the growing RISC-V and open-source hardware (OSH) movements have resulted in an increased number of open-source RISC-V processor implementations; however, there are fewer open source SoC design platforms that integrate these processor cores. We present modifications to ESP, an open-source SoC design platform, to enable multicore execution with the RISC-V CVA6 processor. Our implementation is modular and based on standardized interfaces. These properties simplify the integration of new cores. Our modifications enable RISC-V-based SoCs designed with ESP for FPGA to boot Linux SMP and execute multithreaded applications. Coupled with ESP's emphasis on accelerator-centric architectures, our contributions enable the seamless design of a wide range of heterogeneous, multicore SoCs.
연구 동기 및 목표
- 이질적이고 다중코어 시스템온칩(SoC) 연구를 지원하기 위해 개방형 ESP SoC 플랫폼에서 RISC-V CVA6 다중코어 실행을 가능하게 한다.
- 표준화된 인터페이스를 사용하여 다수의 RISC-V 코어를 일관성 있고 확장 가능한 SoC 아키텍처에 통합하는 도전 과제를 해결한다.
- ESP의 기존 SPARC 및 단일코어 RISC-V 지원을 확장하여 다중코어 RISC-V 구성에서 전체 Linux SMP 부팅을 가능하게 한다.
- 모듈형 프로토콜 기반 설계를 통해 새로운 AXI 호환 프로세서 코어와 가속기를 간편하게 통합할 수 있도록 한다.
- 가속기 중심의 SoC 설계를 지원하기 위해 RISC-V 코어와 이질적 IP 블록 간의 일관성 있고 캐시 일관성 있는 통신을 가능하게 한다.
제안 방법
- 다중코어 운영을 위해 RISC-V 원자 명령어 및 L1 캐시 무효화 메커니즘을 지원하도록 ESP의 캐시 계층을 수정하였다.
- 표준화된 AXI 버스 프로토콜과 AXI 일관성 확장(ACE)을 사용하여 RISC-V CVA6 코어를 ESP의 타일 기반 아키텍처에 통합하였다.
- 코어별 동작을 추상화하는 모듈형 재사용 가능한 인터페이스 레이어를 설계하여 새로운 AXI 호환 코어의 즉시 통합을 가능하게 하였다.
- 다중 CVA6 코어와 공유된 L2 캐시 계층 간의 일관성 있는 통신을 지원하도록 NoC 기반 인터커넥트를 개선하였다.
- 모든 코어 간 캐시 일관성, 인터럽트 처리, 메모리 관리 호환성을 확보하여 Linux SMP 부팅을 구현하였다.
- 시스템 수준의 모듈성과 확장성을 유지하기 위해 ESP의 기존 다수의 설계 플로우 및 가속기 통합 지원 기능을 활용하였다.
실험 결과
연구 질문
- RQ1개방형 SoC 플랫폼인 ESP는 어떻게 다중코어 RISC-V 실행과 완전한 캐시 일관성을 지원하도록 확장될 수 있는가?
- RQ2ESP의 타일 기반 NoC 아키텍처를 사용하여 다중코어 RISC-V SoC에서 Linux SMP 부팅을 가능하게 하기 위해 어떤 아키텍처 수정이 필요한가?
- RQ3표준화된 AXI 프로토콜과 일관성 확장을 사용하여, 호스트 플랫폼에 밀접하게 결합되지 않은 채로 다수의 RISC-V 코어를 모듈형으로 통합할 수 있는가?
- RQ4CVA6 코어의 통합은 ESP에서 이질적이고 가속기 중심의 SoC 설계의 성능과 확장성에 어떤 영향을 미치는가?
- RQ5다중코어 RISC-V 지원을 추가함에 있어 ESP의 기존 가속기 우선 설계 철학은 어느 정도 유지될 수 있는가?
주요 결과
- 수정된 ESP 플랫폼은 FPGA에 인스턴스화된 4코어 RISC-V CVA6 SoC에서 Linux SMP를 성공적으로 부팅하여 운영체제 수준의 다중코어 지원을 입증하였다.
- CVA6 코어의 통합은 표준화된 AXI 및 ACE 프로토콜을 사용하여 이루어져 모듈형이고 재사용 가능한 코어 통합을 가능하게 하였다.
- 캐시 일관성 메커니즘은 다중 코어 간 RISC-V 원자 명령어 및 L1 캐시 무효화를 정확히 처리하였다.
- 플랫폼은 일관성 있는 가속기(LCE 포함)와 스트리밍 가속기를 모두 지원하여 ESP의 이질적 설계 모델과 완전히 호환성을 유지하였다.
- 새로운 AXI 호환 코어에 대해 최소한의 재구성으로 복잡하고 이질적이며 다중코어 SoC의 빠른 FPGA 기반 프로토타이핑을 가능하게 하였다.
- 모든 수정 사항은 개방형 ESP 릴리스에 포함되어 있어 연구 커뮤니티의 장기적 접근성과 확장성을 보장한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.