Evolução de Síntese de Alto Nível
Tópicos Avançados em Arquitetura de Computadores
Objetivo da Disciplina
2011.1 Prototipação de Circuitos Digitais 2
Resultado em FPGA App Java
HLS
Implementação HW
3
Structural Behavioral
Physical X’tor
Gate RTL
Block
Boolean FSM
Algorithm
GDSII
Placement
Floorplan High-Level
Synthesis
Fluxo de Projeto RTL
Fluxo de Projeto Altera
Necessidade de Produtividade
Síntese de Alto Nível
Curva de Aprendizado
Uso de Modelos de Alto Nível
Benefício da Automação: Exploração de Arquitetura
Exemplos de Exploração de Arquitetura
Consumo: x0.63 Área: > 27%
Otimizações de Aritmética
Problemas de Acesso de Memória
Problemas de Acesso de Memória
O Futuro de HLS
Existe Muito a Ser Feito em HLS
• Aumento da capacidade de produtividade – Lei de Moore
– Síntese Orientada a Objetos
• Melhoria na síntese de operações aritméticas
• Automação da alocação de memória
2011.1 Prototipação de Circuitos Digitais 19
Ferramentas Ainda não Estão Maduras
• Ferramentas e Linguagens ainda não maduras – SystemC
– C/C++
• Qual a avaliação de SystemVerilog?
• Qual a avaliação de Java?
2011.1 Prototipação de Circuitos Digitais 20
Uso de Linguagens de Alto Nível (C/C++)
Domínios de Clock Diferentes
2011.1 Prototipação de Circuitos Digitais 23
Tópico para Seminário
• Integração Automática de Blocos RTL
2011.1 Prototipação de Circuitos Digitais 24
Uso e Necessidades de High Level Design num Contexto de Pesquisa
• Implementação de Algortimos em hardware é uma tarefa tediosa
• Implementação de algoritmos deve explorar paralelismo
– Ganho de desempenho sem aumento de frequencia
• HLS
– Um algoritmo, várias implementações
• Uso de FPGA -> agilidade na validação do circuito em ambiente praticamente real
• Intervenção Humana
– Trade-off automação total x Interação com o projetista
– FSM e escalonamento devem ser transparentes para o projetista
2011.1 Prototipação de Circuitos Digitais 28
Aumento dos Custos
Histórico de HLS
Lições Aprendidas
Concorrência
Atividade
• Levantamento de Aplicações reais em FPGA baseadas em Síntese de Alto Nível
– Mercado – Problemas
– Ferramentas de Desenvolvimento – Tecnologias
2011.1 Prototipação de Circuitos Digitais 32