Advanced Computer Systems – Tutorial - Embedded Systems

Document Sample
Advanced Computer Systems – Tutorial - Embedded Systems Powered By Docstoc
					Advanced Computer Systems – Tutorial - Embedded Systems
1.   Define what is meant by an embedded system
2.   List FIVE classes of hardware (e.g. x86/ ARM) which can be used for embedded systems - in
     each case state three important features
3.   List typical examples of embedded systems
4.   Which companies make embedded processors ?
     Explain why the embedded market is huge and very diverse
5.   Define what is meant by a real-time system
6.   Discuss why Intel is very keen to have a significant presence in the embedded market and have
     versions of Core i3/ i5/ i7 processors (with Q57 chipset) targeted at the embedded market as
     well as the x86 Atom and the x86 EP80579 System on a Chip
7.   Consider the examples of embedded systems described on this course – which could be
     considered real-time ?
8.   Compare the design of an embedded system (e.g. a kiosk/ Point of Sale terminal) with the
     design of a management systems package to execute on the PC platform
9.   A Master- Slave configuration is often used for an embedded system. Draw a block diagram of
     a simple master-slave system. Explain why master-slave systems simplify system design.
10. Testing real-time software is very time consuming – why does it take longer than a typical PC
    based packages.
11. Many embedded systems can be described in terms of an operator interface, a plant interface
    and a supervisory communication interface – discuss this using the case studies from the topic
    e.g. POS, Kiosk, Building Monitor
12. Review the choices in selecting an appropriate embedded system to implement kiosk/ POS/
    building monitor system/ Medical monitoring system application (e.g. full custom design, full
    custom design based on a System on a Chip SOC device, design based on an industrial single
    board computer, design based on a commercial PC)
13. Compare the architecture of a typical ARM embedded system with an x86 Atom based
    embedded system. Hence compare these systems for use in the following applications:
           –   Mobile phone/ Smart Point of Sale/ Medical interface unit
14. Traditionally ARM based products have been used for mobile phone devices and x86 products
    used for PCs (including netbooks) – Justify this – the answer should include FIVE important
    features of each technology
15. Market analysts suggest that manufacturers of netbooks will increasingly use ARM products
    rather than x86 Atom processors – discuss this tend – what will be the impact on a normal user
    (OS/ Applications/ ease of use etc)
16. Intel are keen to expand the use of x86 processors in areas such as MIDs Mobile Internet
    Devices and smart mobile phones – explain why Intel want to diversify into these areas and
    discuss the chances of Intel competing with the well established ARM products
17. Why was an ARM style processor used in the iPad rather than an x86 processor such as the
    x86-Atom ?

11/03/2012 8:39 AM G South 88129494-4013-4a6b-846f-ce7bfb70101d.doc
Embedded Systems – Outline Answers
An embedded system is a special-purpose computer system designed to perform one or a few
dedicated functions, often with real-time computing

An embedded system is … a system containing a processor where the processor is not generally
reprogrammable by the end user. For example, a cell phone containing a DSP

x86/ Atom
x86 products were originally targeted at the embedded market

The Atom processor is the latest in a long line of Intel processors which have been developed for
applications including the embedded market
     A cheap, relatively high performance processor, low TDP Thermal Design Power processor -
        requires no fan, low electrical power requirements makes it suitable for battery powered
     Executes more or less any existing x86 software
     Very wide range of software development tools and languages e.g. Visual Studio
     Excellent OS support including embedded Windows XP which has driver support from Intel
        and has extended product support ( ten years support )
     The Atom core can be incorporated with other on chip modules to produce a SOC product
        similar to the ARM products (deal with Taiwan Semiconductor Manufacturing Co ?)

X86/ 80579 System on a Chip
Intel® EP80579 Integrated Processors for embedded computing

80579 products incorporate an x86 core (Intel Pentium M) plus other modules - integrated memory
controller hub, integrated I/O controller hub, and flexible integrated
I/O support with three Ethernet MACs and a local expansion bus interface

Applications – router/ firewall/ encryption appliance

ARM (1800 employees $3 billion market capitalisation – 2.8 bilion processors sold in 2009)

ARM is a leader in microprocessor intellectual property IP. ARM designs and licenses fast, low-cost,
power-efficient RISC processors, peripherals etc.

ARM partners have delivered more than 10 billion mobile processors
 ARM processors are highly integrated for each application area e.g. mobile phone – a specialist
   signal processing block can be developed and added to each chip
 Processor are usually low frequency and consequently low power - ideal for mobile phone
 Well established development tools

11/03/2012 8:39 AM G South 88129494-4013-4a6b-846f-ce7bfb70101d.doc
The PIC architecture is distinctively minimalist. It is characterized by the following features:
 Separate code and data spaces (Harvard architecture)
 A small number of fixed length instructions
 Ideal for dedicated peripherals
 Low cost – rather primitive development tools

The Intel 8051 is a Harvard architecture, single chip microcontroller (µC) which was developed by
Intel in 1980 for use in embedded systems. Now no longer supported by Intel but still produced by
many manufacturers
     Used in applications such as the controller for a PC keyboard
     Suitable for automotive applications using CAN Control Area Network/ MP3 players/ USB

