패널 토론

오늘날의 FPGA가 데이터 폭주 문제를 해결하는 방법

Gen5에서 AI까지, 엣지의 NOC에서 RF까지

아래에서 무료로 녹화본을 시청하세요!

5G와 자율 주행 차량과 같은 기술 중심의 발전은 이러한 정보를 이동, 저장, 처리하는 현 세대 솔루션의 한계를 넘어서는 데이터 홍수를 일으키고 있습니다. 다행히도 데이터 이동을 위한 PCIe Gen5, 자동화된 분석 처리를 위한 AI, 엣지에서의 더욱 강력한 처리 등 이러한 까다로운 영역에서 다양한 새로운 발전이 나타나고 있습니다.

이 분야의 전문가 3명이 FPGA 기반 솔루션에 초점을 맞춘 하드웨어 및 소프트웨어/IP의 구체적인 사례를 통해 이러한 새로운 솔루션에 대해 논의할 예정입니다. 프레젠테이션은 패널 토론 형식으로 진행되며, 실시간 참석자가 채팅을 통해 질문할 수 있는 기회도 제공됩니다. 지금 등록하고 실시간으로 참여하세요!

FPGA 가속기 카드

520N-MX PCIe 카드 사진
520N-MX
IA-420f 카드
IA-420f
IA-860m

파트너 IP

스피커

제프 밀로드 사진
Jeff Milrod | 최고 기술 및 전략 책임자, BittWare
셉 시겔 사진
셰퍼드 시겔 | CTO, 원자 규칙
스티븐 베이츠 헤드샷
스티븐 베이츠 | 최고 기술 책임자, 아이데콤
 

Bryan

오늘 함께 해주셔서 감사합니다. 저는 브라이언 델루카입니다. 오늘 이 라이브 채팅 "오늘날의 FPGA가 데이터 폭주 문제를 해결하는 방법"의 진행자는 Nicolette Emmino이며, 마우저 일렉트로닉스, 비트웨어 및 몰렉스가 후원합니다.

훌륭한 패널들이 참여했으며 실시간 채팅이므로 화면 하단의 Q&A에서 궁금한 점을 질문해 주세요. 이제 니콜레트입니다.

니콜레트

안녕하세요, 여러분. 함께 해주셔서 다시 한 번 감사드립니다. 오늘 이 자리에는 비트웨어의 최고 기술 및 전략 책임자인 Jeff Milrod를 비롯한 세 명의 패널이 함께했습니다. 스티븐 베이츠, 아이데콤의 최고 기술 책임자. Atomic Rules의 최고 기술 책임자 셰프 시겔.

이 세 명의 전문가가 FPGA 솔루션에 초점을 맞춘 하드웨어 및 소프트웨어 IP의 구체적인 사례를 통해 이러한 새로운 솔루션에 대해 논의합니다.

그럼 지금부터 약간의 배경 지식부터 살펴보도록 하겠습니다. 여러분, 어떻게 생각하시나요?

셰프, 제프, 스티븐, 이 세 조직이 새로운 프로그램에서 함께 파트너가 되었다고 말씀해 주시겠어요? 그것이 시장에 어떤 도움이 되고 여러분들이 하는 일에 대해 조금 이야기해보는 건 어떨까요?

Jeff

비트웨어는 수십 년 동안 FPGA로 하드웨어 플랫폼을 만들어 왔기 때문에 그 점을 인정하겠습니다. 그리고 우리가 해온 일의 본질은 이러한 애플리케이션을 위한 플랫폼입니다. 그리고 우리는 플랫폼에 대해서는 전문가이지만 애플리케이션과 워크로드에 대해서는 그다지 전문적이지 않습니다. 그리고 역사적으로 우리는 FPGA에서 애플리케이션을 코딩하고 개발하는 전문가인 고객에게 "베어 메탈"이라고 부르는 것을 판매해 왔습니다.

그리고 우리가 발견한 것은 고객이 FPGA를 프로그래밍하는 힘들고 무거운 작업을 기꺼이 수행하지 않으려는 경향이 점점 줄어들고 있다는 것입니다. 또한 안정적이고 검증된 하드웨어 플랫폼 위에 부가가치를 제공하기 위해 Shep, Stephen과 같은 IP 및 솔루션 공급업체와 파트너십을 맺었습니다.

Shep

네, 제프, 잘됐네요, 제가 바로 들어가겠습니다. 에칭을 하지 않고 하드웨어를 보유하지 않는 FPGA 커뮤니티에 서비스 및 IP를 제공하는 Atomic Rules는 모든 주요 벤더의 최첨단 FPGA를 갖춘 플랫폼을 제공하여 우리 IP를 가장 잘 보여줄 수 있는 BittWare만큼 좋은 파트너를 찾을 수 없었습니다.

IP를 확보하고자 하는 Jeff와 BittWare/Molex의 열망은 고객에게 제공하고자 하는 가치를 전달할 수 있는 플랫폼을 확보하고자 하는 우리의 필요성과 직접적으로 맞닿아 있습니다. 스티븐?

Stephen

네, 물론 저도 참여하죠. 컴퓨터가 정말 빛을 발하려면 좋은 하드웨어와 좋은 소프트웨어, 이 두 가지가 필요하다고 한 위대한 사람이 말한 적이 있습니다. 게이머를 위한 좋은 예로, 멋진 게임용 PC를 만들 수 있지만 그 하드웨어에서 실행할 소프트웨어를 개발할 게임 개발자가 필요하다는 말이죠?

따라서 좋은 하드웨어와 좋은 소프트웨어가 있으면 고객에게 최고의 경험을 제공할 수 있습니다. Jeff가 이야기할 때 언급했듯이, Molex/BittWare는 훌륭한 하드웨어를 만드는 데 매우 뛰어납니다. 그들은 시장에서 최고의 FPGA 카드를 만들 수 있지만, 그들과 고객들은 그 하드웨어를 실제로 빛나게 하는 훌륭한 소프트웨어를 개발하는 능력이 점점 떨어지고 있습니다.

바로 이 점이 셰프와 저와 같은 회사가 개입하는 부분입니다. 따라서 저희는 더 나은 표현이 필요하겠지만 FPGA에서 실행되는 소프트웨어를 개발하는 데 주력합니다. 또한 호스트 시스템에서 실행되고 스토리지 애플리케이션, 네트워킹 애플리케이션, 컴퓨팅 애플리케이션 등 애플리케이션에 연결되는 소프트웨어도 개발합니다. 그리고 저는 고객이 진정으로 원하는 완벽한 솔루션을 제공하는 것, 즉 Jeff(BittWare/Molex)와 같은 회사에서 기성품을 가져와서 셰프와 저와 같은 회사에서 바로 꽂기만 하면 작동하고 정말 잘 작동하는 기능을 제공하는 것이 바로 그것이라고 생각합니다.

Bryan

FPGA의 유연성에 대해 많이 이야기했죠? FPGA는 얼마나 유연할까요? 프로그래밍하기가 정말 쉬워지고 있나요? 그렇지 않다면 어떻게 사용해야 하나요? 제프, 그 부분에 대해 잠깐 얘기해 주시겠어요?

Jeff

네. 매우 유연하고 유연성이 높아지면 사용 난이도가 높아진다고 생각합니다. 그리고 저는 이 문제를 생각해봤는데요, 10~20년 전에는 "비트웨어는 이 베어메탈 FPGA 하드웨어를 미치광이들에게 팔았다"는 것이 저의 오래된 공리 중 하나였죠. ...이 유연한 제품을 실제로 팔아서 코딩할 수 있는 사람들이 누구인지... 그리고 지금은 그들에게 판매하는 대신 그들과 파트너 관계를 맺고 있습니다(웃음).

저는 스티븐과 셉을 미치광이 프린지라고 부를게요(웃음)... 그리고 우리는 함께 미치광이가 아닌 사람들이 실제로 합리적인 방식으로 소비하고 사용할 수 있는 무언가를 만들었습니다. FPGA의 유연성은 놀랍습니다. 무엇이든 할 수 있다는 것은 기본적으로 아무것도 할 수 없다는 것을 의미합니다. 따라서 전원을 켰을 때 메모리나 연결된 호스트를 사용하는 방법조차 모를 수 있습니다.

프레임워크를 구축하고 애플리케이션과 워크로드를 로드할 수 있는 셸 또는 (사람마다 다른 용어를 사용하지만) 셸을 갖추기 위해 많은 작업을 수행해야 하는 곳입니다.

하지만 그럼에도 불구하고 애플리케이션과 워크로드에는 수많은 게이트(필드 프로그래머블 게이트 어레이는 FPGA의 약자)와 수백만 개의 로직 요소가 있으며, 이를 연결하여 하드웨어 알고리즘과 구현을 수행하는 방법은 매우 까다롭습니다. 그리고 더 많은 옵션과 강화된 코어가 추가됨에 따라 해당 공간에서 특정 워크로드를 수행하는 것은 더욱 어려워지고 있습니다. 바로 이 지점에서 우리의 미친 프린지 파트너가 등장합니다(웃음).

