Medidor Online De Temperatura Y Humedad De Bajo Consumo

Total Page:16

File Type:pdf, Size:1020Kb

Medidor Online De Temperatura Y Humedad De Bajo Consumo Medidor online de temperatura y humedad de bajo consumo Estudiante: Jesús Santiago Fernández Prieto “Ingeniería Técnica de Informática de Sistemas” Consultor: Jordi Bécares Ferrés 11 de Junio de 2013 When I read commentary about suggestions for where C should go, I often think back and give thanks that it wasn't developed under the advice of a worldwide crowd. (D. Ritchie) A mi familia, novia y amigos. 2 Resumen Para este proyecto se ha diseñado un dispositivo con capacidad de conexión a Internet a través de un punto de acceso WIFI para el envío de datos y alertar en caso de posibles temperaturas y humedades críticas, definidas con un valor mínimo y un máximo. El diseño de este dispositivo se ha hecho teniendo en cuenta el reducir el consumo de energía para maximizar autonomía. El dispositivo está basado en una mota LPC1769 que posee un procesador Cortex-M3 de ARM el cual ejecuta nuestro programa desarrollado. Este programa hace uso del sistema operativo FreeRTOS (Free Real Time Operating System) que facilitará y nos asegurará estabilidad. La mota llevará conectada un chip WiFly que se usará para poder conectarnos por WiFi al punto de acceso. Cuenta además con un sensor SHT15 que permite, a la mota, tomar las mediciones de temperatura y humedad relativa. Estos serán posteriormente enviados al servidor. En caso de que en alguno de esos valores esté fuera del rango de seguridad se avisará al usuario a través de dos leds conectados también a la mota. Se le puede configurar una dirección de correo electrónico donde se enviarán alertas para enviar un correo al usuario advirtiéndole de un posible problema. De este modo se permite la supervisión remota. Para recopilar los datos y mostrarlos interactivamente se dispone de un servicio web en el cual se recibe los datos y se presentan, al usuario, gráficas con la evolución de los valores de temperatura y humedad relativa en el tiempo. Este servicio web puede supervisar varios dispositivos diferentes al mismo tiempo, e incluso diferentes redes. También desde el servicio web se puede configurar el intervalo de toma de datos (en minutos) y los límites de seguridad de temperatura y humedad, así como la dirección de email a la que se enviarán los avisos de alarma. Palabras clave: LPC1769, mota, WiFly, SHT15, SHT1x, empotrados, ARM Cortex M3, C, FreeRTOS, JTAG, Google App Engine, Java 3 Índice Resumen ....................................................................................................................................... 3 Índice ............................................................................................................................................. 4 Tabla de Figuras ............................................................................................................................ 6 1. Introducción ............................................................................................................................... 8 1.1 Justificación .................................................................................................................... 9 1.2 Descripción del proyecto ............................................................................................... 10 1.3 Objetivos del TFC ............................................................................................................... 10 1.4 Enfoque y Método seguido ................................................................................................. 11 1.2 Planificación ....................................................................................................................... 13 1.6 Recursos empleados .......................................................................................................... 15 1.7 Productos obtenidos ........................................................................................................... 20 1.8 Descripción de los otros capítulos de la memoria ................................................................ 20 2. Antecedentes ........................................................................................................................... 21 2.1 Estado del arte ................................................................................................................... 21 2.2 Estudio de mercado ............................................................................................................ 23 3. Descripción funcional ............................................................................................................... 27 3.1 Sistema total ....................................................................................................................... 27 3.2 PC ...................................................................................................................................... 28 3.3 Mota ................................................................................................................................... 29 4. Descripción detallada ............................................................................................................... 31 4.1 Programa principal .............................................................................................................. 32 4.1.3 Envío de datos a Internet ................................................................................................. 34 4.2 UARTIO .............................................................................................................................. 35 4.3 WIFLY ................................................................................................................................ 37 4.4 Server................................................................................................................................. 38 4.5 SHT1X................................................................................................................................ 39 4 4.6 LED .................................................................................................................................... 42 4.7 Bajo consumo ..................................................................................................................... 43 5. Viabilidad técnica ..................................................................................................................... 46 5.1 Puntos fuertes del proyecto ................................................................................................ 46 5.2 Puntos débiles del proyecto ................................................................................................ 47 7. Valoración económica .............................................................................................................. 48 8. Conclusiones ........................................................................................................................... 49 8.1 Propuesta de mejoras ......................................................................................................... 49 8. 2 Autoevaluación .................................................................................................................. 49 9. Glosario ................................................................................................................................... 51 10. Bibliografía ............................................................................................................................. 54 11. Anexos ................................................................................................................................... 55 11.1 Manual del usuario ........................................................................................................... 55 11.2 Cómo compilar el código con LPCXpresso ........................................................................ 57 11.3 Cargar el código en la memoría Flash de nuestro LPC1769 .............................................. 60 5 Tabla de Figuras Figura 1 Medidor online de temperatura y humedad de bajo consumo............................................ 8 Figura 2 Diagrama de Gantt de la planificación inicial ................................................................... 13 Figura 3 Diagrama de Gantt de la planificación final ..................................................................... 14 Figura 4 Breadboard .................................................................................................................... 15 Figura 5 LPC1769 ........................................................................................................................ 15 Figura 6 WiFly RN-XV 802.11b/g ................................................................................................. 16 Figura 7 Adaptador DIP para XBee .............................................................................................. 16 Figura 8 CP2102 .......................................................................................................................... 16 Figura 9 SHT15............................................................................................................................ 17 Figura 10 Diodo led ...................................................................................................................... 17 Figura 11 Cables hembra-hembra ................................................................................................ 17 Figura 12 Zócalos de conexión....................................................................................................
Recommended publications
  • Reconfigurable Embedded Control Systems: Problems and Solutions
    RECONFIGURABLE EMBEDDED CONTROL SYSTEMS: PROBLEMS AND SOLUTIONS By Dr.rer.nat.Habil. Mohamed Khalgui ⃝c Copyright by Dr.rer.nat.Habil. Mohamed Khalgui, 2012 v Martin Luther University, Germany Research Manuscript for Habilitation Diploma in Computer Science 1. Reviewer: Prof.Dr. Hans-Michael Hanisch, Martin Luther University, Germany, 2. Reviewer: Prof.Dr. Georg Frey, Saarland University, Germany, 3. Reviewer: Prof.Dr. Wolf Zimmermann, Martin Luther University, Germany, Day of the defense: Monday January 23rd 2012, Table of Contents Table of Contents vi English Abstract x German Abstract xi English Keywords xii German Keywords xiii Acknowledgements xiv Dedicate xv 1 General Introduction 1 2 Embedded Architectures: Overview on Hardware and Operating Systems 3 2.1 Embedded Hardware Components . 3 2.1.1 Microcontrollers . 3 2.1.2 Digital Signal Processors (DSP): . 4 2.1.3 System on Chip (SoC): . 5 2.1.4 Programmable Logic Controllers (PLC): . 6 2.2 Real-Time Embedded Operating Systems (RTOS) . 8 2.2.1 QNX . 9 2.2.2 RTLinux . 9 2.2.3 VxWorks . 9 2.2.4 Windows CE . 10 2.3 Known Embedded Software Solutions . 11 2.3.1 Simple Control Loop . 12 2.3.2 Interrupt Controlled System . 12 2.3.3 Cooperative Multitasking . 12 2.3.4 Preemptive Multitasking or Multi-Threading . 12 2.3.5 Microkernels . 13 2.3.6 Monolithic Kernels . 13 2.3.7 Additional Software Components: . 13 2.4 Conclusion . 14 3 Embedded Systems: Overview on Software Components 15 3.1 Basic Concepts of Components . 15 3.2 Architecture Description Languages . 17 3.2.1 Acme Language .
    [Show full text]
  • Architecture of 8051 & Their Pin Details
    SESHASAYEE INSTITUTE OF TECHNOLOGY ARIYAMANGALAM , TRICHY – 620 010 ARCHITECTURE OF 8051 & THEIR PIN DETAILS UNIT I WELCOME ARCHITECTURE OF 8051 & THEIR PIN DETAILS U1.1 : Introduction to microprocessor & microcontroller : Architecture of 8085 -Functions of each block. Comparison of Microprocessor & Microcontroller - Features of microcontroller -Advantages of microcontroller -Applications Of microcontroller -Manufactures of microcontroller. U1.2 : Architecture of 8051 : Block diagram of Microcontroller – Functions of each block. Pin details of 8051 -Oscillator and Clock -Clock Cycle -State - Machine Cycle -Instruction cycle –Reset - Power on Reset - Special function registers :Program Counter -PSW register -Stack - I/O Ports . U1.3 : Memory Organisation & I/O port configuration: ROM RAM - Memory Organization of 8051,Interfacing external memory to 8051 Microcontroller vs. Microprocessors 1. CPU for Computers 1. A smaller computer 2. No RAM, ROM, I/O on CPU chip 2. On-chip RAM, ROM, I/O itself ports... 3. Example:Intel’s x86, Motorola’s 3. Example:Motorola’s 6811, 680x0 Intel’s 8051, Zilog’s Z8 and PIC Microcontroller vs. Microprocessors Microprocessor Microcontroller 1. CPU is stand-alone, RAM, ROM, I/O, timer are separate 1. CPU, RAM, ROM, I/O and timer are all on a single 2. designer can decide on the chip amount of ROM, RAM and I/O ports. 2. fix amount of on-chip ROM, RAM, I/O ports 3. expansive 3. for applications in which 4. versatility cost, power and space are 5. general-purpose critical 4. single-purpose uP vs. uC – cont. Applications – uCs are suitable to control of I/O devices in designs requiring a minimum component – uPs are suitable to processing information in computer systems.
    [Show full text]
  • Extracting and Mapping Industry 4.0 Technologies Using Wikipedia
    Computers in Industry 100 (2018) 244–257 Contents lists available at ScienceDirect Computers in Industry journal homepage: www.elsevier.com/locate/compind Extracting and mapping industry 4.0 technologies using wikipedia T ⁎ Filippo Chiarelloa, , Leonello Trivellib, Andrea Bonaccorsia, Gualtiero Fantonic a Department of Energy, Systems, Territory and Construction Engineering, University of Pisa, Largo Lucio Lazzarino, 2, 56126 Pisa, Italy b Department of Economics and Management, University of Pisa, Via Cosimo Ridolfi, 10, 56124 Pisa, Italy c Department of Mechanical, Nuclear and Production Engineering, University of Pisa, Largo Lucio Lazzarino, 2, 56126 Pisa, Italy ARTICLE INFO ABSTRACT Keywords: The explosion of the interest in the industry 4.0 generated a hype on both academia and business: the former is Industry 4.0 attracted for the opportunities given by the emergence of such a new field, the latter is pulled by incentives and Digital industry national investment plans. The Industry 4.0 technological field is not new but it is highly heterogeneous (actually Industrial IoT it is the aggregation point of more than 30 different fields of the technology). For this reason, many stakeholders Big data feel uncomfortable since they do not master the whole set of technologies, they manifested a lack of knowledge Digital currency and problems of communication with other domains. Programming languages Computing Actually such problem is twofold, on one side a common vocabulary that helps domain experts to have a Embedded systems mutual understanding is missing Riel et al. [1], on the other side, an overall standardization effort would be IoT beneficial to integrate existing terminologies in a reference architecture for the Industry 4.0 paradigm Smit et al.
    [Show full text]
  • Lecture #3 PIC Microcontrollers
    Integrated Technical Education Cluster Banna - At AlAmeeria ‎ © Ahmad © Ahmad El E-626-A Real-Time Embedded Systems (RTES) Lecture #3 PIC Microcontrollers Instructor: 2015 SPRING Dr. Ahmad El-Banna Banna Agenda - What’s a Microcontroller? © Ahmad El Types of Microcontrollers Features and Internal structure of PIC 16F877A RTES, Lec#3 , Spring Lec#3 , 2015 RTES, Instruction Execution 2 Banna What is a microcontroller? - • A microcontroller (sometimes abbreviated µC, uC or MCU) is a small computer on a single integrated circuit © Ahmad El containing a processor core, memory, and programmable input/output peripherals. • It can only perform simple/specific tasks. • A microcontroller is often described as a ‘computer-on-a- chip’. RTES, Lec#3 , Spring Lec#3 , 2015 RTES, 3 Microcomputer system and Microcontroller Banna based system - © Ahmad © Ahmad El RTES, Lec#3 , Spring Lec#3 , 2015 RTES, 4 Banna Microcontrollers.. - • Microcontrollers are purchased ‘blank’ and then programmed with a specific control program. © Ahmad El • Once programmed the microcontroller is build into a product to make the product more intelligent and easier to use. • A designer will use a Microcontroller to: • Gather input from various sensors • Process this input into a set of actions • Use the output mechanisms on the microcontroller to do something useful. RTES, Lec#3 , Spring Lec#3 , 2015 RTES, 5 Banna Types of Microcontrollers - • Parallax Propeller • Freescale 68HC11 (8-bit) • Intel 8051 © Ahmad El • Silicon Laboratories Pipelined 8051 Microcontrollers • ARM processors (from many vendors) using ARM7 or Cortex-M3 cores are generally microcontrollers • STMicroelectronics STM8 (8-bit), ST10 (16-bit) and STM32 (32-bit) • Atmel AVR (8-bit), AVR32 (32-bit), and AT91SAM (32-bit) • Freescale ColdFire (32-bit) and S08 (8-bit) • Hitachi H8, Hitachi SuperH (32-bit) • Hyperstone E1/E2 (32-bit, First full integration of RISC and DSP on one processor core [1996]) • Infineon Microcontroller: 8, 16, 32 Bit microcontrollers for Spring Lec#3 , 2015 RTES, automotive and industrial applications.
    [Show full text]
  • 1999 Embedded Systems Programming Subscriber Study
    A complete CMP embedded package 1999 Embedded Systems Programming Subscriber Study Mailed out 1,500 returned undeliverable 45 Base 1,455 returned unusable 17 returned usable 410 Total returned 427 Total preliminary report response rate: 29.3% (Conducted by Wilson Research Group) 1999 ESP Subscriber Study Survey Coverage • Programming Languages & • RTOSes/Kernals Host Operating Systems • Compilers • MCUs/Embedded MPUs • Software Debuggers • DSPs • Software Configuration • Memories Management Tools • Software Protocols/Stacks • Single Board Computers • Web Products/Tools • Intellectual Property • In-Circuit Emulators • FPGAs/CPLDs • Logic Analyzers • HW/SW Co-Design • Oscilloscopes • Embedded Systems Work • Device programmers Environments 160+ Questions Market & Mind Share Programming Language Trends 1997 1998 1999 C 80.7% 81.4% 79.0% Assembly 70.4% 70.1% 61.0% C ++ 35.9% 39.4% 46.6% Visual Basic 13.0% 16.2% 14.4% Pascal 4.2% 2.6% 2.0% Ada 6.4% 4.9% 6.1% Java 6.1% 7.0% 9.3% HDL / VHDL 6.1% 5.2% 6.6% Basic 12.5% 9.3% 8.5% Forth 3.4% 2.3% 2.2% eC++ - - .7% Base: 409 1997 345 1998 1997- 1999 ESP Subscriber Studies 410 1999 Have you used an object-oriented methodology for your embedded designs in the last 12 months? Yes…………………. 47.3% Are you considering an object-oriented methodology in the next 12 months? Yes…………………. 69.0% Base: 410 1999 ESP Subscriber Study Which of the following object-oriented programming methodologies have you used for your embedded designs? OMT/UML 44.8% Booch 31.4% Shlaer-Mellor 16.5% SDL 5.7% ROOM 2.1% S/ART 1.0% Base:
    [Show full text]
  • 16/32 BIT MICROCONTROLLER TOSHIBA TLCS-900 Family
    TLCS-900 16/32 BIT MICROCONTROLLER TLCS-900 Family TOSHIBA TOSHIBA CES_16BIT_V1.2 * TLCS-900 CPU-CORE LINE UP R4400 R4600 64-bit R5900 R3900 32-bit R3000A R1900 TLCS-900/H2 16-bit 68000 ASSP TLCS-900/L1 TLCS-900/H 68HC000 TLCS-900/L TLCS-900 8-bit 68HC11 TLCS-870 Std/ X/ C TLCS-90 Z80 ASSP 68HC05 4-bit TLCS-47E/47/470470A ALLIANCETOSHIBA ORIGINAL ALLIANCE TOSHIBA CES_16BIT_V1.2 * TLCS-900 The Family Key Features •CPU-core : 16/32 Bit • High-speed processing, ➨ Min. inst. exec. time: ➨200ns (@10MHz) - TLCS-900,900/L ➨160ns (@12.5MHz) - TLCS-900/H,900/L1 ➨ 50ns ((@20MHz) - TLCS-900/H2 •Large linear address space (16M bytes) • Powerful instruction set ➨ Regular instruction sets and many addressing modes •Many bit-processing operations • Powerful real-time processing ➨ using register banks •High-speed data transfer using µDMA • For systems using both 8- and 16-bit buses ➨ dynamic bus sizing function TOSHIBA CES_16BIT_V1.2 * TLCS-900 CPU CORES TOSHIBA CES_16BIT_V1.2 * TLCS-900 The Road Map [MIPS] 4 times TLCS-900/H2 performance of TLCS-900/H 10 • High performance TLCS-900/H TLCS-900/L1 TLCS-900 * TLCS-900,900/L,900/H devices will be • Mnemonic TLCS-900/L object compatible with TLCS-900/H2 1 Compatible • Standard • Low Power Family. PERFORMANCE TLCS-90 Z80 • Upward Compatible 8-bit 16-bit 32-bit TOSHIBA CES_16BIT_V1.2 * TLCS-900 The Family Key Features ITEM H2 H & L1 Stand.& L Max. operating 20 MHz 12.5 MHz 10 MHz frequency (external) (@10 MHz) (@25 MHz) (@20 MHz) Min.
    [Show full text]
  • Antisleep Alarm
    www.final-yearproject.com PROJECT REPORT ON ANTISLEEP ALARM Submitted as partial fulfilment of award of BACHELOR OF TECHNOLOGY DEGREE Session 2011-2012 In ELECTRICAL AND ELECTRONICS ENGINEERING By ABHISHEK KUMAR 0819421001 KAMLESH KUMAR 0819421020 SATYAVIR SINGH 0719421048 Under guidance of : Miss. Niharika singh H. R. INSTITUTE OF TECHNOLOGY, GHAZIABAD Estd. 2005 (AICTE Approved) AFFILATED TO GAUTAM BUDDH TECHNICAL UNIVERSITY, LUCKNOW PROJECT REPORT ON ANTISLEEP ALARM Submitted as partial fulfilment of award of BACHELOR OF TECHNOLOGY DEGREE Session 2011-2012 In ELECTRICAL AND ELECTRONICS ENGINEERING By ABHISHEK KUMAR 0819421001 Under guidance of : Miss. Niharika Singh H. R. INSTITUTE OF TECHNOLOGY, GHAZIABAD Estd. 2005 (AICTE Approved) AFFILATED TO GAUTAM BUDDH TECHNICAL UNIVERSITY, LUCKNOW DECLARATION I hereby declare that the work being presented in this report entitled “ANTISLEEP ALARM” is an authentic record of my own work carried out under the supervision of “Miss. NIHARIKA SINGH ”. The matter embodied in this report has not been submitted by us for the award of any other degree. Signature of student Date:................... (ABHISHEK KUMAR) This is to certify above statement made by the candidate(s) is correct to the best of my knowledge. Signature of HOD Signature of Supervisor Sukhbir singh Niharika Dept. Of E.N. Dept. Of E.N. Date.................. FRONT PIECE ACKNOWLEDGEMENT ACKNOWLEDGEMENT This is the reflection i am showing to reveal the sense of regard and reverence we are having for our HOD Mr. Sukhbir singh , for appointing the projectchosen by us and for his invaluable inspiration and motivation which help us to successfully complete the project. Our sincere thanks to our project guide Miss.
    [Show full text]
  • Verktyg För Inbyggda System Linux Och Windows CE Mognar
    ELT012223Q4nyckeln 03-01-20 14.15 Sida 22 (1,1) 22 MARKNADSNYCKELN NR 1 • 24 JANUARI 2003 Verktyg för inbyggda system Linux och Windows CE mognar ■ INBYGGDA SYSTEM Microsofts operativsystem Win- dukter. De är halvfärdiga plattfor- Sista steget är att glömma pro- modellverktyg från Rational, IAR Förra årets nyckel klagade över dows CE har mognat och finns som mar, inklusive support och rekom- gramspråket helt. Ett exempel är och Telelogic. brist på Linuxrepresentation. startpaket från Hectronics. Opera- menderad hårdvara, för olika till- Matlab-verktygen från Comsol, I nyckeln finns också den andra Den åtgärdas nu av nykomlingar- tivsystemet levereras också via lämpningsområden. som genererar C-kod från grafiska extremen, verktyg som kryper na Montavista och Sysgo. svenska Microsoft. Verktyg som genererar program- beskrivningar. Inom modellspråket mycket nära hårdvaran. Svenska Mercurys MC/OS har försvunnit kod på egen hand fungerar numera UML är kodgenerering nu standar- simulatorn Simics bygger modeller Montavista har etablerat en nisch ur nyckeln i och med att Mercury även för realtidstillämpningar. Pro- diserad. Ericsson har under ett par av enstaka processorer med sådan för Linux inom telekom och börjar flyttat den svenska representatio- grammeringsutvecklingen har gått år jobbat med automatgenerad kod effektivitet att det blir realistiskt att nu också visa intresse för hem- nen till Storbritannien. från maskinspråk till assembler, till från UML, med enligt egen uppgift simulera programkörning i system elektronik. Sysgos modulära Linux, VxWorks och Tornado från C, till C++/Java. Flexibiliteten ökar mycket positiva erfarenheter. I av ickeexisterande hårdvara. ElinOS, är populär i Tyskland. Wind River har svällt till flera pro- och antalet buggar minskar.
    [Show full text]
  • Microcomputers
    2010-8 PRODUCT GUIDE Microcomputers http://www.semicon.toshiba.co.jp/eng Toshiba Microcomputers Protecting the global environment is all-important, and more and more electronic appliances are being designed with this end in view. In these circumstances, sensing, power electronics and energy management technologies hold the key to addressing the needs of electronics manufacturers. When it comes to these technology areas, we recognize that it is necessary to improve accuracy and performance and, at the same time, reduce power consumption. Toshiba's product offerings now include mixed-signal controllers and those featuring a high-performance ARM CPU core. Additionally, Toshiba provides system solutions that combine these microcontrollers with a wide array of semiconductor devices such as power drivers. Microcomputer Lineup TX ARM Core-Based Microcontrollers Mixed-Signal Controllers TX 09 ARM926EJ-STM TX 03 MSC ARM CortexTM-M3 TLCS Family TX TX System RISC TX 49 TLCS-900 TX 39 MIPSIII* MIPSII* TLCS-870 TX 19 MIPSII* & MIPS16 *These are original cores developed independently by Toshiba based on each MIPS architecture. 8 bit 16 bit 32 bit 64 bit Contents Toshiba Microcomputers ..................................................................... 2 to 3 Toshiba’s ARM Core-Based Microcontrollers ............................................. 4 Toshiba’s ARM Core-Based Microcontroller Development Environment.... 5 Toshiba’s ARM Core-Based Microcontroller Part Number List ............ 6 to 7 Toshiba TX System RISC..........................................................................
    [Show full text]
  • SDCC Compiler User Guide
    SDCC Compiler User Guide SDCC 3.0.1 $Date:: 2011-03-02 #$ $Revision: 6253 $ Contents 1 Introduction 6 1.1 About SDCC.............................................6 1.2 Open Source..............................................7 1.3 Typographic conventions.......................................7 1.4 Compatibility with previous versions.................................7 1.5 System Requirements.........................................8 1.6 Other Resources............................................9 1.7 Wishes for the future.........................................9 2 Installing SDCC 10 2.1 Configure Options........................................... 10 2.2 Install paths.............................................. 12 2.3 Search Paths.............................................. 13 2.4 Building SDCC............................................ 14 2.4.1 Building SDCC on Linux.................................. 14 2.4.2 Building SDCC on Mac OS X................................ 15 2.4.3 Cross compiling SDCC on Linux for Windows....................... 15 2.4.4 Building SDCC using Cygwin and Mingw32........................ 15 2.4.5 Building SDCC Using Microsoft Visual C++ 6.0/NET (MSVC).............. 16 2.4.6 Windows Install Using a ZIP Package............................ 17 2.4.7 Windows Install Using the Setup Program.......................... 17 2.4.8 VPATH feature........................................ 17 2.5 Building the Documentation..................................... 18 2.6 Reading the Documentation....................................
    [Show full text]
  • Fast Symmetric Crypto on Embedded Cpus
    Fast symmetric crypto on embedded CPUs Peter Schwabe Radboud University Nijmegen, The Netherlands June 5, 2014 Summer School on the design and security of cryptographic algorithms and devices for real-world applications Embedded CPUs 4-bit CPUs 16-bit CPUs I TMS 1000 I TI MSP430 I Intel 4004 I Microchip Technology PIC24 I Atmel MARC4 I Toshiba TLCS-47 32-bit CPUs I ARM11 8-bit CPUs I ARM Cortex-M∗ I Atmel AVR I ARM Cortex-A∗ I Intel 8051 I Atmel AVR32 I Microchip Technology PIC I MIPS32 I STMicroelectronics STM8 I AIM 32-bit PowerPC I STMicroelectronics STM32 Fast symmetric crypto on embedded CPUs2 Symmetric crypto Fast symmetric crypto on embedded CPUs3 Symmetric crypto Fast symmetric crypto on embedded CPUs3 Symmetric crypto Fast symmetric crypto on embedded CPUs3 Symmetric crypto Fast symmetric crypto on embedded CPUs3 Symmetric crypto Fast symmetric crypto on embedded CPUs3 I Throughput: number of instructions (of a certain type) we can do per cycle I Latency of an instruction: number of cycles we have to wait before using the result I Latency and throughput are determined by the microarchitecture I Optimizing software in assembly means: I Find good representation of data I Choose suitable instructions that implement the algorithm I Schedule those instruction to hide latencies I Assign registers efficiently (avoid spills) Optimizing crypto I This talk: optimize for speed I Implement algorithms in assembly I Available instructions and registers are determined by the target architecture Fast symmetric crypto on embedded CPUs4 I Latency
    [Show full text]
  • Microcontroller 1 Microcontroller
    Microcontroller 1 Microcontroller A microcontroller (sometimes abbreviated µC, uC or MCU) is a small computer on a single integrated circuit containing a processor core, memory, and programmable input/output peripherals. Program memory in the form of NOR flash or OTP ROM is also often included on chip, as well as a typically small amount of RAM. Microcontrollers are designed for embedded applications, in contrast to the microprocessors used in personal computers or other general purpose applications. Microcontrollers are used in automatically controlled products and devices, such as automobile engine control systems, implantable medical devices, remote controls, The die from an Intel 8742, an 8-bit microcontroller that includes a CPU running at 12 MHz, 128 bytes of RAM, 2048 office machines, appliances, power tools, toys and other bytes of EPROM, and I/O in the same chip. embedded systems. By reducing the size and cost compared to a design that uses a separate microprocessor, memory, and input/output devices, microcontrollers make it economical to digitally control even more devices and processes. Mixed signal microcontrollers are common, integrating analog components needed to control non-digital electronic systems. Some microcontrollers may use four-bit words and operate at clock rate frequencies as low as 4 kHz, for low power consumption (single-digit milliwatts or microwatts). They will generally have the ability to retain functionality while waiting for an event such as a button press or other interrupt; power consumption while sleeping (CPU clock 2 ATmegaxx micro controllers and most peripherals off) may be just nanowatts, making many of them well suited for long lasting battery applications.
    [Show full text]