🎧 New: AI-Generated Podcasts Turn your study notes into engaging audio conversations. Learn more

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Document Details

DeliciousClavichord

Uploaded by DeliciousClavichord

University of Science and Technology of Southern Philippines

2024

Tags

embedded systems computer engineering electronic devices

Full Transcript

CPE412 Embedded Systems Module No. 1 Topic History and Overview; Relevant Tools, Standards, and or Engineering Constraints Period Week no. __2__ : Date __August 19-24, 2024__ HISTORY...

CPE412 Embedded Systems Module No. 1 Topic History and Overview; Relevant Tools, Standards, and or Engineering Constraints Period Week no. __2__ : Date __August 19-24, 2024__ HISTORY AND OVERVIEW; RELEVANT TOOLS, STANDARDS, AND OR ENGINEERING CONSTRAINTS What is Embedded System? History of Embedded Systems Classifications of Embedded Systems Applications of Embedded Systems Purpose of Embedded Systems Embedded System Constraints Objective/Intended Learning Outcomes Understand what an embedded system is and how it differs from general-purpose computing system. Analyze and evaluate key historical events, figures, and their contexts demonstrating the ability to assess the causes and consequences of historical developments. Classify embedded systems and look at certain applications & purposes of embedded systems. Discussion/Content 1. HISTORY AND OVERVIEW; RELEVANT TOOLS, STANDARDS, AND OR ENGINEERING CONSTRAINTS INTRODUCTION This lesson introduces the reader to the world of embedded systems. Everything that we look around us today is electronic. The days are gone where almost everything was manual. Now, even the food that we eat is cooked with the assistance of a microchip (oven) and the ease at which we wash our clothes is due to the washing machine. This world of electronic items is made up of embedded system. In this lesson, we will understand the basics of embedded system right from its definition and why their importance and popularity have been increasing so dramatically. Created by: CPE412 1ST SEMESTER USTP INSTRUCTORS 1 WHAT IS EMBEDDED SYSTEM? A system has a set of one or more inputs entering a black box and a set of one or more outputs exiting the black box. Figure 1. System with n inputs and m outputs A system is an arrangement in which all its unit assemble work together according to a set of rules. It can also be defined as a way of working, organizing or doing one or many tasks according to a fixed plan. For example, a watch is a time displaying system. Its components follow a set of rules to show time. If one of its parts fails, the watch will stop working. So, we can say, in a system, all its subcomponents depend on each other. Deterministic System A system is said to be deterministic if for each possible state, and each set of inputs, a unique set of outputs, response times and next state of the system can be determined. Event determinism – Next states and outputs of the system are known for each set of inputs which trigger events. Temporal determinism – The response time of each set of outputs is known. Embedded System An embedded system is a special-purpose computer system designed to perform one or a few dedicated functions, usually with real-time computing constraints. It is usually embedded as part of a complete device including hardware and mechanical parts. A specialized computer system that is part of a larger system or machine. Typically, an embedded system is housed on a single microprocessor board with the programs stored in ROM. An embedded system is a microcontroller or microprocessor based system which is designed to perform a specific task. It is a combination of computer software and hardware which is either fixed in capability or programmable. For example, a fire alarm is an embedded system; it will sense only smoke. Computing systems embedded within electronic devices. Nearly any computing system other than a desktop computer. As its name suggests, Embedded means something that is attached to another thing. An embedded system can be thought of as a computer hardware system having software embedded in it. While embedded systems are computing systems, they can range from having no user interface (UI) to complex graphical user interfaces (GUIs). An embedded system has three components − It has hardware. It has application software. It has mechanical components. A Real Time Operating system (RTOS) supervises the application software and provide mechanism to let the processor run a process as per scheduling by following a plan to control the latencies. RTOS defines the way the system works. It sets the rules during the execution of application program. A small scale embedded system may not have RTOS. It is supposed to do one specific task only. by: CPE412 1ST SEMESTER USTP INSTRUCTORS Created 2 Example 1: Washing Machine A washing machine from an embedded systems point of view has: a. Hardware: Buttons, Display & buzzer, electronic circuitry. b. Software: It has a chip on the circuit that holds the software which drives controls & monitors the various operations possible. c. Mechanical Components: the internals of a washing machine which actually wash the clothes control the input and output of water, the chassis itself. Example 2: Air Conditioner An Air Conditioner from an embedded systems point of view has: a. Hardware: Remote, Display & buzzer, Infrared Sensors, electronic circuitry. b. Software: It has a chip on the circuit that holds the software which drives controls & monitors the various operations possible. The software monitors the external temperature through the sensors and then releases the coolant or suppresses it. c. Mechanical Components: the internals of an air conditioner the motor, the chassis, the outlet, etc. An embedded system is designed to do a specific job only. Example: a washing machine can only wash clothes; an air conditioner can control the temperature in the room in which it is placed. The hardware & mechanical components will consist of all the physically visible things that are used for input, output, etc. An embedded system will always have a chip (either microprocessor or microcontroller) that has the code or software which drives the system. Embedded Systems and General Computing Systems The Embedded System and the General purpose computer are at two extremes. The embedded system is designed to perform a specific task whereas as per definition the general purpose computer is meant for general use. It can be used for playing games, watching movies, creating software, work on documents or spreadsheets etc. Following are certain specific points of difference between embedded systems and general purpose computers: Criteria General Purpose Computing System Embedded System Contents A system which is a combination of generic hardware A system which is a combination of special and General Purpose Operating System for executing purpose hardware and embedded OS for a variety of application executing a specific set of applications Operating Contain a General Purpose Operating System (GPOS) May or may not contain an operating system for System functioning Alterations Applications are alterable (programmable) by user (It The firmware of the embedded system is pre- is possible for the end user to re-install the Operating programmed, and it is non-alterable by end-user System, and add or remove user applications) Key factor Performance is the key deciding factor on the selection Application specific requirements (like of the system. Always “Faster is Better” performance, power requirements, memory usage etc) are the key deciding factors Power Less/not at all tailored towards reduced operating Highly tailored to take advantage of the power Consumption power requirements, options for different levels of saving modes supported by hardware and power management. Operating System Response Response requirements are not time critical For certain category of embedded systems like Time mission critical systems, the response time requirement is highly critical Execution Need not be deterministic in execution behavior Execution behavior is deterministic for certain behavior type of embedded systems like “Hard Real Time” systems Created by: CPE412 1ST SEMESTER USTP INSTRUCTORS 3 HISTORY OF EMBEDDED SYSTEMS The first recognized embedded system is the Apollo Guidance Computer (AGC) developed by Charles Stark Draper at the MIT Instrumentation Laboratory in 1960s. AGC was designed on 4K, 10K, 36K words of ROM & 256, 1K, 2K words of RAM. It has two modules, the Command module (CM) and the Lunar Excursion module (LEM). The clock frequency of first microchip used in AGC was 1.024 MHz. The computing unit of AGC consists of 11 instructions and 16-bit word logic. It used 5000 ICs of 3- input RTL NOR gates ICs. The UI of AGC is known DSKY(display/keyboard) which resembles a calculator type keypad with array of numerals. The first computer to use ICs which helped astronauts collect real-time flight data. In 1965, Autonetics, now a part of Boeing, developed the D-17B, the computer used in the Minuteman I missile Figure 2. Apollo Guidance Computer guidance system. It is widely recognized as the first mass- produced embedded system. When the Minuteman II went into production in 1966, the D-17B was replaced with the NS-17 missile guidance system, known for its high-volume use of integrated circuits. In 1968, the first embedded system for a vehicle was released; the Volkswagen 1600 used a microprocessor to control its electronic fuel injection system. The first microcontroller was developed by Texas Instruments in 1971. The TMS1000 series, which became commercially available in 1974, contained a 4-bit processor, read-only memory (ROM) and random-access memory (RAM). Also, in 1971, Intel released what is widely recognized as the first commercially available processor, the 4004. The 4-bit microprocessor was designed for use in calculators and small electronics, though it required eternal memory and support chips. The 8-bit Intel 8008, released in Figure 3. Minuteman-I Missile 1972, had 16 KB of memory; the Intel 8080 followed in 1974 with 64 KB of memory. The 8080's successor, the x86 series, was released in 1978 and is still largely in use today. In 1987, the first embedded operating system, the real-time VxWorks, was released by Wind River, followed by Microsoft's Windows Embedded CE in 1996. By the late 1990s, the first embedded Linux products began to appear. Today, Linux is used in almost all embedded devices. Figure 4. Autonetics D-17B Created by: CPE412 1ST SEMESTER USTP INSTRUCTORS 4 CLASSIFICATIONS OF EMBEDDED SYSTEMS Classification of embedded systems differ: 1. Based on Generation 2. Based on Complexity & Performance Requirements 3. Based on deterministic behavior 4. Based on Triggering 5. Based on Functional Requirements Based on Generation First Generation: The early embedded systems built around 8-bit microprocessors like 8085 and Z80 and 4-bit microcontrollers. Example: stepper motor control units, Digital Telephone Keypads etc. Second Generation: Embedded Systems built around 16-bit microprocessors and 8 or 16-bit microcontrollers, following the first generation embedded systems. Example: SCADA, Data Acquisition Systems etc. Third Generation: Embedded Systems built around high performance 16/32 bit Microprocessors/controllers, Application Specific Instruction set processors like Digital Signal Processors (DSPs), and Application Specific Integrated Circuits (ASICs).The instruction set is complex and powerful. Example: Robotics, industrial process control, networking etc. Fourth Generation: Embedded Systems built around System on Chips (SoC’s), Reconfigurable processors and multicore processors. It brings high performance, tight integration and miniaturization into the embedded device market. Example: Smart phone devices, MIDs etc. Based on Complexity & Performance Requirements Small Scale: The embedded systems built around low performance and low cost 8 or 16 bit microprocessors/ microcontrollers. It is suitable for simple applications and where performance is not time critical. It may or may not contain OS. Medium Scale: Embedded Systems built around medium performance, low cost 16 or 32 bit microprocessors/microcontrollers or DSPs. These are slightly complex in hardware and firmware. It may contain GPOS/RTOS. Large Scale/Complex/Sophisticated: Embedded Systems built around high performance 32 or 64 bit RISC processors/controllers, RSoC or multi-core processors and PLD. It requires complex hardware and software. These systems may contain multiple processors/controllers and co-units/hardware accelerators for offloading the processing requirements from the main processor. It contains RTOS for scheduling, prioritization and management. Created by: CPE412 1ST SEMESTER USTP INSTRUCTORS 5 Based on Deterministic Behavior It is applicable for Real Time systems. The application/task execution behavior for an embedded system can be either deterministic or non-deterministic These are classified into two types 1. Soft Real time Systems: Missing a deadline may not be critical and can be tolerated to a certain degree 2. Hard Real time systems: Missing a program/task execution time deadline can have catastrophic consequences (financial, human loss of life, etc.) Based on Triggering Embedded systems which are “Reactive” in nature can be based on triggering. Reactive systems can be: 1. Event Triggered: Activities within the system (e.g., task run-times) are dynamic and depend upon occurrence of different events. 2. Time Triggered: Activities within the system follow a statically computed schedule (i.e., they are allocated time slots during which they can take place) and thus by nature are predictable. Based on Functional Requirements Mobile: These are embedded systems that are small-sized systems that are designed to be portable. Digital cameras are an example of this. Networked: These are embedded systems that are connected to a network to provide output to other systems. Examples include home security systems and point of sale (POS) systems. Standalone: These are embedded systems that are not reliant on a host system. Like any embedded system, they perform a specialized task. However, they do not necessarily belong to a host system, unlike other embedded systems. A calculator or MP3 player is an example of this. Real-time: These are embedded systems that gives the required output in a defined time interval. They are often used in medical, industrial and military sectors because they are responsible for time-critical tasks. A traffic control system is an example of this. Created by: CPE412 1ST SEMESTER USTP INSTRUCTORS 6 APPLICATIONS OF EMBEDDED SYSTEMS The application areas and the products in the embedded domain are countless. Consumer Electronics: Camcorders, Cameras, etc. Household Appliances: Television, DVD players, washing machine, Fridge, Microwave Oven etc. Home Automation and Security Systems: Air conditioners, sprinklers, Intruder detection alarms, Closed Circuit Television Cameras, Fire alarms etc. Automotive Industry: Anti-lock braking systems (ABS), Engine Control, Ignition Systems, Automatic Navigation Systems etc. Telecom: Cellular Telephones, Telephone switches, Handset Multimedia Applications etc. Computer Peripherals: Printers, Scanners, Fax machines etc. Computer Networking Systems: Network Routers, Switches, Hubs, Firewalls etc. Health Care: Different Kinds of Scanners, EEG, ECG Machines etc. Measurement & Instrumentation: Digital multi meters, Digital CROs, Logic Analyzers PLC systems etc. Banking & Retail: Automatic Teller Machines (ATM) and Currency counters, Point of Sales (POS) Card Readers: Barcode, Smart Card Readers, Handheld devices, QR readers, etc PURPOSE OF EMBEDDED SYSTEMS Data Collection/Storage/Representation - Embedded system designed for the purpose of data collection performs acquisition of data from the external world. Data collection is usually done for storage, analysis, manipulation, and transmission. Data collected data can be either analog or digital. - Embedded systems with analog data capturing techniques collect data directly in the form of analog signal whereas embedded systems with digital data collection mechanism converts the analog signal to the digital signal using analog to digital converters. If the data is digital, it can be directly captured by digital embedded system. - The collected data may be stored directly in the system or may be transmitted to some other systems, or it may be processed by the system, or it may be deleted instantly after giving a meaningful representation. - A digital camera is a typical example of an embedded. It is a system with data collection/storage/representation of data. Images are captured and the captured image may be stored within the memory of the camera. The captured image can also be presented to the user through a graphic LCD unit. Figure 5. Digital camera Created by: CPE412 1ST SEMESTER USTP INSTRUCTORS 7 Data Communication - Embedded data communication systems are deployed in applications from complex satellite communication to simple home networking systems. - The transmission of data is achieved either by a wire-line medium (like Ethernet, TCP/IP, RS- 232C/USB/IEEE1394, etc) or by a wire-less medium (like Wi-Fi, GSM/GPRS, Bluetooth, ZigBee, etc). Data can either be transmitted by analog means or by digital means. - Network hubs, routers, switches, modems are examples of dedicated data transmission embedded systems. Figure 6. Wireless technology Data Signal Processing - Embedded systems with signal processing functionalities are employed in applications demanding signal processing like speech coding, audio video codec, transmission applications etc. - Computational intensive systems employs Digital Signal Processors (DSPs). - A digital hearing aid is a typical example of an embedded system employing data processing. Digital hearing aid improves the hearing capacity of hearing impaired person. Figure 7. Digital Hearing Aid Created by: CPE412 1ST SEMESTER USTP INSTRUCTORS 8 Monitoring - All embedded products coming under the medical domain are with monitoring functions. They are used for determining the state of some variables using input sensors. They cannot impose control over variables. - Electrocardiogram (ECG) machine is intended to do the monitoring of the heartbeat of a patient is an example. The sensors used in ECG are the different Electrodes connected to the patient’s body but it cannot impose control over the heartbeat. - Other examples with monitoring function are digital CRO, digital multi-meters, and logic analyzers. Figure 8. ECG machine Control - Embedded systems with control functionalities are used for imposing control over some variables according to the changes in input variables. - A system with control functionality contains both sensors and actuators. Sensors are connected to the input port for capturing the changes in environmental variable and the actuators connected to the output port are controlled according to the changes in the input variable. - Air conditioner system used to control the room temperature to a specified limit is a typical example for control purpose. Air conditioner contains a room temperature sensing element (sensor) which may be a thermistor and a handheld unit for setting up (feeding) the desired temperature. The air compressor unit acts as the actuator. The compressor is controlled according to the current room temperature and the desired temperature set by the end user. Figure 9. Air conditioner Application specific user interface - Embedded systems which are designed for a specific application. - Contains application specific user interface (rather than general standard UI) like buttons, switches, keypad, lights, bells, display units, etc are application specific user interfaces. It is aimed at a specific target group of users. - Mobile phone, control units in industrial applications, etc. are example of application specific user interface. In mobile phone the user interface is provided through the keypad, system speaker, vibration alert, etc. Created by: CPE412 1ST SEMESTER USTP INSTRUCTORS 9 EMBEDDED SYSTEM CONSTRAINTS Embedded systems are computers with constraints. While the design of all engineered devices involves trade-offs to some degree, general-purpose computers have historically been designed with comparatively few constraints. Since general-purpose computers are the most widely understood class of computing systems, it is instructive to compare and contrast their constraints with those of embedded systems. Indeed, embedded computer systems are different, both from one another and from general-purpose systems, by virtue of the design trade-offs and constraints they embody. In particular, embedded computer systems have distinctive constraints with respect to intended applications and form factors, power, system resources and features, and assumptions about user behavior. Applications and Form Factors Small Size, Low Weight – Hand-held electronics, Transportation applications (weight costs money) Unlike general-purpose machines, embedded systems are typically designed for one target application, or class of target applications. The intended use of an embedded computer system drives many of its design constraints and tradeoffs. The size and physical form factor are often a natural consequence of a system’s intended use. For example, continuously tethered medical devices, worn by patients, have shape and weight constraints that follow from the human body and its movements. Mobile handsets, by convention, are sized to fit in a (sometimes large) pocket. And embedded networking devices, such as wireless access points, are typically larger than human-centric devices, but have size and shape constraints of their own. A system’s intended use defines its physical packaging constraints, and many other design constraints follow from these. Notably, embedded computer systems have required a higher degree of system-level integration—that is, the integration of system-wide functionality onto one or a small number of semiconductor devices—in order to meet tight size, cost, and power constraints. Power Low Power – Battery power for 8+ hours (laptops often last only 2 hours), limited cooling may limit power even if AC power available. In embedded and general-purpose systems alike, power has become the predominant design constraint. In general-purpose systems, such as laptops and servers, power dissipation limits, expressed in terms of thermal design power (TDP), have ranged from tens to hundreds of watts, respectively. Relative to embedded systems, general-purpose platforms support a comparatively small number of ranges of TDP, which have evolved over time subject to the operational context of each particular platform. Laptop TDPs are largely a consequence of an expected battery life of between 4 and 8 hours; modern server TDPs are a consequence of the power density per unit volume that machine rooms and data centers are provisioned to dissipate (which were, in turn, based on the TDP of the previous generations of server equipment). For the most part, embedded systems have considerably lower-power design points, ranging from a few watts to microwatts. While some high-performance contexts, such as network routers and telecommunications equipment, have power profiles more or less the same as servers, most embedded computer systems are designed to operate in smaller spaces, often on battery power, and without the benefit of mechanical heat dissipation mechanisms such as fans or other forms of active cooling. As a result, embedded computer systems have historically been designed with comparatively aggressive dynamic power management mechanisms. In recent years, however, dynamic power management in general-purpose CPUs has become sophisticated, with the goal of switching between high-performance, high-power modes and low-performance, low-power modes without disturbing either user-perceived latency or system performance on marketing-oriented industry benchmarks. Created by: CPE412 1ST SEMESTER USTP INSTRUCTORS 10 Relative to the general-purpose scenarios, embedded computer systems exhibit a much more heterogeneous array of power design perspectives. As will be discussed in greater detail later, embedded computer systems span a wide range of use cases, from high-performance systems to battery-operated systems designed to operate in wireless sensor applications for years with a single battery. As such, embedded computer systems rely on power management schemes and features that vary with the target application. System Resources and Features General-purpose and embedded computer systems differ most in the variability of system resources and features rather than in their quantity. Embedded computer systems are typically designed and deployed with a relatively static and predetermined set of system resources and features. This fact simplifies systems software and certain system processes, such as booting the system or diagnosing problems. For example, the boot process for an IA-32-based general-purpose computer, and the design of the software that implements that process, must be organized to contend with an unpredictable set of memory and I/O resources when the system starts. This resource uncertainty is not present in most embedded computer systems; hence, embedded system boot processes are shorter and simpler. User Assumptions General-purpose computers enjoy generous assumptions about the behavior of users. In fact, few classes of electronics have a user profile more convenient than that of the computer user. Outside of microwave ovens and A/V remote controls, few electronics products place such a substantial burden on the user to work around system problems and inefficiencies. While the user experience has improved dramatically in recent years, the typical computer user is prepared to experience routine system failures, frequently reinstall or update software packages, experience compatibility problems following installations and updates, wait patiently for inexplicable hourglasses to disappear, and, generally speaking, learn a great deal about how to use the system and cope with its deficiencies. On the other hand, most embedded systems have a much narrower range of assumptions about user behavior. Most embedded systems are parts of devices or infrastructure and are expected to function reliably and deterministically. Users expect devices such as media players and telephones to respond without any latency. Infrastructure and industrial equipment are often designed to reliably honor service- level agreements. These tighter usage requirements impact systems software and overall system feature selection. Harsh environment Heat, vibration, shock, Power fluctuations, RF interference, lightning, Water, corrosion, physical abuse Safety-critical operation Must function correctly, must not function incorrectly Extreme cost sensitivity $.05 adds up over 1,000,000 units Created by: CPE412 1ST SEMESTER USTP INSTRUCTORS 11 References Modern Embedded Computing by Peter Barry and Patrick Crowley Embedded System Design 4th Edition by Peter Marwedel Embedded Systems - Theory and Design Methodology by Kiyofumi Tanaka Introduction to Embedded Systems 2nd Edition by Lee and Seshia High Performance Embedded Computing by Pinho et. al. Introduction to Embedded Systems by Shibu KV Created by: CPE412 1ST SEMESTER USTP INSTRUCTORS 12

Use Quizgecko on...
Browser
Browser