field-programmable gate array (FPGA) is a semiconductor device that can be configured by the
customer or designer after manufacturing – can be very high performance
      Ideal for high performance interfaces
      Might be used to develop a specialist interface e.g. USB3.0 before custom silicon was either
         available or justified

The term embedded system is very general - Intel list the following
    Digital Security Surveillance, Embedded Gaming, Enhanced Thin Clients, Enterprise Infrastructure
    Security, In-Vehicle Infotainment, Industrial Monitoring and Control, IP Services, Medical,
    Military, Aerospace, and Government, Retail, Storage, VoIP, Video and Converged
    Communications, Wireless Telecommunications Infrastructure, Consumer Electronics

    This course has concentrated on applications such as a distributed master-slave control system,
    kiosk and POS systems, MIDs Mobile Internet Devices, smartphones
Intel – the original microprocessors from Intel were designed for the embedded market – however
Intel has discontinued embedded processor products such as the 80188 and the 8051 although 8051
products are available from many sources – Intel now market the Atom processor as meeting the
requirements of many real-time applications with the advantage that there are a huge range of
sophisticated development tools – System on a Chip SoC devices incorporating the Atom with extra
functional blocks (graphics/ signal processing etc) have emerged – see Q6

ARM – over 10 billion ARM cores have been shipped by ARM partners – ARM don’t manufacture
products just design - Very popular in the mobile phone market (98% of phones use ARM)

Microchip Technology (PIC) – over 6 billion PIC devices have been sold by Microchip Technology –
ideal for many embedded applications e.g. the slave controller in the environmental control system

11/03/2012 8:39 AM G South 88129494-4013-4a6b-846f-ce7bfb70101d.doc
Atmel - 8051 – a powerful range of microcontrollers – similar applications to the PIC product

Atmel/ Xilinx - FPGA – ideal for high performance, dedicated designs
Market 2010 = $2.75 billion
    cryptography
    image processing

Embedded controllers are used in diverse applications from nuclear power stations to microwave
ovens – one size cannot fit all
    Some applications are high performance – missile control
    Some applications must be extensively tested for safety – flight control systems for an
    Some applications require triplication (three processors must agree) – railway signaling

Real-time systems are subject to a specific constraint – all the current data must be processed in a
specified time - data cannot be stored for future processing.

Usually there is some kind of processing loop which must be completed in a specified time:

        Resetting the watchdog timer
        Reading system inputs
        Reading operator inputs
        Reading communication inputs
        Processing data
        Outputting data to the plant
        Outputting data to the operator
        Outputting data to the communication channel(s)
Jump to Top_of_loop

All this must be completed in a fixed time or the system will fail

Intel have in recent years tried to focus on the lucrative PC market where chips sell for say $100
rather than $1 and where there is less competition. However the PC market is limited and Intel have
ambitions to move into other expanding areas e.g. MIDs Mobile Internet Devices and SmartPhones

A major selling point of the x86 range of products is that it has the widest range of software support
of any microprocessor product, so it is attractive to use existing microprocessor technology to
produce the Atom etc and then to sell these into any market which requires a 32-bit/ 64-bit
processor (Industrial PCs, Embedded Controllers, MIDs, SmartPhones etc)

x86 System on a Chip SoC products such as the EP80579 have a potential market in supporting
network applications (Voice over IP, mobile phone infra structure) – the EP80579 SoC can support

11/03/2012 8:39 AM G South 88129494-4013-4a6b-846f-ce7bfb70101d.doc
low cost network hardware (framing, routing, encryption, management etc) with few extra support

In the master-slave environmental controller the slave unit is real-time
The master unit for the environmental controller has aspects of real-time
Again the POS/ Kiosk systems have aspects which are real-time but a customer can wait for a bill or
information to be printed etc
The embedded system design is not so much about processing well defined data. The management
system will probably interface with a database involving individual names, tasks, outcomes etc using
say a web page as user interface, which is viewed on the browser of a client PC

The embedded system will have customised input/output sub-systems and will have to process
inputs which are not expected (corrupted barcode data/ unexpected user inputs etc)
The main advantage of a master-slave system is that it partitions the design into three major parts:
     The slave
     The master
     The communications

These can be designed almost in isolation so long as the interfaces are known. This means the
design teams can develop prototype systems to a given interface specification – often called a
message structure

A minor change in the slave specification (e.g. a control algorithm) should not impact on the master

Equally changing the master in terms of display organization will not impact on the slave

The inputs come from real-world sources and may contain noise or be erratic. So a simple square
wave input may contain additional input which doesn’t occur when such a program is simulated. Bar
codes may be incorrectly scanned yielding erroneous data - In the end extensive real-world testing is
needed using the end user to input data/ use interfaces

Software has to respond to inputs. So where can the inputs come from ?
Equally there must be outputs to control plant and report status etc

For real-time, embedded systems this can be:

       the local operator i.e. the user of the system via outputs (displays, LEDs etc) and (inputs
        buttons, switches etc)
       the plant which is what is being controlled
       the supervisory interface which can come from a supervisory or master computer

