점점 더 입지를 넓혀가는 RISC-V
‘축소 명령어 집합 컴퓨터-V(Reduced Instruction Set Computer-V)’를 뜻하는 RISC-V는 캘리포니아 대학교 버클리 캠퍼스(UC버클리)의 커스티 아사노빅(Krste Asanovic)과 데이비드 A 패터슨(David A. Patterson)이 기업 파트너들과 함께 개발한 것입니다. 이 프로젝트는 병렬 소프트웨어 및 하드웨어 개발에 관한 일련의 학술 연구 프로그램에서 시작되었습니다.
-
RISC-V가 다른 명령어 집합 아키텍처(instruction set architecture, ISA)와 차별화되는 핵심 요소는 ‘버클리 소스 배포(Berkeley Source Distribution, BSD)’ 라이선스입니다. 이 라이선스를 통해 사용자는 로열티 없이 RISC-V 코어를 설계, 제조 및 판매할 수 있으며, 독창적인 구현은 고객이나 경쟁사에 공개할 필요가 없습니다.
-
RISC-V의 기본 정보
RISC-V의 목표 중 하나는 빠르고 강력하며 에너지 효율적인 프로세서에 최적화된 소형 개방형 ISA였습니다. 이는 FPGA, ASIC, 맞춤형 CPU에 쉽게 구현할 수 있으며 모든 마이크로 아키텍처, 대부분의 프로그래밍 언어 및 소프트웨어 스택을 지원합니다. 이 ISA는 동일한 확장자를 가진 동일한 기본 ISA를 사용하는 경우, 오늘 작성된 코드가 향후 개발되는 프로세서 코어에서도 계속 실행되도록 고정되어 있습니다.
-
RISC-V 재단(RISC-V Foundation)의 후신인 RISC-V 인터내셔널(RISC-V International)이 이 기술을 감독합니다. 원저자 및 소유자는 자신들의 권리를 이 재단에 일임했습니다.
-
RISC-V는 세 가지 기본 ISA를 제공합니다. 32비트 하드웨어용 RVI32I, 64비트용 RV64I, 128비트용 RV128I가 그것입니다. RVI32I의 임베디드 시스템용 특별판인 RV32E도 있는데, 이는 레지스터를 16개만 지원합니다.
-
점점 더 입지를 넓혀가는 RISC-V (출처: ZinetroN - stock.adobe.com)
-
-
RV32I 명령은 다음과 같은 6가지 포맷을 기반으로 합니다:
1. 명령 유형 R: 레지스터 대 레지스터 연산
2. 명령 유형 I: 짧은 즉각 및 부하 연산
3. 명령 유형 S: 데이터 워드 저장
4. 명령 유형 B: 조건부 분기
5. 명령 유형 U: 상위 즉각
6. 명령 유형 J: 점프 문
이들 포맷은 제어, 부하/저장, 레지스터 조작 및 디버깅과 같은 정수 명령의 기본 형식들입니다. RV32I의 경우, 이들 명령어는 모두 32비트 폭이며, 오직 1개의 클럭 사이클만 사용합니다. 이는 명령에 여러 사이클이 필요한 ARM-32 또는 x86-32와 같은 다른 ISA와는 매우 다릅니다.
-
최근 몇 년 동안 많은 제조회사들이 RISC-V 코어, CPU 및 MCU를 개발하면서 이 기술이 더욱 성숙하고 초창기 문제점들을 극복할 수 있었습니다.
-
최신 ISA를 갖춘 반도체 제품
RISC-V 코어의 선구적인 회사 중 하나는 RISC-V 인터내셔널의 회원사인 안데스 테크놀로지(Andes Technology)입니다. 현재 이 회사의 주력 제품은 AX45MP 64비트 코어입니다.
-
이 멀티코어 CPU IP는 AndeStar V5 아키텍처를 기반으로 하는 8단계 슈퍼스칼라 프로세서입니다. 이는 표준 RISC-V 확장 ‘G(IMAC-FD)’, 16비트 압축 명령어 ‘C’, DSP/SIMD 확장 ‘P’(초안), 사용자 수준 인터럽트 확장 ‘N’, 보다 빠른 메모리 액세스 및 분기 처리를 위한 안데스 성능/기능 확장, 그리고 사용자 지정 명령을 추가할 수 있는 Andes 사용자 지정 확장(Andes Custom Extension, ACE)을 지원합니다. 이 프로세서는 리눅스 기반 애플리케이션을 위한 MMU, 효율적인 분기 실행을 위한 분기 예측, 레벨 1 명령/데이터 캐시, 지연 시간이 짧은 액세스를 위한 로컬 스토리지가 특징입니다.
-
AX45MP 대칭형 멀티프로세서는 최대 4개의 코어와 명령 및 데이터 프리페칭 기능을 갖춘 레벨 2 캐시 컨트롤러를 지원합니다. 코히어런스 매니저(Coherence Manager)는 캐시되지 않은 버스 마스터를 위한 I/O 코히어런스를 포함해 레벨 1 캐시 코히어런스를 관리하기 위한 MESI 프로토콜을 실행합니다. AX45MP의 또 다른 기능으로는 레벨 1/2 스토리지의 소프트 오류 보호를 위한 ECC, 벡터 디스패치 및 우선 순위 기반 선점을 위한 확장 기능을 갖춘 플랫폼 레벨 인터럽트 컨트롤러(Platform-Level Interrupt Controller, PLIC), CoDense, 소프트웨어 품질 개선을 위한 StackSafe, 그리고 전력 관리를 위한 QuickNap, PowerBrake, WFI 등이 있습니다.
-
르네사스 일렉트로닉스(Renesas Electronics)는 이 코어를 작동 중인 실리콘에 구현했습니다. RZ/Five 마이크로 프로세서에는 1.0GHz RISC-V CPU 코어(AX45MP 싱글)와 16비트 DDR3L/DDR4 인터페이스가 포함되어 있습니다. 또한 기가비트 이더넷(GbE), CAN, USB 2.0 등 다양한 인터페이스를 갖추고 있어 엔트리 레벨 소셜 인프라 게이트웨이 제어 및 산업용 게이트웨이와 같은 애플리케이션에 적합합니다(그림 1).
-
그림 1. RZ/Five 마이크로 프로세서의 블록 다이어그램(출처: Renesas)
-
RZ/Five(그림 2)는 13mm x 13mm BGA-361 및 11mm x 11mm BGA-266 패키지로 제공됩니다. BGA-361 계열 제품에는 2채널 기가비트 이더넷 인터페이스가 포함되어 있습니다. 또한 BGA-266 계열 제품은 1채널 기가비트 이더넷 인터페이스를 제공합니다.
-
그림 2. RZ/Five RISC-V 마이크로 프로세서(출처: Mouser Electronics)
-
이 평가 보드는 RZ/Five가 원하는 설계에 필요한 솔루션을 제공하는지 여부를 확인하는 데 도움이 됩니다. 이 보드는 RZ/Five RISC-V 마이크로 프로세서를 위한 완벽한 데모 및 개발 플랫폼을 제공합니다. RZ/Five MPU는 1.0GHz RISC-V CPU 코어(AX45MP 싱글)와 16비트 DDR3L/DDR4 인터페이스를 갖추고 있습니다. 또한 이 디바이스는 기가비트 이더넷, CAN 및 USB 2.0과 같은 다양한 인터페이스를 갖추고 있어 소셜 인프라 게이트웨이 및 엔트리 레벨 산업용 게이트웨이 제어에 이상적인 솔루션을 제공합니다.
-
평가 보드 키트는 모듈 보드(SOM)(그림 3)와 캐리어 보드로 구성됩니다. 캐리어 보드는 SMARC v2.1 표준을 기반으로 하는 RZ/G2L, RZ/G2LC 및 RZ/V2L 모듈과 함께 사용할 수도 있습니다. 이 제품을 활용해, 사용자는 이들 디바이스 간에 원활하고 유연한 평가를 수행할 수 있습니다.
-
그림 3. 모듈 보드 구조(출처: Renesas)
-
RISC-V의 미래
최신 파이프라인 시스템과 결합된 개방형 아키텍처로 인해 RISC-V 코어는 폐쇄형 독점 IP 코어에 심각한 위협이 되고 있습니다. 지연 분기 및 상태 코드가 없기 때문에 간결한 CPU 구조를 구현할 수 있습니다. 갈수록 많은 하드웨어 설계 및 제조 회사가 RISC-V 기반 SoC를 구현함에 따라 이 명령어 세트는 반도체 시장에서 매우 지배적인 역할을 할 수 있을 것으로 기대됩니다.



