Xilinx KCU116: niedroga platforma rozwojowa FPGA z siecią 100Gbps i pamięcią

Przez: Thanaporn Sangpaithoon

Grupa produktów Kintex® UltraScale+™ oferuje najlepszą relację ceny do parametrów działania oraz mocy wśród urządzeń FPGA i została zbudowana w technologii TSMC 16nm FinFET firmy Xilinx®. Dzięki połączeniu nowej pamięci UltraRAM i nowej technologii optymalizacji połączeń (SmartConnect), omawiane urządzenie stanowi najbardziej ekonomiczne rozwiązanie dla aplikacji, które wymagają nadajniko-odbiorników o wysokiej sprawności dla rdzeni łącznościowych o przepustowości 100Gbps. Ta grupa produktów została zaprojektowana specjalnie do zastosowań sieciowych i pamięci masowych, takich jak przetwarzanie pakietów sieciowych i bezprzewodowa technologia MIMO, sieci przewodowych 100 Gbps, przyspieszanie sieci przemysłowych i centrów danych oraz przyspieszanie pamięci masowych NVMe SSD (dysków półprzewodnikowych). W artykule przedstawiono rozwiązanie sieciowe 100Gbps zwiększania wydajności sieci TCP i implementację NVMe SSD w zestawie ewaluacyjnym KCU116 firmy Xilinx, wykorzystującym moduł rdzenia TOE100G-IP firmy Design Gateway, który jest przeznaczony dla rozwiązań jednostek centralnych z transmisją TCP 12GB/s przez interfejs 100 GbE oraz moduł rdzenia NVMeG4-IP, który jest w stanie osiągnąć niewiarygodnie wysoką wydajność około 4GB/s na dysk SSD.

Wprowadzenie do zestawu ewaluacyjnego Kintex® UltraScale+ KCU116

Zestaw KCU116 jest idealny do oceny kluczowych funkcji Kintex UltraScale+, zwłaszcza wydajności nadajniko-odbiornika 28Gbps. Zestaw ten jest dobrze przystosowany do szybkiego prototypowania w oparciu o układ FPGA XCKU5P-2FFVB676E.

Na płycie znajduje się 1GB 32-bitowej pamięci DDR4-2666, porty rozszerzeń FMC dla 1 x dysku SSD M.2 NVMe oraz PCIe Gen4 x8 torów dla interfejsu maksymalnie 2 x M.2 NVMe SSD. Nadajniko-odbiorniki GTY 16 x 28 Gbps są dostępne zarówno dla interfejsu PCIe Gen4, jak i 100 GbE i oferują różnorodne interfejsy peryferyjne oraz logikę bezpośrednio programowalnej macierzy bramek (FPGA) dla projektów dostosowanych do potrzeb użytkownika.

Wygląd zestawu ewaluacyjnego Xilinx KCU116 (kliknij, aby powiększyć)Ilustracja 1: zestaw ewaluacyjny KCU116. (Źródło ilustracji: Xilinx Inc.)

Wraz z modułami rdzeni IP firmy Design Gateway zestaw KCU116 zapewnia wszystko, co jest niezbędne do opracowania najnowocześniejszych rozwiązań sieciowych i pamięci masowych o przepustowości 100Gbps bez potrzeby obsługi technologii MPSoC.

Wdrażanie rozwiązań sieciowych i pamięci masowych 100Gbps

Schemat rozwiązania sieciowego i pamięci masowej 100Gbps w zestawie KCU116Ilustracja 2: rozwiązanie sieciowe i pamięć masowa 100Gbps w zestawie KCU116. (Źródło ilustracji: Design Gateway)

Mimo że urządzenia Kintex UltraScale+ nie są wyposażone w technologię MPSoC, jak Zynq UltraScale+, przetwarzanie protokołów sieciowych i pamięci masowej NVMe można wdrożyć bez konieczności stosowania procesorów i systemu operacyjnego, wykorzystując rozwiązania rdzeni IP firmy Design Gateway:

  1. TOE100G-IP: rdzeń IP 100 GbE z pełnym stosem protokołu TCP bez konieczności użycia procesora
  2. NVMeG4-IP: samodzielny kontroler hosta NVMe z wbudowanym PCIe Gen4 Soft IP

