알데바란(Aldebaran) CPU 코어는 한국전자통신연구원(ETRI)에서 독자적으로 개발한 코어이다. 이름은 별자리 중 황소자리를 대표하는 1등성 별의 명칭에서 따왔다. 이 프로세서는 전력량 최소화 마이크로아키텍처 기반 CPU 코어와 기업과의 상호 운용성 증대를 위한 오픈소스(GNU) 기반의 소프트웨어 툴체인(Toolchain)을 포함한 ADE(응용 애플리케이션 개발환경)을 통합 제공한다. 연산기능과 주어진 상황에서 최적화가 이루어지는 학습능력이 필요함에 따라 지능형 알고리즘을 효율적으로 계산할 수 있는 하드웨어 기반의 MCU 개발이 요구되고 있다. 이러한 요구사항을 만족하기 위해 전자부품연구원은 MENSA 코어를 개발했다.
언맨드 솔루션, 알데바란 코어 이용해 이동로봇 SoC 개발
MENSA코어, IoT 분야 기대…애플리케이션 확대가 숙제
[지난주 기획 '국산 CPU 코어, 당신은 어디까지 알고 계십니까'에 이은 두번째 기사임]
알데바란(Aldebaran) CPU 코어는 한국전자통신연구원(ETRI)에서 독자적으로 개발한 코어이다. 이름은 별자리 중 황소자리를 대표하는 1등성 별의 명칭에서 따왔다. 이 프로세서는 전력량 최소화 마이크로아키텍처 기반 CPU 코어와 기업과의 상호 운용성 증대를 위한 오픈소스(GNU) 기반의 소프트웨어 툴체인(Toolchain)을 포함한 ADE(응용 애플리케이션 개발환경)을 통합 제공한다.
알데바란의 마이크로아키텍처 및 CPU 코어의 설계코드(RTL)는 ETRI의 독자기술로서 기업이 협의를 거쳐 자체 기술로 확보할 수 있으며 기업이 요구하는 기능의 추가 개발이 가능할 뿐만 아니라, ETRI의 지적재산권에 의하여 기술 고유성을 보호받을 수 있다. 알데바란 CPU 코어를 활용한 SoC인 알데바란 S2 SoC는 TSMC 65nm 공정에서 제작하였으며 최대 동작속도는 800MHz, 에너지효율은 0.24mW/MHz로 업계 최고의 전력 효율성을 가지고 있다고 ETRI 측은 밝혔다.
알데바란은 Deep pipelining(13단계) 구조로 구현하여 800MHz@65nm(1GHz@45nm)의 고속 실행이 가능하며 분기 예측기를 구현하여 성능을 극대화할 수 있다. 알데바란 CPU 코어는 13단 듀얼 이슈 슈퍼스칼라 아키텍처로서 분기 예측(Branch Prediction), 명령어 저장장소(Instruction queue) 구조 및 전력 소모 최소화를 위한 캐시 활성화 빈도 최소화, DVFS 등의 구조를 갖추고 있다. 이 같은 고성능 저전력 구조는 알데바란 CPU 코어가 웨어러블 스마트 디바이스에 적합한 아키텍처임을 말해준다.
▲자동차 영상인식 분야에 적용한 Aldebaran 프로세서 시연 모습.
ETRI의 지능형반도체연구부 측은 “알데바란 CPU 코어는 32비트 명령어 및 데이터 기반의 RISC 코어로서 13단계의 파이프라인을 가진다”며, “CPU 코어는 3개의 도메인으로 구분되며 각각의 도메인은 성능 극대화를 위하여 명령어 저장소를 각 도메인의 경계 면에 구현함으로써 동작 주파수룰 극대화하는 구조를 채택했다”고 밝혔다.
알데바란 CPU 코어는 상호운용성 증대를 위한 GNU 컴파일러 및 소프트웨어 에코시스템을 갖추고 있으며 리눅스 커널이 안정적으로 운용된다. 또한 코어 내부에 “Aldebaran Eyes”라는 별도의 고속 디버깅 모듈이 있고 외부화는 USB2JTAG 인터페이스(5핀)로 데이터를 주고 받을 수 있다. Aldebaran Eyes는 CPU 코어의 Stop, Resume, Register probe/set, TLB 프로브/셋, 메모리 프로브/셋 등 소프트웨어 디버깅을 위한 다양한 기능을 제공하는 최소 면적의 디버깅 모듈이다.
ISO26262 준수하는 1GHz 알데바란 프로세서가 4월에 출시
알데바란 CPU 코어의 응용을 위하여 다양한 평가시스템 즉 알데바란 S2 SoC 기반 시스템, 자일링스 버텍스-7 2000T FPGA 보드 기반 시스템 및 자일링스 아틱스(Artix)-7 200T기반 저가형 시스템을 제공한다. ETRI는 알데바란을 활용하여 제작한 알데바란 S2는 알데바란 IP를 포함하고 있으며 DVFS(Dynamic Voltage Frequency Scaling) 기능을 함께 포함하여 다양한 전력 모드에서 활용할 수 있다. 또한 ETRI는 알데바란-FT를 활용하여 개발한 알데바란-TS3는 프로세서 코어 4개를 집적하였으며 비디오 압축, 합성 및 센싱 등의 기능을 한다.
현재 알데바란은 ABCore-S2, S4, CL, CT가 개발된 상태이며 앞으로 Many-코어 기반의 휴먼 인텔리전스를 가능케하는 Neural-Core 딥 러닝을 구현하는 ABCore-HoC와 IoT, 웨어러블 디바이스, 드론 등에 사용될 수 있는 ABCore-NANO를 개발하고 있다. 알데바란 CPU 코어는 기술성과 비용 경쟁력을 동시에 갖추고 있어 IoT, 로봇, 오토모티브 분야를 위한 SoC 기술에 기여할 수 있으며 전량 수입하고 있는 임베디드 CPU 코어를 대체할 수 있다.
한국전자통신연구원의 프로세서연구실 권영수 연구원은 “오토모티브 세이프티 프로세서로 영상인식과 ISO26262를 적용한 알데바란을 활용할 수 있다”며, “외국 기업이 대부분 차지하고 있는 자동차 반도체 분야에서는 그나마 국내업체들이 영상인식 기술에 집중하고 있어, 여기에 알데바란프로세서를 적용시켜 나가는 것이 목표”라고 밝혔다. 특히 차량영상인식 분야는 향후 이슈가 주목되고 있는 자율주행차의 핵심 기능에 속해 전망이 밝다. 자동차 기능 안전 표준인 ISO26262는 성능과 안전을 최우선으로 하며 ADAS(첨단운전자보조시스템)에도 필요하다.
권 연구원은 이어, “ISO26262를 준수하는 1GHz 알데바란 프로세서가 4월에 출시되었다”며, “이를 바탕으로 알데바란 프로세서는 영상인식 고성능 ADAS 시장을 타깃으로 세계적인 기업인 르네사스나 인피니언처럼 ISO26262를 고성능 프로세서에 적용할 것”이라고 강조했다.
언맨드솔루션 “군사, ADAS 테스트, 드론, 농업용 이동로봇 SoC 활용”
언맨드솔루션은 알데바란 프로세서를 이용해 이동로봇 플랫폼 제어 통합형 SoC를 개발했다.
이 회사는 알데바란 프로세서와 각 IP간의 AMBA 버스 디자인 및 RTL 설계 등을 진행했다. 또한 각 디자인을 테스트하기 위해 자일링스 킨텍스 FPGA 테스트 플랫폼 및 각 Peri의 성능 테스트용 애플리케이션 보드를 제작했으며 이동로봇 플래폼과 FPGA 애플리케이션 간 I/F MDF 구현 및 성능을 테스트했다.
▲Aldebaran 프로세서를 이용해 이동장치 조향체계를 만든 모습.
언맨드 측은 코어보유기관인 ETRI로부터 알데바란 RTL 설계 환경 및 컴파일러 등이 포함된 SW 툴체인을 제공받았으며 알데바란용 디버거 및 통합 개발환경을 구축할 수 있었다고 밝혔다. 또한 ETRI는 알데바란용 RTOS 포팅, 테스트 키트 및 샘플 FPGA 보드 지원, 알데바란 비주얼 플랫폼 등을 지원했다. 특히 소형 이동로봇 플랫폼 SoC 사양 및 상세 설계 방법을 지원받는 등 협력 측면에서 노하우를 전수받을 수 있었다고 업체 측은 밝혔다.
언맨드솔루션의 우훈제 연구소장은 “알데라반 코어와 페리페럴 연결시 AMBA Copatible이 용이하여 각 IP와 코어 간 버스 아키텍처 연결을 쉽게 설계할 수 있었다”며, “듀얼 스컬러 구조의 알데바란 코어를 이용하여 다중코어, 프로세서 상의 애플리케이션 개발이 쉬웠다고 말했다. 우 소장은 이어 이 밖에 알데바란 코어를 위한 통합개발 디버거 및 통합 개발 환경 제공을 통해 개발 및 사용 편의성이 좋고 실시간 OS를 포함한 다양한 OS 지원이 가능하다는 점을 장점으로 들었다.
범용 OS상에서도 사용할 수 있는 다양한 통합 개발 환경이 필요해
특히 그는 ARM 코어텍스 M4/M7 기준에서 MCU 중 다중 코어 MCU는 없다며 범용적인 ARM 코어 MCU의 특성상 고정된 인테페이스와 사용이 불필요한 인터페이스 개수 대비 맞춤형 설계가 가능하다고 말했다.
하지만, 보다 복잡한 알고리즘 처리 속도를 위해 기존의 FPU 보다 낮은 사이클의 계산 처리 속도가 요구되며 폭넓은 사용자 개발환경을 위해 범용 OS상에서도 사용할 수 있는 다양한 통합 개발 환경이 필요하다고 우 소장은 지적했다. 또한 사업화 시작시 코어 기관과의 디바이스 드라이버, 코어 퍼포먼스 개선에 대한 지속적인 FAQ에 대한 상호 연결 구축을 희망했다.
이번 이동 로봇 SoC 개발을 바탕으로 언맨드 측은 군사, ADAS 테스트, 드론 테스트를 비롯하여 특히 농업분야에 활용 가능성을 높게 보고 있다고 전망했다.
MENSA, ECLIPSE 기반의 개발 환경을 구축 계획
범용성 중심의 CPU와 고속 반복계산을 중심으로 하는 DSP의 성능 향상이 지속적으로 이루어지고 있으나 지능 알고리즘을 처리하기 위한 고속 대용량 계산에는 적합하지 않은 구조를 가지고 있다. 지능 알고리즘 중 가장 널리 사용되는 신경망, 유전자 또는 뇌모방형 알고리즘은 다양한 응용용분야가 보고되고 있으나 계산량의 한계로 실용성 있는 시스템의 구현이 어려운 경우가 많다.
다시 말해, 연산기능과 주어진 상황에서 최적화가 이루어지는 학습능력이 필요함에 따라 지능형 알고리즘을 효율적으로 계산할 수 있는 하드웨어 기반의 MCU 개발이 요구되고 있다. 이러한 요구사항을 만족하기 위해 전자부품연구원은 MENSA 코어를 개발했다.
▲KETI는 MENSA코어를 활용해 저전력 센서 시스템을 구현했다.
MENSA(Microcontroller with Enhanced Numeric, Scheduling and Artificial intelligence unit) 코어는 Integer Unit을 기본으로 하는 경량 MCU의 구조에 확장된 버스와 명령 디코더의 기능에 다중 버스 분산 연산이 가능한 스케줄링 기능을 추가 확장하였다. DSP와 같은 고속 연산 소자인 FPU 뿐만 아니라 인공지능 기능을 제공할 수 있는 NNPU(Neural Network Processor Unit), GAU(Genetic Algorithm Unit) 및 NPU(Neuromorphic Processor Unit) 기능을 자유롭게 확장하여 사용할 수 있도록 설계되어 있다. 이러한 기능을 통해 경량 플랫폼 설계 뿐만 아니라 지능형 기능을 갖는 다양한 분산연산형 IoT 플랫폼 구성에 사용되어질 수 있도록 하였다.
MENSA를 활용한 인식알고리즘 처리 SoC는 학습 기반이 아닌 비 학습 기반의 유전 알고리즘과 같은 자연도태의 유전적인 메커니즘에 기초한 탐색 알고리즘을 지원한다. 또한 3차 이상의 PPC의 계수 값을 찾기 위한 지능형 GAU연산을 지원하며 4개 이상의 복합 센서 신호를 동시에 보정 가능한 복합 신호 처리 SoC이다.
KETI, "모바일, 지능형 자동차, IoT 디바이스, 무인항공기 등에 확대 계획"
MENSA 코어를 이용한 GAU 활용 센서 신호처리 SoC도 있다. 26개의 명령어 셋을 정의하여 이를 통해 많은 종류의 신경망 알고리즘 및 이미지 알고리즘을 지원하며 버스(Bus)와 링(Ring)을 혼합하여 사용함으로써 쉽고 유연한 제어와 효율적으로 ‘error back propagation’ 알고리즘을 지원한다. LUT(look-up table)을 이용하여 NFU(Non-linear function Unit)을 설계함으로써 Non-리니어값을 계산하는 시간을 줄인다. MENSA를 활용하여 음성인 SoC 개발도 진행 중이다. FPGA를 이용한 검증 플랫폼을 구축하고 시뮬레이션 모델 제공을 통한 SoC Top 설계를 지원할 예정이다.
전자부품연구원의 김동순 책임은 “향후 MENSA는 ECLIPSE 기반의 개발 환경을 구축할 계획”이라며, “이를 바탕으로 모바일 분야, 지능형 자동차, IoT 디바이스, 무인항공기 및 로봇 분야 등에 애플리케이션을 확대할 예정”이라고 말했다.