Shep

꼭 그럴 필요는 없지만(물론 저도 동의합니다), 그렇다고 미친 듯이 변두리일 필요는 없습니다. 지난 몇 년 동안 수백만 개의 FPGA를 다루어야 하는 어려운 작업을 보다 쉽게 관리할 수 있도록 해주는 훌륭한 툴이 많이 개발되었습니다. 툴은 더 좋아졌지만 애플리케이션 수준에서 FPGA에 문제를 일으키는 복잡성은 거의 불가능하기 때문입니다. 그렇기 때문에 저나 Stephen과 같은 회사가 이 에코시스템에 참여하여 FPGA의 원시적인 성능을 기반으로 플랫폼을 구축할 수 있는 기회가 있는 것입니다.

FPGA CAD 설계의 영웅 중 한 명인 Alberto Santelli는 ASIC이 등장하던 초기 ASIC 시절에 플랫폼 기반 설계에 대해 이야기했습니다. 하지만 그가 ASIC에 대해 설파하고 연구한 내용은 FPGA에서도 그대로 적용되었습니다. 우리는 종종 오버레이라는 용어를 사용하여 기능을 설명하는데, Eideticom이 만들거나 Atomic Rules가 만들거나 통화 중인 일부 사람들이 이러한 오버레이를 만들 수도 있으며, 오버레이는 기본 FPGA의 하드웨어 및 소프트웨어 위에 계층화된 플랫폼 역할을 하여 사용자가 달성하려는 목표에 더 근접한 추상화를 제공합니다.

Atomic Rules의 비즈니스는 이러한 플랫폼을 제공하는 제품을 제공하는 것입니다. 누군가는 데이터를 이동하고 싶을 수도 있고, 누군가는 연산 스토리지를 하고 싶을 수도 있고, 다른 문제가 있을 수도 있습니다. 이러한 IP 코어는 상호 작용 수준을 높여주기 때문에 FPGA를 사용하여 실제 컴퓨팅을 수행하는 작업이 테이블을 조회하고 타이밍을 확인하는 등 개발을 방해할 수 있는 모든 세부적인 작업에 즉시 투입되는 것이 아니라 "네트워크에서 디스크 드라이브로 데이터를 호스트로 이동해야 하나요?"라고 이야기할 수 있는 기능으로 증폭됩니다. 우리는 그 방법을 알고 있고, 바로 이 호출입니다..."라고 말할 수 있기 때문입니다. 예, 그 밑바탕에는 많은 일이 일어나고 있지만, 이것이 바로 BittWare, Eideticom, Atomic Rules와 같은 회사가 제공하는 가치입니다.

Stephen

그래요 미치광이로 불리는 게 어떤 기분인지 잘 모르겠어요. 한편으론 좋아하고 한편으론...

니콜레트

(웃음) 제프, 정말 신경을 건드렸네요!

Stephen

그러셨죠, 제프? 저는 괴짜가 아닌 친구들에게 이렇게 말하길 좋아해요. "괴짜가 뭔지 알잖아요. 괴짜에게 가서 내가 하는 일을 말하면 괴짜라고 말할 거예요."라고 말하죠. (웃음) 그래서 저는 괴짜의 제곱 또는 두 배의 괴짜이거나 잘 모르겠어요.

Bryan

저도 같은 말을 하려던 참이었어요. 괴짜의 제곱과 같습니다.

Stephen

그래서 제프와 셉이 이 부분을 잘 짚어준 것 같습니다. "FPGA로 작업하는 방법을 어떻게 배울 수 있을까?"라는 측면에서 툴은 더 좋아졌습니다. 하지만 공급업체에서 제공하는 실리콘의 복잡성 또한 도구보다 더 극적인 속도로 증가했습니다.

FPGA 경험이 없는 사람도 쉽게 작업을 수행할 수 있도록 하기 위해 지난 몇 년간 많은 노력을 기울여 왔습니다. 하지만 여전히 어려운 문제이며 실제로 해결한 적이 없다고 생각합니다. 저희는 셰프가 말한 것처럼 추상화 계층을 높이기 위해 FPGA용 C형 프로그래밍 언어를 작성하려고 시도해 보았습니다. 하지만 문제는 이러한 편의성을 위해 성능을 희생해야 하는 경우가 많다는 것입니다.

그래서 셉과 저와 같은 회사들은 더 많은 애플리케이션별 오버레이를 시도하고 있다고 생각합니다. 그래서 저희는 유연성에 대해 몇 가지 선을 긋고 있습니다. 더 이상 모든 것을 다 할 수는 없습니다. 이것도 하고, 이것도 하고, 이것도 하고. 하지만 그 대신 고성능 프로그래밍이 가능합니다. 저는 그 점이 흥미롭다고 생각합니다.

나중에 다시 다루겠지만, FPGA 채택이 지금보다 훨씬 더 빠르게 진행되도록 하는 데 도움이 될 수 있는 두 가지 요소는 개방형 표준과 같은 것들입니다. 그렇다면 FPGA의 통신 및 프로그래밍을 위한 에코시스템 기반 표준을 가질 수 있을까요? 이제 더 이상 특정 벤더에 종속되지 않습니다.

그리고 다른 하나는 오픈 소스입니다. 그렇다면 리눅스 커널과 리눅스 운영 체제가 소프트웨어에 대해 해왔던 것과 같은 일을 FPGA에서도 할 수 있을까요? 코드를 살펴볼 수 있고, 커뮤니티로서 코드를 편집할 수 있으며, 더 나은 코드를 만들 수 있는 커뮤니티가 있을 수 있을까요? 이 두 가지는 나중에 다루겠지만 매우 중요한 요소라고 생각합니다.

Jeff

잠시만요, 스티븐... 그래서 100% 맞습니다. 그리고 하드웨어 수준에서도 마찬가지입니다. 다시 한 번 말씀드리지만, 필드 프로그래밍 가능 게이트 어레이는 그 자체로는 아무것도 하지 않습니다. 로직 요소가 있고 호스트 인터페이스, 메모리 인터페이스, 네트워크 인터페이스가 있으며 BittWare는 많은 예제와 셸을 제공합니다.

이러한 프레임워크와 기반 플랫폼을 추상화하기 위한 이니셔티브 중 하나이며 인텔은 개방형 프레임워크 스택을 추진하고 있기 때문에 비트웨어는 개방형 프레임워크 스택 사양에 맞게 코드를 작성하고 PCIe, 네트워크 인터페이스, 메모리 인터페이스에서 호스트 인터페이스 로직을 인스턴스화 및 구현하고 하드웨어를 구축하여 전원을 켜면 FPGA에서 데이터를 이동할 수 있도록 합니다.

이제 사람들이 사용한 다른 모델은 젤리 도넛이 있고 이제 애플리케이션 개발자가 젤리를 넣고 인텔은 이를 위한 특수 도구를 가지고 있습니다. (스티븐처럼 제가 젤리 도넛 필러라고 부르는 것을 좋아하지 않을 것입니다.) 그리고 하나의 API는 하드웨어 계층에서 이 OFS 빌드가 아래에 있는 경우 CPU, GPU 및 FPGA에서 작동합니다. 따라서 이제 oneAPI라는 인텔의 고급 언어로 코딩하고 이 개방형 프레임워크 스택(실제로는 오픈 FPGA 스택의 약자라고 생각합니다)이 장착된 FPGA 하드웨어 플랫폼에서 애플리케이션을 실행할 수 있습니다.

니콜레트

여러분은 그 한 가지 질문에서 많은 것을 다루었습니다. 하지만 제가 정말 알고 싶었던 것은, 그리고 제가 생각하기에 우리가 몇 가지를 다루었던 것 같은데(그리고 청중으로부터 몇 가지 질문이 들어오고 있습니다), 이걸 먼저 다루고 싶습니다. 지금까지 언급했던 것 외에 우리가 지금 당장 이야기해야 할 FPGA의 새로운 발전이 있습니까?

Shep

네, 바로 그 앞에서 바로 뛰어나오고 싶습니다. FPGA는 오랫동안 공정 기술의 최첨단을 달려왔습니다. 하지만 지난 3, 4, 5년 동안 3세대 PCIe와 함께 해왔고 지난 2년 동안 4세대, 5세대, 6세대로 넘어왔으며 이러한 기술들과 상호 의존적인 CXL이 바로 그 안에 있습니다.

