Escolar Documentos
Profissional Documentos
Cultura Documentos
● Resumo:
● Principais tecnologias envolvidas em processos de concepção e
síntese de Sistemas Digitais
● Tecnologias de circuitos integrados
● Tecnologias de processadores
● Interdependências entre as tecnologias de CIs e de processadores
● Tecnologias de projeto
● Desenvolvimento de sistemas digitais em dispositivos
reconfiguráveis
● Em RTL design
● Orientados a plataforma
1
Tecnologias de projeto de Sistemas Digitais
2
Tecnologias de circuitos integrados
3
Tecnologias de circuitos integrados
4
Tecnologias de circuitos integrados
● Completamente “customizadas” / VLSI
● Todas as camadas são otimizadas para uma particular
implementação digital
● Tais otimizações incluem:
● Alocação de transistores para minimizar comprimento de
interligações
● Tamanho dos transistores para otimizar as transmissões de
sinais
● Roteamentos mais adequados para as conexões internas
● Benefícios
● Desempenho excelente, tamanho reduzido, baixo consumo
● Desvantagens
● Longo tempo para mercado (time-to-marked), alto custo NRE,
5
Tecnologias de circuitos integrados
● Semi-customizadas /ASICS
● Camadas mais baixas estão completamente ou parcialmente
construídas e prontas para uso
● Para cada projeto basta determinar a localização dos blocos
lógicos e o roteamento das conexões entre eles
● Benefícios
● Bom desempenho, tamanho e custo de NRE menores
● Desvantagens
● Ainda requerem de semanas a meses para desenvolvimento
6
Tecnologias de circuitos integrados
● PLD (Dispositivos Lógicos Programáveis)
● Todas as camadas de integração já estão prontas
● Projetistas podem comprar CIs e ambientes de
desenvolvimento relativamente baratos
● Conexões no CI são criadas ou destruídas para implementar as
funcionalidades desejadas
● Popularização dos FPGAs (Field-Programmable Gate Arrays)
● Benefícios
● Reduzido Time-to-marked , baixo custo NRE (muito usado em
protótipos), rápido desenvolvimento, rapidez e facilidade de
síntese do circuito
7
Tecnologias de circuitos integrados
● PLD (Dispositivos Lógicos Programáveis)
● Desvantagens
● Se comparados aos CIs completamente custumizados, ainda
relativamente grandes, de custos unitários altos, lentos e de
mais alto consumo
● Esta realidade no entanto está sendo gradativamente
modificada graças as tecnologias de fabricação de hoje, que
já baixam da casa dos 22 nm.
8
Tecnologias de circuitos integrados
● Arquiteturas de PLDs
● SPLDs
● Dispositivos Lógicos Programáveis Simples
● CPLDs
● Dispositivos Lógicos Programáveis Complexos
● FPGAs
● Arranjos de Gates Programáveis no Campo
9
Tecnologias de processadores
10
Tecnologias de processadores
● Os Processadores variam em suas customizações de acordo com o
foco e o problema em questão a ser solucionado
● Para ilustrar este conceito pode-se considerar uma aplicação que
requer uma certa funcionalidade, representada por uma cruz,
sendo esta funcionalidade a soma dos elementos em um vetor M.
● Na prática, vários tipos de processadores podem implementar esta
funcionalidade, no entanto, sempre existe um que melhor
responde as métricas do projeto.
total = 0
for i = 1 to n loop
total += M[i]
end loop
11
Tecnologias de processadores
● Especificação RTL para os três tipos de processadores
13
Tecnologias de processadores
● Processadores de aplicação específica
● Processador programável otimizado para classes de aplicações com
características comuns
● Compromisso entre os processadores de propósito geral e os
dedicados
● Incorporam as famílias de microcontroladores e DSPs
● Principais características
● Memória de dados e de programa on chip, associada ao datapath e a
unidade de controle
● Datapath otimizado para aplicações específicas com a inclusão on
chip de unidades periféricas de funções especiais
● Benefícios
● Flexibilidade, bom desempenho, pequeno tamanho, pequeno
consumo, Baixo custo, pequeno time-to-marked e baixo NRE
14
Tecnologias de processadores
● Processadores dedicados
● Circuito digital projetado e prototipado para executar um único
programa ou tarefa
● Principais características
● Contém somente componentes necessários para execução do
programa ou tarefa requerida
● Normalmente, não possui memória de programa
● Benefícios
● Rápido, alto desempenho
● Baixo Consumo
● Tamanho reduzido
● Baixo custo para grandes quantidades (alto NRE)
15
Interdependência das tecnologias de CIs e processadores
● Com respeito as tecnologias de processadores e de circuitos integrados,
suas interdependências variam de acordo com a aplicação
● Em geral, qualquer tecnologia de processador pode ser mapeada por
qualquer tecnologia de circuito integrado
O uso de um processador Processador
de propósito
Processador O uso de um processador
de uso geral ASIP de propósito
geral
único de propósito único
provê ganhos em
provê ganhos em
Flexibilidade
Sustentabilidade Eficiência de
Custe NRE energia
Tempo de Performance
prototipagem Tamanho
Tempo de mercado VLSI Semi- Customizado Custo (para altos
Custo (para costumizado para a aplicação volumes)
pequenos volumes)
16
Tecnologias de projeto
17
Tecnologias de projeto
18
Tecnologias de projeto
19
Tecnologias de projeto
20
Tecnologias de projeto
21
Tecnologias de projeto
● Metodologia de projeto top-down Especificação formal a
nível de sistema
ESL
Especificação Algorítmica
a nível de processador
Especificação a nível de
transferência de registros (RTL)
Especificação Lógica ou
a nível de gates
Especificação a nível de
Circuitos
22
Tecnologias de projeto
23
Tecnologias de projeto
24
Tecnologias de projeto
● Metodologia de projeto top-down
● O desenvolvimento de um circuito digital “customizado” é
essencialmente um processo de refino e validação.
● O sistema deve ser gradualmente transformado a partir de sua
descrição abstrata de mais alto nível para layouts de máscaras
do produto final.
● Junto com cada refinamento, a função do sistema deve ser
validada para garantir que o produto final funcione
corretamente e que atenda as especificações e metas de
desempenho desejadas
25
Tecnologias de projeto
● Metodologia de projeto top-down
● Na etapa de especificação formal a nível de sistema, o
projetista procura descrever a funcionalidade desejada,
inicialmente numa linguagem natural e posteriormente fazendo
uso de modelos computacionais adequados a sua aplicação.
● O uso de modelos computacionais possibilita:
● Capturar sem ambiguidades as funcionalidades do sistema
● Verificar a validade das especificações funcionais com
relação às propriedades desejáveis do sistema
● Sintetizar parte da especificação sobre recursos arquiteturais
e de comunicação escolhidos
● Usar diferentes ferramentas para manipular diferentes
aspectos do modelo.
26
Tecnologias de projeto
● Metodologia de projeto top-down
● O refino da Especificação Formal a Nível de Sistema para a
Especificação Algorítmica a Nível de Processador é feita pela
distribuição de tarefas para serem executadas por
processadores orientados a programas.
● Neste nível de processador, o mais alto em abstração de
hardware, os blocos básicos de construção, conhecidos por
núcleos de propriedades intelectuais (ip cores), incluem
microprocessadores, DSPs ou microcontroladores, módulos de
memória, padrões de barramento e interfaces de barramento.
27
Tecnologias de projeto
● Metodologia de projeto top-down
● O refino da especificação a nível de processadores para uma
especificação a nível de transferência de registro é feita
convertendo-se o comportamento do sistema em um datapath
(ou caminho de dados) orientado por um circuito de controle
(ou mais especificamente por um máquina de estado) numa
ótica de RTL design (projeto a nível de transferência de
registros)
● Na construção do datapath, são utilizados blocos padrões de
circuitos combinacionais (como multiplexadores,
decodificadores e unidades aritméticas e lógicas) e sequenciais
(como registradores e contadores)
28
Tecnologias de projeto
● Metodologia de projeto top-down
● Após a especificação a nível de transferência de registro
encontra-se a especificação a nível lógico que consiste na
modelagem por equações Booleanas e na implementação com
o uso de portas lógicas e flip-flops (equivalentes a abordagem
convencional de projeto de circuitos combinacionais e
sequenciais vista em cursos de circuitos digitais tradicionais)
● Finalmente vêm o refino do projeto para as especificações a
nível de sua implementação a nível de circuito, consistindo de
uma netlist de componentes e do leiaut do produto.
29
Tecnologias de projeto
● Metodologia de projeto top-down
● Quadro resumo de características por níveis de abstração
Nível de Blocos típicos Representação Representação Descrição Descrição
Abstração do sinal no tempo comportamental Física
30
Tecnologias de projeto
● Metodologias de Projeto a Nível de Sistema Eletrônicos
● As bases das discussões sobre as necessidade de se projetar a
nível de sistema Eletrônicos (ESL/SLD) são segmentadas em
fatos tais como
● A crescente influência do Time-to-market na concepção da
maioria dos sistemas eletrônicos;
● O expressivo aumento na complexidade dos projetos de SoCs
, ultrapassando a capacidade de produzir do projetista e
gerando Gaps preocupantes entre complexidades de projeto x
produtividade
● A constatação de que os esforços de verificação estão
dominando os esforços de projeto
31
Tecnologias de projeto
● Metodologias de Projeto a Nível de Sistema
● As bases das discussões sobre as necessidade de se projetar a
nível de sistema (ESL/SLD) são segmentadas em fatos tais
como
● Projetos totalmente customizados custam muito caro
● A concepção RTL não é mais suficiente para enfrentar a
crescente complexidade dos projetos
● Os projetistas devem trabalhar em níveis mais altos de
abstração de projeto para superar as complexidades
crescentes dos SoCs
● Os sistemas devem ser projetados numa visão futura de reuso
32
Tecnologias de projeto
● Tendência na complexidade de projetos de systems on chip
33
Tecnologias de projeto
● Exemplo: Gaps em Complexidade de design x Produtividade nos
métodos de concepção de projeto RTL e ESL.
34
Tecnologias de projeto
● Princípios gerais básicos que regem as metodologias de projeto
ESL:
● (Re)Uso de núcleos de propriedade intelectual (ip cores)
● Orientação à plataforma com focos distintos para o Projeto
Funcional e para o Projeto da Arquitetura
35
Modalidades de disponibilização de IPs
Flexibilidade, Portabilidade,
Reusibilidade
Soft
IP
Firm
IP Hard
IP
Previsibilidade, Otimização
de área de silício, Custo
36
Tecnologias de projeto
● Metodologia de Projeto baseado em Plataforma ou Meet-in-the-
Middle
37
Tecnologias de projeto
● Metodologia de Projeto baseado em Plataforma
38
Metodologia de Projeto Baseado em Plataforma:
etapas e procedimentos
Plataformas reconfiguráveis padrões
Stratix 1,
I, II ou III
1. Seleção do
Virtex II
Ciclone
Xilinxy
I ou III
Altera
Altera
ou IV
“target device”
2. Seleção de componentes
da plataforma que irão UART CPU BUS ETHERNET PIO MEMÓRIA
compor o “Target System”
39
Metodologia de Projeto Baseado em Plataforma:
etapas e procedimentos
Master 1 Master 2 Master 3 ... Master n
BUS ARBITER
3. Definição de uma
“Architecture Template”
Slave 1 Slave 2 Slaver 3 ... Slave j
Gerar as
permutações
necessárias na
plataforma
Master 1 Master 2
4. Definição a partir das CPU Ethernet
mutações da adequada
“System Architecture ”
BUS ARBITER
40
Metodologia de Projeto Baseado em Plataforma:
etapas e procedimentos
Master 1 Master 2
CPU Ethernet
BUS ARBITER
Funcionalidades
Slave 1 Slave 2 Slaver 3 Slave 4
de Software UART PIO 1 PIO 2 Memória
Aplicações
Exemplos
41
Tecnologias de projeto
● Compromissos (tradeoff) característicos em performance de
projetos RTL e PBD.
42
Tecnologias de projeto
43