내용이 인상깊어서 전체 내용을 다 가져와봤습니다.
여러분이 잘 알듯, 우리는 특정 단계에 도달할 때 까지 제품을 공개하지 않습니다. N1제품은 우리가 공식적으로 공개한 뒤 드랍시킨 유일한 제품이죠. 우리는 보이지 않는곳에서 꽤 많은 프로젝트를 시도했었고, 불완전하거나 드랍된 경우가 있었습니다.
오늘 저는 11월에 출시 예정인 인텔 플랫폼, H2를 공개합니다. 왜 H 혹은 H1이 아니냐고요? 이것은 우리의 세번째 x86 플랫폼이기 때문입니다. 우리는 2015년에 첫 x86 플랫폼 프로젝트를 시작했습니다.
우리가 ARM 아키텍처 뿐 아니라 x86 플랫폼을 권장하는 이유는 다음과 같습니다.
x86(ia64) 플랫폼은 리눅스 소프트웨어 지원이 매우 잘 되어 있습니다.
- 리눅스의 최신 커널 4.18이 완벽하게 작동합니다. (우분투 18.10의 기반 커널)
- Mesa 라이브러리를 통해 최신 OpenGL 4.5, OpenCL 2.0, Wayland, Vulkan GPU 드라이버가 작동합니다.
- VAAPI 표준을 이용, MPEG2/MPEG4/H.264/H.265/VP8/VP9 하드웨어 인코더 & 디코더가 작동합니다.
x86(ia64) 플랫폼은 하드웨어 인터페이스 지원이 강력한 편입니다.
- 64bit 듀얼채널 DRAM을 지원하여 데이터 전송속도가 빠릅니다.
- 다양한 비디오 출력 지원
- 여러개의 PCIe 레인
- 여러개의 USB 3.0/2.0 루트 허브
- 여러개의 이더넷 포트
- 여러개의 SATA 포트
x86 플랫폼 프로젝트의 역사
2015 10월
우리는 인텔 체리트레일 X5-Z8500를 사용하여 코드네임 ODROID-H로 명명된 최초의 x86 기반 오드로이드 보드를 개발하기 시작했습니다. 2015년~2016년 기간 동안 다른 제조사에서는 1.8GHz 쿼드코어 X5-Z8300 기반의 여러 싱글보드 제품이 출시되었었는데요. 우리는 2.2GHz 쿼드코어 Z8500이 성능상 뚜렷한 차이점이 있다고 봤습니다. 라인업은 같지만 아예 다른범주로 취급되었거든요.
3개월 동안 회로와 PCB 디자인을 마친 후 제조 공정에 들어갔는데, 큰 문제를 맞이하게 되었습니다. Z8500의 FBGA 핀수가 굉장히 많아서 PCB 비용을 높이는 원인이 되었고, 제조비용이 예상보다 두배가 넘게 나왔습니다. Z8300이 592핀을 가진데 비해, Z8500은 무려 1380개의 핀이 있었습니다. LPDDR3 메모리를 요구하는 것도 큰 장애물이었습니다. Z8300은 일반 DDR3 메모리를 지원했지만 Z8500은 오직 LPDDR3 메모리만 지원했었고, LPDDR3는 DDR3에 비해 비싸고 리드타임이 굉장히 길어 성능상 이점도 없었습니다. Z8500은 CPU자체로는 경쟁력이 굉장히 높았지만, 최종제품화되기엔 난관이 많은 물건이었습니다.
2016년 8월
우리는 인텔 브라스웰 N3160을 가지고 새로운 x86 보드 디자인에 착수했습니다. 과거의 경험을 통해, 두번째 개발은 좀더 빠르고 성공적이었습니다. 이번엔 프로젝트 코드네임을 'ODROID-H1' 이라 부르기로 했습니다.
첫 엔지니어링 샘플은 2017년 2월에 만들 수 있었고, 이 보드엔 8GB 온보드 DDR3 메모리가 포함되었습니다. ODROID-H1은 특정 프로젝트에 사용되었으며, 결과물은 굉장히 성공적이었습니다. 그러나 SBC마켓에 이 제품을 출시하기 전에 인텔에서 다음세대 아톰 CPU인 아폴로레이크를 출시했고, 따라서 브라스웰 CPU를 가진 이 제품은 경쟁력이 없다고 판단했습니다. 게다가 1GB DDR3 메모리 칩 부족도 H1의 런칭을 가로막는 요인이었습니다.
2017년 12월
우리는 AMD 라이젠 5 2500U 3.5GHz 모바일 프로세서를 염두에 두었습니다. 성능은 굉장히 인상적이었으나, 가격도 역시 매우 인상적이었습니다. 다행히, 인텔에서도 새로운 세대인 제미니레이크를 출시했습니다. 라이젠보단 조금 느렸지만 이전세데 아폴로레이크보다 빨랐으며, 가격이 합리적이었습니다. 결국 제미니레이크를 이용하여 하이엔드 싱글보드 컴퓨터인 'ODROID-H2'를 개발하기로 결정했습니다. 스펙은 다음과 같습니다.
- 2.3Ghz Quad-core processor J4105 (14nm) with 4MiB Cache
- Dual-channel Memory DDR4-PC19200 (2400MT/s)
- Total 32GiB RAM Space with two SO-DIMM slots
- 4 x PCIe 2.0 for one NVMe storage
- 2 x Gbit Ethernet ports
- 2 x SATA 3.0
- SSE4.2 accelerator (SMM, FPU, NX, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AES)
- Intel UHD Graphics (Gen9.5) 600 (GT1) 700Mhz
- HDMI 2.0 and DP 1.2 multiple video outputs
따라서 2018년 3월부터 하드웨어 설계를 시작했으며, 7월에 첫 엔지니어링 샘플을 만들었습니다. 이후로는 몇몇개의 하드웨어 문제를 고치고, 9월에 두번째 샘플을 만들었습니다. 모든것이 정상적으로 동작했으며, FCC, CE, KC, RoHS등의 인증을 몇개월에 걸쳐 획득했습니다. 이제 몇주 이내로 ODROID-H2의 대량생산을 시작할 것이며, 11월 말 즈음부터 판매가 가능할 것입니다.
ODROID-H2는 큰 히트싱크를 통해 여러분에게 조용하면서도 강력한 컴퓨팅 환경을 제공합니다. 보드 사이즈는 110x110x43mm 이며, 무게는 히트싱크와 DRAM 모듈 두개, NVMe SSD를 포함하여 320그램입니다.
ODROID-H2의 블럭 다이어그램입니다. 상호 연결구조를 이해하는데 도움이 될 것입니다.
PCB 사진들.
- CPU 발열 테스트
CPU 클럭과 기본재공되는 패시브쿨링 방열판의 성능을 알아봅시다. 아래 그래프는 CPU에 스트레스 테스트를 30분간 걸어 준 결과를 보여줍니다. 클럭은 쓰로틀링 없이 2.3GHz로 유지되었으며, 온도는 70도보다 낮게 유지되었습니다.
사용된 명령어 : stress-ng --cpu 4 --cpu-method all
- 전력소모
우리는 eMMC 스토리지, 우분투 18.10 부팅 환경에서 소비전력을 측정했습니다.
Idle : 4W
CPU Stress : 14W
CPU+GPU Stress : 22W
- IO 테스트
eMMC, USB 3.0, SATA, NVMe 저장장치를 테스트했습니다. SSD의 경우 M.2 NVMe 4레인 PCIe 인터페이스로 연결되어 있습니다. (대역폭 1.6GiB/s)
사용된 명령어 : iozone -e -l -a -s 100M -r -4k -r -16384k -i 0 -i 1 -i 2
- 비디오 트랜스코딩 퍼포먼스
4K/H.265 to 720p/H.264 트랜스코딩 퍼포먼스를 측정했습니다. VAAPI에서 지원되는 FFmpeg를 통해 4K/H.265 to 720p/H.264 트랜스코딩은 전부 하드웨어 가속으로 처리됩니다. 10분짜리 4K/30Hz 비디오 파일은 3분 안에 720p/30Hz 비디오로 변환될 수 있습니다. 또한 듀얼채널 메모리를 구성할 경우 트랜스코딩 성능이 약 25%정도 빨라집니다.
- 화면출력 테스트
HDMI 2.0 포트와 DP 1.2 포트를 이용하여 4K/60Hz 듀얼모니터를 사용할 수 있습니다. 7680x2160 해상도에서 WebGL 하드웨어 가속을 이용한 데모를 실행한 모습입니다.
닌텐도 위 에뮬레이션. 불칸 API를 통해 그래픽 성능이 좋아졌다고 하네요.
가격은 $100 이상으로 나올 예정입니다.
파트2 : ODROID-H2를 위한 케이스 시리즈
우리는 이전에도 다양한 ODROID 개발보드를 위한 여러가지 케이스들을 소개해왔습니다. 이번에는 네가지 타입의 케이스를 소개하게 되어 기쁘네요. 이 케이스들은 우리의 경험과 오드로이드 포럼에서 배운 지식들을 바탕으로 디자인되었습니다. 전부 아크릴 패널을 사용했으며, 쉽게 조립하실 수 있을겁니다.
Type-I
오드로이드 클라우드쉘2 제품과 매우 비슷한 디자인이며, 3.5" 드라이브 두개를 설치 할 수 있습니다. 뒤쪽에 90mm팬이 있어 보드와 HDD를 냉각시킵니다.
Type-II
아마 깔끔한 환경을 위해 오드로이드를 디스플레이 장치 뒷면에 장착하고 싶은 분들이 있을것입니다. 이 케이스는 VESA 마운트를 지원하여 모니터나 TV 뒤에 장착할 수 있습니다. 상단 패널엔 공기구멍을 뚫는 대신 90mm 팬을 위한 그릴을 장착했습니다. 우리는 오드로이드를 패시브쿨링으로 사용하는게 괜찮다고 생각하지만, 원한다면 90mm 팬을 장착해서 사용하실 수 있을겁니다.
Type-III
Type-II 기반에 2.5" 드라이브 두개를 장착할 수 있는 베이가 추가되었습니다.
Type-VI
역시 Type-II 기반이며, 추가로 2.5" 드라이브 2개 혹은 3.5" 드라이브 1개를 장착할 수 있습니다. 다만 두가지를 동시에 장착할 수는 없네요.
포럼 댓글에서 나온 질문과 답변, 혹은 정보들
- ECC 메모리 지원하나요? : 지원안합니다.
- 인텔 스펙시트 보니 J4105의 최대 메모리 용량은 8GB던데? : 16GB 모듈 두개 꽂아서 동작을 확인했습니다.
- 프로세서에서 가상화 지원함
- 찾아보니 J4105 가격은 1천개 주문하면 $107인듯 하다.
- 뉴에그에서 ASRock J4105 ITX 보드가 $72달러에 판매중이다. 또한 아마존에서 완제품이 ~$150 즈음에 판매중
- 12V나 GPIO핀은 없음. 핀헤더에 2개의 I2C 버스와 2개의 UART, 5V, 3.3V DC가 있음. I2C를 이용해 GPIO 확장 칩셋을 사용할 수는 있음