AMD/Xilinx, Intel 및 기타 모든 FPGA 공급업체에서 볼 때 SerDes 기술은 Gen4를 처리할 수 있을 만큼 확실히 성숙했으며, Gen5(주요 공급업체에서 출시하는 Gen5 디바이스)를 제공하기 직전에 있습니다. 따라서 아토믹 룰스 관점에서 고객과 이야기할 때 가장 눈에 띄는 것은 지난 1~2년 동안 Gen4와 Gen5가 폭발적으로 증가했고 그 뒤에 바로 CXL이 있다는 점입니다.

물론 이를 가능하게 한 기반 기술인 SerDes가 없었다면 불가능했을 것이라는 점은 말할 필요도 없습니다. 하지만 제가 짧게 대답하자면(그리고 동료들에게 정말 죄송합니다... 비즈니스에 큰 변화를 가져왔기 때문에 이 얘기를 꺼내야만 했습니다.) 오늘날 4세대와 5세대가 등장했다는 것입니다.

Stephen

네, 오늘 웨비나의 제목은 데이터 홍수 길들이기입니다. 더 빠른 속도와 피드는 필수적인 부분입니다. 방대한 양의 데이터를 PCIe든 CXL이든 이더넷이든 FPGA에서 입출력할 수 없다면 FPGA가 무엇을 하든 상관없고 따라잡을 수 없겠죠? 따라서 속도와 피드는 필수 구성 요소와 같습니다.

하지만 저는 약간 다른 관점을 취하겠습니다. FPGA와 일반적으로 SoC 시장에 대해 저를 정말 흥분시키는 것 중 하나는 두 가지입니다. 그 중 하나는 ARM과 같은 회사의 매우 뛰어난 애플리케이션 프로세서를 내려놓을 수 있는 능력이며, 일부 FPGA가 이를 수행하고 있습니다. 여러분도 아시다시피 FPGA에서 리눅스를 부팅할 수 있죠? ...그리고 작은 라즈베리 파이처럼 작은 서버로 바꿀 수 있습니다. 하지만 이제 FPGA는 강화된 ARM 프로세서 코어뿐만 아니라 유연한 로직도 가지고 있기 때문에 유연성도 있습니다. 이를 통해 꽤 놀라운 일을 할 수 있습니다. 리눅스가 대화하는 하드웨어를 변경할 수 있고 드라이버를 작성할 수 있는 라즈베리 파이를 상상해 보세요. 그래서 리눅스를 FPGA로 가져와서 소프트웨어 개발자가 하드웨어와 대화할 수 있도록 하는 기능, 즉 하드웨어 팀이 함께 만드는 기능이 바로 그 한 가지 측면입니다.

저를 정말 흥분시키는 또 다른 것은 칩렛 기술입니다. 인텔 FPGA 팀은 이미 칩렛 기반으로 작업하고 있습니다. AMD는 서버 프로세서에서 칩렛으로 잘 알려져 있으므로 이를 기대할 수 있습니다. 패키지 내부에 다양한 구성 요소를 혼합하고 조합하여 더 다양한 SKU를 만들 수 있다는 점은 정말 흥미롭다고 생각합니다. 예를 들어 이더넷이 필요하지 않은 애플리케이션(이더넷이 칩렛에 있는 경우)이 있다면 칩렛이 필요 없고 패키징 옵션만 있으면 됩니다. ARM 프로세서를 원한다면 칩렛에 탑재할 수 있고, 칩렛을 여러 프로세스 노드에 분산 배치할 수 있어 비용이 절감됩니다.

고대역폭 메모리 연결과 같은 용도의 칩렛도 생각해 볼 수 있습니다. 따라서 멀지 않은 미래에 웹사이트를 방문하여 "이 칩을 포장하여 사무실로 배송해 주세요"를 클릭하면 제가 원하는 것을 선택하고 Shep이 원하는 것을 선택하면 Jeff가 포장할 수 있는 날이 올 것 같고, 모두 풋프린트 호환이 가능하므로 Jeff는 카드에 원하는 것을 넣을 수 있으며 기본적으로 비용 증가 없이 훨씬 더 다양한 기능을 사용할 수 있습니다.

Jeff

네, 인텔은 물론 EMIB 인터커넥트를 사용하여 칩렛을 "타일"이라고 부르며 이를 위해 많은 작업을 해왔습니다. 그리고 말씀하신 것처럼 이더넷과 속도가 급격히 빨라졌습니다. Shep이 PCIe를 출시하면서 그와 함께 이더넷 네트워크 피드의 속도를 최대 100기가와 NRZ... 100기가 실례합니다. PAM4 속도, 즉 최대 400기가까지 바인딩할 수 있습니다. 이제는 큰 문제가 되지 않습니다.

메모리 측면에서도 마찬가지입니다. 외부 메모리 인터페이스, DDR5, 그리고 스티븐이 언급한 것처럼 내부 고대역폭 메모리 타일이 있습니다. 따라서 곧 출시될 새로운 FPGA에 32기가바이트의 인패키지 메모리를 추가할 수 있으며, 이 메모리는 초고속 로컬 버스를 통해 FPGA에 연결됩니다.

현재 일어나고 있는 또 다른 도전 과제(이와 관련하여 주목할 만한 새로운 발전)는 외부 칩에서 이러한 속도와 피드가 계속 증가함에 따라 모든 데이터를 이동하는 데 심각한 제한이 발생하고 사람들이 버스를 병렬화하고 클럭 속도가 올라가고 있다는 것입니다. 그러나 공급업체 커뮤니티 반도체 수준에서 모두가 취하고 있는 또 다른 비선형 단계는 훨씬 더 높은 대역폭으로 데이터를 이동하기 위해 네트워크 온 칩을 추가하는 것 같습니다.

주변 장치 사이를 이동할 수 있고 로직 요소 내에서 이동할 수 있다는 두 가지 장점이 있습니다. 이러한 로직 어레이가 점점 더 커짐에 따라(수백만 개에서 곧 수천만 개의 로직 요소로) 처리를 위해 데이터를 이동하는 것도 어렵지만, 이제 동일한 대역폭을 첫 번째 패킷 프로세서에서 포스트 프로세서로 이동하려면 그 큰 어레이 전체로 이동해야 하는데, 바로 여기에 NOC(네트워크 온 칩: N-O-C라고 함)가 들어올 수 있는 또 다른 장소입니다.

Shep

NOC에 대해 잠시 언급하자면, NOC는 큰 화두이기 때문에, 여러 FPGA 제조업체가 강화된 NOC와 관련하여 사용하고 있는 마케팅 때문이 아니라, 잠시 후에 다시 다룰 것입니다. 다만, 지난 20년 동안 Jan Gray와 Nachiket Kapre가 개발한 Hoplite 네트워크에 대한 연구에서 많은 영감을 받았다는 사실을 Atomic Rules와 다른 곳에서 언급하고 싶지 않습니다. 구글에 들어가서 Hoplite와 그 주변의 모든 작업을 찾아보실 수 있습니다. 이 플랫폼은 소프트한 방식으로 NOC와 그 이점(및 비용)을 조사할 수 있는 훌륭한 플랫폼이며, 저희는 이러한 연구에서 영감을 받아 필요에 맞는 하드한 NOC의 이점이 없는 곳에서 데이터 배포에 사용하는 자체 소프트 NOC를 개발했습니다.

그리고 앞서 말씀드린 플랫폼과 마찬가지로, 하드 및 소프트 NOC는 추상화를 구축하기 위해 해당 플랫폼의 계층 역할을 할 수 있습니다. Jeff는 "이더넷 쪽에서 PCI 쪽, 메모리 쪽, 스토리지 쪽에 데이터를 어떻게 전송할 수 있을까요?"라고 질문했습니다. 당연하죠. 저는 이러한 추상화를 복잡성을 줄이고 본질적으로 알고 싶지 않은 것들을 숨겨서 실제 중요한 애플리케이션 수준의 세부 정보를 파악할 수 있는 또 다른 유형의 추상화라고 생각합니다.

니콜레트

청중으로부터 NOC와 특히 강화된 NOC에 대한 질문이 있었습니다. 그 질문을 제기하고 싶습니다. 거기서 이미 답변하셨겠지만 여기서 다시 한 번 말씀드리겠습니다. 한 청중이 "서로 다른 강화 주변 장치와 내부 로직 게이트 사이의 강화된 NOC가 지난 20년 동안 FPGA가 부족했던 내부 데이터 경로의 속도에 어떤 영향을 미칠 수 있습니까?"라고 질문했습니다.

Jeff

네, 그리고 그것은 세부적인 하드웨어 문제이며 문제입니다. 우리는 항상... 비공식적으로 이 모든 데이터 이동을 배관 공사와 같다는 용어를 사용하곤 합니다. 집 안으로 물이 들어오게 하려면 배관 공사를 해야 하고요. 부엌 싱크대와 욕실에서 물을 사용하려면 배관을 연결해야 합니다. 그리고... 이 비유는 FPGA에도 적용됩니다. 그리고 부엌에서 물이 조금만 나오기를 원한다면 그것은 한 가지 문제입니다. 하지만 주방에 소방 호스가 필요하다면 다른 종류의 배관 구조가 필요하겠죠?

