6s/página
Transcrição
6s/página
CE-703 CE-703 Programação Orientada a Objetos para Sistemas Embutidos Programação Orientada a Objetos para Sistemas Embutidos Prof. Paulo André Castro Carga Horária: 48 h. Data da última atualização:22/07/2011 Programação Orientada a Objetos para Sistemas Embutidos Pré-requisitos: Conhecimentos de programação e noções de arquitetura de computadores. Embedded systems= sistemas embarcados ou sistemas embutidos? (Oxford Dictionary) Embed: to fix something deeply and firmly in a mass of something. Examples: 1. Stone embedded in concrete. 2. The Idea became embedded in his mind Prof. Paulo André Castro www.comp.ita.br/~pauloac [email protected] Sala 110, IEC-ITA Planejamento Capítulo 1 - Introdução Apresentação do Curso Introdução a Software Embutido Exemplos de Sistemas Embutidos e Visão Geral da área Este conceito é muito mais próximo de embutido, que embarcado. Capítulo 2 - Apesar de o termo embarcado ser também utilizado em vários livros, acredito que o termo embutido é mais adequado e realça o conceito original de ter software e hardware intrinsecamente ligados. O termo embarcado realça o fator do software estar colocado em um dispositivo que de algum modo se move, o que não necessariamente é relevante.Talvez seja mais adequado, para software onde este aspecto é muito importante, como o software desenvolvido para sistemas aeronáuticos, automotivos ou navais. Paulo André Castro CE-703 / ITA Planejamento - 2 Revisão de Arquitetura de Computadores Arquitetura de Computadores Hardware Digital Processadores Sistemas de Memória Sistemas de E/S e Barramentos Paulo André Castro CE-703 / ITA Planejamento - 3 Capítulo 5 - Introdução a Sistemas Operacionais Embutidos Capítulo 3 - Introdução a Orientação a Objetos Introdução a Sistemas Operacionais Embutidos Análise e Exemplos de Sistemas e Plataformas para Sistemas Embutidos Classe, Objeto, Método,Herança, interfaces, polimorfismo, Encapsulamento e C++ e Java Templates Android, Embedded Linux, Java (J2ME), ... Multitarefa Capítulo 4 - Introdução a Padrões de Projeto para sistemas de Tempo Real e Embutidos Introdução a Padrões de Projeto Introdução a Sistemas de Tempo Real e Projeto de Sistemas Embutidos e de Tempo Real Padrões de Projeto para Sistemas Embutidos e Sistemas de Tempo Real Capítulo 6 Desenvolvimento de Software Embutido em C++ Capítulo 7 Desenvolvimento de Software Embutido em Java Capítulo 8 Desenvolvimento de Software Embutidos em ambiente aeronáutico Tendências Futuras em Desenvolvimento de Software Embutido Paulo André Castro CE-703 / ITA Paulo André Castro CE-703 / ITA 1 Referências Introdução Programming embedded systems in C and C++ Barr, M. Beijing : O'Reilly and Associates, 1999. Real-time design patterns : robust scalable architecture for real-time systems. Douglass, B.P. Boston, MA : Addison-Wesley, 2003. Professional Android Application Development. Meier, R. Wrox. 2007. Building Embedded Linux Systems.Yaghmour, K.; Jon Masters, Gilad BenYossef, Philippe Gerum. O’Reilly. 2008 Programminig for embedded systems : cracking the code New York, NY : Wiley, 2002. Embedded systems architecture : a comprehensive guide for engineers and programmers. Noergaard, T. Amsterdam : Elsevier, 2005. Embedded systems building blocks : complete and ready-to-use modules in C .Labrosse, J.J, San Francisco, CA : CMP, 2002 Paulo André Castro CE-703 / ITA Mercado para Processadores Embutidos Source: Embedded Systems Programming, May 1999 embedded microprocessors Motorola, ARM, MIPS, i960, x86, … 8-bit 1 billion 8-bit 1 billion 16-bit 1 billion 32-bit 250 million Only 4% of the total number 125 million PCs Intel, AMD Average car has about 15 microprocessors. Mercedes S-class: 63 microprocessors !! Paulo André Castro CE-703 / ITA Tecnologias Relacionadas a Sistemas Embutidos C, C++, Java Languages Embedded Real-Time Program Embedded RTOS Network + Protocol Real World Interfacing Human Computer Interaction Digital + Analog Circuit DSP Wireless Networks Paulo11André Castro Control Systems Sistema Embutido é um “pequeno” sistema computacional que é geralmente escondido em um equipamento (máquina, dispositivo eletro-eletrônico) para aumentar a inteligência do equipamento ou sua eficácia MARKET (2001) Este tipo de sistema envolve quase sempre hardware e software em desenvolvimento conjunto. Sistemas Embutidos ou Embarcados (Embedded Systems) podem ser chamados também de Smart Devices, Intelligent, or Automated Equipment. Paulo8André Castro PC´s !! CE-703 / ITA Uma pequena lista de exemplos de sistemas embutidos Anti-lock brakes Auto-focus cameras Automatic teller machines Automatic toll systems Automatic transmission Avionic systems Battery chargers Camcorders Cell phones Cell-phone base stations Cordless phones Cruise control Curbside check-in systems Digital cameras Disk drives Electronic card readers Electronic instruments Electronic toys/games Factory control Fax machines Fingerprint identifiers Home security systems Life-support systems Medical testing systems Paulo10André Castro Modems MPEG decoders Network cards Network switches/routers On-board navigation Pagers Photocopiers Point-of-sale systems Portable video games Printers Satellite phones Scanners Smart ovens/dishwashers Speech recognizers Stereo systems Teleconferencing systems Televisions Temperature controllers Theft tracking systems TV set-top boxes VCR’s, DVD players Video game consoles And the Video phones Washers and dryers list goes on and on . . . CE-703 / ITA Algumas Caracterísitcas de Sistemas Desktop, Servidor e Embutido VHDL Verilog Machine Fixed Point Intelligence Arithmetic Fonte: (Hennessy 2009) Smart Cards CE-703 / ITA Paulo André Castro CE-703 / ITA 2 Exemplo - Arquitetura PlayStation 2 Paulo André Castro CE-703 / ITA Exemplo - Telefone Celular Exemplo - Arquitetura SoC (System on a Chip) de uma Câmera Digital Paulo André Castro CE-703 / ITA DSP (Digital Signal Processor) A digital signal processor (DSP) is a special-purpose processor optimized for executing digital signal processing algorithms. Most of these algorithms, from time-domain filtering (e.g., infinite impulse response and finite impulse response filtering), to convolution, to transforms (e.g., Fast Fourier Transform, Discrete Cosine Transform), to even forward error correction encodings, all have as their kernel the same operation: a multiply-accumulate operation. To accelerate this, DSPs typically feature special-purpose hardware to perform multiply-accumulate (MAC). A MAC instruction of “MAC A,B,C” has the semantics of: “A = A + B * C”. Paulo André Castro CE-703 / ITA DSP (Digital Signal Processor) Paulo André Castro CE-703 / ITA The TI 320C55 Dois exemplos de DSPs: TMS320C55 series is a DSP family targeted toward battery-powered embedded applications The C55 is optimized for low-power, embedded applications. Its overall architecture is shown in Figure D.4. At the heart of it, the C55 is a seven-staged pipelined CPU. TI 320C55 Architecture: TMSVelociTI 320C6x series is a line of powerful, eightissue VLIW processors targeted toward a broader range of applications that may be less power sensitive Paulo André Castro CE-703 / ITA Paulo André Castro CE-703 / ITA 3 Sistema Embutido = Software & Hardware Sistema Embutido é um “pequeno” sistema computacional incorporado a um equipamento para aumentar a eficácia do mesmo. O projeto de um sistema embutido muitas vezes envolve projetar conjuntamente hardware & software Mesmo utilizando hardware pré-existente, o software embutido deve explorar ao máximo o potencial deste hardware (armazenamento e processamento) Portanto para desenvolver software embutido é fundamental conhecer a fundo como funciona um computador…É preciso entender Arquitetura de Computadores Paulo André Castro CE-703 / ITA 4
Documentos relacionados
Breve histórico da Evolução dos Computadores (leitura informativa
Breve histórico da Evolução dos Computadores (leitura informativa ) CES-25 – Arquiteturas para Alto Desmpenho Prof. Paulo André Castro [email protected] Sala 110 – Prédio da Computação www.comp.ita.br...
Leia mais