SynMaker: uma ferramenta de síntese de alto nível para processamento digital de imagem - SILVA JÚNIOR, Luis Carlos da (2013)
Nesta dissertação de mestrado é introduzida uma nova ferramenta de síntese de alto nível chamada SynMaker que recebe como entrada um código de alto nível Orientado a Objetos escrito em Java ou SystemVerilog e gera código RTL que pode ser sintetizado para uma placa de prototipação alvo. A geração de código RTL leva em conta características do código orientado a objetos tais como classes, abstração, encapsulamento e algumas restrições relativas a polimorfismo, herança, utilização de construtores dentre outras especificadas neste trabalho e, por fim, integra o resultado com uma plataforma FPGA que inclui uma câmera e um display para exibir os resultados. O fluxo de projeto implementado no SynMaker foi especialmente concebido para aplicações de processamento de imagem e vídeo. Uma vantagem desta abordagem é que ela abstrai completamente o fluxo da ferramenta Quartus II, o designer descreve a aplicação de processamento de imagem em uma linguagem de alto nível de orientação a objeto, utilizando uma biblioteca de componentes da plataforma e gera código para a Plataforma de Desenvolvimento Terasic DE2-70. Esta plataforma de desenvolvimento inclui uma câmera digital e display, sendo uma plataforma ideal para a prototipagem de aplicações de filtros de processamento de imagem e vídeo. Em seu estado atual o SynMaker pode executar uma síntese de alto nível de uma forma simplificada, realizando um mapeamento direto de uma AST (Abstract Syntax Tree) para código RTL. Os resultados experimentais para a síntese de filtros de processamento de imagem são apresentados e demonstram a eficácia do funcionamento da ferramenta de síntese proposta.