Zarówno TOE100G-IP jak i NVMeG4-IP mogą działać bez konieczności stosowania procesora (CPU), systemu operacyjnego, czy sterownika. Logikę użytkownika dla sterowania i ścieżki danych w przypadku obu rdzeni IP można wdrażać jako czystą logikę sprzętową lub bare-metal OS firmy Microblaze, co pozwala na szybsze i łatwiejsze tworzenie aplikacji i algorytmów wysokiego poziomu bez konieczności martwienia się o skomplikowane protokoły sieciowe i NVMe. Otwiera to nowe możliwości dla zaawansowanych rozwiązań na poziomie systemowym, takich jak rejestracja danych z czujników, zintegrowane obliczenia i urządzenia przetwarzania brzegowego oparte na sztucznej inteligencji (AI).

System TOE100G-IP firmy Design Gateway dla urządzenia UltraScale+

Wygląd systemów TOE100G-IPIlustracja 3: systemy TOE100G-IP. (Źródło ilustracji: Design Gateway)

Rdzeń TOE100G IP realizuje stos TCP/IP (w logice układowej) i łączy się z modułem podsystemu 100-gigabitowego Ethernetu firmy Xilinx dla urządzeń niższej warstwy. Interfejs użytkownika w TOE100G IP składa się z interfejsu rejestru dla sygnałów sterujących oraz interfejsu FIFO dla sygnałów danych. System IP TOE100G jest przeznaczony do łączenia z podsystemem 100-gigabitowego Ethernetu, który wykorzystuje 512-bitowy port AXI4-ST do łączenia się z interfejsem użytkownika. Podsystem Ethernet, dostarczony przez firmę Xilinx, zawiera funkcje EMAC, PCS i PMA. Częstotliwość zegara interfejsu użytkownika podsystemu 100-gigabitowego Ethernetu jest równa 322,265625 MHz.

Cechy systemu TOE100G-IP

  • Pełna implementacja stosu TCP/IP
  • Obsługa jednej sesji przez jeden system TOE100G (wiele sesji można realizować za pomocą wielu systemów TOE100G IP))
  • Obsługa zarówno trybu serwera jak i klienta (pasywne/aktywne otwieranie i zamykanie)
  • Obsługa ramki Jumbo
  • Prosty interfejs danych jako standardowy interfejs FIFO
  • Prosty interfejs sterowania przez jednoportowy interfejs RAM

Wykorzystanie zasobów FPGA w urządzeniu XCKU5P-2FFVB676E FPGA przedstawia poniższa tabela 1.

Grupa Przykładowe urządzenie Fmax (MHz) Rejestry CLB Tablice LUT bloków CLB Blok CLB Blok IOB BRAMTile URAM GTY Narzędzia projektowania
Kintex-Ultrascale+ XCKU5P-FFVB676-2E 350 12883 17535 3208 - 53 - 4 Vivado2019.1

Tabela 1: przykładowa statystyka wdrożenia dla urządzenia Kintex Ultrascale+

Więcej szczegółów na temat systemu TOE100G-IP znajduje się w jego karcie katalogowej, którą można pobrać z witryny firmy Design Gateway.

Kontroler hosta NVMe PCIe Gen4 firmy Design Gateway do nadajniko-odbiorników GTY

Zestaw Kintex UltraScale+ zawiera nadajniko-odbiornik GTY, który jest w stanie obsłużyć interfejs PCIe Gen4, ale zintegrowany blok PCIe Gen4 i procesor ARM nie są dostępne.

Firma Design Gateway rozwiązała ten problem, opracowując rdzeń NVMeG4-IP, który jest w stanie pracować jako samodzielny kontroler hosta NVMe z wbudowanym programowym IP PCIe i logiką mostka PCIe w jednym rdzeniu. Umożliwienie dostępu do dysków SSD NVMe PCIe Gen4 upraszcza interfejs użytkownika i pozwala na zaprojektowanie standardowych funkcji, które są łatwe w użyciu bez konieczności znajomości protokołu NVMe.