이것이 바로 하드웨어 NOC가 등장하고 모든 벤더가 이 문제를 해결하기 위해 고군분투하고 있는 부분입니다. 그리고 Shep이 말했듯이 이더넷에서 PCIe로 이동한 다음 패브릭으로 가져올 수있는 다양한 방법으로 주변 장치간에 다양한 각도로이를 보유하고 있습니다. 그리고 앞서 언급했듯이 400기가 이더넷이 강화된 MAC FEC로 들어오는 경우 이제 그 출력은 로직에서 패킷 처리를 수행해야 합니다. 이제 그 로직의 출력을 어떻게 어딘가로 옮길까요?

따라서 이제 패브릭에서 액세스할 수 있는 NOC가 필요하며 이러한 네트워크 액세스 포트가 있습니다. 일부 벤더는 이러한 기능을 적극적으로 통합하고 있으며, 일부는 차세대 버전에서 이를 계획하고 있습니다. 모두가 그런 방향으로 나아가고 있습니다. 물론 모든 기술이 그렇듯이 마케팅 슬라이드에서는 요정 먼지처럼 보이지만 세부 사항에는 항상 악마가 숨어 있습니다. 모든 문제를 해결하는 것은 아니며 몇 가지 다른 문제가 있는데, 그 중 하나는 엄청난 대역폭과 버스 폭에서 기가헤르츠 속도로 토글을 시작하면 상황이 뜨거워진다는 것입니다.

NOC는 더 많은 비트를 넣을수록 더 뜨거워지기 때문에 열 방출이 증가하는 경향이 있습니다. 그리고 더 멀리 갈수록 더 많은 정전 용량 부하가 발생합니다. 하지만 현재 커뮤니티에서 활용되고 있는 훌륭한 도구이며 이후 모든 하드웨어에 적용될 것이라고 생각합니다.

Stephen

그리고 제가 좋아하는 표현이 "소방 호스로 물을 마신다"는 말입니다. 그래서 저희는 엄청난 데이터 홍수 속도와 피드에 대해 생각합니다. 호스트에서 유선으로 들어오는 모든 패킷이나 모든 비트를 보고 싶다면 이를 소비할 수 있어야겠죠? 그렇지 않으면 말 그대로 소방 호스에서 물을 마시는 것과 같아서 좋은 결과를 얻지 못할 것입니다.

따라서 이 데이터를 디바이스 내에서 이동할 수 있도록 해야 합니다. 발열과 같은 열에 대한 Jeff의 지적은 정말 좋은 지적이라고 생각합니다. Jeff의 회사와의 파트너십에 대해 제가 좋아하는 점 중 하나는 그의 회사가 열과 같은 문제에 대해 매우 잘 알고 있다는 것입니다.

제프가 그 얘기를 꺼낸 걸 보고 이 문제가 중요하다는 걸 깨달았죠. 과거에 FPGA를 프로그래밍했는데 팬이 돌아가지 않는 등 냉각이 되지 않아서 망할 것을 날려버린 적이 있었거든요! 인정할게요... 그러지 말았어야 했는데(웃음)! 하지만 열심히 일하고 있을 때 너무 뜨거워져서 아무것도 하지 않고 멍하니 앉아 있으면 행복하잖아요. 그러다가 제가 많이 하니까 갑자기 아주 아주 빨리 아주 뜨거워졌어요. 제프 회사에서도 그런 생각을 했죠.

Jeff

하지만 납땜 접합부가 역류하여 실제로 기판에서 떨어질 정도로 충분히 뜨거워졌나요?

Stephen

아직 해보지 않았습니다.

Jeff

그 때 비로소 무언가 잘 되고 있다는 것을 알 수 있습니다!

Bryan

정말 멋지네요, 여러분 정말 멋지네요.

Stephen

따라서 BittWare와 Molex가 이러한 문제를 해결해 준다는 것은 대단한 일입니다. "어떻게 하면 이 제품들이 죽지 않는지 모를 정도로 시원하게 유지할 수 있을까?"에 대한 경험을 가지고 있는 것이 바로 그들이 제공하는 것입니다. 네, 그게 정말 중요하죠.

Bryan

지금까지 데이터에 대해 많은 이야기를 나눴죠? 이제 더 자세히 살펴보겠습니다. 디지털 영역에 대해 많이 이야기했는데... 센서 내의 데이터 홍수에 대해서도 이야기해 보죠? FPGA가 아날로그 세계에서도 어떻게 도움이 되고 있나요? 제프, 그건 아마 하드웨어에 관한 질문일 겁니다.

Jeff

네, 그리고 아주 깊은 질문이기도 하죠. 이에 대한 두 가지 간단한 답변이 있습니다.

하나는 대부분의...비트웨어가 아날로그 인터페이스 보드를 많이 사용했고, 이를 신호 처리 리소스(주로 FPGA)로 옮겼다는 점입니다.

이제 이에 대한 표준화가 이루어졌기 때문에 더 이상 그렇게 하지 않습니다. 일반적으로 사람들은 아날로그 신호를 변환하거나 송신기에서 디지털 신호를 아날로그로 변환할 때 라디오 헤드나 센서 헤드 어딘가에서 변환합니다. 그런 다음 이를 디지털화하고 패킷화하여 전송합니다.

따라서 현재 센서 인터페이스 및 프로세싱을 구현하는 대부분의 애플리케이션은 JESD, VITA49 또는 새롭게 부상하고 있는 RF용 DIFI 표준 등 데이터를 이동하는 이더넷과 같은 표준 패킷 프로토콜에 인터페이스합니다.

다른 방법은 (아까 스티븐이 칩렛과 타일에 대해 이야기하고 있었죠?) 다양한 공급업체에서 아날로그-디지털 컨버터와 디지털-아날로그 컨버터를 체크박스 옵션으로 추가하여 스티븐이 이 색상으로 해당 기능이 있는 것을 주문할 수 있도록 하고 있습니다. 그리고 ADC를 포함하거나 포함하지 않고 실제로 직접 아날로그 인터페이싱을 할 수 있습니다.

그리고 비트웨어는 5GHz에서 직접 RF를 수신하여 디지털화하는 하드웨어를 보유하고 있으며, 다운 컨버터와 업 컨버터를 강화한 다음 후처리를 위해 FPGA 패브릭으로 옮깁니다. 이것이 바로 그런 방식 중 하나입니다.

니콜레트

청중으로부터 많은 질문이 들어오고 있습니다. 지금 바로 그 중 하나에 대해 말씀드리겠습니다. 비용 관점에서 엣지 컴퓨팅 영역에서 FPGA의 실행 가능성에 대해 말씀해 주시겠습니까? FPGA가 디바이스 엣지 또는 온프레미스 엣지 중 어느 쪽에 더 적합할까요?

Jeff

비용은 대역폭이나 성능과 같은 것들 중 하나입니다... 모두 상대적인 것이죠, 아시죠? 스티븐이 라즈베리 파이에 대해 이야기할 때 약간 움찔했어요. 가격대가 약간 다르기 때문이죠. 그리고 일반적으로 FPGA는 저렴하지 않습니다.

영업 담당자들이 이 말을 듣고 있다면 지금 저에게 다트를 쏘고 있을 겁니다. 하지만 본질적으로... 얼마 전에 누군가가 FPGA를 필드 프로그래머블 게이트 어레이라고 부르는 것을 들었는데, 다른 용어로 유연하고 꽤 좋은 ASIC이라고도 하죠? 저는 그 접근 방식과 그 용어가 마음에 듭니다. ASIC은 개발 비용이 매우 비싸고 일단 개발하면 배포하는 데 매우 저렴합니다.

FPGA는 다른 방식으로 이를 수행합니다. 개발은 여전히 어렵지만 ASIC 개발만큼 비용이 많이 들지는 않습니다. 하지만 디바이스 자체에 대한 반복 비용은 훨씬 더 높습니다. 그리고 PCB와 전원 공급 장치 및 열 제약 조건을 갖추기 시작하면 상당히 비싼 솔루션이 될 수 있습니다. 그리고... 가격이 지배적인 대형 프로젝트가 되면 사람들은 ASIC을 선택하게 되는데, 이는 더 저렴한 배포 방법이며 시장에서도 이를 입증하고 있습니다.

따라서 FPGA는 더 비용 효율적으로 할 수 없는 작업을 수행하는 데 매우 능숙합니다. 하드웨어(및 파트너의 IP)가 아무리 비싸더라도 다른 방법으로 해결할 수 없고 시장에 엄청난 가치를 더하고 서비스 가능한 시장을 키울 수 있다면 매우 효율적인 비용 지출이 될 수 있기 때문입니다. 하지만 일반적으로 비용 자체로 승산이 있는 것은 아닙니다.

