• No results found

O PPLEVD EFFEKT AV L UFTFORSVARETS MENTORPROGRAM

A arquitetura descrita na secção anterior representa a base para uma larga gama de aplicações de codificação de vídeo, entre as quais, broadcasting e câmaras de vídeo. Contudo, várias alterações podem ser realizadas no sentido de satisfazer os requisitos específicos de cada aplicação, o que vai determinar os fatores como custo, potência de consumo e desempenho. No Anexo G encontra-se a Tabela G.1 que apresenta as caraterísticas principais de alguns SoC direcionados para a codificação de vídeo disponíveis no mercado. A análise desta permite verificar que as opções vão desde arquiteturas que incluem apenas um processador principal e um acelerador de hardware, até aquelas que também incluem DSPs ou processadores de múltiplos núcleos. Por ser uma indústria altamente competitiva, alguns fabricantes não disponibilizam muitos detalhes acerca dos componentes e da arquitetura, de modo que a caraterização realizada nesta tabela, é mais detalhada para alguns casos que noutros.

34

Existe uma grande variedade de fabricantes deste tipo de produto, sendo que alguns os produzem para uma determinada aplicação específica, enquanto outros apresentam maior flexibilidade neste campo.

A Texas Instruments, por exemplo, possui uma família de processadores otimizados para sistemas de vídeo digital, denominada por DaVinci. Contudo, dentro desta família, os produtos estão divididos em 5 categorias em função da constituição da unidade de processamento. Esta pode ser constituída, portanto, por apenas um processador ARM9, um processador ARM Cortex-A8, uma DSP, uma DSP e um processador ARM9, ou uma DSP e um processador ARM Cortex-A8, com diferentes combinações resultando em produtos com diferentes caraterísticas [41].

Os produtos que integram apenas uma DSP são adequados a aplicações em que os requisitos em termos de qualidade de vídeo sejam reduzidos, uma vez que usam apenas o codificador H.264 BP, e suportam resoluções só até D1 (720x480). Por outro lado suportam uma gama de temperaturas relativamente grande, o que os torna adequados para aplicações industriais. As outras opções já suportam uma maior variedade de codecs, bem como maiores resoluções. As melhores caraterísticas estão associadas aos produtos que usam uma DSP e um processador ARM Cortex-A8, pois possuem as maiores frequências de processamento, maior número de aceleradores em hardware e uma grande variedade de interfaces de comunicação, permitindo alcançar resolução 1080p a 60 fps com o padrão H.264, bem como diversas funcionalidades de processamento de vídeo e imagem. Tais caraterísticas fazem desta opção adequada para uma grande gama de aplicações.

Já a Ambarella desenvolve câmaras de uso geral como também produtos para aplicações mais específicas, nomeadamente soluções para broadcast, para cenários de desporto, para câmaras automotivas e câmaras IP de segurança. Todos os produtos integram pelo menos um processador ARM, uma DSP para imagem e uma DSP para vídeo, sendo que a restante constituição bem como as funcionalidades suportadas variam de acordo com a aplicação específica do produto.

A solução para broadcast é a mais lenta em termos de velocidade de processamento (apenas 256 MHz), não suporta ligação Wi-Fi, e não contém tantos periféricos como os outros produtos. Contudo suporta codificação H.264 e MPEG-2 de resoluções até 1080p a 60 fps, possui 4 interfaces para MPEG-4 TS, e executa diversas funcionalidades de transcodificação, controlo de taxa de bits, conversão de espaços de cor, entre outras. Também possui um módulo para criptografia.

35

Já para aplicações de câmaras automotivas os requisitos são muito diferentes, de modo que as caraterísticas do SoC também o são. Este suporta a codificação de resoluções até 3 MP a 30 fps, a codificação simultânea de 2 streams de vídeo 1080p a 30 fps, possui múltiplas portas de saída de vídeo, um maior número e variedade de periféricos, não suporta descodificação, tendo sido as funcionalidades de transcodificação substituídas por filtros de outras funcionalidades de processamento de imagem. Naturalmente que o CPU utilizado é mais rápido, e a tecnologia de 32 nm que possui permite aumentar o desempenho e reduzir o consumo de potência.

