Você está na página 1de 10

Universidade Federal do Maranho UFMA

Centro de Cincias Exatas e Tecnologia CCET


Engenharia Eltrica
talo Faby Fonseca Costa
Instrumentao eletrnica

Relatorio- plataforma de computao SoC.

So Lus
05/062016
Sumrio

1) Definio de computao embarcada

2) Exemplos de sistemas embarcados

3) Modelos de computao embarcada

4) Microprocessadores e FPGA (arranjo de portas programvel


em campo)

5) SoC (Sistemas-em-um-Chip)

6) Xilinx Zynq-7000

7) Demonstrao: criando um simples acelerador de clculo


utilizando o kit de desenvolvimento ZedBoard.

8) Oportunidades de pesquisa e desenvolvimento tecnolgico.


1. Definio de computao embarcada
A computao embarcada estuda os computadores embutidos que so encontrados
nos mais diversos equipamentos eletro-eletrnicos, tais como,
mquinas de lavar roupas, televisores, celulares, automveis e outros. Esses dispositivos
embutidos executam aplicaes bem especficas e normalmente o usurio no percebe
que est usando um computador. Nessa rea, um dispositivo muito utilizado o micro
controlador, que um tipo de microprocessador construdo objetivando-se auto-
suficincia ("computador em um chip") e melhor custo-benefcio. Estima-se que uma
residncia de classe mdia contenha um ou dois equipamentos com microprocessador e
uma a duas dezenas de equipamentos com micro controlador. A programao dos micro
controladores pode ser realizada em linguagem de baixo nvel (assembly) ou de alto
nvel (geralmente em "C") e requer conhecimentos sobre os recursos disponveis no
dispositivo.

O objetivo do estudo da Computao Embarcada capacitar o aluno para que ele


entenda os sistemas embarcados baseados em microcontroladores e seja capaz de
program-los. Alm disso, o aluno ser capaz de entender o funcionamento e elaborar
rotinas de programao para conexo do microcontrolador com dispositivos de entrada
e sada (displays, teclados, sensores, etc). As aulas prticas utilizaro simuladores para
testar os programas no prprio PC, e mdulos para desenvolvimento (hardware) onde
os programas sero transferidos via porta serial e testados rodando em um
microcontrolador real.

Exemplos de sistemas embarcados


Avinicos, como sistemas de controle inercial, controle de vo e outros
sistemas integrados nas aeronaves, como sistemas de orientao de msseis
Telefones celulares e centrais telefnicas
Equipamentos de redes de computadores, como roteadores, hubs, switches e
firewalls Impressoras
Dispositivos de armazenamento (discos rgidos e disquetes)
Controladores da traco, do motor e do antibloqueio em automveis:
freios ABS e controle de trao Calculadoras
Eletrodomsticos, como fornos microondas, mquinas de lavar, aparelhos
de TV, DVD players
Equipamentos mdicos
Videogames
PDAs Tratores e implementos agrcolas
Urna eletrnica
Modelos de computao embarcada

Microprocessadores e FPGA (arranjo de portas programvel em


campo)

FPGA ou field-programmable gate array (ou ainda matriz de portas


programveis) um dispositivo lgico programvel que suporta a implementao de
circuitos digitais.

A estrutura geral de uma FPGA est ilustrada na Figura 1, onde os trs componentes
bsicos de um FPGA se fazem presentes: os retngulos representam blocos de entrada e
sada, os quadrados brancos representam blocos lgicos e os azuis Switches.
Hoje j so comuns blocos de memria, DSP e at mesmo um processador ARM
na arquitetura de FPGAs.

Os blocos lgicos so arranjados em uma matriz bidimensional, e os fios de


interconexo so organizados como canais de roteamento horizontais e verticais entre as
linhas e colunas do bloco lgico. Os canais de roteamento contm fios e switches
programveis que permitem que os blocos lgicos se conectem de vrias formas
diferentes.

