프로젝트 덴버

프로젝트 덴버(Project Denver)는 엔비디아가 설계한 중앙 처리 장치의 코드명으로, 단순한 하드웨어 디코더와 소프트웨어 기반 이진 변환 (동적 재컴파일)의 조합을 사용하여 ARMv8-A 64/32비트 명령어 집합을 구현한다. "덴버의 이진 변환 레이어는 운영 체제보다 낮은 수준의 소프트웨어에서 실행되며, 일반적으로 접근되고 이미 최적화된 코드 시퀀스를 주 메모리에 저장된 128MB 캐시에 저장한다." 덴버는 매우 넓은 인오더 슈퍼스칼라 파이프라인이다. 이 설계는 다른 SIP 코어(예: GPU, 디스플레이 컨트롤러, DSP, 이미지 프로세서 등)와 통합되어 하나의 다이에 시스템 온 칩(SoC)을 구성하는 데 적합하다.

프로젝트 덴버는 모바일 컴퓨터, 개인용 컴퓨터, 서버, 그리고 슈퍼컴퓨터를 대상으로 한다. 해당 코어는 엔비디아의 테그라 SoC 시리즈에 통합되었다. 초기 덴버 코어는 28 nm 공정 노드(테그라 모델 T132, 일명 "테그라 K1")용으로 설계되었다. 덴버 2는 더 작고 효율적인 16 nm 노드용으로 제작된 개선된 디자인이다. (테그라 모델 T186, 일명 "테그라 X2").

2018년, 엔비디아는 ARMv8 (64비트; 변형: ARM-v8.2NVIDIA Jetson AGX Xavier Delivers 32 TeraOps for New Era of AI in Robotics by Dustin Franklin (Nvidia development team for Jetson), December 12, 2018 (10방향 슈퍼스칼라, 기능 안전성, 이중 실행, 패리티 및 ECC 포함)에 기반한 개선된 디자인(코드명: "카멜")을 테그라 자비에르 SoC에 통합하여 총 8개의 코어(또는 4개의 듀얼 코어 쌍)를 제공한다.NVIDIA Drive Xavier SOC Detailed by Hassan Mujtaba on Jan 8, 2018 via WccfTech 카멜 CPU 코어는 완전한 Advanced SIMD (ARM NEON), VFP (Vector Floating Point) 및 ARMv8.2-FP16을 지원한다.NVIDIA Jetson AGX Xavier Delivers 32 TeraOps for New Era of AI in Robotics by Dustin Franklin (Nvidia development team for Jetson), December 12, 2018 카멜 코어가 통합된 젯슨 AGX 개발 키트의 첫 번째 외부 전문가 테스트는 2018년 9월에 이루어졌으며, 테스트 설정의 일반적인 속도와 특히 관련된 모든 의심에도 불구하고 이전 시스템에 비해 현저히 향상된 성능을 보여주었다. 카멜 디자인은 12nm 구조 크기로 설계된 테그라 모델 T194 ("테그라 자비에르")에서 찾을 수 있다.

 개요 
 7방향 슈퍼스칼라 실행 파이프라인을 갖춘 파이프라인 프로세서
 코어당 128 KiB 명령어 + 64 KiB 데이터 L1 캐시 (둘 다 4방향), 2 MiB L2 캐시 (16방향 공유)
 덴버는 또한 128 MiB의 주 메모리를 메인 운영 체제에서 접근할 수 없는 해석 캐시로 따로 설정한다.
 최대 2.5 GHz로 실행된다.

 ARM 코드는 하드웨어 번역기 또는 소프트웨어 에뮬레이션을 통해 프로젝트 덴버의 내부 명령어 집합으로 번역된다. 소프트웨어 에뮬레이션이 사용되는 경우 ARM 명령어는 재정렬되거나, 최종 결과에 기여하지 않으면 제거되거나, 다른 방식으로 최적화될 수 있다.

 칩 
멀티 코어 덴버 CPU는 케플러 기반 GPU 솔루션과 결합되어 테그라 K1을 형성했다. 듀얼 코어 2.3 GHz 덴버 기반 K1은 2014년 11월 3일 출시된 HTC 넥서스 9 태블릿에 처음 사용되었다. 그러나 쿼드 코어 테그라 K1은 동일한 이름을 사용하더라도 덴버 기반이 아니다.

엔비디아 테그라 X2는 두 개의 덴버2 (ARMv8 64비트) 코어와 네 개의 A57 (ARMv8 64비트) 코어를 일관된 HMP(이종 멀티프로세서 아키텍처) 방식으로 사용한다.NVIDIA Unveils Tegra Parker SOC at Hot Chips – Built on 16nm TSMC Process, Features Pascal and Denver 2 Duo Architecture, August 22, 2016 이는 파커 GPU와 장치를 짝짓는다.

테그라 자비에르는 엔비디아 볼타 GPU와 여러 특수 목적 가속기를 카멜 디자인의 8개 CPU 코어와 짝지어 사용한다. 이 디자인에서 4개의 카멜 ASIC 매크로 블록(각각 2개의 코어 포함)은 하나의 크로스바와 4 MiB의 L3 메모리와 서로 연결된다.

 역사 
프로젝트 덴버의 존재는 2011년 소비자 가전 전시회에서 공개되었다.http://www.nvidia.com/object/ces2011.html Nvidia's press conference webcast 2011년 3월 4일 Q&A 기사에서 젠슨 황 CEO는 프로젝트 덴버가 수백 명의 엔지니어들이 이미 3년 반 동안 작업한 5년짜리 64비트 ARMv8-A CPU 개발이며 32비트 ARM 명령어 집합 (ARMv7) 하위 호환성도 갖추고 있다고 밝혔다. 프로젝트 덴버는 트랜스메타의 프로젝트와 유사하게 이진 변환을 사용하는 X86 호환 프로세서로 스테이사 회사(콜로라도)에서 시작되었다. 스테이사는 2006년 엔비디아에 인수되었다.

톰스 하드웨어에 따르면, 덴버 팀에는 인텔, AMD, HP, 썬 및 트랜스메타의 엔지니어들이 있으며, 이들은 비순차적 실행, 초장 명령어어 (VLIW), 동시 멀티스레딩 (SMT)을 갖춘 슈퍼스칼라 CPU 설계에 대한 광범위한 경험을 가지고 있다.

찰리 데머지안에 따르면, 프로젝트 덴버 CPU는 CPU 내부의 펌웨어를 사용하여 ARM 명령어를 내부 명령어 집합으로 변환할 수 있다. 또한 데머지안에 따르면, 프로젝트 덴버는 원래 트랜스메타의 코드 모핑 기술을 사용하여 ARM 및 X86 코드를 모두 지원할 예정이었지만, 엔비디아가 인텔의 특허 라이센스를 얻지 못했기 때문에 ARMv8-A 64비트 명령어 집합으로 변경되었다.

덴버 CPU 코어를 탑재한 최초의 소비자 기기인 구글의 넥서스 9은 2014년 10월 15일에 발표되었다. 이 태블릿은 HTC에서 제조되었으며 듀얼 코어 테그라 K1 SoC를 특징으로 한다. 넥서스 9는 소비자에게 제공된 최초의 64비트 안드로이드 기기였다.

 같이 보기 
 ARMv8-A 코어 비교

 각주 

 외부 링크 



분류:엔비디아 제품
분류:ARM 마이크로프로세서