Um Canal de Comunicação Inter-FPGAs com Módulo de Detecção de Erro - Melo, Lucas Torquato de (2014)
A busca por aumento de desempenho de sistemas computacionais é cada vez maior em empresas e pesquisas científicas. Essa necessidade existe por conta do surgimento de aplicações complexas que necessitam de um grande poder computacional para serem executadas eficientemente. A utilização de arquiteturas alternativas como FPGAs nesse contexto têm sido realizada com o intuito de prover excelente desempenho na execução dessas aplicações. Atualmente, sistemas envolvendo múltiplos FPGAs são utilizados em diversas aplicações científicas. A tendência é que em tais sistemas sejam desenvolvidos de forma a permitir escalabilidade de dispositivos, possibilitando que mais FPGAs possam fazer parte da arquitetura e aumentando o desempenho. Para que esses sistemas possam funcionar de forma eficiente, utilizando paralelamente recursos existentes nos FPGAs, uma comunicação eficiente deve existir entre os FPGAs disponíveis na plataforma. Geralmente esse tipo de comunicação, em FPGAs de última geração, se dá por meio de interfaces tipo LVDS (Sinalização Diferencial de Baixa Tensão) e por meio de transceptores e receptores. A sinalização LVDS permite o envio de sinais em alta velocidade através de um par diferencial de fios paralelos. A utilização desse recurso permite que a transmissão de dados entre os dispositivos possa ser realizada de forma mais eficiente, possibilitando uma comunicação mais segura contra interferências eletromagnéticas. Outro fator importante é que o roteamento que interconecta os pinos LVDS na plataforma deve ser desenvolvido com precisão para evitar instabilidades na comunicação. Infelizmente, muitas plataformas disponíveis no mercado não observam tais restrições, limitando a taxa de transferência no barramento. Este trabalho apresenta um canal de comunicação inter-FPGAs baseado em uma interface DDR voltado para esse tipo de plataforma. Esta abordagem promove uma comunicação estável entre esses dispositivos sem a utilização de pinos LVDS. Um módulo de detecção de erro também foi desenvolvido para garantir a integridade das transferências e corrigir possíveis erros no barramento. O canal foi validado em uma plataforma comercial. Os resultados de síntese e desempenho são apresentados nesse trabalho bem como os estudos de caso envolvidos.