280 likes | 424 Views
Introduction to embedded Systems. Outline. Embedded systems overview What are they? Design challenge – optimizing design metrics Technologies Processor technologies IC technologies Design technologies. Embedded systems overview. Computing systems are everywhere
E N D
Outline • Embedded systems overview • What are they? • Design challenge – optimizing design metrics • Technologies • Processor technologies • IC technologies • Design technologies
Embedded systems overview • Computing systems are everywhere • Most of us think of “desktop” computers • PC’s • Laptops • Mainframes • Servers • But there’s another type of computing system • Far more common...
Embedded systems overview • Embedded computing systems • Computing systems embedded within electronic devices • Hard to define. Nearly any computing system other than a desktop computer • Billions of units produced yearly, versus millions of desktop units • Perhaps 50 per household and per automobile Computers are in here... and here... and even here... Lots more of these, though they cost a lot less each.
A “short list” of embedded systems And the list goes on and on Anti-lock brakes Auto-focus cameras Automatic teller machines Automatic toll systems Automatic transmission Avionic systems Battery chargers Camcorders Cell phones Cell-phone base stations Cordless phones Cruise control Curbside check-in systems Digital cameras Disk drives Electronic card readers Electronic instruments Electronic toys/games Factory control Fax machines Fingerprint identifiers Home security systems Life-support systems Medical testing systems Modems MPEG decoders Network cards Network switches/routers On-board navigation Pagers Photocopiers Point-of-sale systems Portable video games Printers Satellite phones Scanners Smart ovens/dishwashers Speech recognizers Stereo systems Teleconferencing systems Televisions Temperature controllers Theft tracking systems TV set-top boxes VCR’s, DVD players Video game consoles Video phones Washers and dryers
Automotive embedded systems • Today’s high-end automobile may have 100 microprocessors: • 4-bit microcontroller checks seat belt; • microcontrollers run dashboard devices; • 16/32-bit microprocessor controls engine.
BMW 850i brake and stability control system • Anti-lock brake system (ABS): pumps brakes to reduce skidding. • Automatic stability control (ASC+T): controls engine to improve stability. • ABS and ASC+T communicate. • ABS was introduced first---needed to interface to existing ABS module.
BMW 850i, cont’d. sensor sensor brake brake hydraulic pump ABS brake brake sensor sensor
Some common characteristics of embedded systems • Single-functioned • Executes a single program, repeatedly • Tightly-constrained • Low cost, low power, small, fast, etc. • Reactive and real-time • Continually reacts to changes in the system’s environment • Must compute certain results in real-time without delay
Supported by a wide array of processors • Cost sensitive • Uses real-time operating systems(RTOS) • Must operate under extreme environmental conditions • Fewer system resources • Object code stored in ROM • Software failure is much more severe
Cost Sensitivity • Usually embedded systems are manufactured in bulk • Limited functionality(Size,Power,price) • Powerful embedded processors • Above requirements are found in cellular phones(DSP processors)
Extreme Environmental conditions • Runs everywhere anytime under any condition • It is not good practice to consider following aspects during testing or packaging: • Heat budget • Slow down the clock • Change code(Optimize)
Real-Time constraints • Time sensitive constraints(Soft real-time) • Due to some technical limitations task will take longer time than the design goal. Instead of printing three pages per minute, two pages are printed. • Time critical(Hard real-time) Time critical task should take place within a time frame, available between monitored or measured events. If the task is not completed before the next event arrives, the function controlled by that task fails.
Digital camera chip CCD CCD preprocessor Pixel coprocessor D2A A2D lens JPEG codec Microcontroller Multiplier/Accum DMA controller Display ctrl Memory controller ISA bus interface UART LCD ctrl An embedded system example -- a digital camera • Single-functioned -- always a digital camera • Tightly-constrained -- Low cost, low power, small, fast • Reactive and real-time -- only to a small extent
Design challenge – optimizing design metrics • Obvious design goal: • Construct an implementation with desired functionality • Key design challenge: • Simultaneously optimize numerous design metrics • Design metric • A measurable feature of a system’s implementation • Optimizing design metrics is a key challenge
Design challenge – optimizing design metrics • Common metrics • Unit cost: the monetary cost of manufacturing each copy of the system, excluding NRE cost • NRE cost (Non-Recurring Engineering cost): The one-time monetary cost of designing the system • Size: the physical space required by the system • Performance: the execution time or throughput of the system • Power: the amount of power consumed by the system • Flexibility: the ability to change the functionality of the system without incurring heavy NRE cost
Design challenge – optimizing design metrics • Common metrics (continued) • Time-to-prototype: the time needed to build a working version of the system • Time-to-market: the time required to develop a system to the point that it can be released and sold to customers • Maintainability: the ability to modify the system after its initial release • Correctness, safety, many more
Microprocessor varieties • Microcontroller: includes I/O devices, on-board memory. • Digital signal processor (DSP): microprocessor optimized for digital signal processing. • Typical embedded word sizes: 8-bit, 16-bit, 32-bit.
Application examples • Simple control: front panel of microwave oven, etc. • Canon EOS 3 has three microprocessors. • 32-bit RISC CPU runs autofocus and eye control systems. • Analog TV: channel selection, etc. • Digital TV: programmable CPUs + hardwired logic.
e-Vending Vending Managementfrom the Desktop Technology Overview Decade Predominant Technology ’60s Mainframes ’70s Mini Computers ’80s Personal Computers ’90s Internet for people 2000 Internet for Devices and beyond In the 21st Century, internet-enabled appliances will dominate the technology space - paving the way for electronic maintenance. Source: IDC
e-Vending Vending Managementfrom the Desktop Devices World Sdn BhdYour Embedded Internet Partner Recognizing the potential of the Embedded Internet Space, we have pioneered a cutting edge e-Maintenance application complete with hardware and software solution. • DevicesWorld.net • An integrated e-Maintenance portal with comprehensive software solutions for various industries. • Internet Access Devices • A comprehensive range of hardware to Internet-enable your legacy appliances. You have a choice of wired or wireless Internet connectivity. We providereal-time interactivity between man and machines over the Net
e-Vending Vending Managementfrom the Desktop DevicesWorld.net Server Internet Internet Gateway Automatic Alerts ! Internet Pager Phone Email Operator’s Office Stock Level Report Vending Activity Log Dispatch Activity Log Machine Status Report
e-Vending Vending Managementfrom the Desktop Cold Drink Vendor Snack Food Vendor Hot Drink Vendor Internet Gateway OneGateway16 Machines1000mApart Slave Slave GSM Telephone Line Internet DevicesWorld.net
e-Vending • Built-in Modem • Automatic Configuration Internet Gateway • 5 Digital Inputs • Local Data Logging • 5 Analogue Inputs • Event - driven Dialup • 2 Digital Outputs • Automatic Health Check • On Demand Connection • Plug & Play • Password Protection Slave • 5 Digital Inputs • Data Encryption • 5 Analogue Inputs • 2 Digital Outputs Hardware Features
Summary • Embedded systems are everywhere • Key challenge: optimization of design metrics • Design metrics compete with one another • A unified view of hardware and software is necessary to improve productivity • Three key technologies • Processor: general-purpose, application-specific, single-purpose • IC: Full-custom, semi-custom, PLD • Design: Compilation/synthesis, libraries/IP, test/verification