Xilinx KCU116: a plataforma de desenvolvimento FPGA de rede e armazenamento de 100 Gbps com boa relação custo-benefício
2021-07-27
A família Kintex® UltraScale+™ é considerada o melhor equilíbrio entre preço/desempenho/watts do dispositivo FPGA construído com a tecnologia FinFET TSMC de 16 nm da Xilinx®. Combinando a nova UltraRAM e a nova tecnologia de otimização de interconexão (SmartConnect), este dispositivo oferece a solução mais econômica para aplicações que requerem transceptores de alta qualidade para núcleos de conectividade de 100 Gbps. Esta família é projetada especificamente para aplicações de rede e armazenamento, tais como processamento de pacotes de rede e tecnologia MIMO sem fio, redes com fio de 100 Gbps, aceleração de rede industrial e de data center e aceleração de armazenamento SSD (unidade de estado sólido) NVMe. Este artigo demonstra a solução de 100 Gbps da rede com tecnologia TOE (TCP Offload Engine) e a implementação do SSD NVMe no Kit de Avaliação KCU116 da Xilinx usando o Núcleo TOE100G-IP da Design Gateway que é para soluções de CPU com interface de transmissão TCP de 12 GB/s acima de 100 GbE e Núcleo NVMeG4-IP, capaz de alcançar um desempenho incrivelmente rápido de aproximadamente 4 GB/s por SSD.
Introdução ao kit de avaliação KCU116 Kintex® UltraScale+
O KCU116 é ideal para avaliar as principais características do Kintex UltraScale+, mais notadamente o desempenho do transceptor de 28 Gbps. Este kit é bem adequado para prototipagem rápida baseada em um dispositivo FPGA XCKU5P-2FFVB676E.
Incluídos na placa estão uma DDR4-2666 de 1 GB e 32 bits, portas de expansão FMC para 1 x SSD M.2 NVMe, e PCIe ger. 4 x8 pistas para até 2 x interface SSD M.2 NVMe. Os transceptores GTY de 16 x 28 Gbps estão disponíveis tanto para implementação de interface PCIe ger. 4 como de 100 GbE e apresentam uma variedade de interfaces periféricas e lógica FPGA para projetos personalizados pelo usuário.
Figura 1: kit de avaliação KCU116. (Fonte da imagem: Xilinx Inc.)
Junto com os Núcleos IP da Design Gateway, o KCU116 fornece tudo o que é necessário para desenvolver soluções do estado da arte em rede e armazenamento de 100 Gbps sem precisar do suporte MPSoC.
Implementação de soluções de rede e armazenamento a 100Gbps
Figura 2: Solução de rede e armazenamento de 100 Gbps no KCU116. (Fonte da imagem: Design Gateway)
Embora os dispositivos Kintex UltraScale+ não apresentem tecnologia MPSoC como Zynq UltraScale+, a rede e o processamento do protocolo de armazenamento NVMe é possível de ser implementado sem a necessidade de Processadores e SO, alavancando as soluções de Núcleos IP da Design Gateway:
- TOE100G-IP: Núcleo IP da pilha de protocolo TCP de 100 GbE sem a necessidade de uma CPU
- NVMeG4-IP: Controlador host NVMe autônomo com PCIe ger. 4 de IP flexível incorporado
Tanto TOE100G-IP quanto NVMeG4-IP podem operar sem a necessidade de CPU/SO/Driver. A lógica do usuário para controle e caminho de dados com ambos os IPs pode ser implementada por pura lógica de hardware ou SO bare-metal por Microblaze, permitindo o desenvolvimento de aplicações e algoritmos de alto nível mais rápido e fácil sem a necessidade de se preocupar com protocolos complicados de rede e NVMe. Isto abre novas oportunidades para soluções avançadas a nível de sistema, tais como captura de dados de sensores, computação na placa e dispositivos de computação na borda baseados em AI.
TOE100G-IP da Design Gateway para dispositivo UltraScale+
Figura 3: Sistemas TOE100G-IP. (Fonte da imagem: Design Gateway)
O núcleo IP TOE100G implementa a pilha TCP/IP (em lógica de hardware) conectada com o módulo do Subsistema Ethernet de 100 Gb da Xilinx para o hardware da camada mais baixa. A interface de usuário do IP TOE100G consiste em uma interface de Registrador para sinais de controle e uma interface FIFO para sinais de dados. O IP TOE100G é projetado para se conectar com o subsistema Ethernet de 100 Gb que usa um AXI4-ST de 512 bits para se conectar à interface do usuário. O subsistema Ethernet, fornecido pela Xilinx, inclui as funções EMAC, PCS e PMA. A frequência de clock da interface do usuário do subsistema Ethernet de 100 Gb é igual a 322,265625 MHz.
Características do TOE100G-IP
- Implementação completa da pilha TCP/IP
- Suporta uma sessão por um IP TOE100G (Multisessões podem ser implementadas usando vários IPs TOE100G))
- Suporte tanto no modo Servidor quanto no modo Cliente (Passivo/Ativo aberto e fechado)
- Suporte Jumbo frame
- Interface de dados simples pela interface FIFO padrão
- Interface de controle simples por interface de porta única da RAM
As utilizações de recursos FPGA no dispositivo FPGA XCKU5P-2FFVB676E são mostradas na Tabela 1 abaixo.
|
Tabela 1: Exemplo de estatísticas de implementação para o dispositivo Kintex Ultrascale+
Mais detalhes do TOE100G-IP estão descritos na ficha técnica que pode ser baixada do site da Design Gateway.
Controlador host NVMe PCIe ger. 4 da Design Gateway para Transceptores GTY
O Kintex UltraScale+ apresenta um transceptor GTY capaz de suportar uma interface PCIe ger. 4, mas não está disponível um bloco integrado PCIe ger. 4 nem processador ARM.
A Design Gateway resolveu este problema desenvolvendo o núcleo NVMeG4-IP que é capaz de funcionar como um controlador host NVMe autônomo com lógica de ponte embutida na PCIe e IP flexível de PCIe dentro de um único núcleo. A ativação do acesso SSD NVMe PCIe ger. 4 simplifica a interface do usuário e permite que recursos padrões sejam projetados para facilitar o uso sem a necessidade de conhecimento do protocolo NVMe.
Figura 4: Diagrama de blocos NVMeG4-IP. (Fonte da imagem: Design Gateway)
Características do NVMeG4-IP
- Capaz de implementar camada de aplicação, camada de transação, camada de link de dados e algumas partes da camada física para acessar o SSD NVMe sem uma CPU ou memória DDR externa
- Funciona com o Xilinx PCIe PHY IP configurado como uma PCIe ger. 4 de 4 pistas (interface de barramento de 256 bits)
- Inclui buffer de dados RAM de 256 Kbytes
- Suporta seis comandos, ou seja, Identify, Shutdown, Write, Read, SMART e Flush (suporte de comando adicional opcional disponível)
- A frequência de clock do usuário deve ser maior ou igual ao clock da PCIe (250 MHz para ger. 4)
As utilizações de recursos FPGA no dispositivo FPGA XCKU5P-2FFVB676E são mostradas na Tabela 2 abaixo.
|
Tabela 2: Exemplo de estatísticas de implementação do dispositivo Kintex Ultrascale+.
Mais detalhes do NVMeG4-IP estão descritos na ficha técnica que pode ser baixada do site da Design Gateway.
Exemplo de implementação TOE100G-IP e resultado de desempenho no KCU116
A Figura 5 mostra a visão geral do projeto de referência baseado no KCU116 para demonstrar a implementação do TOE100G-IP. O sistema de demonstração inclui sistemas Microblaze de SO bare-metal, lógica de usuário e subsistemas Ethernet de 100 Gb da Xilinx.
Figura 5: Diagrama de blocos dos sistemas de demonstração do TOE100G-IP. (Fonte da imagem: Design Gateway)
O sistema de demonstração é projetado para avaliar o funcionamento do TOE100G-IP tanto no modo Cliente quanto no modo Servidor. A lógica de teste permite enviar e receber dados com um padrão de teste para a maior velocidade de dados possível no lado da interface do usuário. Para uma interface de 100 GbE com KCU116, são necessários quatro transceptores SFP+ (25GBASE-R) e cabo de fibra, como mostrado na Figura 6.
Figura 6: Ambiente de demonstração do TOE100G-IP montado no KCU116. (Fonte da imagem: Design Gateway)
O resultado do exemplo de teste ao comparar 100G com outros (1G/10G/25G/40G) é mostrado na Figura 7.
Figura 7: Comparação do desempenho do TOE100G-IP com 1G/10G/25G/40G no KCU116. (Fonte da imagem: Design Gateway)
O resultado do teste demonstra que o TOE100G-IP é capaz de atingir uma velocidade de transmissão TCP de aproximadamente 12 GB/s.
Exemplo de implementação NVMeG4-IP e resultado de desempenho no KCU116
A Figura 8 mostra a visão geral do projeto de referência baseado no KCU116 para demonstrar a implementação do NVMeG4-IP de 1CH. É possível implementar múltiplas instâncias do NVMeG4-IP para conseguir maior desempenho de armazenamento se os recursos da FPGA estiverem disponíveis a partir do projeto personalizado do usuário.
Para mais detalhes do projeto de referência NVMeG4-IP, consulte o documento do projeto de referência NVMeG4-IP fornecido no site da Design Gateway.
Figura 8: Visão geral do projeto de referência NVMeG4-IP. (Fonte da imagem: Design Gateway)
O sistema de demonstração é projetado para escrever/verificar dados com o SSD NVMe no KCU116. O usuário controla a operação de teste através de um console Serial. Para que o SSD NVMe faça interface com o KCU116, é necessária uma placa adaptadora AB18-PCIeX16, como mostrado na Figura 9.
Figura 9: Ambiente de demonstração NVMeG4-IP montado no KCU116. (Fonte da imagem: Design Gateway)
O resultado do exemplo de teste ao executar o sistema de demonstração no KCU116, usando o Samsung 970 Pro de 512 GB, é mostrado na Figura 10.
Figura 10: Desempenho de leitura/escrita do SSD NVMe no KCU116, usando Samsung 970 PRO S. (Fonte da imagem: Design Gateway)
Conclusão
Tanto o Núcleo TOE100G-IP quanto o NVMeG4-IP fornecem a solução para utilizar a capacidade de conectividade de 100 Gbps na placa KCU116 para implementação de aplicações de rede e armazenamento NVMe. Um TOE100G-IP é capaz de transmitir aproximadamente 12 GB via TCP acima de 100 GbE. O NVMeG4-IP pode fornecer armazenamento de altíssimo desempenho com NVMe PCIe ger. 4 a aproximadamente 4 GB/s por SSD. Múltiplas instâncias de NVMeG4-IP podem ser usadas para formar um Controlador RAID0 e podem aumentar o desempenho de armazenamento para corresponder à velocidade de transmissão de 100 GbE.
O kit de avaliação KCU116 e as soluções IP de rede e armazenamento da Design Gateway permitem alcançar o objetivo do maior desempenho possível com o menor uso possível de recursos FPGA para uma solução ou produto muito econômico baseado no dispositivo Xilinx® Kintex UltraScale+®.
Para mais detalhes sobre o TOE100G-IP e NVMeG4-IP, a ficha técnica, o projeto de referência disponível e a configuração do ambiente de demonstração podem ser consultadas no site da Design Gateway em:
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 DigiKey or official policies of DigiKey.

