Master's Thesis

Multiple UDP ports for FaceWorks, a networked IP core used for debug

João Carlos Dos Santos Fernandes2013

Key information

Authors:

João Carlos Dos Santos Fernandes (João Carlos Dos Santos Fernandes)

Supervisors:

José João Henriques Teixeira de Sousa (José João Henriques Teixeira de Sousa)

Published in

11/19/2013

Abstract

This thesis presents an implementation of multiple User Datagram Protocol (UDP) ports for FaceWorks, an Intelectual Property (IP) core used for hardware test and debug over the UDP/IP network protocol, which is a patented and proprietary technology of the company Coreworks SA. The objective of having multiple ports is to allow multiple software processes to independently control the device under test (eg. multiple audio streams driven by multiple programs). An overview of the FaceWorks technology and its possible applications is presented, with emphasis on the Coreworks Datagram Protocol (CWDP), which was added on top of the common UDP protocol to enable test and debug functions. The FaceWorks hardware has been converted to Verilog, upgraded to support two UDP ports, and tested using the Verilator simulator and an Field Programmable Logic Array (FPGA) board. A SystemC model of the core is automatically generated and simulated by Verilator. A SystemC testbench that uses network sockets has been written to fully replicate the hardware behavior in simulation. A PC software driver and an application which connects to the two UDP ports for testing the system have been developed. This application connects to both the SystemC model or FPGA board, indistinguishably. Experiments and implementation results are reported. Esta tese apresenta uma implementação de portas UDP múltiplas para o FaceWorks, um núcleo de Propriedade Intelectual utilizado para o teste e depuração de hardware. Funciona sobre o protocolo de rede UDP/Internet Protocol (IP), e é uma tecnologia patenteada e propriedade da empresa Coreworks SA. O objectivo das portas múltiplas é permitir que vários processos de software possam controlar de forma independente o dispositivo de teste (multiplos fluxos de áudio gerados por vários programas). Uma descrição geral da tecnologia FaceWorks e suas possíveis aplicações é apresentada, dando ênfase ao Coreworks Datagram Protocol (CWDP), que consiste numa camada adicionada sobre o protocolo UDP para realizar as funções de teste e depuração. A descrição do FaceWorks foi convertida para Verilog, actualizada para suportar duas portas UDP, e testada utilizando o simulador Verilator e uma placa de FPGA. Foi gerado automaticamente um modelo SystemC do núcleo e simulado com recurso ao Verilator. Foi descrita uma bancada de teste em SystemC que usa sockets de rede para replicar totalmente o comportamento do hardware em simulação. Foram desenvolvidos um controlador de software para PC e uma aplicação que se liga às duas portas UDP para testar o sistema. A aplicação desenvolvida interage indiferentemente com o modelo SystemC ou com a placa de FPGA. Experiências e resultados de implementação são apresentados.

Publication details

Authors in the community:

Supervisors of this institution:

RENATES TID

202003620

Degree Name

Mestrado em Engenharia Eletrotécnica e de Computadores

Fields of Science and Technology (FOS)

electrical-engineering-electronic-engineering-information-engineering - Electrical engineering, electronic engineering, information engineering

Keywords

  • Ethernet
  • UDP
  • CWDP
  • System-on-Chip
  • Verilator
  • Verification
  • Ethernet
  • UDP
  • CWDP
  • Sistema-num-Chip
  • Verilator
  • Verificação

Publication language (ISO code)

eng - English

Rights type:

Embargo lifted

Date available:

09/20/2014

Institution name

Instituto Superior Técnico