Cada bloco lgico em FPGA tipicamente tem um pequeno nmero de entradas e


sadas, um dos blocos lgicos normalmente se chama LookUp Table(LUT) que contm
clulas de armazenamento que so usadas para implementar uma pequena funo
lgica. Cada clula capaz de guardar um valor lgico, 0 ou 1. O valor guardado
produzido como sada da clula de armazenamento. LUTs de vrios tamanhos podem
ser criadas, onde o tamanho definido pelo nmero de entradas.

Resumidamente so diversas funes lgicas, memria, DSP, blocos de Entradas


e Sadas, que podem se conectar de diversas formas diferentes para representar um
hardware descrito em uma linguagem de descrio de hardware (HDL) ou em um
diagrama de blocos.

O arquivo de entrada, seja ele HDL ou diagrama de blocos sintetizado por uma
ferramenta normalmente fornecida pelo fabricante do FPGA e gerado um arquivo
binrio com a configurao de hardware que aquele FPGA deve adotar.

A utilizao do Fpga
FPGA utilizado em diversos setores da industria, est presente em setores onde
desempenho, paralelismo e tempo real so cruciais. Por se tratar de hardware, possvel
realizar uma instruo por ciclo de clock! Voc pode ter, por exemplo, N clculos
rodando em paralelo e entregando o resultado no mesmo pulso de clock. Algo
completamente impossvel para um software realizar.

Para citar alguns mercados em que FPGA forte:

Setor eltrico, para processamento digital de sinal em tempo real;


Setor de telecom, em switches e roteadores de alto desempenho;
Setor de multimdia, para processamento de imagens em tempo real e alto
desempenho;
Setor militar;
Setor automotivo, dentre outros.

Basicamente sempre que alto processamento, paralelismo e tempo real forem


necessrios, a utilizao de um FPGA deve ser considerada. Segundo a pesquisa
realizada pela UMB 31% dos projetos dos seus leitores que participaram da pesquisa
utilizam FPGA em seu produto.
SoC (Sistemas-em-um-Chip)

System-on-a-chip (SoC), System On Chip (SOC) ou, em portugus, sistema-


em-um-chip, se refere a todos os componentes de um computador, ou qualquer outro
sistema eletrnico, em um circuito integrado (chip). Ele pode conter funes digitais,
analgicas, mistas e, muitas vezes, de Radiofreqncia - RF; tudo em um.[1] Uma tpica
aplicao na rea de sistemas embarcados.[2]

As caractersticas de um SoC assemelham-se s de um micro controlador.


Normalmente, microcontroladores possuem menos que 100K de RAM (apenas poucos
KBytes), e freqentemente so sistemas de chip nico. Enquanto que o termo SoC
vrias vezes usado para processadores mais potentes, capazes de executarem programas
como o Windows ou o Linux, nas quais necessitam de memrias externas (flash, RAM)
para funcionarem, e que so usados com vrios perifricos acoplados. A grande maioria
dos sistemas que se rotulam System-on-chip, possuem uma conotao tcnica maior de
que a realidade: aumentam a integrao do chip para reduzir os custos de fabricao e
tornar disponveis sistemas mais compactos. Muitos so complexos demais para se
ajustarem em apenas um chip construdo com um processo otimizado para apenas uma
das funes do sistema.

Um SOC consiste tanto das ferramentas (hardware) descritas acima, e do


software controlando do micro controlador ou ncleos DSP, perifricos ou interfaces. O
fluxo de projeto para um SOC pretende desenvolver este hardware e software em
paralelo. A maioria dos SOCs so desenvolvidos a partir de blocos de hardware pr-
qualificados, para os elementos de hardware descritos acima, juntamente com os drivers
de software que controlam o sua operao. De particular importncia so as pilhas de
protocolos que orientam interfaces padro da indstria, como USB. Os blocos de
hardware so colocados em conjunto, utilizando ferramentas de CAD; Os mdulos do
software so integrados usando um ambiente de desenvolvimento de software.

