Curso de Inicialização Cientifica Apresentação de Sistemas Embarcados Alunos: Karan Sandes de Melo e Eron Santos Brunelli
Roteiro da Apresentação 1-Historia da informática 2-Sistemas embarcados 3-Processadores de propósito geral 4-Microcontroladores 5-Hardware embarcado Processador Memória Dispositivos de entrada e saída Coprocessadores 6-Porque estamos apresentamos Sistemas Embarcados?
O ábaco é um antigo instrumento de cálculo, Teve origem provavelmente na Mesopotâmia, há mais de anos. Ele é utilizado ainda hoje para ensinar às crianças as operações de somar e subtrair. 1-Historia da informática
Vítima de castração química por ser homossexual, Turing encontrou uma saída para sua desgraça pessoal com o suicídio em O cientista já era então o “pai da computação e da informática”. Foi ele que em 1930 concebeu a teoria de que a máquina era programável. Um descobrimento que muito ajudou o Governo Britânico durante a Segunda Guerra Mundial para decifrar os códigos nazistas 1-Historia da informática
O ENIAC começou a ser desenvolvido em 1943 durante a II Guerra Mundial para computar trajetórias táticas que exigissem conhecimento substancial em matemática, mas só se tornou operacional após o final da guerra. Sua capacidade de processamento era de operações por segundo; Criado na segunda guerra, tinha como principal finalidade cálculos balísticos; Possuía válvulas, de 160 kW de potência; Esta máquina não tinha sistema operacional e seu funcionamento era parecido com uma calculadora simples de hoje. O ENIAC, assim como uma calculadora, tinha de ser operado manualmente. A calculadora efetua os cálculos a partir das teclas pressionadas, fazendo interação direta com o hardware, como no ENIAC, no qual era preciso conectar fios, relês e sequências de chaves para que se determinasse a tarefa a ser executada. A cada tarefa diferente o processo deveria ser refeito. A resposta era dada por uma seqüencia de lâmpadas. 1-Historia da informática
O primeiro transistor (transfer + resistor) foi criado em 1947 na Universidade de Standford nos EUA, por John Bardeen, William Shockley e Walter Brattain, mas seu uso comercial só ocorreu a partir do final da década de 50. Os transistores vieram a substituir as válvulas. Não esquecer de Falar sobre CLP TRANSISTOR
1-Historia da informática O primeiro transistor (transfer + resistor) foi criado em 1947 na Universidade de Standford nos EUA, por John Bardeen, William Shockley e Walter Brattain, mas seu uso comercial só ocorreu a partir do final da década de 50. Os transistores vieram a substituir as válvulas. Não esquecer de Falar sobre CLP Inicio da Lógica TRANSISTOR
1-Historia da informática Em 1964, os circuitos integrados feitos de cilício permitiram o miniaturização de componentes eletrônicos. Isso tornou possível reduzir o tamanho e o preço dos computadores. Teve também consequentemente a melhoria de seu desempenho, conseqüentemente de seu poder e também de sua confiabilidade. O INTEL 4004 desenvolvido em 1971, foi o primeiro microprocessador, era o primeiro circuito integrado que incorpora todos os elementos de um computador em somente um caso: unidade calculadora, memória, controle do inputs/outputs. CIRCUITO INTEGRADO (MICROPROCESSADOR)
1-Historia da informática Conversão de valores analógicos (contínuos no tempo e na amplitude) em valores digitais (números binários) Onda sonora Onda elétrica analógica Valores binários (amostras temporais)
1-Historia da informática Relação de Valores V max = 7.5V 0V V 1.0V 1.5V 2.0V 2.5V 3.0V 3.5V 4.0V 4.5V 5.0V 5.5V 6.0V 6.5V 7.0V Conversão Analógico Digital t1t2t3 t tempo Entrada Analógica (V) Saída Digital Conversão Digital Analógico t1t2t3 t4 tempo Saída Analógica (V) Entrada Digital
2-Sistemas embarcados São sistemas computacionais que estão inseridos em máquinas ou em sistemas maiores Embutidos em equipamentos eletrônicos: – telefones celulares, vídeo-cassete, forno microondas,carros, automação de escritório.... Encontrado em quase todas as aplicações que necessitam de algum tipo de controle....
2-Sistemas embarcados produtos de consumo: – telefones celulares, pagers, câmaras digitais, vídeo- cassete, vídeo games portáteis, calculadores, etc; eletrodomésticos: – forno de microondas, secretárias eletrônicas, equipamentos de segurança, termostatos, máquinas de lavar e sistemas de iluminação;
2-Sistemas embarcados Automação de escritório: – máquinas de fax, copiadoras, impressoras e scanners; Automóveis: – controle de transmissão, injeção eletrônica, suspensão ativa, freio ABS.
2-Sistemas embarcados 2 Redes CAN 250Kbps 125Kbps 4 Redes baixa velocidade 10,4Kbps 18 ECUs
2-Sistemas embarcados Funcionalidade única, executada repetidamente Entrada/Saída intensivo Executa tarefas em paralelo Restrições de projeto mais rígidas: – Custo, tamanho, peso, desempenho, potência dissipada, etc. Tempo real: – O tempo para fornecer resultados é determinado pelo tempo que o ambiente pode esperar. – Sistemas em que têm aspectos temporais na especificação. Sistemas reativos – Reagem continuamente a estímulos externos
2-Sistemas embarcados Arquitetura de Hardware – Forte comunicação com o ambiente – Forte restrição de recursos, tamanho, potência, peso... Arquitetura de Software – Tratamento rápido de interrupção – Sistemas operacionais de tempo real – Softwares eficientes em tamanho e desempenho
2-Sistemas embarcados Crescimento das aplicações – Automóvel: 1995: U$ : U$ : 15% a 30% do custo de um veículo é com eletrônica – Domiciliar: 35 sistemas por residência em sistemas em 2000
2-Sistemas embarcados Segundo uma pesquisa recente da – 49%assembly – 33%C – 5%Basic – 3%Pascal – 9%outras linguagens A previsibilidade no uso de recursos e tempo de execução é fundamental para sistemas críticos
2-Sistemas embarcados Linguagens orientadas a objeto – ciclo de desenvolvimento mais rápido – melhores métodos de estruturação e modularização – reutilização de objetos – criação e destruição dinâmica de objetos, garbage collectors criam problemas para previsibilidade temporal e de alocação de memória – Java, não há um modelo definido para o escalonamento das threads. Inviabiliza tempo real
2-Sistemas embarcados C e Assembly – Excelente controle do hardware e do tempo de execução – Alta performance – Dificuldades no desenvolvimento – Assembly: Difícil modularização e reutilização
2-Sistemas embarcados Sistema embarcado é um dispositivo que possui um processador mas não é um computador de propósito geral. Definição
3-Processadores de propósito geral Um sistema construído com um microprocessador requer memória, entradas e saídas externas
4-Microcontroladores Um microcontrolador possui processador, memória, dispositivos de entrada e saída e outros elementos num único chip
4-Microcontroladores Microcontrolador Micro: pequeno Controlador: aplicações de controle Também chamados de controladores embarcados, pois, na maioria das vezes, são construídos dentro dos (ou embarcados em) sistemas que controlam
4-Microcontroladores Exemplo de aplicação Sistema de controle de temperatura de um forno Fonte: D. Ibrahim, PICBASIC Projects. Newnes, 2006c
4-Microcontroladores
Qual a arquitetura de hardware necessária para atender os requisitos das aplicações típicas de Sistemas embarcados?
Processador Computador com um conjunto complexo de instruções (CISC): – Muitas operações – Diferentes formatos e comprimentos de instruções Computador com um conjunto reduzido de instruções (RISC): – Menos instruções – Eficiência em processadores com pipeline 5-Hardware embarcado
Memória A memória armazena dados e instruções A CPU obtem instruções a partir da memória Arquiteturas: – von Neumann – Harvard
5-Hardware embarcado Arquitetura von Neumann
5-Hardware embarcado Arquitetura Harvard
5-Hardware embarcado von Neumann X Harvard A arquitetura Harvard permite acessos simultâneos a dados e instruções A maioria dos DSPs usa Harvard: – Maior largura de banda
5-Hardware embarcado Dispositivos de entrada e saída Tipicamente incluem algum componente não digital Interface com a CPU:
5-Hardware embarcado Coprocessadores Coprocessador: unidade funcional chamada através de instrução Exemplos – ARM: unidades de aritmética de ponto-flututante – DSPs 5509 e 5510: DCT/IDCT Interpolação de pixels Estimação de movimento
6-Porque estamos apresentamos Sistemas Embarcados?
Obrigado!