Desenvolvimento da arquitetura dos codificadores de entropia adaptativos CAVLC e CABAC do padrão H.264/AVC

Um codificador de entropia é responsável pela representação simbólica de dados de forma a representá-los com um menor número de bits. O H.264/AVC possui três codificadores de entropia: o Exponencial Golomb, o CAVLC que é o codificador de menor complexidade porém com um throughput maior de dados e o...

Full description

Bibliographic Details
Main Author: Thiele, Cristiano
Other Authors: Bampi, Sergio
Format: Others
Language:Portuguese
Published: 2014
Subjects:
Online Access:http://hdl.handle.net/10183/85463
id ndltd-IBICT-oai-www.lume.ufrgs.br-10183-85463
record_format oai_dc
spelling ndltd-IBICT-oai-www.lume.ufrgs.br-10183-854632019-01-22T01:49:16Z Desenvolvimento da arquitetura dos codificadores de entropia adaptativos CAVLC e CABAC do padrão H.264/AVC Integrated architecture development of CAVLC and CABAC context-adaptive entropy encoders for H.264/AVC Thiele, Cristiano Bampi, Sergio Microeletrônica Compressao : Video Video coding H.264/AVC Entropy EXPG CAVLC CABAC High definition video Um codificador de entropia é responsável pela representação simbólica de dados de forma a representá-los com um menor número de bits. O H.264/AVC possui três codificadores de entropia: o Exponencial Golomb, o CAVLC que é o codificador de menor complexidade porém com um throughput maior de dados e o CABAC, com maior complexidade e com uma maior capacidade de compressão. A complexidade do codificador de entropia e a dependência dos dados sequenciais no bitstream original são os principais desafios para atender os requisitos de desempenho para compressão em tempo real. Por isso o desenvolvimento destas arquiteturas em hardware dedicado se faz necessário. Neste contexto, esta dissertação descreve os algoritmos que fazem parte da entropia do padrão H.264/AVC e as arquiteturas para estes codificadores entrópicos (Exponential Golomb, CAVLC e CABAC), além de uma arquitetura de hardware dedicada que integra todos estes a um montador final que atende às especificações da norma H.264/AVC. As arquiteturas foram escritas em VHDL e sintetizadas para dispositivos integrados FPGA. Em um dispositivo Virtex-5, este codificador de entropia completo suporta codificação de vídeos no nível 4.2 do padrão H.264/AVC (Full HD a 60 quadros por segundo). Esta arquitetura é a que apresenta o melhor desempenho de processamento dentre os melhores trabalhos relacionados, além de ser um codificador com todas as alternativas de codificação de entropia requeridas pela norma implementadas em um mesmo módulo. An entropy encoder is responsible for the symbolic representation of a data stream so that the final representation contains less bits than the original. The H.264/AVC has three entropy coding schemes: the Exponential Golomb, the CAVLC encoder, that is less complex but with a higher data throughput, and the CABAC that is more complex while allowing for higher compression capability. The complexity of the entropy encoding and data dependencies on the original bitstream are the main challenges to meet the performance requirements for real-time compression. The development of these architectures in dedicated hardware is therefore necessary for high performance encoders. In this context, this work describes the algorithms that are part of the entropy encoders of the H.264/AVC standard, and the corresponding entropy coding architectures (Exponential Golomb, CAVLC and CABAC), plus a dedicated hardware architecture that integrates all of these encoders to a final bitstream assembler that is compliant to the aforementioned standard. The architectures were written in VHDL and synthesized into FPGA devices. In a Virtex-5 device, this full entropy encoder supports video encoding at level 4.2 of the H.264/AVC standard (Full HD at 60 frames per second). The developed architecture performs best among the most recent related architectures published, and has the unique feature of an encoder that implements in the same module all the alternative entropy encoders present in this standard for video compression. 2014-01-10T01:53:24Z 2012 info:eu-repo/semantics/publishedVersion info:eu-repo/semantics/masterThesis http://hdl.handle.net/10183/85463 000909623 por info:eu-repo/semantics/openAccess application/pdf reponame:Biblioteca Digital de Teses e Dissertações da UFRGS instname:Universidade Federal do Rio Grande do Sul instacron:UFRGS
collection NDLTD
language Portuguese
format Others
sources NDLTD
topic Microeletrônica
Compressao : Video
Video coding
H.264/AVC
Entropy
EXPG
CAVLC
CABAC
High definition video
spellingShingle Microeletrônica
Compressao : Video
Video coding
H.264/AVC
Entropy
EXPG
CAVLC
CABAC
High definition video
Thiele, Cristiano
Desenvolvimento da arquitetura dos codificadores de entropia adaptativos CAVLC e CABAC do padrão H.264/AVC
description Um codificador de entropia é responsável pela representação simbólica de dados de forma a representá-los com um menor número de bits. O H.264/AVC possui três codificadores de entropia: o Exponencial Golomb, o CAVLC que é o codificador de menor complexidade porém com um throughput maior de dados e o CABAC, com maior complexidade e com uma maior capacidade de compressão. A complexidade do codificador de entropia e a dependência dos dados sequenciais no bitstream original são os principais desafios para atender os requisitos de desempenho para compressão em tempo real. Por isso o desenvolvimento destas arquiteturas em hardware dedicado se faz necessário. Neste contexto, esta dissertação descreve os algoritmos que fazem parte da entropia do padrão H.264/AVC e as arquiteturas para estes codificadores entrópicos (Exponential Golomb, CAVLC e CABAC), além de uma arquitetura de hardware dedicada que integra todos estes a um montador final que atende às especificações da norma H.264/AVC. As arquiteturas foram escritas em VHDL e sintetizadas para dispositivos integrados FPGA. Em um dispositivo Virtex-5, este codificador de entropia completo suporta codificação de vídeos no nível 4.2 do padrão H.264/AVC (Full HD a 60 quadros por segundo). Esta arquitetura é a que apresenta o melhor desempenho de processamento dentre os melhores trabalhos relacionados, além de ser um codificador com todas as alternativas de codificação de entropia requeridas pela norma implementadas em um mesmo módulo. === An entropy encoder is responsible for the symbolic representation of a data stream so that the final representation contains less bits than the original. The H.264/AVC has three entropy coding schemes: the Exponential Golomb, the CAVLC encoder, that is less complex but with a higher data throughput, and the CABAC that is more complex while allowing for higher compression capability. The complexity of the entropy encoding and data dependencies on the original bitstream are the main challenges to meet the performance requirements for real-time compression. The development of these architectures in dedicated hardware is therefore necessary for high performance encoders. In this context, this work describes the algorithms that are part of the entropy encoders of the H.264/AVC standard, and the corresponding entropy coding architectures (Exponential Golomb, CAVLC and CABAC), plus a dedicated hardware architecture that integrates all of these encoders to a final bitstream assembler that is compliant to the aforementioned standard. The architectures were written in VHDL and synthesized into FPGA devices. In a Virtex-5 device, this full entropy encoder supports video encoding at level 4.2 of the H.264/AVC standard (Full HD at 60 frames per second). The developed architecture performs best among the most recent related architectures published, and has the unique feature of an encoder that implements in the same module all the alternative entropy encoders present in this standard for video compression.
author2 Bampi, Sergio
author_facet Bampi, Sergio
Thiele, Cristiano
author Thiele, Cristiano
author_sort Thiele, Cristiano
title Desenvolvimento da arquitetura dos codificadores de entropia adaptativos CAVLC e CABAC do padrão H.264/AVC
title_short Desenvolvimento da arquitetura dos codificadores de entropia adaptativos CAVLC e CABAC do padrão H.264/AVC
title_full Desenvolvimento da arquitetura dos codificadores de entropia adaptativos CAVLC e CABAC do padrão H.264/AVC
title_fullStr Desenvolvimento da arquitetura dos codificadores de entropia adaptativos CAVLC e CABAC do padrão H.264/AVC
title_full_unstemmed Desenvolvimento da arquitetura dos codificadores de entropia adaptativos CAVLC e CABAC do padrão H.264/AVC
title_sort desenvolvimento da arquitetura dos codificadores de entropia adaptativos cavlc e cabac do padrão h.264/avc
publishDate 2014
url http://hdl.handle.net/10183/85463
work_keys_str_mv AT thielecristiano desenvolvimentodaarquiteturadoscodificadoresdeentropiaadaptativoscavlcecabacdopadraoh264avc
AT thielecristiano integratedarchitecturedevelopmentofcavlcandcabaccontextadaptiveentropyencodersforh264avc
_version_ 1718942261871378432