- Table View
- List View
Embedded Flash Memory for Embedded Systems: Technology, Design for Sub-systems, and Innovations
by Hideto HidakaThis book provides a comprehensive introduction to embedded flash memory, describing the history, current status, and future projections for technology, circuits, and systems applications. The authors describe current main-stream embedded flash technologies from floating-gate 1Tr, floating-gate with split-gate (1. 5Tr), and 1Tr/1. 5Tr SONOS flash technologies and their successful creation of various applications. Comparisons of these embedded flash technologies and future projections are also provided. The authors demonstrate a variety of embedded applications for auto-motive, smart-IC cards, and low-power, representing the leading-edge technology developments for eFlash. The discussion also includes insights into future prospects of application-driven non-volatile memory technology in the era of smart advanced automotive system, such as ADAS (Advanced Driver Assistance System) and IoE (Internet of Everything). Trials on technology convergence and future prospects of embedded non-volatile memory in the new memory hierarchy are also described. Introduces the history of embedded flash memory technology for micro-controller products and how embedded flash innovations developed; Includes comprehensive and detailed descriptions of current main-stream embedded flash memory technologies, sub-system designs and applications; Explains why embedded flash memory requirements are different from those of stand-alone flash memory and how to achieve specific goals with technology development and circuit designs; Describes a mature and stable floating-gate 1Tr cell technology imported from stand-alone flash memory products - that then introduces embedded-specific split-gate memory cell technologies based on floating-gate storage structure and charge-trapping SONOS technology and their eFlash sub-system designs; Describes automotive and smart-IC card applications requirements and achievements in advanced eFlash beyond 4 0nm node.
Embedded Linux Development Using Yocto Project Cookbook - Second Edition: Practical recipes to help you leverage the power of Yocto to build exciting Linux-based systems
by Alex GonzalezOver 79 hands-on recipes for professional embedded Linux developers to optimize and boost their Yocto Project know-how About This Book • Optimize your Yocto setup to speed up development and debug build issues • Use what is quickly becoming the standard embedded Linux product builder framework—the Yocto Project • Recipe-based implementation of best practices to optimize your Linux system Who This Book Is For If you are an embedded Linux developer with the basic knowledge of Yocto Project, this book is an ideal way to broaden your knowledge with recipes for embedded development. What You Will Learn • Optimize your Yocto Project setup to speed up development and debug build issues • Use Docker containers to build Yocto Project-based systems • Take advantage of the user-friendly Toaster web interface to the Yocto Project build system • Build and debug the Linux kernel and its device trees • Customize your root filesystem with already-supported and new Yocto packages • Optimize your production systems by reducing the size of both the Linux kernel and root filesystems • Explore the mechanisms to increase the root filesystem security • Understand the open source licensing requirements and how to comply with them when cohabiting with proprietary programs • Create recipes, and build and run applications in C, C++, Python, Node.js, and Java In Detail The Yocto Project has become the de facto distribution build framework for reliable and robust embedded systems with a reduced time to market. You'll get started by working on a build system where you set up Yocto, create a build directory, and learn how to debug it. Then, you'll explore everything about the BSP layer, from creating a custom layer to debugging device tree issues. In addition to this, you'll learn how to add a new software layer, packages, data, scripts, and configuration files to your system. You will then cover topics based on application development, such as using the Software Development Kit and how to use the Yocto project in various development environments. Toward the end, you will learn how to debug, trace, and profile a running system. This second edition has been updated to include new content based on the latest Yocto release. Style and approach This recipe-based book will guide you through all the development stages of an embedded Linux product design using the Yocto Project.
Embedded Linux Development Using Yocto Project Cookbook.: Practical Recipes To Help You Leverage The Power Of Yocto To Build Exciting Linux-based Systems
by Alex GonzálezThe Yocto Project has become the de facto distribution build framework for reliable and robust embedded systems with a reduced time to market.
Embedded Linux Development Using Yocto Project: Leverage the power of the Yocto Project to build efficient Linux-based products, 3rd Edition
by Daiane Angolini Otavio SalvadorElevate your Linux-powered system with Yocto Projects, enhancing its stability and resilience efficiently and economically — now upgraded to the latest Yocto Project versionPurchase of the print or Kindle book includes a free PDF eBookKey FeaturesOptimize your Yocto Project tools to develop efficient Linux-based projectsFollow a practical approach to learning Linux development using Yocto ProjectEmploy the best practices for embedded Linux and Yocto Project developmentBook DescriptionThe Yocto Project is the industry standard for developing dependable embedded Linux projects. It stands out from other frameworks by offering time-efficient development with enhanced reliability and robustness. With Embedded Linux Development Using Yocto Project, you'll acquire an understanding of Yocto Project tools, helping you perform different Linux-based tasks. You'll gain a deep understanding of Poky and BitBake, explore practical use cases for building a Linux subsystem project, employ Yocto Project tools available for embedded Linux, and uncover the secrets of SDK, recipe tool, and others. This new edition is aligned with the latest long-term support release of the aforementioned technologies and introduces two new chapters, covering optimal emulation in QEMU for faster product development and best practices. By the end of this book, you'll be well-equipped to generate and run an image for real hardware boards. You'll gain hands-on experience in building efficient Linux systems using the Yocto Project.What you will learnGet to grips with Poky workflowsConfigure and prepare the Poky build environmentExplore the latest version of Yocto Project through examplesConfigure a build server and customize images using ToasterGenerate images and fit packages into created images using BitBakeSupport the development process by setting up and using Package feedsDebug Yocto Project by configuring PokyBuild and boot image for BeagleBone Black, RaspberryPi 4, and VisionFive via SD cardsExplore the use of QEMU to speed up the development cycle using emulationWho this book is forIf you are an embedded Linux developer and want to broaden your knowledge about the Yocto Project with examples of embedded development, then this book is for you. Professionals looking for new insights into working methodologies for Linux development will also find plenty of helpful information in this book.
Embedded Linux Development using Yocto Projects: Learn to leverage the power of Yocto Project to build efficient Linux-based products
by Daiane Angolini Otavio SalvadorOptimize and boost your Linux-based system with Yocto Project and increase its reliability and robustness efficiently and cost-effectively.Key FeaturesOptimize your Yocto Project tools to develop efficient Linux-based projectsPractical approach to learning Linux development using Yocto ProjectDemonstrates concepts in a practical and easy-to-understand wayBook DescriptionYocto Project is turning out to be the best integration framework for creating reliable embedded Linux projects. It has the edge over other frameworks because of its features such as less development time and improved reliability and robustness. Embedded Linux Development using Yocto Project starts with an in-depth explanation of all Yocto Project tools, to help you perform different Linux-based tasks. The book then moves on to in-depth explanations of Poky and BitBake. It also includes some practical use cases for building a Linux subsystem project using Yocto Project tools available for embedded Linux. The book also covers topics such as SDK, recipetool, and others. By the end of the book, you will have learned how to generate and run an image for real hardware boards and will have gained hands-on experience at building efficient Linux systems using Yocto Project.What you will learnUnderstand the basic concepts involved in Poky workflows along with configuring and preparing the Poky build environmentConfigure a build server and customize images using ToasterGenerate images and fit packages into created images using BitBakeSupport the development process by setting up and using Package feedsDebug Yocto Project by configuring PokyBuild an image for the BeagleBone Black, RaspberryPi 3, and Wandboard, and boot it from an SD card Who this book is forIf you are an embedded Linux developer with a basic knowledge of Yocto Project and want to broaden your knowledge with examples of embedded development, then this book is for you. This book is also for professionals who want to find new insights into working methodologies for Linux development.
Embedded Linux Development with Yocto Project
by Daiane Angolini Otavio SalvadorA practical tutorial guide which introduces you to the basics of Yocto Project, and also helps you with its real hardware use to boost your Embedded Linux-based project. If you are an embedded systems enthusiast and willing to learn about compelling features offered by the Yocto Project, then this book is for you. With prior experience in the embedded Linux domain, you can make the most of this book to efficiently create custom Linux-based systems.
Embedded Linux Projects Using Yocto Project Cookbook
by Alex GonzalezIf you are an embedded developer learning about embedded Linux with some experience with the Yocto project, this book is the ideal way to become proficient and broaden your knowledge with examples that are immediately applicable to your embedded developments. Experienced embedded Yocto developers will find new insight into working methodologies and ARM specific development competence.
Embedded Linux System Design and Development
by P. Raghavan Amol Lad Sriram NeelakandanBased upon the authors' experience in designing and deploying an embedded Linux system with a variety of applications, Embedded Linux System Design and Development contains a full embedded Linux system development roadmap for systems architects and software programmers. Explaining the issues that arise out of the use of Linux in embedded systems, the book facilitates movement to embedded Linux from traditional real-time operating systems, and describes the system design model containing embedded Linux.This book delivers practical solutions for writing, debugging, and profiling applications and drivers in embedded Linux, and for understanding Linux BSP architecture. It enables you to understand: various drivers such as serial, I2C and USB gadgets; uClinux architecture and its programming model; and the embedded Linux graphics subsystem. The text also promotes learning of methods to reduce system boot time, optimize memory and storage, and find memory leaks and corruption in applications.This volume benefits IT managers in planning to choose an embedded Linux distribution and in creating a roadmap for OS transition. It also describes the application of the Linux licensing model in commercial products.
Embedded Linux for Developers
by Alex Gonzalez Alexandru Vaduva Chris SimmondsLeverage the power of Linux to develop captivating and powerful embedded Linux projects About This Book * Explore the best practices for all embedded product development stages * Learn about the compelling features offered by the Yocto Project, such as customization, virtualization, and many more * Minimize project costs by using open source tools and programs Who This Book Is For If you are a developer who wants to build embedded systems using Linux, this book is for you. It is the ideal guide for you if you want to become proficient and broaden your knowledge. A basic understanding of C programming and experience with systems programming is needed. Experienced embedded Yocto developers will find new insight into working methodologies and ARM specific development competence. What You Will Learn * Use the Yocto Project in the embedded Linux development process * Get familiar with and customize the bootloader for a board * Discover more about real-time layer, security, virtualization, CGL, and LSB * See development workflows for the U-Boot and the Linux kernel, including debugging and optimization * Understand the open source licensing requirements and how to comply with them when cohabiting with proprietary programs * Optimize your production systems by reducing the size of both the Linux kernel and root filesystems * Understand device trees and make changes to accommodate new hardware on your device * Design and write multi-threaded applications using POSIX threads * Measure real-time latencies and tune the Linux kernel to minimize them In Detail Embedded Linux is a complete Linux distribution employed to operate embedded devices such as smartphones, tablets, PDAs, set-top boxes, and many more. An example of an embedded Linux distribution is Android, developed by Google. This learning path starts with the module Learning Embedded Linux Using the Yocto Project. It introduces embedded Linux software and hardware architecture and presents information about the bootloader. You will go through Linux kernel features and source code and get an overview of the Yocto Project components available. The next module Embedded Linux Projects Using Yocto Project Cookbook takes you through the installation of a professional embedded Yocto setup, then advises you on best practices. Finally, it explains how to quickly get hands-on with the Freescale ARM ecosystem and community layer using the affordable and open source Wandboard embedded board. Moving ahead, the final module Mastering Embedded Linux Programming takes you through the product cycle and gives you an in-depth description of the components and options that are available at each stage. You will see how functions are split between processes and the usage of POSIX threads. By the end of this learning path, your capabilities will be enhanced to create robust and versatile embedded projects. This Learning Path combines some of the best that Packt has to offer in one complete, curated package. It includes content from the following Packt products: * Learning Embedded Linux Using the Yocto Project by Alexandru Vaduva * Embedded Linux Projects Using Yocto Project Cookbook by Alex Gonzalez * Mastering Embedded Linux Programming by Chris Simmonds Style and approach This comprehensive, step-by-step, pragmatic guide enables you to build custom versions of Linux for new embedded systems with examples that are immediately applicable to your embedded developments. Practical examples provide an easy-to-follow way to learn Yocto project development using the best practices and working methodologies. Coupled with hints and best practices, this will help you understand embedded Linux better.
Embedded Machine Learning for Cyber-Physical, IoT, and Edge Computing: Hardware Architectures
by Muhammad Shafique Sudeep PasrichaThis book presents recent advances towards the goal of enabling efficient implementation of machine learning models on resource-constrained systems, covering different application domains. The focus is on presenting interesting and new use cases of applying machine learning to innovative application domains, exploring the efficient hardware design of efficient machine learning accelerators, memory optimization techniques, illustrating model compression and neural architecture search techniques for energy-efficient and fast execution on resource-constrained hardware platforms, and understanding hardware-software codesign techniques for achieving even greater energy, reliability, and performance benefits.
Embedded Machine Learning with Microcontrollers: Applications on Arduino Boards
by Cem Ünsalan Berkan Höke Eren AtmacaThis textbook introduces basic and advanced embedded machine learning methods by exploring practical applications on Arduino boards. By covering traditional and neural network-based machine learning methods implemented on microcontrollers, the text is designed for use in courses on microcontrollers and embedded machine learning systems. Following the learning-by-doing approach, the book will enable students to grasp embedded machine learning concepts through real-world examples, providing them with the design and implementation skills needed for a competitive job market. By utilizing a programming environment that enables students to reach and modify microcontroller properties easily, the material allows for fast implementation of the developed system. Students are guided in implementing machine learning methods to be deployed and tested on microcontrollers throughout the book, with the theory behind the implemented methods also emphasized. Sample codes and real-world projects are available for readers and instructors. The book will also be an ideal reference for practicing engineers and electronics hobbyists.
Embedded Machine Learning with Microcontrollers: Applications on STM32 Development Boards
by Cem Ünsalan Berkan Höke Eren AtmacaThis textbook introduces basic embedded machine learning methods by exploring practical applications on STM32 development boards. Covering traditional and neural network-based machine learning methods implemented on microcontrollers, the text is designed for use in courses on microcontrollers, microprocessor systems, and embedded systems. Following the learning by doing approach, the book will enable students to grasp embedded machine learning concepts through real-world examples that will provide them with the design and implementation skills needed for a competitive job market. By utilizing a programming environment that enables students to reach and modify low-level microcontroller properties, the material allows for more control of the developed system. Students will be guided in implementing machine learning methods to be deployed and tested on microcontrollers throughout the book, with the theory behind the implemented methods also emphasized. Sample codes and course slides are available for readers and instructors, and a solutions manual is available to instructors. The book will also be an ideal reference for practicing engineers and electronics hobbyists.
Embedded Memories for Nano-Scale VLSIs
by Kevin ZhangThe book provides a comprehensive and in-depth view on the state-of-the-art embedded memory technologies. The book helps practicing engineers grasp key technology attributes and advanced design techniques in nano-scale VLSI design. It also helps them make decisions concerning the right design tradeoffs in real product development. This book first provides an overview on the landscape and trend of embedded memory in various VLSI system designs, including high-performance microprocessor, low-power mobile handheld devices, micro-controllers, and various consumer electronics. It then shows an in-depth view on each different type of embedded memory technology, including high-speed SRAM, ultra-low-voltage and alternative SRAM, embedded DRAM, embedded nonvolatile memory, and emerging or so-called "universal" memories such as FeRAM, MRAM, and PRAM. Each topic covers all the key technology attributes from a product application perspective, ranging from technology scaling challenges to advanced circuit techniques for achieving optimal design tradeoff in performance and power. As VLSI systems become increasingly dependent on on-die memory to provide adequate memory bandwidth for various applications, the book gives readers a broader view of this important field and helps them to achieve their optimal design goals for different applications. This book provides readers a broad knowledge on the entire embedded memory technologies in order to better comprehend the technologies and create optimal memory solutions in real applications.
Embedded Memory Design for Multi-Core and Systems on Chip
by Baker MohammadThis book describes the various tradeoffs systems designers face when designing embedded memory. Readers designing multi-core systems and systems on chip will benefit from the discussion of different topics from memory architecture, array organization, circuit design techniques and design for test. The presentation enables a multi-disciplinary approach to chip design, which bridges the gap between the architecture level and circuit level, in order to address yield, reliability and power-related issues for embedded memory.
Embedded Microprocessor System Design using FPGAs
by Uwe Meyer-BaeseThis textbook for courses in Embedded Systems introduces students to necessary concepts, through a hands-on approach. It gives a great introduction to FPGA-based microprocessor system design using state-of-the-art boards, tools, and microprocessors from Altera/Intel® and Xilinx®. HDL-based designs (soft-core), parameterized cores (Nios II and MicroBlaze), and ARM Cortex-A9 design are discussed, compared and explored using many hand-on designs projects. Custom IP for HDMI coder, Floating-point operations, and FFT bit-swap are developed, implemented, tested and speed-up is measured. Downloadable files include all design examples such as basic processor synthesizable code for Xilinx and Altera tools for PicoBlaze, MicroBlaze, Nios II and ARMv7 architectures in VHDL and Verilog code, as well as the custom IP projects. Each Chapter has a substantial number of short quiz questions, exercises, and challenging projects. Explains soft, parameterized, and hard core systems design tradeoffs;Demonstrates design of popular KCPSM6 8 Bit microprocessor step-by-step;Discusses the 32 Bit ARM Cortex-A9 and a basic processor is synthesized;Covers design flows for both FPGA Market leaders Nios II Altera/Intel and MicroBlaze Xilinx system;Describes Compiler-Compiler Tool development;Includes a substantial number of Homework’s and FPGA exercises and design projects in each chapter.
Embedded Microprocessor System Design using FPGAs
by Uwe Meyer-BaeseThis textbook for courses in Embedded Systems introduces students to necessary concepts, through a hands-on approach. It gives a great introduction to FPGA-based microprocessor system design using state-of-the-art boards, tools, and microprocessors from Altera/Intel® and Xilinx®. HDL-based designs (soft-core), parameterized cores (Nios II and MicroBlaze), and ARM Cortex-A9 design are discussed, compared and explored using many hand-on designs projects. Custom IP for HDMI coder, Floating-point operations, and FFT bit-swap are developed, implemented, tested and speed-up is measured. New additions in the second edition include bottom-up and top-down FPGA-based Linux OS system designs for Altera/Intel® and Xilinx® boards and application development running on the OS using modern popular programming languages: Python, Java, and JavaScript/HTML/CSSs. Downloadable files include all design examples such as basic processor synthesizable code for Xilinx and Altera tools for PicoBlaze, MicroBlaze, Nios II and ARMv7 architectures in VHDL and Verilog code, as well as the custom IP projects. For the three new OS enabled programing languages a substantial number of examples ranging from basic math and networking to image processing and video animations are provided. Each Chapter has a substantial number of short quiz questions, exercises, and challenging projects.
Embedded Multimedia Security Systems
by Joseph Zambreno Amit PandeOpening with a detailed review of existing techniques for selective encryption, this text then examines algorithms that combine both encryption and compression. The book also presents a selection of specific examples of the design and implementation of secure embedded multimedia systems. Features: reviews the historical developments and latest techniques in multimedia compression and encryption; discusses an approach to reduce the computational cost of multimedia encryption, while preserving the properties of compressed video; introduces a polymorphic wavelet architecture that can make dynamic resource allocation decisions according to the application requirements; proposes a light-weight multimedia encryption strategy based on a modified discrete wavelet transform; describes a reconfigurable hardware implementation of a chaotic filter bank scheme with enhanced security features; presents an encryption scheme for image and video data based on chaotic arithmetic coding.
Embedded Multiprocessors: Scheduling and Synchronization, Second Edition (Signal Processing and Communications)
by Shuvra S. Bhattacharyya Sundararajan SriramTechniques for Optimizing Multiprocessor Implementations of Signal Processing ApplicationsAn indispensable component of the information age, signal processing is embedded in a variety of consumer devices, including cell phones and digital television, as well as in communication infrastructure, such as media servers and cellular base stations. Multiple programmable processors, along with custom hardware running in parallel, are needed to achieve the computation throughput required of such applications. Reviews important research in key areas related to the multiprocessor implementation of multimedia systemsEmbedded Multiprocessors: Scheduling and Synchronization, Second Edition presents architectures and design methodologies for parallel systems in embedded digital signal processing (DSP) applications. It discusses application modeling techniques for multimedia systems, the incorporation of interprocessor communication costs into multiprocessor scheduling decisions, and a modeling methodology (the synchronization graph) for multiprocessor system performance analysis. The book also applies the synchronization graph model to develop hardware and software optimizations that can significantly reduce the interprocessor communication overhead of a given schedule.Chronicles recent activity dealing with single-chip multiprocessors and dataflow modelsThis edition updates the background material on existing embedded multiprocessors, including single-chip multiprocessors. It also summarizes the new research on dataflow models for signal processing that has been carried out since the publication of the first edition.Harness the power of multiprocessorsThis book explores the optimization of interprocessor communication and synchronization in embedded multiprocessor systems. It shows you how to design multiprocessor computer systems that are streamlined for multimedia applications.
Embedded Operating Systems
by Alan Holt Chi-Yu HuangThis practically-oriented textbook provides a clear introduction to the different component parts of an operating system and how these work together. The easy-to-follow text covers the bootloader, kernel, filesystem, shared libraries, start-up scripts, configuration files and system utilities. The procedure for building each component is described in detail, guiding the reader through the process of creating a fully functional GNU/Linux embedded OS. Features: presents a concise overview of the GNU/Linux system, and a detailed review of GNU/Linux filesystems; describes how to build an embedded system to run on a virtual machine, and to run natively on an actual processor; introduces the concept of the compiler toolchain, demonstrating how to develop a cross toolchain so that programs can be built on a range of different architectures; discusses the ARM-based platforms BeagleBone and Raspberry Pi; explains how to build OpenWRT firmware images for OMxP Open-mesh devices and the Dragino MS14 series.
Embedded Operating Systems
by Alan Holt Chi-Yu HuangThis easy-to- follow textbook/reference guides the reader through the creation of a fully functional embedded operating system, from its source code, in order to develop a deeper understanding of each component and how they work together. The text describes in detail the procedure for building the bootloader, kernel, filesystem, shared libraries, start-up scripts, configuration files and system utilities, to produce a GNU/Linux operating system. This fully updated second edition also includes new material on virtual machine technologies such as VirtualBox, Vagrant and the Linux container system Docker.Topics and features: presents an overview of the GNU/Linux system, introducing the components of the system, and covering aspects of process management, input/output and environment; discusses containers and the underlying kernel technology upon which they are based; provides a detailed examination of the GNU/Linux filesystem; explains how to build an embedded system under a virtual machine, and how to build an embedded system to run natively on an actual processor;introduces the concept of the compiler toolchain, and reviews the platforms BeagleBone and Raspberry Pi; describes how to build firmware images for devices running the Openwrt operating system.The hands-on nature and clearly structured approach of this textbook will appeal strongly to practically minded undergraduate and graduate level students, as well as to industry professionals involved in this area.
Embedded Platforms for UAS Landing Path and Obstacle Detection II: Navigation Support Systems for Urban Air Mobility Operations (Studies in Systems, Decision and Control #530)
by Umberto Papa Gennaro ArianteThis book reports on the design and development of a system that assists remote pilots during navigation. It focuses on the design and development of a ground station that assists remote pilots during maneuvers such as take-off or landing procedures, in case a high accuracy is required or the GNSS signal is lost. Continuing the tradition of the previous volume, and being its revised edition, this book covers the latest UAS regulations together with updated strategies for finding the best and safest trajectory and landing site, with a special focus on urban air mobility applications. It describes the system’s components, such as the LiDAR sensor, the temperature and humidity sensors, the Raspberry Pi 3 controller, and the Bluetooth Low Energy Transmitter, in detail. Further, it discusses the experimental tests carried out in both controlled laboratory settings and real-world environments. All in all, this book offers a timely survey of both regulations of and electronics design for unmanned aircraft systems, with extensive information on new methods and technologies for the development of Detect and Avoid systems for unmanned aerial vehicles.
Embedded Programming with Modern C++ Cookbook: Practical recipes to help you build robust and secure embedded applications on Linux
by Igor ViarheichykExplore various constraints and challenges that embedded developers encounter in their daily tasks and learn how to build effective programs using the latest standards of C++ Key Features Get hands-on experience in developing a sample application for an embedded Linux-based system Explore advanced topics such as concurrency, real-time operating system (RTOS), and C++ utilities Learn how to test and debug your embedded applications using logs and profiling tools Book Description Developing applications for embedded systems may seem like a daunting task as developers face challenges related to limited memory, high power consumption, and maintaining real-time responses. This book is a collection of practical examples to explain how to develop applications for embedded boards and overcome the challenges that you may encounter while developing. The book will start with an introduction to embedded systems and how to set up the development environment. By teaching you to build your first embedded application, the book will help you progress from the basics to more complex concepts, such as debugging, logging, and profiling. Moving ahead, you will learn how to use specialized memory and custom allocators. From here, you will delve into recipes that will teach you how to work with the C++ memory model, atomic variables, and synchronization. The book will then take you through recipes on inter-process communication, data serialization, and timers. Finally, you will cover topics such as error handling and guidelines for real-time systems and safety-critical systems. By the end of this book, you will have become proficient in building robust and secure embedded applications with C++. What you will learn Get to grips with the fundamentals of an embedded system Understand how to optimize code for the targeted hardware platforms Explore cross-compilation, build types, and remote debugging Discover the importance of logging for debugging and root cause analysis of failures Uncover concepts such as interrupt service routine, memory model, and ring buffer Recognize the need for custom memory management in embedded systems Delve into static code analyzers and tools to improve code quality Who this book is for This book is for developers, electronic hardware professionals, and software and system-on-chip engineers who want to build effective embedded programs in C++. Familiarity with the C++ programming language is expected, but no previous knowledge of embedded systems is required.
Embedded Programming with the Microsoft® .NET Micro Framework
by Rob Miles Donald ThompsonGet the information you need for programming applications in the rich, managed-code environment of the Microsoft .NET Micro Framework. You'll learn how to extend your experience with the .NET Framework and Microsoft Visual C# through real-world examples, expert insights, and code samples--and efficiently build robust applications for the smallest devices. Discover how to: Use an object-oriented approach for programming embedded devices Create input and output port objects Develop detailed text and graphical displays that support complex user interactions Add Windows SideShow functionality into your application Implement functionality from existing applications to embedded applications Bind physical hardware events to Windows Presentation Foundation elements Establish embedded-network connections using TCP/IP Use emulation techniques for rapid-prototyping, experimentation, testing, and debugging Optimize performance of resource-constrained devices PLUS--Get code samples in Visual C# on the Web
Embedded Robotics: From Mobile Robots to Autonomous Vehicles with Raspberry Pi and Arduino
by Thomas BräunlThis book presents a unique examination of mobile robots and embedded systems, from introductory to intermediate level. It is structured in three parts, dealing with Embedded Systems (hardware and software design, actuators, sensors, PID control, multitasking), Mobile Robot Design (driving, balancing, walking, and flying robots), and Mobile Robot Applications (mapping, robot soccer, genetic algorithms, neural networks, behavior-based systems, and simulation). The book is written as a text for courses in computer science, computer engineering, IT, electronic engineering, and mechatronics, as well as a guide for robot hobbyists and researchers.
Embedded Software Design and Programming of Multiprocessor System-on-Chip
by Ahmed A. Jerraya Katalin Popovici Frédéric Rousseau Marilyn WolfCurrent multimedia and telecom applications require complex, heterogeneous multiprocessor system on chip (MPSoC) architectures with specific communication infrastructure in order to achieve the required performance. Heterogeneous MPSoC includes different types of processing units (DSP, microcontroller, ASIP) and different communication schemes (fast links, non standard memory organization and access). Programming an MPSoC requires the generation of efficient software running on MPSoC from a high level environment, by using the characteristics of the architecture. This task is known to be tedious and error prone, because it requires a combination of high level programming environments with low level software design. This book gives an overview of concepts related to embedded software design for MPSoC. It details a full software design approach, allowing systematic, high-level mapping of software applications on heterogeneous MPSoC. This approach is based on gradual refinement of hardware/software interfaces and simulation models allowing to validate the software at different abstraction levels. This book combines Simulink for high level programming and SystemC for the low level software development. This approach is illustrated with multiple examples of application software and MPSoC architectures that can be used for deep understanding of software design for MPSoC.