Please enable JavaScript.
Coggle requires JavaScript to display documents.
Models of Computation and Languages for Embedded System Design (Jantsch e…
Models of Computation and Languages for Embedded System Design (Jantsch e Sander)
Introdução
Hardware/Software
Modelagem
Índices de
performance
Propriedades
que precisam ser satisfeitas
Especificação
funcional
Restrições
(sobre os índices de performance)
Interfaces
Documentação
Especificação detalhada, sem submeter-se a implementações e/ou interfaces
A escolha das implementações é feita em uma fase posterior
Esse processo de separação entre projeto e implementação aumenta a velocidade de implementação e diminui as chances de erro
Computação e comunicação
Ortogonalização de preocupações
"When, the computations of tasks are designed
and optimized, abstract but well defined communication services should be used but not designed."
Latência mínima/máxima
Função e Arquitetura
Separação
Tempo
Sistemas embarcados são reativos e precisam responder rápida e continuamente ao seu ambiente para alcançarem suas restrições temporais
Linguagens de programação (?)
Verilog
VHDL
Validação
Custos de validação continuam crescendo
O design dos processos precisam garantir que a implementação final do sistema esteja de acordo com os requerimentos do mesmo, através de processos de validação.
Abstração
Especificação do modelo
Especificação de requisitos
Refinamento
Propósito de especificação: alto nível de abstração
Propósito de implementação: deve ser abstrata o suficiente para progredir com o desenvolvimento do projeto sem maiores restrições e ainda assim estar dentro dos requerimentos
Modelos de computação
Explicitude
nenhuma
paralelismo
paralelismo e decomposição
paralelismo, decomposição e mapeamento
paralelismo, decomposição, mapeamento e comunicação
paralelismo, decomposição, mapeamento, comunicação e sincronização
Modelos
Tempo Contínuo
Tempo Discreto
Síncrono
Loops de feedback em modelos Síncronos e Cronometrados
Não cronometrado
Data Flow Process Networks
Rendezvous-based
Heterogêneos
Micro-serviços?
Propósito dos modelos
Tempo Contínuo
Tempo Discreto
Síntese?
Síncrono
Não-cronometrado
Relação entre Linguagens de Design e Modelos de Computação
Propósito Geral
Síncronas
Concorrência
Semântica que permite paralelismo
Sincronia: divide o tempo em "instantes discretos"
Data flow
Rendezvous
Frameworks Heterogêneos
Sucesso das linguagens
Análise e síntese
Infraestrutura