Schemat blokowy NVMeG4-IPIlustracja 4: schemat blokowy NVMeG4-IP. (Źródło ilustracji: Design Gateway)

Cechy NVMeG4-IP

  • Możliwość implementacji warstwy aplikacji, warstwy transakcyjnej, warstwy łącza danych i niektórych części warstwy fizycznej w celu uzyskania dostępu do dysku SSD NVMe bez procesora ani zewnętrznej pamięci DDR
  • Działa z PCIe PHY IP firmy Xilinx skonfigurowanym jako 4-torowy PCIe Gen4 (256-bitowy interfejs magistrali)
  • Zawiera bufor danych RAM o pojemności 256kB
  • Obsługuje sześć poleceń: Identify, Shutdown, Write, Read, SMART i Flush (dostępne wsparcie dla dodatkowych poleceń opcjonalnych)
  • Częstotliwość zegara użytkownika musi być większa lub równa częstotliwości zegara PCIe (250MHz dla Gen4)

Wykorzystanie zasobów FPGA w urządzeniu XCKU5P-2FFVB676E FPGA przedstawia poniższa tabela 2.

Grupa Przykładowe urządzenie Fmax (MHz) Rejestry CLB Tablice LUT bloków CLB Blok CLB Blok IOB BRAMTile URAM GTY Narzędzia projektowania
Kintex-Ultrascale+ XCKU5P-FFVB676-2E 300 19214 21960 4382 - 12 8 4 Vivado2019.1

Tabela 2: przykładowa statystyka wdrożenia dla urządzenia Kintex Ultrascale+.

Więcej szczegółów na temat układu NVMeG4-IP znajduje się w jego karcie katalogowej, którą można pobrać z witryny firmy Design Gateway.

Przykładowa implementacja TOE100G-IP i wynik parametrów działania w zestawie KCU116

Ilustracja 5 przedstawia przegląd projektu referencyjnego opartego na układzie KCU116 w celu zademonstrowania implementacji TOE100G-IP. System demonstracyjny zawiera systemy bare-metal OS Microblaze, logikę użytkownika oraz podsystemy 100-gigabitowego Ethernetu firmy Xilinx.

Schemat blokowy systemów demonstracyjnych TOE100G-IPIlustracja 5: schemat blokowy systemów demonstracyjnych TOE100G-IP. (Źródło ilustracji: Design Gateway)

System demonstracyjny został zaprojektowany do oceny pracy układu TOE100G-IP zarówno w trybie klienta jak i serwera. Logika testowa umożliwia wysyłanie i odbieranie danych z wzorcem testowym w celu uzyskania najwyższej możliwej prędkości danych po stronie interfejsu użytkownika. Dla interfejsu 100 GbE z zestawem KCU116 wymagane są cztery nadajniko-odbiorniki SFP+ (25GBASE-R) i kabel światłowodowy, jak pokazano na ilustracji 6.

Środowisko demonstracyjne TOE100G-IP w zestawie KCU116Ilustracja 6: konfiguracja środowiska demonstracyjnego TOE100G-IP skonfigurowanego w zestawie KCU116. (Źródło ilustracji: Design Gateway)

Przykładowy wynik testu porównującego 100G z innymi (1G/10G/25G/40G) przedstawiono na ilustracji 7.

Wykres porównania parametrów działania modułu TOE100G-IP z 1G/10G/25G/40G w zestawie KCU116Ilustracja 7: porównanie parametrów działania modułu TOE100G-IP z 1G/10G/25G/40G w zestawie KCU116. (Źródło ilustracji: Design Gateway)

Wynik testu pokazuje, że TOE100G-IP jest w stanie osiągnąć prędkość około 12GB/s transmisji TCP.

Przykład wdrożenia NVMeG4-IP i wynik parametrów działania w zestawie KCU116

