RISC-V設計의 구조적 결함 비판
원제: RISC-V: They Should Have Known Better
왜 중요한가
RISC-V의 설계 구조적 결함에 대한 구체적 기술 비판은 ISA 채택 전략과 반도체 설계 커뮤니티의 논의에 직접적 영향을 줄 수 있다.
엔지니어 Dmitry Grinberg가 자신의 기술 블로그에서 RISC-V ISA(명령어 집합 아키텍처)의 설계상 문제점을 체계적으로 정리해 공개했다. 「모든 용도에 최적」이라는 주장은 원천적으로 불가능하며, 소형 마이크로컨트롤러 분야에서조차 기존 경쟁 아키텍처보다 열위라고 주장했다.
Dmitry Grinberg는 개인 기술 블로그에 「RISC-V: They Should Have Known Better」라는 제목의 장문 분석 글을 게재하며, RISC-V에 대한 비판적 견해를 항목별로 정리했다.
그는 「모든 사람을 위한 아키텍처」라는 RISC-V의 지향점 자체가 설계상 모순이라고 지적한다. 고성능 CPU가 필요로 하는 설계 요소와 소형 마이크로컨트롤러 코어가 필요로 하는 요소는 상충 관계에 있으며, 이는 마이크로아키텍처 수준이 아니라 ISA 설계 자체에 영향을 미친다고 설명한다.
소형 임베디드 코어의 용도로는 MP3 플레이어, SD 카드, USB 스틱 등 대규모 칩 내부의 하드웨어 블록 제어가 대표적이며, 이 경우 인터럽트 지연(낮을수록 유리), 코어 크기(작을수록 유리), 코드 밀도가 핵심 지표다. ROM 또는 SRAM에서 코드를 실행하는 대량 생산 기기에서는 코드 크기가 직접적으로 다이 면적과 비용에 영향을 준다.
Grinberg는 「RV32IC 또는 RV32EC가 이 요건을 충족한다고 볼 수도 있지만, 실제로는 인터럽트 처리를 위해 Zicsr 확장이 필수적」이라고 지적한다. Zicsr 없이는 레지스터를 임시 저장할 수 있는 mscratch/sscratch가 없어 스펙 준수 방식의 인터럽트 처리가 불가능하다. 반면 MIPS는 이 목적을 위해 $k0, $k1 레지스터를 예약해 두었다.
그는 RISC-V가 결국 8051을 대체하며 저가 단일용도 마이크로컨트롤러 시장을 장악할 것이라고 전망하면서도, 이는 ISA 설계의 우수성 때문이 아니라 「그럼에도 불구하고」 이루어질 것이라고 단언했다. 나아가 옵션 과잉(Optionality), 명백한 요소의 누락, 비효율적 인코딩 등의 추가 문제점도 목차에서 예고했다. 이 견해는 본인 의견이며 고용주나 제3자의 입장을 대변하지 않는다고 명시했다.