Shep

하지만 Jeff, FPGA가 가치를 가져올 수 있는 다른 방법도 있습니다. 방금 말씀하신 내용에 동의하지만, 비용이 추가됨에도 불구하고(통합이 더 복잡하고 어렵다는 점에도 불구하고) AMD와 인텔의 값비싼 고성능 코어가 필요한 작업을 다른 동일한 작업으로 오프로드하는 데 FPGA가 사용되는 경우가 많다는 점을 지적하지 않을 수 없습니다.

그리고 순이익은... 많은 애플리케이션이 "내 임무는 사용되는 코어 수를 줄이는 것입니다."라고 말하지는 않습니다. 일반적으로 특정 계산 문제를 해결하는 것이 임무입니다. 그러나 그 과정에서 데이터센터나 온프레미스 상황, 특히 전력에 민감한 현장 상황과 달리 데이터센터나 온프레미스 상황에서는 데이터가 네트워크에서 메모리로, 스토리지로 이동하는 방식이 영리하기 때문에 FPGA 지원 솔루션이 더 적게 이동하고 덜 비싼 무거운 철을 필요로 한다는 사실을 깨닫게 됩니다.그리고 "이 작업을 수행하려면 호스트 프로세서가 훨씬 덜 강력해야 합니다."라는 측면에서 비용 절감은 반복적으로 절감되어 값비싼 FPGA 개발 및 값비싼 보드에 자금을 지원할 수 있습니다.

Jeff

총 소유 비용과 관련된 문제인데, 스티븐의 전산 스토리지 애플리케이션이 특히 이와 관련이 있다고 생각합니다. 전산 스토리지 솔루션이 저렴하다는 데 이의를 제기할 사람은 아무도 없을 것입니다.

Bryan

전산 스토리지에 대해 잠깐 이야기해 보겠습니다... 그리고 데이터 이동에 대해서도 잠깐 이야기하고 싶죠? 고객인 셰프와 스티븐의 관점에서요.

그럼 전산 스토리지에 대해 먼저 이야기한 다음 다시 돌아가서 이야기할까요, 아니면 데이터 이동에 대해 먼저 이야기할까요?

Stephen

네, 전산 스토리지에 대해 말씀드리겠습니다. 컴퓨팅 스토리지는 전 세계에서 생성되는 데이터의 양이 기하급수적으로 증가하고 있습니다. 그리고 기업에서 깨닫게 된 또 다른 사실은 데이터를 분석하고 데이터에서 비즈니스 인텔리전스와 현명한 비즈니스 의사 결정을 개발할 수 없다면 그 데이터는 쓸모없다는 것입니다.

데이터를 저장하는 것만으로는 큰 의미가 없습니다. 이제 데이터에서 인사이트를 얻는 것이 핵심입니다. 그리고 기업들은 이 작업을 신속하게 수행하기를 원하며 효율적으로 수행하기를 원합니다. 그래서 기업들은 셰프가 언급한 것처럼 수많은 데이터를 인텔이나 AMD CPU 코어에 넣고 소프트웨어를 실행하는 것보다 쿼리를 스토리지 계층으로 푸시하고 실제로 스토리지 계층에서 이러한 종류의 작업을 실행하도록 하는 것이 더 낫다는 사실을 알게 되었습니다. 데이터베이스 쿼리이든, 수많은 센서 데이터에 대한 AI 추론이든, 비즈니스 메트릭에 대한 데이터베이스 분석이든 상관없이 말입니다.

따라서 컴퓨팅 스토리지라는 영역에서 표준화가 진행되고 있습니다. 따라서 단순히 데이터를 저장하는 박스나 장치만 있는 것이 아니라, 드라이브이든, SSD이든, 아니면 NAS와 같은 박스로 가득 찬 박스이든 컴퓨팅 쿼리를 이러한 박스로 푸시할 수 있는 기능을 어떻게 확보할 수 있을까요? 따라서 이를 중심으로 표준이 개발되고 있으며, 셰프가 언급했듯이 FPGA를 사용하면 훨씬 더 효율적이고 비용 효율적으로 수행할 수 있는 특정 작업이 있기 때문에 FPGA의 역할이 매우 중요합니다.

또한 시간 가변성을 원할 수도 있습니다. 쿼리가 변경되면 기능도 변경되기를 원할 수 있는데, 이때 FPGA는 정말 빛을 발합니다. "A" 시간에는 특정 특성을 갖지만 하루 중 다른 시간대에 워크로드가 변경되어 실제로 처리 능력이 특성을 변경하기를 원할 수 있습니다. ASIC에서는 정말 어려운 일이지만 FPGA에서는 매우 쉬운 일입니다.

아시다시피, 전산 스토리지도 표준과 관련이 있습니다. 앞서 말씀드린 것처럼 표준은 시장 채택을 촉진하여 가격을 낮추는 역할을 합니다. 그리고 항상 그렇죠? 따라서 FPGA 하나를 구입하는 데 많은 비용이 들 수 있습니다. 50만 개를 주문하면 단위당 더 좋은 가격을 받을 수 있을 것입니다.

Jeff

네, 그리고 또 다른 요점은... FPGA의 다른 모든 것과 마찬가지로 다양한 기능이 있고 가격 측면에서 Raspberry Pi 영역에서 FPGA를 구입할 수 있지만 일부 제품은 단일 칩에 10,000달러가 넘고(극단적인 경우) BittWare도 마찬가지로 다양한 옵션이 있다는 것입니다.

따라서 사람들이 많은 수의 컴퓨팅 스토리지 가속기를 배포하는 경우, 사용 사례가 무엇인지 알고 있는 제한된 애플리케이션에 대해서는 천 달러 이하로 판매할 수 있습니다. 그리고 400기가에 해당하는 다른 제품들도 있으며, 이러한 제품들은 솔루션 한 개에 수천 달러에 육박합니다.

그리고 곧 HBM 등을 통해 훨씬 더 많은 기능을 갖춘 제품들이 출시될 예정입니다. 따라서 비용의 범위가 넓습니다. 하지만 엣지 및 IOT 배포를 고려할 때 "많이"라는 것이 무엇을 의미하느냐에 따라 달라집니다.

Bryan

셰프, 데이터 이동에 대해 잠깐 이야기할까요?

Shep

물론이죠. (웃음)

니콜레트

데이터 이동에 대해 이야기하고 있으니 한동안 여기 있을 수도 있겠죠? (웃음) 모두 안전벨트 매세요!

Bryan

25분 남았어요. 괜찮아요, 괜찮아요.

Shep

질문 감사합니다. 아토믹 룰즈의 대표 IP 제품 중 하나는 아크빌이라는 이름의 제품이라고 말씀드릴 수 있습니다. 아크빌은 DPDK 기반 데이터 무버를 위한 아토믹 룰즈 브랜드입니다. 높은 처리량과 상대적으로 짧은 지연 시간을 동시에 달성하기 위해 필수적인 플랫폼 기반 설계에 대해 말씀드린 많은 하위 레벨로 뛰어들지 않고도 FPGA에서 호스트 메모리로 또는 그 반대로 대량의 데이터를 비교적 쉽게 이동할 수 있도록 하는 IP 코어입니다.

시스템 아키텍처 관점에서 보면 데이터 이동이라는 개념은 정말 간단하죠? 예를 들어 FPGA의 데이터 파트 "A"가 호스트 메모리 내부에 있는 "B"로 데이터를 가져오고 싶다고 가정해 보겠습니다. 소프트웨어 엔지니어는 memcpy를 호출하거나 데이터를 이동하여 그렇게 하려고 할 수 있습니다.

퓨어스토리지의 목표는 고객이 원하는 바에 최대한 근접한 경험을 제공하는 것입니다. FPGA 하드웨어에서 사용자 랜드 호스트 메모리로 데이터를 전송하는 데 아무런 질문이나 문제가 없습니다.

예, 이보다 훨씬 더 복잡하지만 고객이 구매하는 것은 바로 이 점입니다. 설명하기 매우 간단한 작업을 수행하기 위해서는 하드웨어 설계, 소프트웨어 설계, API 설계, 드라이버 설계, FPGA 타이밍 클로저 등 이 모든 요소가 필요하며, 실제로 FPGA에서 호스트 메모리처럼 보이는 곳으로 데이터를 이동하는 것이 중요한 경우 Atomic Rules가 이에 대한 완벽한 솔루션을 제공한다는 것을 알고 있기 때문입니다.

Stephen