11/03/2012 8:39 AM G South 88129494-4013-4a6b-846f-ce7bfb70101d.doc
Nearly all embedded systems can be described in this way – sometimes there isn’t a supervisory
communications interface and sometimes the user interface is minor (ABS brake system on a car)

In a POS/kiosk application the local operator may use a touch screen, bar code reader etc - the
plant feature is minor but the supervisory interface to the server may be critical

Embedded Kiosk/POS applications are used universally when a PC cannot be deployed, because of
form factor (size and shape), specialist inputs (remote touch screen, bar code reader), environment
(dust, moisture, vibration), security etc

12.1 The first stage is clearly to get a specification of the kiosk/POS system from the customer. This
will almost certainly change once the initial prototype is demonstrated

12.2 Our approach has been to produce a prototype system using a PC using RAD (Rapid Application
Development) technology e.g. Visual Studio – this allows the features of the PC (e.g. the display, a
disk file) to aid debugging especially the program logic, algorithms and screen layout –however
features which don’t exist on the PC such as a touch screen, a till unit, barcode reader, server will
have to be simulated.

12.3 Thus key features of the design can be demonstrated to the customer at a very early stage –
changes to the specification at this stage are easily accommodated – an advantage of RAD

12.4 The embedded hardware is now assembled – e.g. a single board computer module
incorporating the Atom processor and related interfaces (facilitated by say the System Controller
Hub .. see the handout) – features such as a till interface (USB), touch screen, card reader (USB),
barcode reader (USB) Ethernet interface can be connected

12.5 The software is ported from the XP environment of the PC and is now hosted on the Atom
based embedded system using say embedded XP and related device drivers

12.6. The peripherals can be tested individually for functionality and then combined incrementally to
produce a final prototype – this can be demonstrated to the customer- but changes at this point
may require serious redesigning of the software and related expense

See the PowerPoint presentation for the Embedded Solutions – Hardware and Software Slide 14
Tutorial onwards

ARM products have a more efficient architecture than x86 products – the RISC (Reduced Instruction
Set Computer) architecture allows more efficient use of the hardware and will give more processing
power per Watt – this is not critical in say, desktop PCs and less of an issue in laptops where a large
battery can be deployed – however it is a major issue in smartphones where x86 processors are
significantly less battery power efficient than ARM designs

11/03/2012 8:39 AM G South 88129494-4013-4a6b-846f-ce7bfb70101d.doc
However at the moment Windows is only available for the x86 architecture so devices such as a
Mobile Internet Device MID e.g. the Slate or Tablet style products must use x86 processors if they
are to use Windows and Windows applications – this is also true of Flash applications

ARM – low power (battery) processors using a RISC instruction set – ok for one of the many dialects
of Linux – dual core products now available – easily enhanced by adding IP (Intellectual Property)
blocks to the core architecture e.g. DSP Digital Signal Processing/ Encryption etc/ interfaces to 3G
mobile phone technology/ graphics – SoC System on a chip concepts are very mature and the vast
majority of smartphones use ARM technology - Linux dialects are replacing the classic mobile phone
operating systems

x86 – supports Windows/ Windows Applications/ Flash (vast amount of tested x86 software exists) –
CISC Complex Instruction Set processors so lots of transistors needed and heat generated – the
Atom architecture is a simpler x86 product than say Core i3 ( no out of order execution unit etc), this
reduces the battery power required but also reduces the processing power

The original netbook products used the Atom processor but to reduce storage requirements used
Linux plus a small capacity Solid State Disk – subsequently users demanded Windows rather than
Linux and Solid State Disks were replaced by larger hard disks

Both ARM and Intel see the smartphone and Mobile Internet Device markets as very lucrative – the
main advantage for x86 is the support from existing x86 software, Microsoft Windows and Flash
whereas the ARM out performs x86 on battery efficiency and is now well supported by Linux dialects

Developing ARM products for the netbook and Tablet (MID) market is not difficult all the technology
exists – however the only obstacle is convincing users they don’t need Windows/ MS Office – a
smart virtual desktop is required
Intel need to expand to justify and maintain their investment in new plant. The expansion of the
smartphone market appears guaranteed for many years to come.

x86 smartphones have been demonstrated by Intel - the LG GW990, an Atom -powered smartphone
that runs Intel's Linux-based Moblin operating system although it is to be upgraded to the MeeGo OS
which is being developed by Intel and Nokia. The product is expected to arrive on the market in the
second half of this year. There seems no particular advantage in using an x86 processor unless it can
deliver more performance per Watt than ARM solutions
We can only presume that x86 solutions were considered and rejected – perhaps on battery power
or graphics support or perhaps to stop anybody cloning the iPad by using a proprietary (Apple
developed ?) processor. Apple does use Intel processors in their Personal Computer products. The
iPad doesn’t use Windows/ Flash etc so the only advantage of using an Atom processor would be
only that Intel can manufacture them in vast numbers and low price

11/03/2012 8:39 AM G South 88129494-4013-4a6b-846f-ce7bfb70101d.doc
11/03/2012 8:39 AM G South 88129494-4013-4a6b-846f-ce7bfb70101d.doc

Shared By: