Dave Ditzel
헤테로지니어스 멀티코어 아키텍처
트랜스메타(Transmeta) CPU에 혁신을 가져왔던 Dave Ditzel이 CPU 업계에 돌아왔습니다. 미국에서 새로운 CPU 회사인 Esperanto Technologies의 사장 겸 CEO를 맡아, RISC-V 명령어 세트 아키텍처의 CPU를 개발하고 있습니다. 현재 RISC-V 기반 CPU 프로젝트는 여럿 있지만, 그 중에서도 최고 성능의 CPU를 목표로 하고 있습니다.
Esperanto가 개발하는 CPU는 7nm 공정에 4천개 이상의 RISC-V CPU 코어를 지니고, 1W로 1TeraFLOPS급 성능을 내는 고효율 SoC입니다. 여기의 SoC는 범용 CPU 명령어 세트 아키텍처를 쓰지만 그래픽과 머신 러닝에도 높은 효율을 냅니다.
이를 실현하기 위해 Esperanto는 헤테로지니어스 멀티코어 아키텍처를 사용합니다. 구체적으로는 RISC-V에서 싱글 스레드 성능이 높은 CPU 코어인 ET-Maxion, RISC-V 벡터 명령을 구현해 처리량을 최적화한 CPU 코어인 ET-Minion을 결합합니다.
ET-Maxion는 명령 병렬 수행을 높인 아웃 오브 오더 코어로 64비트 RISC-V RV64GC 명령어 세트를 구현합니다. 여러 계층의 캐시를 탑재하고 TileLink2 온칩 인터커넥트로 연결합니다. 싱글 스레드 성능은 ARM의 고성능 코어를 넘어선 수준으로 리눅스를 원활하게 실행합니다. 따라서 ET-Maxion를 탑재한 칩은 OS 부팅에 별도의 CPU를 필요로 하는 보조 프로세서가 아닙니다.
ET-Minion는 전력 효율이 높은 인 오더 코어로 64비트 RISC-V 기반 벡터 명령과 벡터 연산 유닛을 추가합니다. 또 딥 러닝을 위한 명령이나 그래픽 확장도 추가합니다. 간단한 명령어 세트를 기반으로 하기에 단순하면서도 처리량이 높은 코어가 됩니다.
ET-Maxion 프로세서와 ET-Minion 프로세서
Minion 4,096개와 Maxion 16개를 7nm 칩에 탑재
현재 Esperanto가 목표로 삼은 SoC는 TSMC의 액침 7nm 공정으로 제조, 높은 싱글스레드 성능을 갖춘 ET-Maxion 코어 16개, 높은 처리량을 갖춘 ET-Minion을 4,096개 탑재한 칩입니다. 고성능 범용 코어와 높은 처리량의 코어를 조합하는 건 PS3의 셀과 비슷하지만 그 규모가 전혀 다릅니다. ET-Maxion 1코어에 ET-Minion 256코어의 비율입니다. 아마도 클러스터 구성일 것이라 추측됩니다. (셀 프로세서를 사랑하는 일본인답게 또 셀 이야기.. 그런데 이쯤 되면 PC에서 CPU+GPU 구성이랑 별반 다를게 없어 보이네요)
Esperanto가 목표로하는 SoC
또 2종의 RISC-V 코어 외에도 그래픽을 위한 기능 블럭을 SoC에 넣을 예정입니다. 특정 분야에 특화된 확장 Domain Specific Extensions을 범용 코어에 추가해 유연함과 높은 효율을 잡는다는 설계입니다. Esperanto 아키텍처 자체는 구성이 쉽습니다. ET-Maxion x16에 ET-Minion x4096의 구성은 대형 칩의 예시일 뿐, 모바일에 맞춰 작은 구성도 가능합니다. 또 이런 CPU 코어는 다른 회사에 라이센스도 줄 수 있습니다.
Esperanto는 11월 28일부터 30일까지 미국 Milpitas에서 개최된 RISC-V 컨퍼런스 7th RISC-V Workshop에서 프로젝트 개요를 발표했습니다. RISC-V 커뮤니티에 제안하는 RISC-V 명령어 세트의 벡터 확장에 대해서도 발표했지요. 이번 RISC-V 컨퍼런스는 미국 웨스턴 디지털의 캠퍼스에서 열리는데, 웨스턴 디지털은 Esperanto에 투자하면서 RISC-V에 상당한 공을 들이고 있습니다. 웨스턴 디지털은 플래시 스토리지 입장에서 컴퓨팅을 추진 중인데 Esperanto가 여기에 맞다고 판단한 듯.
RISC-V BOOM 오픈 소스 코어도 Esperanto가 관리
Esperanto이 채택한 RISC-V는 University of California at Berkeley에서 설립된 비영리 단체 RISC-V 재단이 표준화/보호/관리하는 오픈소스 CPU 명령어 세트 아키텍처입니다. RISC-V 자체는 명령어 세트로 CPU 코어 설계 자체를 오픈 소스로 제공하진 않습니다. 그러나 RISC-V를 기반으로 다양한 CPU 설계가 가능하며, CPU 코어 구현은 오픈 소스와 비공개로 모두 가능합니다.
RISC-V는 CPU 아키텍처에서 명성이 높은 David Patterson(Google, University of California at Berkeley)이 참여해 주목받았습니다. 이 분은 2018년 2월의 반도체 컨퍼런스 ISSCC(IEEE International Solid-State Circuits Conference)에서도 키노트 스피치로 RISC-V에 도달하기까지 CPU 아키텍처의 배경에 대한 강연을 할 예정입니다.
이런 분위기 덕분에 유럽과 미국에선 RISC-V 계열 프로세서의 개발 붐이 일고 있습니다. RISC-V 재단에는 구글, NVIDIA, 퀄컴, IBM< 삼성, 마이크론, 웨스턴 디지털, AMD 등의 유명 대기업에 참가하고 있습니다. Patterson이 구글에 합류하면서 구글이 RISC-V를 쓸 가능성도 높아졌습니다. NVIDIA도 GPU에 내장된 컨트롤러에 RISC-V를 씁니다.
현재 RISC-V는 임베디드 시스템과 FPGA의 코어에 쓰고 있습니다. 그러나 RISC-V 아키텍처 자체는 고성능 CPU도 만들 수 있습니다. Esperanto의 고성능 코어 ET-Maxion는 ARM의 최고 성능 CPU 코어 IP를 능가하는 성능을 목표로 하고 있습니다.
RISC-V에서 아웃 오브 오더 고성능 CPU 코어로는 오픈 소스인 BOOM(Berkeley Out-of-Order Machine)이 있습니다. BOOM의 핵심 개발자인 Chris Celio도 Esperanto에 참여해, BOOM을 Esperanto 오픈 소스 코어로 관리한다고 밝혔습니다. Esperanto는 오픈 소스 RISC-V 고성능 CPU 코어를 구현할 뿐만 아니라 RISC-V 규격화와 승격까지 깊은 관련을 맺을 것입니다.
그나저나 7nm이라니...ㄷㄷ