데스크탑과 크게 다른 스카이레이크 코어 레이아웃
인텔은 반도체 국제 회의 ISSCC(IEEE International Solid-State Circuits Conference)에서 2017년에 발표한 서버 CPU인 스카이레이크-SP의 세부 사항을 발표했습니다.
스카이레이크-SP는 최대 28코어 구성의 서버 CPU 제품군입니다. 기존의 서버 CPU와는 다르게, 내부 인터커넥트를 링 버스에서 메시 패브릭으로 바꿨습니다. 또 벡터 명령을 512비트의 AVX-512로 확장, CPU의 캐시 계층을 변경, LLC(Last Level Cache)를 비 포괄적(non-inclusive) 캐시로 구성했습니다.
최대 28코어 제품에는 56스레드, 38.5MB LLC, 6채널 DDR4 인터페이스, 48레인의 PCI-E 3.0, 3x 칩 인터커넥트 UPI, 네트워크 패브릭 옴니패스 인터페이스가 통합됩니다.
스카이레이크-SP의 스펙
이번에 공개된 스카이레이크-SP의 CPU 코어는 데스크탑 스카이레이크의 CPU 코어와 레이아웃이 상당히 다릅니다. AVX-512 명령의 실행 유닛이 추가돼 캐시 계층과 제어가 바뀐 것이 큽니다. 또 CPU 코어에 딸린 파워 레귤레이터와 메쉬 네트워크 인터페이스는 코어 타일을 구성합니다. 스카이레이크-SP의 다이는 코어 타일이 빽빽하게 늘어선 구조입니다.
아래 슬라이드는 스카이레이크-SP의 코어 타일 다이 면적입니다. 사각형 안에 CPU 코어, 캐시, 파워 레귤레이터, 메쉬 에이전트가 배치됩니다. 사진 해상도가 떨어지는 건 기밀 유지를 위해서인듯. 사각형 타일 배치를 자유로이 할 수 잇는 모듈을 사용, 같은 타일을 어떻게 배치하느냐에 따라 다른 수의 코어를 지닌 CPU를 만들어 냅니다.
ISSCC에서 공개된 스카이레이크-SP의 코어 타일 구성
스카이레이크 CPU 코어에 AVX-512 실행 유닛과 L2 캐시가 추가됩니다. 비 포괄적 L3 캐시와 스누프 필터는 CPU 코어에 있습니다. 코어 타일의 우측 상단에 배치되는 건 온 다이 메쉬 인터커넥트 MESH에 연결하는 인터페이스 CHA(Cache-Home Agent)입니다.
코어 타일에는 CPU 코어마다 전용 FIVR(Fully Integrated Voltage Regulator), ADPLL(All Digital Phase Lock Loop)가 CPU 코어 아래에 배치됩니다. 이 유닛 그룹을 거쳐 스카이레이크-SP는 CPU 코어의 전압과 클럭을 최적화하기에, 평균 전력을 줄였다고 보입니다.
다이 면적을 보면 FIVR과 ADPLL 부분도 의외로 면적이 큽니다. PC에서 제외됐던 FIVR이 스카이레이크-SP에서 다이 등장한 것도, 인텔 FIVR은 저전압에서 비효율적이나 서버에선 별 문제가 되지 않는다고 판단한 것으로 풀이됩니다.
코어와 FIVR이 밀접하게 소통
코어 타일을 바둑팍 형태로 배치해 메쉬로 연결
스카이레이크-SP 제품군은 코어 타일이 가로/세로로 빽빽하게 배치된 설계를 씁니다. 아래 왼쪽은 25코어, 오른쪽은 28코어입니다. 25코어는 5x5 구성 코어 타일을 씁니다. 28코어는 5×6이지만 좌우 2개의 코어 타일은 메모리 컨트롤러의 타일로 대체됩니다. 2개의 메모리 컨트롤러 타일 외부에 각각 3채널 DDR4 메모리 인터페이스가 배치됩니다.
오른쪽이 28코어, 왼쪽이 25코어
스카이레이크-SP의 28코어 구성
스카이레이크-SP의 코어 타일 상단에는 North Cap이라는 I/O 컴플렉스가 있습니다. UPI 링크와 PCI-E는 여기에 배치됩니다. 코어 타일과 각각의 유닛은 온 다이 인터커넥트 패브릭 MESH로 연결됩니다.
MESH의 기본 구성
스카이레이크-SP 메쉬 네트워크
스카이레이크-SP의 온 다이 패브릭 MESH는 X와 Y 방향의 2D 메쉬입니다. X와 Y축 모두 양방향 연결이며 코어 타일과는 CHA(Cache-Home Agent)로 연결합니다.
CHA은 MESH를 통해 근처의 4방향의 CHA와 연결됩니다. 인텔은 지금까지 링 버스의 장점을 강조했지만 스카이레이크-SP에서 메시가 더 확장 성능이 높다고 설명합니다. 덧붙여서 스카이레이크-SP의 SP는 Scalable Performance의 약자입니다.
28코어의 경우 코아 타일이 좌우로 거울처럼 늘어서 있기에 CHA가 인접해 있습니다. 메쉬 네트워크 알고리즘은 매우 간단해, 목표 타일에 먼저 수직 방향으로 움직이고 그 다음에 수평 방향입니다. 요청과 응답이 모두 이 알고리즘으로 연결됩니다.
먼저 수직, 그 다음이 수평 방향으로 이동
복잡한 전력 도메인
스카이레이크-SP의 파워 도메인은 매우 복잡합니다. 아래 슬라이드에서 노란색은 CPU 코어의 Vcc입니다. 색은 다 같아도 코어 타일마다 전압을 바꿀 수 있습니다. 코어 타일 속에 녹색은 Vccclm입니다. 코어 타일에서 CPU 코어 외의 언코어 부분과 LCC 등의 전력 도메인입니다.
메쉬 네트워크 자체의 인프라 공급인 Vccio도 독립된 파워 도메인을 씁니다. 코어 타일이 저전압이어도 메쉬 네트워크는 높은 전압을 가해 일정 속도로 계속 작동합니다. 이 밖에 시스템 에이전트 영역과 메모리 컨트롤러, 메모리 인터페이스 등이 각각 다른 파워 도메인을 씁니다.
복잡한 스카이레이크-SP의 파워 도메인
스카이레이크-SP의 실제 설계에서는 3종류의 누설 전류마다 다른 트랜지스터를 구사했습니다. 기본은 낮은 누설 전류 트랜지스터(Low-Leakage Device1) LL1에 맞춰 디자인합니다. 레이턴시가 낮고 임계 경로를 일반 트랜지스터로 전환하는 타이밍에 여유가 있는 부분을 누설 전류가 더 낮은 LL2로 바꿨습니다. 전체의 67%가 LL1, 8%가 LL2, 25%가 정상 트랜지스터입니다.
스카이레이크-SP의 트랜지스터 구분