Dissertação

Verilog PNG Encoder EVALUATED

O objectivo deste trabalho foi desenvolver um subsistema de Propriedade Intelectual (IP) para o compressor de “Portable Network Graphics” (PNG), com a capacidade de operar em 30 “frames” por segundo (fps) para VGA (Video Graphics Array), quando incorporado num chip. O subsistema IP desenvolvido é composto por um CPU ARM Cortex A9 que funciona a 667 MHz e um módulo IP de hardware que implementa o algoritmo LZ77 com uma frequência de 100 MHz. O algoritmo LZ77 é uma das tarefas de software mais demoradas e este módulo de hardware acelera sua execução em 40 vezes, quando comparado com a sua execução simples no sistema ARM. A operação do IP LZ77 é semelhante ao de uma “Content-Addressable Memory” (CAM), uma técnica bem conhecida para implementação de dicionários em hardware. A solução proposta é implementada em uma placa de FPGA, usando um “Xilinx Zynq 7000” à frequência de 666,66 MHz para o processador e 100MHz para a FPGA. Embora o IP LZ77 tenha alcançado 82.2 fps para VGA, excedendo o objectivo definido para este trabalho (30 fps) em aproximadamente 2x, o compressor de PNG inteiro alcançou 3.5 fps, sendo apenas duas vezes mais rápido do que a implementação em software. Para cumprir o objectivo de executar o compressor inteiro a 30 fps, outras funções precisam de aceleração por hardware, como o filtro da imagem, o codificador de entropia e o empacotador da “bitstream”. Além disso, todo o software base necessitaria de optimizações significativas para que o objectivo fosse atingido.
PNG, compressão, Hardware, LZ77, verilog, acelerador

novembro 26, 2019, 11:0

Publicação

Obra sujeita a Direitos de Autor

Orientação

ORIENTADOR

José João Henriques Teixeira de Sousa

Departamento de Engenharia Electrotécnica e de Computadores (DEEC)

Professor Auxiliar