네, 한 가지 더 덧붙이자면요. 그래서 셰프는 호스트 메모리에서 네트워크로 또는 메모리에서 메모리로 트래픽을 이동하도록 설계된 네트워킹 분야의 호스트 소프트웨어 스택인 DPDK를 언급했습니다. 저는 스토리지 영역에서 더 많이 일하는데, 아이러니하게도 스토리지도 데이터 이동에 관한 것입니다. 디스크에 있는 데이터를 처리하고 싶어서 메모리로 옮기거나, 메모리에 있는 데이터를 디스크에 옮기고 싶어서 안전하게 보관하고 싶을 때, 마치 사랑하는 고양이 사진을 보관하고 싶을 때, 고양이를 사랑하는 것처럼 말입니다.

따라서 데이터 이동과 관련된 스토리지 표준도 꽤 많이 있습니다. 그래서 저희도 Shep과 똑같은 일을 하고 있습니다. 우리는 FPGA의 하드웨어에서 이러한 데이터 이동을 생성하지만 호스트와 고객에게 API를 제공해야 합니다. 그리고 Shep이 네트워크 중심적인 것을 사용하는 반면 우리는 스토리지 중심적인 것을 사용합니다.

따라서 오늘날 노트북이나 게임용 PC에 탑재된 많은 SSD에는 NVMe(NVM Express) 드라이브가 탑재되어 있습니다. 또 다른 하나는 데이터 이동을 위해 특별히 부상하고 있는 새로운 표준인 SDXI입니다. 따라서 이를 통해 소프트웨어 공급업체라고 부르는 우리 FPGA는 호스트 측의 잘 알려진 스택(Shep의 경우 DPDK, 제 경우에는... NVM Express 또는 SDXI와 같은 것)과 통합할 수 있습니다.

니콜레트

좋아요, 이제 CXL에 대해 잠시 이야기해볼까 합니다. 어제 대화를 나눌 때 Jeff가 요즘 유행하는 단어라고 말씀하셨죠. 그래서 저는 이 부분에 대해 언급하는 것이 중요하다고 생각했습니다. CXL과 관련된 이사회 의제에 대해 이야기한 다음, 스티븐과 셉이 그런 것에 대해 여러분의 상상력을 조금 공유할 수 있을 것 같았어요.

Shep

알았죠, 제프?

Jeff

CXL은 확실히 모든 사람의 관심을 끌었습니다. 그리고 다시 말하지만, 높은 수준의 약속이라고 생각하며, 모든 언론을 읽으면 모든 문제를 해결해 주는 마법의 요정 가루가 있는 것처럼 보입니다. 하지만 실제로는 그렇지 않지만, 컴퓨트 익스프레스 링크는 IO/캐시/메모리를 하나의 일관된 도메인으로 추상화하고 상호 연결하여 모든 사람이 모든 사람의 정보와 데이터를 볼 수 있게 해줍니다.

그리고 이것이 구현되는 방식은 다양합니다. 저는 이것이 분명 우리 업계를 변화시키고 사람들이 솔루션을 설계하고 배포하는 방식에 큰 영향을 미칠 것이라고 생각하지만, 제 생각에는 아직 그 방법이 완전히 명확하지 않습니다. 그리고 "이제 모든 것을 할 수 있게 되었어요."라고 말하는 사람은 많지 않은 것 같습니다. 사람들이 이전에는 생각할 수 없었던 완전히 새로운 차원과 능력을 열어주고 있습니다. 그리고 사람들이 '아, 이런 식으로 연결해보자'라고 생각하게 될 것입니다. 아, 잠깐만요, 그건 잘 안 되네요. 더 좋은 방법이 있을 거야."라고 생각하게 될 것입니다.

다른 한 가지는 기술적으로 아직 초기 단계라는 것입니다. 따라서 올해 말에 출시할 FPGA는 CXL 1.1을 지원할 예정입니다. 2는 2023년에 출시될 예정입니다. 그리고 3.0은 이미 문서화되고 계획 및 출시가 완료되어 2024년에 출시될 예정입니다. 따라서 하드웨어 수준에서는 CXL을 사용하여 시스템을 구축하는 방법에 대해 사람들이 더 똑똑해지는 진화뿐만 아니라 진화가 있을 것입니다.

Stephen

네, 간단히 말씀드리자면, CXL은 모르는 분들을 위해 설명하자면 PCIe와 같은 종류의 배선을 통해 실행되는 프로토콜입니다. 따라서 노트북, 게임 콘솔, 게이밍 PC 등 PCIe 장치를 연결할 수 있는 곳이라면 어디든 이론적으로는 몇 년 후 CXL 장치를 연결할 수 있습니다.

이제 다음 질문은 "왜 그렇게 해야 할까요?"입니다. PCIe는 데이터 이동과 관련하여 몇 가지 제한이 있습니다. 가장 큰 한계는 캐시 코히어런트라고 부르는 것이 아니라는 것입니다. 따라서 데이터를 그래픽 카드 등으로 옮길 때나 PCIe를 통해 네트워크 카드로 옮길 때는 조금 주의해야 합니다. 운영 체제가 이를 처리합니다.

CXL은 실제로 일관된 프로토콜입니다. 따라서 PCIe로는 할 수 없는 몇 가지 작업을 수행할 수 있습니다. 물론 여전히 PCIe로 많은 일을 할 수 있고 PCIe로 많은 일을 하고 있습니다. 하지만 Jeff가 언급했듯이 CXL은 새로운 패러다임을 열어줍니다.

그리고 그의 말처럼 저희도 어떻게 할지는 아직 잘 모르겠습니다. 하지만 제가 업계에서 본 바에 따르면 많은 대형 클라우드 회사들이 가장 먼저 할 일은 메모리 분리입니다. 실제로 프로세서의 DDR 채널에서 일부 메모리를 CXL 카드로 옮기거나 하이퍼스케일러(예: Google)와 같은 사람들을 위해 CXL 선반으로 옮길 것입니다.

제가 보기에 그렇게 하려면 컴퓨팅 스토리지를 사용하는 것과 같은 방식으로 해당 메모리에서 작동할 수 있는 일부 컴퓨팅 서비스를 넣을 수 있을 것입니다. 그렇다면 컴퓨팅을 메모리로 푸시할 수 있을까요? 그러기 위해서는 유연한 알고리즘이 필요할 것 같아서 FPGA가 떠오르기 시작했습니다. 그래서 FPGA가 많은 잠재력을 가지고 있는 분야라고 생각합니다.

또 한 가지 주목해야 할 점은 앞으로 어떻게 전개될지 모르기 때문에 유연성이 필요하다는 점입니다. 따라서 우리가 무엇을 하고 싶은지 100% 확신할 수 없기 때문에 특히 초기에는 FPGA에 대한 기회가 있다고 생각합니다. 따라서 5천만 달러를 들여 ASIC을 테이프 아웃하지는 않을 것입니다. 우리는 FPGA를 실험할 것입니다. 상당히 많은 수로 배포할 수도 있습니다. 하지만 안타깝게도 애플리케이션이 충분히 크다면 누군가는 이걸로 ASIC을 돌릴 거라고 말할 것입니다.

하지만 워크로드가 변화하기 때문에 유연성을 발휘할 수 있는 기회가 있다고 생각하며 그 가능성에 대해 매우 기대가 큽니다.

Shep

그래서 스티븐, 저는... CXL을 팔로우해온 많은 분들이 메모리 분리 기능이 CXL의 "아하!" 순간이 될 것이라고 들으셨을 거라고 생각합니다. 하지만 저는 분리된 메모리가 실제로 메모리를 사용하는 클라이언트에 대한 메모리 로드 및 저장 지연 시간에 어떤 의미가 있는지 이해하는 데 어려움을 겪고 있습니다.

최신 호스트 프로세서에서는 수십 나노초가 걸리는데, CXL이 현재 목표로 하고 있는 SerDes의 경우 수백 나노초까지 빨라질 수 있기 때문에 CXL이 극복해야 할 과제라고 생각합니다. 그래서 저는 개인적으로... 내기하고 싶지는 않지만 당장 그런 일이 일어날 것 같지는 않습니다.

아토믹 룰즈에서 CXL을 당장 확보하기 위해 하고 있는 일은... 인텔은 I 시리즈 Agilex 디바이스를 통해 공격적으로 움직였습니다... 앞서 칩렛과 타일에 대해 이야기했습니다... 해당 R-타일(현재 5세대 아크빌의 일부로 사용하고 있습니다... 아크빌 22에서 출시됩니다.07) - 분명히 말씀드리고 싶지만, PCI 익스프레스 5세대를 지원하는 R-타일은 CXL과 PCI를 나란히 사용할 수 있는 인텔의 기능을 채택한 것입니다... 오늘날 고객 중 5세대 x16의 전체 파이어호스를 필요로 하는 고객은 거의 없습니다. 물론 일부 고객은 이를 원하고 있으며, 저희는 이를 확실히 지원할 것입니다. 하지만 오늘날에는 400기가비트보다 100기가비트 이더넷 또는 여러 개의 100기가비트 이더넷 또는 100기가비트 파이프가 더 많이 사용되고 있다고 가정해 봅시다.