As soluções para câmaras IP de segurança apostam em interfaces flexíveis para a entrada de vídeo, quer a partir de sensores quer de sinais de vídeo, de modo a suportar diferentes tipos de câmaras. A codificação de vídeo pode ser realizada simultaneamente sobre um máximo de 8 streams, cuja resolução pode ir até 4K UHD a 30 fps, utilizando os padrões H.264 e MJPEG. Para além disso, permitem uma grande variedade de funcionalidades para processamento de imagem e para análise de vídeo inteligente, permite o controlo da taxa de bits, e possui diversos periféricos de armazenamento e de comunicação, incluindo ethernet e para ligação sem fios. Para tal, estas soluções podem contar com processadores de dois núcleos e com um módulo para criptografia, além das DSPs de imagem e vídeo. Utilizam tecnologia 45 nm e 32 nm, permitindo o consumo de menos de 1,5 W para codificação de vídeo 1080p a 60 fps, e menos de 2,5 W para vídeo de resolução 4K UHD.

As soluções para câmaras para desporto são as mais exigentes em termos de processamento, uma vez que o elevado movimento a que estão associadas implicam que os dados tenham de ser tratados a uma maior velocidade de modo a ser obtida boa qualidade de vídeo. A frequência dos seus processadores pode ir até 1 GHz. O SoC iOne Smart, por exemplo, está preparado para integração num dispositivo móvel Android, e é composto por um processador ARM Cortex-A9 de dois núcleos, um processador ARM11, duas DSPs de vídeo e uma DSP de imagem [42].

O SoC mais adequado a vídeos com elevado movimento, o A9, tem uma constituição semelhante, mas possui uma DSP para vídeo e um módulo para criptografia, ao invés de duas DSPs para vídeo, e ainda assim está associado a um reduzido consumo de potência (menos de 1 W para codificar vídeo 1080p a 60 fps, e menos de 2 W para codificar vídeo de resolução 4K UHD), uma vez devido à tecnologia 32 nm. A capacidade da interface para o sensor suportar um fluxo de até 700 MP/s permite a captura de vídeo de resolução 4K UHD a 30 fps, 1080p a 120

36

fps e 720p a 240 fps. Para além disso, de entre as opções para a entrada de vídeo estão incluídas duas interfaces para sensores. Possui diversas interfaces para memória e para periféricos, e suportam várias funcionalidades para processamento dos dados dos sensores e para processamento de imagem.

Como se pode ver na Tabela G.1 no Anexo G, no mercado também já existem arquiteturas que integram processadores ARM de 4 núcleos, naturalmente, com velocidades de processamento superiores, para além de diversos aceleradores em hardware, a custos relativamente baixos. Alguns SoC mais recentes, como o Snapdragon 805 e Snapdragon 810 da Qualcomm, ou o MT6595M e MT6795 da MediaTek, para além de possuírem processadores de 8 núcleos, e permitirem frequências de até 2,7 GHz, até já possuem suporte em hardware para codificação e descodificação de vídeo com o mais recente padrão de codificação de vídeo (H.265, ou HEVC), para resoluções até ultra HD. O MT6595M está disponível em smartphones [43], [44], enquanto o Snapdragon 805 encontra-se implementado em dispositivos como smartphones, tablet, e num smart glass [45].

As plataformas de desenvolvimento permitem tirar proveito das capacidades dos processadores que integram. Contudo, a análise de diversos produtos permitiu verificar-se que nalguns casos nem todas são aproveitadas, mas por outro lado, existem casos em que a plataforma implementa capacidades e funcionalidades que o processador só por si não suporta. Um exemplo disso é a BeagleBoard-xM que suporta ligação Ethernet 10/100 Mb/s, apesar do DM3730 não possuir interface para tal.

37

3. Compressão de imagem e vídeo num processador ARM