A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Autores Bruno Holanda Rodrigo Camarotti Rodrigo Pimentel

Apresentações semelhantes


Apresentação em tema: "Autores Bruno Holanda Rodrigo Camarotti Rodrigo Pimentel"— Transcrição da apresentação:

1 Autores Bruno Holanda Rodrigo Camarotti Rodrigo Pimentel Rômulo Bruno Centro de Informática – UFPE Projeto Héracles

2 2 O Projeto Implementação das funcionalidades básicas de um analisador de sinais e espectro. –O que é um analisador de sinais e espectro? Dispositivo usado para medir, visualizar e analisar sinais elétricos e examinar a composição espectral de formas de ondas elétricas, acústicas ou ópticas. –Como? »Com algumas funcionalidades de um osciloscópio »Usando a Fast Fourier transform (FFT) para colocar a forma de onda no domínio da freqüência.

3 3 Por que um analisador ? Análises Médicas –EEG, ECG, EMG, EOG,... –Defeitos na retina Análise das vibrações de instrumentos musicais Detecção de Aromas –Uso FFT para reconhecer padrões para identificar subtâncias químicas.

4 4 Por que um analisador ? Geologia –Medir e armazenar ondas sísmicas Processamento de sinal digital Comunicações Astronomia Óptica

5 5 O Analisador

6 6 Recebe sinais analógicos de entrada e dá como saída uma representação digital de 8 bits desse sinal. Circuito Analógico

7 7 O conversor A/D utilizado foi o ADC0804 que possui algumas restrições –Ocasionaram o adicionamento de alguns dos módulos mostrados na figura anterior –Converte sinais com amplitude entre 0 e 5 volts. Em função dessa restrição um circuito de deslocamento(Displacement) foi adicionado na entrada do circuito –O conversor tem um tempo de conversão de 100µs, ou seja ele possui uma freqüência de 10kHz. Passa–baixa com uma freqüência de corte em torno de 3kHz. Restrições do conversor A/D

8 8 Usado para podermos lidar com sinais de pequena amplitude –Facilitando assim a conversão desse sinais, já que sinais de baixa amplitude dificultariam a conversão pelo conversor A/D. –Amplificação de 6 vezes a amplitude do sinal de entrada. Amplificador

9 9 Funciona no modo free–running –Começa uma conversão e, assim que a termina, inicia outra sem a necessidade de qualquer comando O resultado da conversão é um inteiro de 8 bits, que é passado para o FPGA Conversor A/D

10 10 Dip Switches Falta de dip switches no FPGA utilizado –Construído um circuito que possui três switches, necessários para a entrada do sistema.

11 11 O Controle Fluxo de projeto

12 12 Modelagem Comportamental Descreve as funcionalidades do projeto (algoritmo) Independente de tecnologia e arquitetura de implementação Não descreve FSM ou recursos, pois isso é feito pela síntese comportamental. A síntese comportamental possibilita a automação do processo de síntese de circuitos digitais Aumentando a produtividade Diminuindo erros Proporcionando a exploração de várias arquiteturas.

13 13 O Cynthesizer Ferramenta de síntese comportamental SystemC comportamental Verilog RTL sintetizável Voltado para aplicações orientada a algoritmos e que não tenham predominância de entradas e saídas condicionais Módulos nos quais dados de entrada são processados por algum algoritmo conhecido (ex.: FFT) e então repassados a um outro circuito

14 14 O Cynthesizer Mesmo testebench para todos o níveis de abstração –Comportamental, SystemC RTL e Verilog RTL Possibilita otimizações de latência e/ou de área, sem mudanças no código fonte

15 15 As Otimizações Duas maneiras para especificar as otimizações: –Diretivas Incluir no código SystemC para afetar partes específicas do mesmo –Linhas de comando Especificar globalmente para atingir o projeto como um todo Especificar para uma específica configuração de síntese comportamental

16 16 As Otimizações Dicas de como otimizar o programa mudando algumas partes do código.

17 17 As Otimizações CYN_DEFAULT_INPUT_DELAYUsada para especificar o delay no qual os dados na entrada estão válidos CYN_FLATTENFaz com que o Cynthesizer implemente um array como registradores ao invés de como memórias CYN_PROTOCOLThis directive is not a directive for optimization; it is used to indicate to Cynthesizer that a section of code is cycle- accurate. Cycle-accurate protocols are modeled in SystemC to move data into and out of the design. So this protocol ensures that behavioral design and RTL implementation correctly operate in the same testbench.

18 18 As Otimizações --sched_aggressive_2Optimize the control logic, creating data path parts out of the control statements and additional processing to reduce the area. --sched_asapCreating the shortest possible schedule regardless of the number of functional units needed --lsb_trimmingIs used to determine which library parts or data path components would be most beneficial --unroll_loopsRemoving unused least significant bits through --dpopt_autoDirects Cynthesizer to implement an optimized gate-level part for a specific block of code

19 19 As Otimizações RTL* Changing the code ,4 --sched_aggressive_ dpopt_auto lsb_trimming unroll_loops sched_asap CYN_FLATTEN *Unit:  m² RTL* *Unit:  m² Behavioral*RTL* *Unit: ns RTL* Changing the code unroll_loops dpopt_auto sched_asap CYN_FLATTEN *Unit: ns Latência Área

20 20 A Prototipação Foi usada ferramentas da Altera,o Quartus II 4.1 e o FPGA Altera Stratix II EP2S60F672C5ES Total ALUTs8,930 (18%) Total pins51 Total memory bits225, 86 DSP block 9-bit elements8 Clock64.9 ns Frequency15.4 MHz FPGA 50MHz Com o uso de um divisor de frequência Frequência 12.5MHz Clock 80ns

21 21 A Paralela Pinos utilizados: 2 – 9 -> para receber dados wait: sent_data data strobe: display_ready –> ground. Modo EPP:

22 22 Proteção da Paralela Restringi o valor da corrente que é passada para a paralela –Utilização do buffer 74HC244N que apenas recebe um sinal (0 ou 5 volts) e o repassa com um valor de corrente que a paralela aceita.

23 23 O Protocolo de Handshake Alta freqüência de trabalho do FPGA (~15MHz). Leitura da paralela no modo EPP tem taxa de transferência na faixa de 500KB/S a 2MB/S. Dispositivos trabalham em freqüências distintas. Necessidade de transmissão assíncrona. Controle preciso para troca de informações entre a paralela e o FPGA.

24 24 O Protocolo de Handshake Display_ready: interface pronta para receber dados Sent_data: dados enviados pelo FPGA Data: byte enviado pelo FPGA.

25 25 O Protocolo Funcional Define semântica para os dados enviados pelo FPGA. Dados possíveis: (0x00) modo trigger, (0x20) sensibilidade vertical, (0x40) base de tempo, (0x60) posição trigger, (0x80) amostras, (0xC0) nível trigger, (0xE0) modo FFT.

26 26 A Interface Ilustrar os resultados obtidos no processamento do FPGA Prover uma maior usabilidade para o usuário Melhor visualização do sinal em relação aos displays convencionais

27 27 A Interface Modo automático – onda senoidal Iniciar Captu ra Segund os / Divisão Volts / Divisã o Modo Trigg er


Carregar ppt "Autores Bruno Holanda Rodrigo Camarotti Rodrigo Pimentel"

Apresentações semelhantes


Anúncios Google