100기가비트와 400기가비트 스트림을 분리하여 현재 인텔의 I 시리즈 R-타일에서 아크빌이 젠5 x8 엔드포인트(사용 가능한 대역폭의 절반)로 작업하고 나머지 절반의 R-타일 채널은 CXL에 사용할 수 있도록 했습니다. 명확히 말씀드리자면, 현재 아토믹 룰즈에서 CXL 기능을 지원하는 제품은 전혀 없습니다.

저희도 다른 회사들과 마찬가지로 면밀히 검토하고 있으며, 학습이 필요할 것으로 생각합니다. 하지만... 우리가 그 방향으로 나아가는 작은 움직임은 "아토믹 룰을 사용하려면 PCI 경로를 따라가야 하고 CXL을 함께 사용할 수 없다"는 식으로 CXL 채택을 저해하는 어떤 조치도 취하지 않습니다. 저희는 그 반대입니다. CXL을 PCI와 혼합하고 싶다면 두 가지를 동시에 사용할 수 있습니다.

Bryan

여기 또 다른 청중의 질문이 있습니다: "프로그래머블 플러그형 수신기보다 더 높은 수준의 광학 I/O와 FPGA가 요구되는 코패키지 광학 등 스마트NIC에 대한 요구 사항이 커질 것으로 예상하십니까?" 제 생각에는 이것이 그들이 묻는 질문인 것 같습니다. 트랜시버는 죄송합니다.

Jeff

제 대답은 '네, 지금이라도 있었으면 좋겠어요'입니다. 제가 80년대에 커리어를 시작했을 때, 백플레인의 구리 소재는 모두 구식이라고 말하는 사람들과 함께 일한 적이 있습니다. 우리는 향후 몇 년 안에 광 백플레인과 광 인터커넥트로 전환할 것입니다(이 시기는 80년대였습니다). 물론 그 어느 것도 실현되지 않았습니다.

현재 Molex는 이에 대해 많은 노력을 기울이고 있으며, 이는 제 전문 분야가 아니기 때문에 어떤 작업을 하고 있는지 잘 알지 못하지만, 신호가 점점 더 빨라지고 있기 때문에 이러한 것들을 칩에서 패키지로, 패키지에서 PCB로, 커넥터로 더 효과적으로 전달하려는 열망과 움직임이 분명 존재합니다.

그리고 이를 위한 궁극적인 방법은 언젠가는 포토닉스가 되어야 할 것입니다. 여기에는 두 가지 수준이 있습니다. 하나는 구리를 통해 칩을 패키지의 광학 엔진에 연결하고 패키지에 광학 장치를 연결하는 것입니다. 사람들이 이야기하고 연구하고 있는 다른 방법은 광학 엔진을 실리콘에 통합하는 것입니다. 그리고 다이에 레이저를 쏘아 멀리까지 쏘는 레이저가 있습니다. 저는 그것에 대해 잘 모르지만 사실이었으면 좋겠지만 당분간은 기대하지 않습니다.

Stephen

네, 그리고 이것이 칩렛 기술에 대한 또 다른 기회라고 생각합니다. 실리콘 포토닉스 같은 것들은 종종 FPGA 플렉서블 로직이 원하는 것과는 완전히 다른 제조 공정을 필요로 하고, 이는 다시 ARM 코어가 원하는 것과도 다르고, 아날로그 트랜시버가 원하는 것과도 다르기 때문에 UCIe와 같은 것들이 저를 흥분시키는 이유이기도 합니다.

따라서 칩렛 기술은 실제로 다양한 공정을 선택할 수 있으며, 실리콘 포토닉스에서 자주 사용되는 비실리콘 기반 반도체도 선택할 수 있습니다(합리적이라면). 하지만 저는 제프의 의견에 동의합니다. 오늘날 가장 빠른 속도와 피드를 원하는 고객들이 있고, 이를 위해서는 광학, 특히 오프 더 칩 광학이 필요하며, 아직 거기에 도달하지는 못했지만 데이터 홍수가 계속 증가하고 있기 때문에 우리는 거기에 도달해야 한다고 확신합니다.

Shep

네, 하지만... 포토닉스는 그 자리가 있고, 우리가 그런 방식으로 미래를 바라보려면 반드시 가야 할 곳입니다. 저는 개인적으로 지난 수십 년 동안 SerDes 기술에서 이루어진 엄청난, 정말 엄청난 성과를 거둔 지금이 아날로그는 끝났다고 손사래 치기 전에 수확할 수 있는 시대라고 생각합니다. 우리는 이제 막 PAM4 신호에 뛰어들었습니다. 그리고 아시다시피... 우리는 도로의 끝이 보인다는 것을 알고 있습니다.

그러나 전력을 줄이고 복잡성을 줄임으로써 5세대 PCIe 및 CXL과 같은 것들이 작동하는 데 필수적인 이러한 서브시스템을 더 쉽게 작동하고 저렴하게 만들 수 있는 기회는 매우 많으며, 해당 기판을 탑재하는 데 10,000달러의 FPGA가 필요하지 않습니다. 그리고 시장에서는 오늘날의 지루한 구형... 32기가 SerDes를 비용 절감하고 더 저렴한 FPGA에 배치하여 오늘날의 솔루션과 비슷하지만 더 낮은 전력과 더 낮은 비용으로 솔루션을 제공할 수 있는 방법을 찾을 수 있을 것으로 생각합니다.

니콜레트

자, 이 질문을 예로 들어 보겠습니다. "베어 FPGA를 특정 문제를 해결하는 제품으로 전환하려면 어떤 기술이 필요할까요? FPGA 배포를 더 성공적으로 수행하려면 어떻게 해야 하나요? 스티븐, 이 질문 좀 받아주시겠어요? 여기서 파트너십에 대해 조금 이야기할 수 있을 것 같네요. 좋은 기회가 될 것 같습니다.

Stephen

네, 제 생각에는 몇 가지 다른 점이 있습니다. 우선, 이 웨비나를 듣고 계신 분들 중 "FPGA를 사용해보고 싶어요."라고 말씀하시는 분들을 위해 말씀드리고 싶습니다. FPGA로 작업하는 방법을 배울 수 있는 툴과 학술 기반 플랫폼에 대한 놀라운 발전이 있었다는 점을 말씀드리고 싶습니다.

그리고 현재 더 많은 FPGA 흐름을 오픈 소스-벤더 중립적으로 만들려는 큰 움직임이 있습니다. 구글에 검색해보면 이를 수행할 수 있는 훌륭한 프로그램이 몇 가지 있습니다. 그리고 놀라운 온라인 학습도 있습니다. 따라서 배우고 싶다면, 즉 괴짜 제곱이 되고 싶다면 정말 좋은 자료가 많이 있으니 찾아보고 시작해 볼 가치가 있습니다. 저렴한 보드를 구입하여 노트북이나 데스크톱에 연결할 수 있습니다. 온라인에 접속하면 YouTube 동영상도 있고 무료 강좌도 있으며 바로 이런 것들을 가지고 놀 수 있으니 시작하기에 정말 좋은 곳입니다.

이제 비즈니스의 특정 문제를 해결하는 FPGA를 배포하는 데 더 관심이 있다면, 직접 하고 싶지 않다면 엔지니어가 FPGA 언어에 대해 이야기할 필요가 없도록 소프트웨어의 추상화 수준을 높여주는 셰프와 저와 같은 사람들에게 도움을 요청할 수 있습니다. 그리고 저수준 FPGA 언어는 Verilog, VHDL, SystemVerilog와 같은 것으로, 컴퓨터 프로그래밍 코드이지만 C도 아니고 Python도 아닙니다. 훨씬 더 낮은 수준입니다.

회사 내부에 이러한 언어를 다루는 데 매우 숙련된 팀이 있지만, 단순히 해당 언어로 작업하는 것 이상의 의미가 있습니다. 아키텍트의 관점에서 이러한 것들이 어떻게 구축될 것인지 이해하는 것입니다.

저는 항상 FPGA를 방금 전원을 켰을 때 거의 건축 현장과 같다고 생각합니다. 목재와 시멘트 등 모든 자원이 준비되어 있죠. 그리고 제프는...

Jeff

배관 파이프도 잊지 마세요!

Stephen

...제프의 회사가 모든 것을 제공합니다. 그래서 제프가 건축 현장에 나타나서 "자, (표현이 좀 그렇지만) 자재가 잔뜩 쌓여 있습니다. 오늘은 뭘 지을까요?" 그렇죠? 저는 스스로를 우리 회사의 건축가라고 생각해요. 그래서 저는 들어와서 리소스를 살펴보고 고객이 원하는 것이 무엇인지 살펴본 다음, 고객이 초고층 빌딩을 원한다는 것을 알았습니다. 좋아요. 그러면 이렇게 되기 시작합니다.