Ilustracja 8 przedstawia wygląd ogólny projektu referencyjnego opartego na KCU116 w celu zademonstrowania wdrożenia 1CH NVMeG4-IP. Możliwe jest zaimplementowanie wielu wystąpień NVMeG4-IP w celu osiągnięcia wyższej wydajności pamięci masowej, jeśli zasoby FPGA są dostępne z projektu dostosowanego do potrzeb użytkownika.

Więcej szczegółów na temat projektu referencyjnego NVMeG4-IP można znaleźć w dokumencie projektu referencyjnego NVMeG4-IP dostępnym w witrynie Design Gateway.

Schemat projektu referencyjnego NVMeG4-IPIlustracja 8: wygląd ogólny projektu referencyjnego NVMeG4-IP. (Źródło ilustracji: Design Gateway)

System demonstracyjny jest przeznaczony do zapisu/weryfikacji danych za pomocą dysku SSD NVMe w zestawie KCU116. Użytkownik kontroluje przebieg testu za pomocą konsoli szeregowej. Aby dysk SSD NVMe mógł współpracować z KCU116, wymagana jest płyta adaptera AB18-PCIeX16, jak ukazano na ilustracji 9.

Wygląd środowiska demonstracyjnego NVMeG4-IP skonfigurowanego w zestawie KCU116 (kliknij, aby powiększyć)Ilustracja 9: środowisko demonstracyjne NVMeG4-IP skonfigurowane w zestawie KCU116. (Źródło ilustracji: Design Gateway)

Przykładowy wynik testu przy uruchomieniu systemu demonstracyjnego w zestawie KCU116 z wykorzystaniem dysku Samsung 970 Pro o pojemności 512GB przedstawiono na ilustracji 10.

Wydajność odczytu/zapisu dysku SSD NVMe w zestawie KCU116 przy użyciu dysku Samsung 970 PRO SIlustracja 10: wydajność odczytu/zapisu NVMe SSD w zestawie KCU116 przy użyciu dysku Samsung 970 PRO S. (Źródło ilustracji: Design Gateway)

Podsumowanie

Zarówno moduły rdzenia TOE100G-IP jak i NVMeG4-IP zapewniają rozwiązanie pozwalające na wykorzystanie możliwości łączności 100Gbps na płycie KCU116 do wdrażania aplikacji sieciowych i pamięci masowych NVMe. Jeden rdzeń TOE100G-IP jest w stanie zapewnić około 12GB transmisji TCP przez 100 GbE. Rdzeń NVMeG4-IP może zapewnić bardzo wydajną pamięć masową z NVMe PCIe Gen4 z prędkością około 4GB/s na każdy dysk SSD. Można użyć wielu wystąpień NVMeG4-IP do utworzenia kontrolera RAID0 i zwiększenia wydajności pamięci masowej, aby dopasować ją do prędkości transmisji 100 GbE.

Zestaw ewaluacyjny KCU116 oraz rozwiązania IP dla sieci i pamięci masowych firmy Design Gateway umożliwiają osiągnięcie celu, jakim jest najwyższa możliwa wydajność przy najniższym możliwym wykorzystaniu zasobów FPGA dla bardzo ekonomicznego rozwiązania lub produktu opartego na urządzeniu Xilinx® Kintex UltraScale+®.

Więcej szczegółów na temat TOE100G-IP i NVMeG4-IP, arkusz danych, dostępny projekt referencyjny i konfiguracja środowiska prezentacyjnego są dostępne w witrynie internetowej firmy Design Gateway pod adresem:

https://dgway.com/TOE100G-IP_X_E.html

https://dgway.com/NVMeG4-IP_X_E.html

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of Digi-Key Electronics or official policies of Digi-Key Electronics.

Informacje o autorze

Thanaporn Sangpaithoon

Thanaporn Sangpaithoon has been working at Design Gateway Co., Ltd. since 2001. He has been involved in FPGA design projects and successfully developed Serial ATA IP Core on Xilinx Virtex-4 in 2006. Now he is General Manager, responsible for sales and business development.