패널 토론

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

5세대부터 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가 데이터 폭주 문제를 해결하는 방법"을 주제로 이야기를 나눠보겠습니다.

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

Nicolette

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

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

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

셰프, 제프, 스티븐, 이 세 조직이 새로운 프로그램에서 함께 파트너십을 맺었다고 말씀해 주시는 건 어떨까요? 그것이 시장에 어떻게 도움이 되고 여러분은 무엇을 하는지에 대해 조금 이야기하는 게 어떨까요?

Jeff

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

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

Shep

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

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

Stephen

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

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

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

Bryan

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

Jeff

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

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

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

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

Shep

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

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

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

Stephen

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

Nicolette

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

Stephen

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

Bryan

저도 같은 말을 하려고 했는데, 괴짜의 제곱과 같습니다.

Stephen

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

그리고 지난 몇 년 동안 FPGA 경험이 없는 사람도 쉽게 무언가를 할 수 있도록 하기 위해 많은 노력을 기울여 왔다고 생각합니다. 하지만 여전히 어려운 문제이고 아직까지 해결한 적이 없는 것 같습니다. 셰프가 말한 것처럼 추상화 계층을 높이는 방식으로 FPGA용 C형 프로그래밍 언어를 작성하려고 시도한 적이 있습니다. 하지만 문제는 그 편의성을 얻기 위해 성능을 희생해야 하는 경우가 많다는 것입니다.

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

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

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

Jeff

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

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

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

Nicolette

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

Shep

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

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

물론 이를 가능하게 한 기반 기술인 SerDes가 없었다면 불가능했을 것이라는 점은 말할 필요도 없습니다. 하지만 제 짧은 대답은 (그리고 동료들에게 정말 죄송합니다... 우리 비즈니스를 너무 많이 바꿔놓았기 때문에 이 문제를 정면으로 다루지 않을 수 없었습니다) Gen4와 Gen5가 오늘날 여기에 있다는 것입니다.

Stephen

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

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

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

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

Jeff

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

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

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

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

Shep

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

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

Nicolette

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

Jeff

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

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

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

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

Stephen

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

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

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

Jeff

하지만 납땜 조인트가 역류하여 실제로 보드에서 떨어질 정도로 충분히 뜨거워졌나요?

Stephen

아직 해보지 않았습니다.

Jeff

이럴 때 뭔가 잘되고 있다는 것을 알 수 있습니다!

Bryan

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

Stephen

그래서 비트웨어와 몰렉스가 이런 문제를 해결해 준다는 것은 대단한 일이죠. "어떻게 하면 이런 것들이 죽지 않는지 모르게 멋지게 유지할 수 있을까?"에 대한 경험을 제공하는 것이 바로 그들이 제공하는 것입니다. 네, 그게 정말 중요합니다.

Bryan

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

Jeff

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

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

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

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

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

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

Nicolette

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

Jeff

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

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

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

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

Shep

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

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

Jeff

이는 총소유비용과 관련된 문제이며, 특히 컴퓨팅 스토리지 분야에서 Stephen의 애플리케이션이 이와 관련이 있다고 생각하는데, 컴퓨팅 스토리지 솔루션이 저렴하다는 데 이의를 제기할 사람은 없을 것입니다.

Bryan

전산 스토리지에 대해 조금 이야기해 보죠... 그리고 데이터 이동에 대해서도 조금 이야기하고 싶어요. 셉과 스티븐의 입장에서 말이죠.

그럼 전산 스토리지에 대해 먼저 이야기하고 나서 데이터 이동에 대해 이야기할 수 있을까요?

Stephen

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

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

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

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

아시다시피, 전산 스토리지도 표준과 관련이 있습니다. 앞서 언급했듯이 표준은 (제 생각에) 시장 채택을 촉진하여 가격을 낮춥니다. 그리고 항상 그렇죠? 따라서 FPGA 하나를 구입하는 데 많은 비용이 들 수 있습니다. 50만 개를 주문하면 단위당 더 나은 가격을 받을 수 있을 것입니다.

Jeff

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

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

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

Bryan

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

Shep

물론이죠. (웃음)

Nicolette

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

Bryan

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

Shep

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

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

우리의 목표는 고객이 원하는 것과 최대한 가까운 경험을 제공하는 것입니다. FPGA 하드웨어에서 사용자 랜드 호스트 메모리로의 데이터 전송 - 질문이나 문제 없이.

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

Stephen

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

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

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

Nicolette

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

Shep

알았죠, 제프?

Jeff

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

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

다른 하나는 기술적으로 아직 초기 단계라는 점입니다. 따라서 올해 말에 출시할 FPGA는 CXL 1.1을 지원할 예정입니다. 2.0은 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

여기 또 다른 청중의 질문이 있습니다: "프로그래머블 플러그형 수신기 이상으로 성장하는 스마트NIC에 필요한 FPGA와 함께 코패키지 광학 같은 더 높은 광학 I/O가 증가할 것으로 예상하십니까?" 이것이 바로 그들이 묻는 질문이라고 생각합니다. 트랜시버는 죄송합니다.

Jeff

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

현재 Molex는 이에 대해 많은 노력을 기울이고 있으며, 이는 제 전문 분야가 아니어서 잘 알지 못하지만, 점점 더 빠른 신호가 필요해짐에 따라 칩에서 패키지로, 패키지에서 PCB로, 커넥터로 이러한 것들을 더 효과적으로 전달하려는 욕구와 움직임이 분명 존재하고 있습니다.

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

Stephen

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

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

Shep

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

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

Nicolette

자, 이 질문을 예로 들어 보겠습니다. "베어 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에서 호스트 메모리로 또는 그 반대로 데이터 이동에 대한 솔루션으로서 아크빌은 메모리 버퍼의 로우 레벨 이동뿐만 아니라, 메모리가 FPGA에 있거나 호스트에 있기 때문에 스트림일 수도 있고 메시지가 될 수도 있는 추상적인 데이터도 포함합니다. 저희는 DMA처럼 간단한 인터페이스를 제공하고자 합니다: "오, 여기 소스, 여기 목적지, 세고 가자!"라는 식으로요. ..하지만 이보다 더 높은 수준에서.

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

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

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

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

Nicolette

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

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

Stephen

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

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

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

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

다시 한 번 강조하지만, 커뮤니티 내에서 여러 회사가 코드를 살펴보면서 "어떻게 하면 더 나은 코드를 만들 수 있을까?" 하는 협업을 하는 것이 정말 중요하다고 생각합니다. 어떻게 하면 더 안전하게 만들 수 있을까? 어떻게 하면 더 효율적으로 만들 수 있을까?"

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

Shep

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

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

Bryan

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

Nicolette

네, 정말 감사합니다.

Bryan

모두 좋은 하루 되세요.