Chips so verificados quanto sua exatido lgica antes de ser enviado para
fundio. Este processo chamado de verificao funcional e responsvel por uma
parcela significativa do tempo e energia gasta no ciclo da vida de design de chips
(embora a figura frequentemente citado de 70% provavelmente um exagero). Com o
crescimento da complexidade dos chips, as lnguas de verificao de hardware, como
SystemVerilog, SystemC e OpenVera esto sendo usados. Bugs encontrados na etapa de
verificao so relatados para o designer. Tradicionalmente, os engenheiros tm
utilizado simuladores de acelerao, emulao e/ou um prottipo de FPGA para
verificar e depurar tanto hardware e software para SoC para projetos prvios de tapeout.
Com alta capacidade e tempo de compilao rpida, acelerao e emulao so
poderosas tecnologias que proporcionam ampla visibilidade em sistemas. Ambas as
tecnologias, contudo, operar-se lentamente, a fim de MHz, que pode ser
significativamente mais lento - at 100 lento - SOCs que a frequncia de operao.
Acelerao e emulao de caixas tambm so muito grandes e caros em US $1M +.

Prottipos FPGA, ao contrrio, usam FPGAs diretamente para permitem que os


engenheiros validem e testem, ou perto de, frequncia de operao completa do sistema
com estmulos do mundo real. Ferramentas como Certus so usados para inserir sondas
no FPGA RTL que fazem sinal disponvel para observao. Isto usado para depurao
de hardware, firmware e software atravs de vrios FPGAs com capacidades
semelhantes s de um analisador lgico.

Aps depurar o hardware do SOC segue a fase de lugar e rota (Place and route)
do projeto de um circuito integrado ou ASIC antes de ser fabricado.

Xilinx Zynq-7000

Zynq-7000 All programvel SoC dispositivos (AP SoC) integrar a


programao de um processador baseado em ARM com a programao de um FPGA
hardware software, permitindo anlises chave e acelerao de hardware, enquanto
integrando CPU, DSP, ASSP e funcionalidade sinal misto em um nico dispositivo.
Zynq-7000 AP SoCs infundir inteligncia personalizada em sistemas embarcados de
hoje para atender s suas necessidades de aplicao exclusivas.

Mais inteligente, otimizado e mais soluo segura

ARM inovador + arquitetura FPGA para a diferenciao, anlise e controle


Extenso sistema operacional, middleware, pilhas, aceleradores e ecossistema IP

Vrios nveis de segurana de hardware e software

Inigualvel integrao, desempenho e potncia

Integrao entregar o de facto All plataforma programvel


o nvel de desempenho do sistema atravs de arquitetura otimizada

Arquitetado para entregar menor de energia do sistema

Produtividade comprovada
A maioria plataforma flexvel e escalvel para reutilizao mxima e melhor
TTM
ferramentas de design lderes da indstria, C / C ++, e Open CL abstraes de
design
Maior portflio de SW e HW ferramentas de design, SOMs, kits de design e
projetos de referncia

aplicaes

Advanced Driver Assistance Systems


endoscpio mdico
Baseband pequenas clulas
As cmeras profissionais
Viso de mquina
Demonstrao: criando um simples acelerador de clculo
utilizando o kit de desenvolvimento ZedBoard.

Em sala de aula foi possvel ver a compilao do sistema em VHDL para


dentro do Zynq 7000, a inteao era criar um acelerador de calculo, criar um
software que organizasse o FPGA para a funo necessria, sendo assim mais
rpido executar os clculos de multiplicao, visto que em forma de hardware
mais rpido fazer clculos do que em software.
O consumo de tempo e de energia otimizando quando o programa faz a
funo dentro do FPGA tornando mais rpido e mais econmico os clculos
necessrios.
Plataforma usada para programaao do sistema.