그리고 저는 이 블록이 필요하다는 높은 수준의 일을 할 것입니다. 이 블록이 필요하다고요. 그런 다음 팀이 들어와서 마치 건설 팀과 같은 역할을 하죠. 그 팀에는 전문가들이 있습니다. 전기 기술자, 배관 기술자, 비계 기술자 같은 전문가들이 있습니다.

그래서 그들은 함께 이 건물을 짓기 시작했습니다. 그리고 마지막에 우리는 실제로 FPGA 부지에 건물을 짓게 되는데, 비유를 잘못해서 죄송하지만(웃음) 제가 생각하는 방식이 바로 그것입니다. 그래서 여러 가지 기술이 필요하죠? 건축가도 필요하고 건설 노동자, 프로그램 관리자, 전기 기사, 배관공도 필요하죠.

그리고 이 사람들은 다년간의 경험을 가진 대학원생 수준인 경우가 많습니다. 그리고 이 작업을 더 쉽게 하기 위해 사용하는 다양한 도구가 있습니다. 그리고 궁극적으로 배포를 더 쉽게 만드는 방법은 추상화 수준을 높이고 Shep의 API든, 우리의 API든, 인텔의 oneAPI와 같은 표준 기반 API든, 고객의 삶을 더 쉽게 만들어주는 API를 고객에게 제시하는 것입니다.

Bryan

얼마 전 아크빌을 데이터 무버로 소개한 적이 있었는데요. 데이터 무버와 DMA 엔진의 차이점을 설명해 주시겠어요?

Shep

네, 그런 질문을 많이 받습니다. DMA 엔진은 컴퓨터에서 데이터 복사를 수행하는 실제 하드웨어에 뿌리를 두고 있으며, 초기 컴퓨터 아키텍처로 거슬러 올라갑니다. 카운터 몇 개, 소스 주소, 대상 주소... 소프트웨어가 카운트를 시작하면 데이터가 한 곳에서 다른 곳으로 이동합니다. 이는 대부분의 하드웨어, 소프트웨어 및 시스템 엔지니어가 생각하는 DMA 엔진에 대해 거의 요약한 것입니다.

하지만 아크빌은 메모리 버퍼의 로우 레벨 이동뿐만 아니라 메모리 버퍼가 FPGA에 있거나 메모리가 호스트에 있기 때문에 스트림일 수도 있고 메시지일 수도 있는 추상적인 데이터 이동에 대한 솔루션도 제공합니다. 저희는 DMA만큼이나 간단한 인터페이스를 제공하고자 합니다: "오, 여기 소스, 여기 목적지, 세고 가자!"라는 식으로요. ..하지만 이보다 더 높은 수준에서.

하드웨어 엔지니어에게 이는 모듈에서 데이터를 가져오고 내보내기 위한 표준 업계 API를 의미합니다. 소프트웨어 측면에서는 메모리에 대한 표준 가상 포인터를 의미하므로 이를 생성하거나 소비할 수 있습니다.

예를 들어, FPGA에서 데이터를 생성하고 호스트에서 소비하거나 그 반대로 소비하는 두 가지 작업 사이에는 어떤 일이 벌어질까요? 고객이 그 사이에 무슨 일이 일어나는지 신경 쓰지 않는다고 말할 수는 없지만, 고객은 그런 일이 일어나기를 원합니다. 모션이 어떻게 안무되고 어떻게 진행되는지에 대한 비즈니스를 원합니다. 이러한 처리량과 지연 시간 등 성능이 뛰어나야 하며, 이를 통해 얻을 수 있는 가치는 또 다른 플랫폼이라는 점입니다. 데이터 모션 플랫폼이 제공되면 고객은 애플리케이션을 사용할 수 있습니다.

물론 고객의 요구 사항이 전문화되어 있고 우리가 제공하는 패턴이 적합하지 않은 경우, 방금 Stephen이 말한 것처럼 "FPGA이니 필요한 것은 무엇이든 할 수 있습니다."라고 말할 수도 있습니다.

우리는 하드웨어 측면의 AXI 인터페이스나 표준 Linux 재단 소프트웨어 API인 DPDK에서 볼 수 있는 일련의 표준을 활용했으며, "이봐, 내가 직접 할 필요는 없어"라고 생각하는 사람들이 충분히 많았기 때문에 성공할 수 있었습니다. Atomic Rules에서 구입하거나 BittWare/Molex에서 해당 보드를 구할 수 있고, 그것이 우리에게 효과적이었습니다."

니콜레트

이제 4분 정도 남았는데, 마무리하기 전에 마지막으로 한 가지만 더 말씀드릴 수 있을까요? 아직 질문을 받지 못하신 분들도 걱정하지 마시고, 이벤트가 끝난 후 BittWare와 팀에서 질문을 받아 답변해 드릴 테니까요.

하지만 저는 오픈 소스와 오픈 표준의 중요성, 그리고 FPGA 기반 솔루션 채택에 대한 오픈 표준에 대해 정말 빠르게 이야기하고 싶었습니다. 그렇다면 정말 중요한 표준이 있다면 스티븐, 이 주제를 다뤄주실 수 있을까요?

Stephen

네, 그렇습니다. 즉, 컴퓨팅 스토리지 공간에서 우리는 대부분의 사람들이 들어보셨을 것이고 현재 대부분의 노트북 컴퓨터에 탑재되어 있을 NVMe(NVM Express)의 명령 집합을 표준화하여 스토리지뿐만 아니라 컴퓨팅에 대해서도 이야기하고 있습니다. 따라서 계산 작업을 FPGA로 푸시할 수 있는 API가 필요하다면 이 개방형 표준을 활용할 수 있습니다.

장점은 다음과 같습니다: 이미 NVMe 드라이브가 존재하기 때문에 더 이상 팀원들에게 Linux나 Windows에서 드라이버를 작성하도록 할 필요가 없습니다. 오늘날 출시되는 모든 서버와 모든 데스크톱은 운영 체제를 부팅하고 게임 등을 로드하는 데 사용되는 솔리드 스테이트 드라이브를 구동하기 때문에 NVMe를 지원한다는 것을 알고 있습니다.

따라서 제 삶이 훨씬 더 편해졌고, 더 이상 아이데콤만을 위한 것이 아니기 때문에 생태계도 만들어졌습니다. 이 NVMe 컴퓨팅 스토리지 공간에서 플레이하는 모든 사람을 위한 것입니다. 따라서 경쟁이 생겨나기 때문에 반드시 좋은 것만은 아니지만, 사실 좋은 일이라고 생각합니다. 더 중요한 것은 생태계가 형성되고 생태계가 채택을 촉진한다는 점입니다. 채택이 가격을 낮추면 채택이 증가하여 선순환이 이루어집니다.

그래서 저는 오픈 소스와 오픈 표준을 매우 신봉합니다. 저희는 Linux 커널과 아까 Shep이 말한 스토리지에 해당하는 SPDK(DPDK)와 같은 분야에서 많은 작업을 하고 있습니다.

다시 한 번 말씀드리지만, 커뮤니티 내에서 여러 회사가 코드를 살펴보면서 '어떻게 하면 더 나은 코드를 만들 수 있을까? 어떻게 하면 더 안전하게 만들 수 있을까? 어떻게 하면 더 효율적으로 만들 수 있을까?"

그리고 그것이 더 나은 채택으로 이어진다고 생각합니다. 저는 그 점이 마음에 듭니다.

Shep

방금 Stephen이 말한 모든 것이 훌륭하지만 한 가지 덧붙이고 싶은 것은 코드가 검증되고 신뢰할 수 있는 방식으로 커뮤니티에 환원하는 것입니다. 물론 독점적인 솔루션을 원하는 사람은 아무도 없으므로 어딘가에서 사용할 수 있는 것을 GitHub에 올리는 것은 흥미로운 일입니다.

하지만 훨씬 더 가치 있는 것이 뭔지 아세요? 리눅스 재단과 다양한 그룹에서 코드를 검토하여 오픈소스 코드가 커뮤니티 전반의 신뢰와 검증을 받는 것입니다. Eideticom과 Atomic Rules도 이러한 과정을 거치는 것으로 알고 있는데, 업계의 거물들이 신뢰 서클에 포함될 때 오픈 소스 코드의 가치는 더욱 커지기 때문에 이 모든 과정에서 매우 중요합니다.

Bryan

여러분, 시간이 얼마 남지 않았습니다. 더 많은 질문을 받았으면 좋았을 텐데... 정말 멋진 질문들이 많았어요. 오늘 라이브 채팅에 참여해주신 모든 분들께 감사드립니다. 스폰서인 마우저 일렉트로닉스, 비트웨어, 몰렉스에도 감사드립니다. 그리고 함께 해주신 훌륭한 패널 여러분께도 감사드립니다.

니콜레트

네, 정말 감사합니다.

Bryan

모두 좋은 하루 되세요.