Escolar Documentos
Profissional Documentos
Cultura Documentos
Embarcados:
Microcontroladores
Prof. Protsio
Laboratrio de Microengenharia/DEE/CEAR/UFPB
Norma Tcnica (Standard)
De acordo com o INMETRO (Instituto Nacional de
Metrologia, Qualidade e Tecnologia), uma norma
tcnica :
um documento aprovado por uma instituio reconhecida,
que prev, para um uso comum e repetitivo, REGRAS,
DIRETRIZES ou CARACTERSTICAS para os produtos
ou processos e mtodos de produo conexos, e cuja
observncia no obrigatria.
Tambm pode incluir prescries em matria de
terminologia, smbolos, embalagem, marcao ou
etiquetagem aplicveis a um produto, processo ou mtodo
de produo, ou tratar exclusivamente delas.
Standard
Em cincia e tecnologia, a palavra inglesa
standard utilizada com pelo menos dois
significados diferentes:
Como um regulamento tcnico (RT) ou uma norma
tcnica (NT)
a grande diferena entre RT e NT reside na obrigatoriedade de
aplicao do primeiro.
Como um padro de medio.
Norma Tcnica (Standard)
Existem vrios tipos de standard. Exemplos:
Technical standard. A standard that describes the characteristics
of applying accumulated technical or management skills and
methods in the reation of a product or performing a service.
Component standard. A standard that describes the
characteristics of data or program components.
Description standard. A standard that describes the
characteristics of product information or procedures provided to
help understand, test, install, operate, or maintain the product.
Design standard. A standard that describes the characteristics of
a design or a design description of data or program components.
Measurement standard. A standard that describes the
characteristics of evaluating a process of product.
Method standard. A standard that describes the characteristics of
the orderly process or procedure used in the engineering of a
product or performing a service.
Standards em Sistemas Embarcados
Considere o modelo arquitetural abaixo.
Camada de Aplicativos
Camada de Hardware
Source L6
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
Linguagem de programao interpretadas
Um subclasse das linguagem de programao
Interpretadas so as linguagens de script:
Exemplos: PHP, Perl, Python, JavaScript, HTML,
S e1e2 e3 en
Um evento pode ser:
Chamada de um comando
Chamada de uma funo
Uma configurao, etc.
O uso de script facilita a reexecuo de rotinas.
Exemplo: um arquivo bath (do DOS ou do Linux) um
script.
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
O uso de linguagem de scripts adiciona um
componente na arquitetura do Sistema
Embarcado: o INTERPRETADOR.
O interpretador um componente de software que
processa scripts (linhas de cdigo fonte) on-the-fly.
Camada de Aplicativos
Interpretador
Camada de Hardware
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
Exemplo de interpretadores:
Arquitetura de um sistema embarcado com a camada
de aplicao contendo um browser e interpretadores
Interpretador JavaScript e HTTP
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
Todas linguagens de script so interpretadas
Mas nem toda linguagem interpretada so de
script.
Exemplo:
Linguagem JAVA
Incorpora compilao e interpretao
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
Linguagem JAVA
Esquema de compilao na mquina host
Processador Java
Camada de Hardware
JVM part of System layer, i.e., JVM complied in application, i.e.,
Skelmirs Cee-J, Esmertec/Insignias Esmertecs Jbed, Kava KavaVM,
Jeode and Jbed, Taos Intent, IBMs J9
JVM in Hardware, i.e, ARMs Kavas KavaVM
Gazelle, Ajiles aj100
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
Linguagem JAVA
Uma JVM tem impacto o projeto de sistemas
embarcados em:
Tamanho
Velocidade, e
Funcionalidade.
Uma JVM contm primariamente:
As classes integradas ao JVM
Mquina de execuo (execution engine) que executa o cdigo
java
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
Componentes de uma JVM
Classes integradas ao JVM
Mquina de execuo
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
Componentes de uma JVM
Classes integradas ao JVM
So bibliotecas compiladas de byte code e so comumente
denominadas de JAVA APIs
Java APIs permitem ao programador executar funes do
sistema e reuso de cdigo
Aplicativos em Java requerem o uso de Java API classes
juntamente com seu prprio cdigo.
As APIs diferem de acordo com a aplicao e podem incluir:
Gerenciamento de memria,
Suporte de rede
Suporte grfico, etc.
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
Componentes de uma JVM
Classes integradas ao JVM
Exemplos de APIs para dois padres de java embarcado
pJava JVM APIs (Personal Java)
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
Componentes de uma JVM
Classes integradas ao JVM
Exemplos de APIs para dois padres de java embarcado
J2ME (Java 2 Micro Edition)
J2ME JVM
(User Interface)
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
Componentes de uma JVM
Padres de java embarcado
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
Componentes de uma JVM
Mquina de execuo (Execution Machine)
Em geral, composta de:
Colletor de Lixo (garbage collector, GC)
Desalocar memria no necessria
Unidade de processamento de byte code
Interpreta o byte code em cdigo de mquina.
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
.NET Compact Framework
uma proposta de Microsoft que permite aplicativos
escritos em C#, Visual Basic e JavaScript serem
executados em dispositivos embarcados.
O cdigo fonte nessas linguagens so convertidos em
uma linguagem intermediria independente de
plataforma:
MSIL (Microsoft Intermediate Language)
Exemplos de linguagem de programao que
afetam a arquitetura do Sistema Embarcado
.NET Compact Framework
Standards e Redes
Rede
Uma rede um conjunto de mquinas autnomas e
interconectadas.
Sistema embarcado em rede
Em certas aplicaes, um sistema embarcado precisa
se comunicar com um outro sistema (mquina host, um
servidor, outro sistema embarcado, etc.)
Para isso, ento preciso ter um esquema de rede.
Para a comunicao preciso:
Sistema de interconexo comum entre os dispositivos
Padres so
Protocolo de rede para interoperabilidade. extremamente
importante.
Por que?
Standards e Redes
A princpio, o projetista de sistemas embarcados
deve conhecer:
A distncia entre os dispositivos
O meio fsico a ser utilizado
Arquitetura geral da rede
Standards e Redes
As redes podem ser:
Homognea se todos as mquinas por ela
interconectadas so idnticas.
Caso contrrio, heterognea.
Redes heterogneas demandam padronizao:
Em nvel de hardware (tenses, frequncias, etc.)
Em nvel de software (por exemplo, representao de
dados e formatao de mensagens).
Standards e Redes
Distncia entre os dispositivos
Em geral, as redes podem ser:
Redes Locais (LAN: Local Area Network) (< 100 m)
Interconectam mquinas que esto nas proximidades uma das outras.
Por exemplo: no mesmo prdio, na mesma sala, etc.
Tipicamente, par tranado metlico empregado como meio fsico.
Redes de Campus (CAN: Campus Area Network) (<10 km)
Interconectam mquinas em nvel de campus (fbrica, universidade, etc.).
Tipicamente so compostas de vrias LANs interligadas por uma rede de
alto desempenho (backbone) baseada em fibra ptica.
Redes Metropolitanas (MAN: Metropolitan Area Network) (5 - 100 km)
Interconectam mquinas e LANs em nvel regional
Redes de Longa Distncia (WAN: Wide Area Network)
Interconectam mquinas e/ou LANs que esto distribudos em uma
grande rea geogrfica (em nvel nacional, continental, ou at mundial
(como a Internet).
Standards e Redes
Meio fsico
Em geral, os meios fsicos podem ser classificados como:
Guiados
No-Guiados
Wireless
Barramento
Estrela
Camadadesistema
CamadadeHardware
...
MeioFsico
Standards e Redes
Modelo OSI (Open Systems Interconnection)
um modelo aberto de interconexo de dispositivos
em rede.
Foi criado em 1980 pelo ISO (International Organization
for Standardization)
Normaliza a interconexo em sete camadas de rede:
Camada fsica
Camada de enlace de dados
Camada de rede
Camada de transporte
Camada de seo
Camada de apresentao
Camada de aplicao
Standards e Redes
Modelo OSI (Open Systems Interconnection)
Mquina1 Mquina2
Protocolo da camada de aplicao
Aplicao Aplicao
Protocolo da camada de apresentao
Apresentao Apresentao
Protocolo da camada de seo
Seo Seo
Interface entre
camadas Protocolo da camada de transporte
Transporte Transporte
Protocolo da camada de rede
Rede Rede
Protocolo da camada de enlace
Enlace Enlace
Protocolo da camada fsica
Fsica Fsica
MeioFsico
Standards e Redes
Modelo OSI (Open Systems Interconnection)
Distribuio das camadas
na arquitetura da mquina
Application Layer
Application Software Layer
Presentation Layer
Session Layer
Transport Layer
System Software Layer
Network Layer
Data-Link Layer