Embedded Systems[All Units]

Embed Size (px)

Citation preview

  • 8/10/2019 Embedded Systems[All Units]

    1/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    1 EMBEDDED SYSTEMS

    Department of Computer Science and Engineering

    Subject Name:EMBEDDED SYSTEMS Subject Code: CS T56

    Prepared By :

    Mr.P.Karthikeyan,AP/CSE

    Mr.B.Thiyagarajan, AP/CSE

    Mrs.P.Subha Priya, AP/CSE

    Verified by : Approved by :

    UNITI

    Introduction to Embedded System: Components of Embedded System

    Classification - Characteristic of embedded system- Microprocessors & Micro

    controllers- Introduction to embedded processors - Embedded software

    architectures: Simple control loop

    Interrupt controlled system - Cooperative

    multitasking - Preemptive multitasking or multi-threading Micro kernels and

    exokernels - Monolithic kernels - Exotic custom operating systems.

  • 8/10/2019 Embedded Systems[All Units]

    2/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    2 EMBEDDED SYSTEMS

    2 MARKS

    UNIT 1

    1. What is an embedded system? [April 2012]

    An embedded system employs a combination of hardware & software (a computational

    engine) to perform a specific function; is part of a larger system that may not be a computer;works in a reactive and time-constrained environment.

    2. What are the components of the Embedded Systems? [NOV 2011]

    An embedded system is basically acomputer controlled device designed to perform some

    specific tasks. In most cases these tasks revolve around real-time control of machines or

    processes. Embedded systems are more cost effective to implement than systems composed of

    general purposecomputers,such as PCs. The components of ES are,

    Memory

    System Clock

    Peripherals

    3. What is the Classification of an embedded system? [April 2013]

    The Embedded system is classified into following category

    Small Scale Embedded System

    Medium Scale Embedded System

    Sophisticated Embedded System

    4. What is Sophisticated Embedded System?

    The sophisticated embedded system has the following features,

    Enormous hardware and software Complexity.

    This may need scalable processor or configurable processor and programming logic

    arrays.

    Constrained by the processing speed available in their hardware units.

    5. What are the characteristics of an embedded system?

    The typical characteristics of the embedded Systems are as follows: Embedded systems are designed to do some specific task, rather than be a general-

    purpose computer for multiple tasks. Some also have real-timeperformance constraints

    that must be met, for reason such as safety and usability; others may have low or no

    http://www.ehow.com/computers/http://www.ehow.com/computers/http://en.wikipedia.org/wiki/Real-time_computinghttp://en.wikipedia.org/wiki/Real-time_computinghttp://www.ehow.com/computers/http://www.ehow.com/computers/
  • 8/10/2019 Embedded Systems[All Units]

    3/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    3 EMBEDDED SYSTEMS

    performance requirements, allowing the system hardware to be simplified to reduce

    costs.

    Embedded systems are not always separate devices. Most often they are physically built-

    in to the devices they control.

    The software written for embedded systems is often called firmware, and is stored inread-only memory or Flash memory chips rather than a disk drive. It often runs with

    limited computer hardware resources: small or no keyboard, screen, and little memory.

    6. What are the advantages of embedded system?

    The advantages of the embedded system are Customization yields lower area, power,

    cost.

    7. What are the disadvantages of embedded system?

    Higher HW/software development overhead

    design, compilers, debuggers, ...

    May result in delayed time to market!

    8. What are the various embedded system requirements?

    Types of requirements imposed by embedded applications:

    R1 Functional requirements

    R2 Temporal requirements

    R3 Dependability requirements

    9. What are the functional requirements of embedded system?

    The functional requirements of the embedded systems are as follows:

    Data Collection

    Sensor requirements

    Signal conditioning

    Alarm monitoring

    Direct Digital Control

    ActuatorsMan-Machine Interaction

    Informs the operator of the current state of the controlled object assists the

    operator in controlling the system.

    http://en.wikipedia.org/wiki/Firmwarehttp://en.wikipedia.org/wiki/Flash_memoryhttp://en.wikipedia.org/wiki/Flash_memoryhttp://en.wikipedia.org/wiki/Firmware
  • 8/10/2019 Embedded Systems[All Units]

    4/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    4 EMBEDDED SYSTEMS

    10. What are the temporal requirements of the embedded systems?

    The temporal requirements of the embedded systems:

    Tasks may have deadlines

    Minimal latency jitter

    Minimal error detection latency Timing requirements due to tight software control loops

    Human interface requirements.

    11. What are dependability requirements of an embedded system?

    The dependability requirements of an embedded system are as follows

    Safety

    critical failure modes

    certification

    Maintainability

    MTTR in terms of repairs per hour

    Availability

    A = MTTF / (MTTF + MTTR)

    Security

    12. What is a Microprocessor?

    A silicon chip that contains a CPU. In the world of personal computers, the terms

    microprocessorand CPU are used interchangeably. At the heart of all personal computers and

    most workstations sits a microprocessor. Microprocessors also control the logic of almost all

    digitaldevices,from clock radios to fuel-injectionsystems for automobiles.

    13. What is a Microcontroller? [NOV 2012]

    A microcontrolleris a small and low-cost computer built for the purpose of dealing with

    specific tasks, such as displaying information in a microwaveLED or receiving information from

    a televisions remote control. Microcontrollersare mainly used in products that require a degreeof control to be exerted by the user.

    http://www.webopedia.com/TERM/S/silicon.htmlhttp://www.webopedia.com/TERM/C/chip.htmlhttp://www.webopedia.com/TERM/C/CPU.htmlhttp://www.webopedia.com/TERM/P/personal_computer.htmlhttp://www.webopedia.com/TERM/W/workstation.htmlhttp://www.webopedia.com/TERM/D/digital.htmlhttp://www.webopedia.com/TERM/D/device.htmlhttp://www.webopedia.com/TERM/S/system.htmlhttp://www.engineersgarage.com/content/ledhttp://www.engineersgarage.com/content/ledhttp://www.webopedia.com/TERM/S/system.htmlhttp://www.webopedia.com/TERM/D/device.htmlhttp://www.webopedia.com/TERM/D/digital.htmlhttp://www.webopedia.com/TERM/W/workstation.htmlhttp://www.webopedia.com/TERM/P/personal_computer.htmlhttp://www.webopedia.com/TERM/C/CPU.htmlhttp://www.webopedia.com/TERM/C/chip.htmlhttp://www.webopedia.com/TERM/S/silicon.html
  • 8/10/2019 Embedded Systems[All Units]

    5/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    5 EMBEDDED SYSTEMS

    14. What are differences between Microprocessor and Microcontroller?

    MICROPROCESSOR MICROCONTROLLERS

    The functional blocks are

    ALU, registers, timing &

    control unit.

    It includes functional blocks of

    microprocessors & in addition

    has timer, parallel i/o, RAM,

    EPROM, and ADC & DAC.

    Bit handling instruction is less,

    one or two type only.

    Many types of bit handling

    instruction.

    Rapid movements of code and

    data between external memory

    & MP.

    Rapid movements of code and

    data within me.

    It is used for designing general

    purpose digital computers

    system.

    They are used for designing

    application specific dedicated

    systems.

    15. What are the various embedded system designs?

    Modeling

    Refining (or partitioning)

    HW-SW partitioning

    16. What are the complicating factors in embedded design?

    Complicating factors in the design of embedded systems

    Many of the subtasks in design are intertwined.

    Allocation depends on the partitioning, and scheduling presumes a certain allocation.

    Predicting the time for implementing the modules in hardware or software is not very

    easy, particularly for tasks that have not been performed before.17. What are the real time requirements of an embedded system?

    Hard-real time systems: where there is a high penalty for missing a deadline

    e.g., control systems for aircraft/space probes/nuclear reactors; refresh rates for video, or DRAM.

  • 8/10/2019 Embedded Systems[All Units]

    6/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    6 EMBEDDED SYSTEMS

    Soft real-time systems: where there is a steadily increasing penalty if a deadline is

    missed.

    e.g., laser printer: rated by pages-per-minute, but can take differing times to print a page

    (depending on the \"complexity\" of the page) without harming the machine or the customer.

    18. Explain digital signal processing in embedded system?Continued digitization of signals increasing the role of DSP in ES

    Signals are represented digitally as sequence of samples

    ADCs are moving closer to signals

    19. List the various processors that are present?

    Expand GPP and ASSP. [NOV 2012]

    General Purpose Processor (GPP)

    Microprocessor

    Microcontroller

    Embedded Processor

    Digital Signal Processor

    Application Specific System Processor (ASSP)

    Multi Processor System using GPPS

    20. What is the Embedded Processor? [April 2013]

    Special microprocessor and microcontrollers often called Embedded Processor. An

    embedded processor is used when fast processing fast context switching and atomic ALU

    operations are needed.

    Examples: ARM7, INTEL 1960, AMD 29050.

    21. Give the reactivitys in embedded system?

    Closed systems

    Execution indeterminacy confined to one source

    Causal relations are easily established.

    Open systems Indeterminacy from multiple sources, not controllable or observable by the programmer not

    possible to infer causal relations

  • 8/10/2019 Embedded Systems[All Units]

    7/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    7 EMBEDDED SYSTEMS

    22. What are embedded cores?

    More and more vendors are selling or giving away their processors and peripherals in a

    form that is ready to be integrated into a programmable logic-based design. They either

    recognize the potential for growth in the system-on-a-chip area or want a piece of the royalties orwant to promote the use of their particular FPGA or CPLD by providing libraries of ready-to-use

    building blocks. Either way, you will gain with lower system costs and faster time-to-market.

    23. What are hybrid chips?

    The vendors of hybrid chips are betting that a processor core embedded within a

    programmable logic device will require far too many gates for typical applications. So they\'ve

    created hybrid chips that are part fixed logic and part programmable logic. The fixed logic

    contains a fully functional processor and perhaps even some on-chip memory. This part of the

    chip also interfaces to dedicated address and data bus pins on the outside of the chip.

    Application-specific peripherals can be inserted into the programmable logic portion of the chip,

    either from a library of IP cores or the customer\'s own designs.

    24. Give the diversity of embedded computing?

    Diversity in Embedded Computing ; Pocket remote control RF transmitter ; 100 KIPS,

    crush-proof, long battery life ; Software optimized for size ; Industrial equipment controller ; 1

    MIPS, safety-critical, 1 MB memory ; Software control loops ; Military signal processing ; 1

    GFLOPS, 1 GB/sec IO, 32 MB

    25. What is a kernel? [April 2012]

    The kernelis a program that constitutes the central core of a computeroperating system.

    It has complete control over everything that occurs in the system. A kernel can be contrasted

    with a shell (such as bash, cshor ksh in Unix-like operating systems), which is the outermostpart of an operating system and a program that interacts with user commands.The kernel itself

    does not interact directly with the user, but rather interacts with the shell and other programs as

    well as with the hardware devices on the system, including the processor (also called the central

    processing unit or CPU),memory and disk drives.

    http://www.linfo.org/operating_systems_list.htmlhttp://www.linfo.org/shell.htmlhttp://www.linfo.org/shell.htmlhttp://www.linfo.org/unix-like.htmlhttp://www.linfo.org/command.htmlhttp://www.linfo.org/memory.htmlhttp://www.linfo.org/memory.htmlhttp://www.linfo.org/command.htmlhttp://www.linfo.org/unix-like.htmlhttp://www.linfo.org/shell.htmlhttp://www.linfo.org/operating_systems_list.html
  • 8/10/2019 Embedded Systems[All Units]

    8/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    8 EMBEDDED SYSTEMS

    26. What are the types of Kernel?

    There are four popular categories or kinds of Kernels namely monolithic kernels,

    microkernels, hybrid kernels and exokernels. Monolithic kernels are part of Unix-like operating

    systems like Linux, FreeBSD etc. These types of kernels consist of the core functions of the

    operating system and the device drivers with the ability to load modules at runtime.

    27. Define Cooperative Multitasking?

    A type of multitasking in which the process currently controlling the CPU must offer

    control to other processes. It is called cooperativebecause allprograms must cooperate for it to

    work. If one program does not cooperate, it can hog the CPU. In contrast, preemptive

    multitaskingforcesapplications to share the CPU whether they want to or not. Versions 8.0-9.2.2

    of Macintosh OS and Windows 3.x operating systems are based on cooperative multitasking,

    whereas UNIX,Windows 95,Windows NT,OS/2,and later versions of Mac OS are based on

    preemptive multitasking.

    28. What is Preemptive Multitasking?

    The term preemptive multitasking is used to distinguish a multitasking operating

    system, which permits preemption of tasks, from a cooperative multitasking system wherein

    processes or tasks must be explicitly programmed to yield when they do not need system

    resources.

    29. What is Exotic custom operating system?

    A small fraction of embedded systems require safe, timely, reliable or efficient behavior

    unobtainable with the one of the above architectures. In this case an organization builds a system

    to suit. In some cases, the system may be partitioned into a "mechanism controller" using special

    techniques, and a "display controller" with a conventional operating system. A communication

    system passes data between the two.

    30. List the applications of Embedded Systems?

    Embedded Systems: Applications:

    Consumer electronics, e.g., cameras, camcorders,

    http://www.webopedia.com/TERM/M/multitasking.htmlhttp://www.webopedia.com/TERM/P/process.htmlhttp://www.webopedia.com/TERM/C/CPU.htmlhttp://www.webopedia.com/TERM/P/program.htmlhttp://www.webopedia.com/TERM/A/application.htmlhttp://www.webopedia.com/TERM/M/Macintosh_computer.htmlhttp://www.webopedia.com/TERM/W/Windows.htmlhttp://www.webopedia.com/TERM/O/operating_system.htmlhttp://www.webopedia.com/TERM/U/UNIX.htmlhttp://www.webopedia.com/TERM/W/Windows_95.htmlhttp://www.webopedia.com/TERM/W/Windows_NT.htmlhttp://www.webopedia.com/TERM/O/OS_2.htmlhttp://en.wikipedia.org/wiki/Computer_multitasking#Cooperative_multitasking.2Ftime-sharinghttp://en.wikipedia.org/wiki/Computer_multitasking#Cooperative_multitasking.2Ftime-sharinghttp://www.webopedia.com/TERM/O/OS_2.htmlhttp://www.webopedia.com/TERM/W/Windows_NT.htmlhttp://www.webopedia.com/TERM/W/Windows_95.htmlhttp://www.webopedia.com/TERM/U/UNIX.htmlhttp://www.webopedia.com/TERM/O/operating_system.htmlhttp://www.webopedia.com/TERM/W/Windows.htmlhttp://www.webopedia.com/TERM/M/Macintosh_computer.htmlhttp://www.webopedia.com/TERM/A/application.htmlhttp://www.webopedia.com/TERM/P/program.htmlhttp://www.webopedia.com/TERM/C/CPU.htmlhttp://www.webopedia.com/TERM/P/process.htmlhttp://www.webopedia.com/TERM/M/multitasking.html
  • 8/10/2019 Embedded Systems[All Units]

    9/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    9 EMBEDDED SYSTEMS

    Consumer products, e.g., washers, microwave ovens,

    Automobiles (anti-lock braking, engine control,)

    Industrial process controllers & avionics/defense applications

    Computer/Communication products, e.g., printers, FAX machines,

    Emerging multimedia applications & consumer electronics31. What are the two essential units of a Processor?[NOV 2011]

    Program Flow Control Unit (CU)

    Execution Unit (EU)

    11 MARKS

    1. Describe Embedded System In Detail?

    System:

    A system is a way of working, organizing or doing one or many tasks according to a

    fixed plan, program or set of rules. A system is also a arrangement in which all its units assemble

    and work together according to the plan or program.

    System Examples:

    1. Watch

    It is time display system.

    Parts: Hardware, Needles, Battery, Dial, Chassis and Strap.

    Rules: (1) All needles move clockwise only

    (2) A thin needle rotates every second.

    (3) A long needle rotates every minute.

    (4) A short needle rotates every hour.

    (5) All needles return to the original position after 12 hours.2. Washing Machine

    It is an automatic clothes washing System.

    Parts: Status display panel, switches and dials, Motor, Power Supply, Control Unit, Inner water

    level sensor and solenoid valve

  • 8/10/2019 Embedded Systems[All Units]

    10/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    10 EMBEDDED SYSTEMS

    Rules: (1) Wash by spinning

    (2) Rinse

    (3) Drying

    (4) Wash over by Blinking

    (5) Each step displays the process stages.(6) In case interruption, execute only the remaining.

    Embedded Systems:

    Definition:

    An embedded system is one that has computer hardware with software embedded in it as one of

    its important components.

    [Its software embeds in ROM (Read only Memory). It does not need secondary memories as in a

    computer]

    Computer hardwares that can be used:

    A Microprocessor

    A Large Memory (Ram, ROM and caches)

    Input Units (Keyboard, Mouse, Scanner, etc)

    Output Units (Monitor, Printer, etc)

    Networking Units (Ethernet Card, Drivers, etc)

    I/O Units (Modem, Fax cum modem, etc)

    Embedded system is a

    Microcontroller based

    Software driven

    Reliable

    Real time control system

    SOFTWARE

    PROGRAMHARDWARE

  • 8/10/2019 Embedded Systems[All Units]

    11/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    11 EMBEDDED SYSTEMS

    Autonomous or Human interactive

    Operating on diverse physical variable

    In diverse environments

    Embedded system is Hardware with Software embedded in it, for a dedicated application.

    2. Explain The Components, Classification And Characteristics Of Embedded System

    Briefly? [NOV 2011], [April 2012], [April 2013]

    I. COMPONENTS OF EMBEDDED SYSTEM:An embedded system is basically acomputer controlled device designed to perform some

    specific tasks. In most cases these tasks revolve around real-time control of machines or

    processes. Embedded systems are more cost effective to implement than systems composed of

    general purposecomputers,such as PCs.

    Processor

    The main part of an embedded system is its processor. This can be a generic

    microprocessor or a microcontroller. The processor is programmed to perform the

    specific tasks for which the embedded system has been designed.

    Memory

    1. Electronic memory is an important part of embedded systems. This memory is of

    essentially three types: RAM, or random access memory, ROM, or read-only memory,

    and cache. The RAM is where program components are temporarily stored during

    execution. The ROM contains the basic input-output routines that are needed by the

    system at startup. The cache is used by the processor as a temporary storage during

    processing and data transfer.

    System Clock

    The system clock is a very important part of an embedded system since all processes in

    an embedded system run on clock cycles and require precise timing information. This

    clock generally consists of an oscillator and some associated circuitry.

    http://www.ehow.com/computers/http://www.ehow.com/computers/http://www.ehow.com/computers/http://www.ehow.com/computers/
  • 8/10/2019 Embedded Systems[All Units]

    12/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    12 EMBEDDED SYSTEMS

    Peripherals

    The peripherals interface an embedded system with other components. The peripheral devices

    are provided on the embedded system boards for easy integration. Typical peripherals include

    serial port, parallel port, network port, keyboard and mouse ports, memory drive port and

    monitor port. Some specialized embedded systems also have other ports such as CAN-bus port.II. CLASSIFICATION OF EMBEDDED SYSTEMS

    Small Scale Embedded Systems

    Medium Scale Embedded Systems

    Sophisticated Embedded Systems

    SMALL SCALE EMBEDDED SYSTEMS

    Single 8 bit or 16 bit Micro Controllers.

    Little hardware and software complexity

    They may even be battery operated.

    Usually c is used for developing these systems.

    The need to limit power dissipation when system is running continuously

    MEDIUM SCALE EMBEDDED SYSTEMS

    Single or few 16 or 32 bits microcontrollers or digital signal processors (DSP) or reduced

    Instructions set computers (RISC).

    Both hardware and software complexity.

    SOPHISTICATED EMBEDDED SYSTEMS

    Enormous hardware and software Complexity.

    This may need scalable processor or configurable processor and programming logic

    arrays.

    Constrained by the processing speed available in their hardware units.

    III. CHARACTERISTICS OF EMBEDDED SYSTEMS

    1) Embedded systems are designed to do some specific task, rather than be a general-

    purpose computer for multiple tasks. Some also havereal-timeperformance constraints that must

    http://en.wikipedia.org/wiki/Real-time_computinghttp://en.wikipedia.org/wiki/Real-time_computing
  • 8/10/2019 Embedded Systems[All Units]

    13/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    13 EMBEDDED SYSTEMS

    be met, for reason such as safety and usability; others may have low or no performance

    requirements, allowing the system hardware to be simplified to reduce costs.

    2) Embedded systems are not always separate devices. Most often they are physically

    built-in to the devices they control.

    3) The software written for embedded systems is often called firmware,and is stored in read-only memory orFlash memory chips rather than a disk drive. It often runs with limited computer

    hardware resources: small or no keyboard, screen, and little memory.

    3. What is a Microcontroller explain with an example? [NOV 2011]

    A microcontroller(sometimes abbreviated C, uCor 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 ofNOR flash orOTP ROM is also often included on

    chip, as well as a typically small amount ofRAM.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, office

    machines, appliances, power tools, and toys. 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.

    Thedie from an Intel 8742, an 8-bit microcontroller that includes a CPU running at 12

    MHz, 128 bytes ofRAM,2048 bytes ofEPROM,andI/O in the same chip.

    http://en.wikipedia.org/wiki/Firmwarehttp://en.wikipedia.org/wiki/Flash_memoryhttp://en.wikipedia.org/wiki/Integrated_circuithttp://en.wikipedia.org/wiki/Input/outputhttp://en.wikipedia.org/wiki/Flash_memory#NOR_flashhttp://en.wikipedia.org/wiki/Programmable_read-only_memoryhttp://en.wikipedia.org/wiki/Random-access_memoryhttp://en.wikipedia.org/wiki/Microprocessorhttp://en.wikipedia.org/wiki/Personal_computerhttp://en.wikipedia.org/wiki/Die_%28integrated_circuit%29http://en.wikipedia.org/wiki/Intelhttp://en.wikipedia.org/wiki/CPUhttp://en.wikipedia.org/wiki/RAMhttp://en.wikipedia.org/wiki/EPROMhttp://en.wikipedia.org/wiki/Input/outputhttp://en.wikipedia.org/wiki/Input/outputhttp://en.wikipedia.org/wiki/EPROMhttp://en.wikipedia.org/wiki/RAMhttp://en.wikipedia.org/wiki/CPUhttp://en.wikipedia.org/wiki/Intelhttp://en.wikipedia.org/wiki/Die_%28integrated_circuit%29http://en.wikipedia.org/wiki/Personal_computerhttp://en.wikipedia.org/wiki/Microprocessorhttp://en.wikipedia.org/wiki/Random-access_memoryhttp://en.wikipedia.org/wiki/Programmable_read-only_memoryhttp://en.wikipedia.org/wiki/Flash_memory#NOR_flashhttp://en.wikipedia.org/wiki/Input/outputhttp://en.wikipedia.org/wiki/Integrated_circuithttp://en.wikipedia.org/wiki/Flash_memoryhttp://en.wikipedia.org/wiki/Firmware
  • 8/10/2019 Embedded Systems[All Units]

    14/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    14 EMBEDDED SYSTEMS

    8051 MICROCONTROLLER SIGNAL PINS

    VARIOUS MICROCONTROLLERS

    INTEL 8031, 8032, 8051, 8052, 8751, 8752

    PIC 8bit PIC 16, PIC 18

    16bit DSPIC 33/PIC 24

    PIC 16C7X

    MOTOROLO MC 68HC11

    4. What is Microprocessor? Explain with an example? [NOV 2012]

    A microprocessor incorporates the functions of a computer's central processing unit

    (CPU) on a singleintegrated circuit (IC, or microchip).

    It is a multipurpose, programmable, and clock-driven, register based electronic device

    that acceptsbinary data as input, processes it according to instructions stored in its memory, and

    provides results as output.The first microprocessors emerged in the early 1970s and were used for electronic

    calculators,usingbinary-coded decimal (BCD) arithmetic on 4-bitwords.Otherembedded uses

    of 4-bit and 8-bit microprocessors, such asterminals,printers,various kinds of automation etc.,

    http://en.wikipedia.org/wiki/Computerhttp://en.wikipedia.org/wiki/Central_processing_unithttp://en.wikipedia.org/wiki/Integrated_circuithttp://en.wikipedia.org/wiki/Binary_filehttp://en.wikipedia.org/wiki/Calculatorhttp://en.wikipedia.org/wiki/Binary-coded_decimalhttp://en.wikipedia.org/wiki/Word_%28data_type%29http://en.wikipedia.org/wiki/Embedded_systemhttp://en.wikipedia.org/wiki/Computer_terminalhttp://en.wikipedia.org/wiki/Computer_printerhttp://en.wikipedia.org/wiki/Automationhttp://en.wikipedia.org/wiki/Automationhttp://en.wikipedia.org/wiki/Computer_printerhttp://en.wikipedia.org/wiki/Computer_terminalhttp://en.wikipedia.org/wiki/Embedded_systemhttp://en.wikipedia.org/wiki/Word_%28data_type%29http://en.wikipedia.org/wiki/Binary-coded_decimalhttp://en.wikipedia.org/wiki/Calculatorhttp://en.wikipedia.org/wiki/Binary_filehttp://en.wikipedia.org/wiki/Integrated_circuithttp://en.wikipedia.org/wiki/Central_processing_unithttp://en.wikipedia.org/wiki/Computer
  • 8/10/2019 Embedded Systems[All Units]

    15/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    15 EMBEDDED SYSTEMS

    followed soon after. Affordable 8-bit microprocessors with 16-bit addressing also led to the first

    general-purposemicrocomputers from the mid-1970s on.

    Intel 4004,the first general-purpose, commercial microprocessor

    INTEL 4004 MICRO PROCESSOR SIGNAL PINS

    _______ ________| \__/ |_

    D0 |_|1 16|_| RAM0 -->

    _| |_

    D1 |_|2 15|_| RAM1 -->

    _| |_

    D2 |_|3 14|_| RAM2 -->

    _| |_

    D3 |_|4 13|_| RAM3 -->

    _| 4004 |_

    (+5v) Vss |_|5 12|_| Vdd (-10v)

    _| |_

    --> CLK1 |_|6 11|_| ROM -->

    _| |_

    --> CLK2 |_|7 10|_| TST

  • 8/10/2019 Embedded Systems[All Units]

    16/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    16 EMBEDDED SYSTEMS

    The first microprocessor in history, Intel 4004 was a 4-bit CPU designed for usage in

    calculators, or, as we say now, designed for "embedded applications". Clocked at 740 KHz, the

    4004 executed up to 92,000 single word instructions per second, could access 4 KB of program

    memory and 640 bytes of RAM. Although the Intel 4004 was perfect fit for calculators and

    similar applications it was not very suitable for microcomputer use due to its somewhat limitedarchitecture. The 4004 lacked interrupt support, had only 3-level deep stack, and used

    complicated method of accessing the RAM. Some of these shortcomings were fixed in the 4004

    successor -Intel 4040.

    Intel C4004

    740 KHz

    16-pin ceramic DIP

    4004 (C4004) processors in white ceramic package were produced until the second half of 1976.

    This particular processor is dated 8th week of 1975. Today the C4004 with visible traces (like

    the one on the picture) is the most rare and expensive version of Intel 4004.

    Intel D4004

    740 KHz

    16-pin ceramic DIP

    4004 microprocessors in plastic and ceramic (not white ceramic) packages were introduced

    around 1976. This ceramic 4004 is dated 45th week of 1976.

    http://if%28confirm%28%27http//www.cpu-world.com/CPUs/4040/index.html%20%20/n/nThis%20file%20was%20not%20retrieved%20by%20Teleport%20Pro,%20because%20it%20is%20addressed%20on%20a%20domain%20or%20path%20outside%20the%20boundaries%20set%20for%20its%20Starting%20Address.%20%20/n/nDo%20you%20want%20to%20open%20it%20from%20the%20server?%27))window.location=%27http://www.cpu-world.com/CPUs/4040/index.html%27http://www.c4004.com/cpu-world/Intel-C4004.htmlhttp://www.c4004.com/cpu-world/Intel-D4004.htmlhttp://www.c4004.com/cpu-world/Intel-D4004.htmlhttp://www.c4004.com/cpu-world/Intel-C4004.htmlhttp://if%28confirm%28%27http//www.cpu-world.com/CPUs/4040/index.html%20%20/n/nThis%20file%20was%20not%20retrieved%20by%20Teleport%20Pro,%20because%20it%20is%20addressed%20on%20a%20domain%20or%20path%20outside%20the%20boundaries%20set%20for%20its%20Starting%20Address.%20%20/n/nDo%20you%20want%20to%20open%20it%20from%20the%20server?%27))window.location=%27http://www.cpu-world.com/CPUs/4040/index.html%27
  • 8/10/2019 Embedded Systems[All Units]

    17/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    17 EMBEDDED SYSTEMS

    Intel P4004

    740 KHz

    16-pin plastic DIP

    National Semiconductor 1NS4004D (INS4004D)

    16-pin ceramic DIP

    Purple ceramic/gold top/gold pins

    National Semiconductor was the only second source company for the Intel 4004. The naming

    convention for the 4004 processors was "INS4004" plus one letter representing package type.

    The chip on the picture is mistakenly marked as "1NS4004D".

    National Semiconductor INS4004J

    16-pin plastic DIP

    Embedded microprocessor systems are computer chips that are incorporated into products

    such as cars, fridges, traffic lights, industrial equipment, and so on. Embedded microprocessor

    systems are used every day by millions of people, but these systems are not seen because, as the

    name implies, they are buried inside the product or the equipment. And because they are not

    seen, they do not receive as much attention from the media as does the personal computer (PC).

    However, the number of embedded microprocessor system computers and their economic

    importance is considerable. It was reported that as far back as 1997, around 30 million

    http://www.c4004.com/cpu-world/Intel-P4004.htmlhttp://www.c4004.com/cpu-world/National%20Semiconductor-1NS4004D%20%28INS4004D%29.htmlhttp://www.c4004.com/cpu-world/National%20Semiconductor-INS4004J.htmlhttp://www.c4004.com/cpu-world/National%20Semiconductor-INS4004J.htmlhttp://www.c4004.com/cpu-world/National%20Semiconductor-1NS4004D%20%28INS4004D%29.htmlhttp://www.c4004.com/cpu-world/Intel-P4004.html
  • 8/10/2019 Embedded Systems[All Units]

    18/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    18 EMBEDDED SYSTEMS

    microprocessor chips were used by PC manufacturers, whilst close to three billion were used in

    numerous embedded systems applications.

    VARIOUS MICROPROCESSORS

    INTEL Zilog

    4004, 4040 Z80, Z180, 1280

    8080, 8085 Z8, eZ8

    8086, 8088 and others

    80186, 80188

    80286, 80386

    X86-64

    5. Explain about an Embedded Processor?

    An Embedded Processors is simply a Processor that has been Embedded into a device.

    It is software programmable but interacts with different pieces of hardware. Performs both

    control and computation. More performance than a Controller but not as much performance as a

    general purpose processor. They are used in: Cars, Phones, Media Devices, Wireless, Printers.

    WHAT IS IT REALLY?

    Typically an Embedded Processor is a single-issue in-order RISC processor with a little

    cache. It can then sell as a piece of silicon, custom layout, net list, or architectural description.

    They are designed to be small, low power, and most importantly correct. Often due to the real-

    time constraints of an application area they are designed to have a small deterministic worst case

    time per instruction

    Example ARM

  • 8/10/2019 Embedded Systems[All Units]

    19/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    19 EMBEDDED SYSTEMS

    WHY USE AN EMBEDDED PROCESSOR?

    The main reason is simple: Cost

    Embedded processors are small so they dont take up much die area and thus they are cheap.

    Embedded processors are verifiedso I wont spend a bunch of engineering man hours tracking

    down hardware bugs.Embedded processors run softwarethe key part of that is the SOFTdeal with changing specs.

    DESIGN CRITERIA

    How do we design a good embedded processor?

    The three most important design criteria are performance, power, and cost.

    Performance is a function of the parallelism, instruction encoding efficiency, and cycle time (or

    the good old NumInstr, CPI, Freq)

    Power is approximately a function of the voltage, area, and switching frequency. Also a function

    execution time for leakage.

    Cost is a function of both area (how many fit on a die) and the complexity of use (in terms of

    engineering cost)

    ISA OPTIONS

    What sort of architecture do we want to design?

    What sort of ISA should I provide (pros/cons)?

    Register-Register / Memory-Memory

    RISC/ CISC

    Predication

    Compound Instructions (MAC,PostInc)

    Instruction Encoding

    Registers (number and access)

    VLIW / SIMD / Vector

    DESIGN OPTIONS

    What parts should be included (pros/cons)Core

    Instruction Cache

    Data Cache

    Multiplier

  • 8/10/2019 Embedded Systems[All Units]

    20/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    20 EMBEDDED SYSTEMS

    Scratch Pad Memory

    MMU

    Write Buffer

    TLB

    Branch Prediction

    FUTURE OF EMBEDDED PROCESSORS

    Pipeline lengths are starting to get very long. How does high performance architecture handle

    this Branch prediction? Intels XScale has branch prediction tables. Embedded processor designs

    take heavily from high performance processor designs. But now under different constraints

    What else will migrate to the embedded space?

    VLIW processors -Multiple issue machines, Scheduling done by the compiler, Customized

    Processors - Such as from Tensilica, Allows more cost effective design as we now pick only

    what is important - Instruction Compaction, Thumb is good, but we need to do better as more

    and more functionality moves to software

    6. Explain The Embedded System Architectures In Detail? [April 2010], [NOV 2012]

    There are several different types of software architecture in common use.

    I.

    SIMPLE CONTROL LOOP

    A common model for this kind of design is a state machine,which identifies a set of

    states that the system can be in and how it changes between them, with the goal of providing

    tightly defined system behavior. This system's strength is its simplicity, and on small pieces of

    software the loop is usually so fast that nobody cares that its timing is not predictable. It is

    common on small devices with a stand-alone microcontroller dedicated to a simple task.

    II. INTERRUPT CONTROLLED SYSTEM

    An INTERUPT CONTROL SYSTEM can include logic systems with at least oneinterrupt to a microprocessor. The interrupt not only can came from the processor, but also from

    the external components like the Memory, Graphic controller, A keyboard and can be from other

    I/O devices. Events are in asynchronous in nature. But Processors are in synchronous in nature.

    When interrupt occurred, the processor finds it as an interrupt and performs the required

    http://en.wikipedia.org/wiki/State_machinehttp://en.wikipedia.org/wiki/State_machine
  • 8/10/2019 Embedded Systems[All Units]

    21/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    21 EMBEDDED SYSTEMS

    instructions. This is referred to as an Interrupt service Routine (ISR). Interrupt latency is the time

    which the processor requires to perform the instruction by an ISR. This Interrupt latency should

    be reduced. For that ultra wideband media access control (UWB MAC) devices are introduced.

    These having an interrupt control system detect a set of particular instructions from the processor

    core to instruction random access memory (I-RAM). The interrupt control system provides thecore with the computer executable instructions that includes a branch instruction such that the

    processor can branch directly to an interrupt service routine (ISR) that provides the computer

    instructions for processing the event.

    III. COOPERATIVE MULTITASKING

    A type of multitasking in which the process currently controlling the CPU must offer

    control to other processes. It is called cooperativebecause allprograms must cooperate for it to

    work. If one program does not cooperate, it can hog the CPU. In contrast, preemptive

    multitaskingforcesapplications to share the CPU whether they want to or not. Versions 8.0-9.2.2

    of Macintosh OS and Windows 3.x operating systems are based on cooperative multitasking,

    whereas UNIX,Windows 95,Windows NT,OS/2,and later versions of Mac OS are based on

    preemptive multitasking.

    Anonpreemptive multitasking system is very similar to the simple control loop scheme,

    except that the loop is hidden in anAPI.The programmer defines a series of tasks, and each task

    gets its own environment to run in. When a task is idle, it calls an idle routine, usually called

    pause, wait, yield, nop (stands for no operation), etc.

    The advantages and disadvantages are very similar to the control loop, except that adding

    new software is easier, by simply writing a new task, or adding to the queue-interpreter.

    IV. PREEMPTIVE MULTITASKING OR MULTI-THREADING

    The term preemptive multitasking is used to distinguish a multitasking operating

    system, which permits preemption of tasks, from a cooperative multitasking system wherein

    processes or tasks must be explicitly programmed to yield when they do not need system

    resources.In this type of system, a low-level piece of code switches between tasks or threads based

    on a timer (connected to an interrupt). This is the level at which the system is generally

    considered to have an "operating system" kernel. Depending on how much functionality is

    http://www.webopedia.com/TERM/M/multitasking.htmlhttp://www.webopedia.com/TERM/P/process.htmlhttp://www.webopedia.com/TERM/C/CPU.htmlhttp://www.webopedia.com/TERM/P/program.htmlhttp://www.webopedia.com/TERM/A/application.htmlhttp://www.webopedia.com/TERM/M/Macintosh_computer.htmlhttp://www.webopedia.com/TERM/W/Windows.htmlhttp://www.webopedia.com/TERM/O/operating_system.htmlhttp://www.webopedia.com/TERM/U/UNIX.htmlhttp://www.webopedia.com/TERM/W/Windows_95.htmlhttp://www.webopedia.com/TERM/W/Windows_NT.htmlhttp://www.webopedia.com/TERM/O/OS_2.htmlhttp://en.wikipedia.org/wiki/Nonpreemptive_multitaskinghttp://en.wikipedia.org/wiki/Application_programming_interfacehttp://en.wikipedia.org/wiki/Computer_multitasking#Cooperative_multitasking.2Ftime-sharinghttp://en.wikipedia.org/wiki/Computer_multitasking#Cooperative_multitasking.2Ftime-sharinghttp://en.wikipedia.org/wiki/Application_programming_interfacehttp://en.wikipedia.org/wiki/Nonpreemptive_multitaskinghttp://www.webopedia.com/TERM/O/OS_2.htmlhttp://www.webopedia.com/TERM/W/Windows_NT.htmlhttp://www.webopedia.com/TERM/W/Windows_95.htmlhttp://www.webopedia.com/TERM/U/UNIX.htmlhttp://www.webopedia.com/TERM/O/operating_system.htmlhttp://www.webopedia.com/TERM/W/Windows.htmlhttp://www.webopedia.com/TERM/M/Macintosh_computer.htmlhttp://www.webopedia.com/TERM/A/application.htmlhttp://www.webopedia.com/TERM/P/program.htmlhttp://www.webopedia.com/TERM/C/CPU.htmlhttp://www.webopedia.com/TERM/P/process.htmlhttp://www.webopedia.com/TERM/M/multitasking.html
  • 8/10/2019 Embedded Systems[All Units]

    22/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    22 EMBEDDED SYSTEMS

    required, it introduces more or less of the complexities of managing multiple tasks running

    conceptually in parallel.

    As any code can potentially damage the data of another task (except in larger systems

    using anMMU)programs must be carefully designed and tested, and access to shared data must

    be controlled by some synchronization strategy, such asmessage queues,semaphores or anon-blocking synchronization scheme.

    Because of these complexities, it is common for organizations to use a real-time

    operating system (RTOS), allowing the application programmers to concentrate on device

    functionality rather than operating system services, at least for large systems; smaller systems

    often cannot afford the overhead associated with a genericreal time system, due to limitations

    regarding memory size, performance, and/or battery life. The choice that a RTOS is required

    brings in its own issues however as the selection must be done prior to starting to the application

    development process. This timing forces developers to choose the embedded operating system

    for their device based upon current requirements and so restricts future options to a large extent.

    The restriction of future options becomes more of an issue as product life decreases. Additionally

    the level of complexity is continuously growing as devices are required to manage many

    variables such as serial, USB, TCP/IP, Bluetooth, Wireless LAN, trunk radio, multiple channels,

    data and voice, enhanced graphics, multiple states, multiple threads, numerous wait states and so

    on. These trends are leading to the uptake of embedded middleware in addition to a real time

    operating system.

    V. KERNELS

    The kernelis a program that constitutes the central core of a computeroperating system.

    It has complete control over everything that occurs in the system. A kernel can be contrasted

    with a shell (such as bash, cshor ksh in Unix-like operating systems), which is the outermost

    part of an operating system and a program that interacts with user commands.The kernel itself

    does not interact directly with the user, but rather interacts with the shell and other programs as

    well as with the hardware devices on the system, including the processor (also called the centralprocessing unit or CPU),memory and disk drives.

    http://en.wikipedia.org/wiki/Memory_management_unithttp://en.wikipedia.org/wiki/Message_queuehttp://en.wikipedia.org/wiki/Semaphore_%28programming%29http://en.wikipedia.org/wiki/Non-blocking_synchronizationhttp://en.wikipedia.org/wiki/Non-blocking_synchronizationhttp://en.wikipedia.org/wiki/Real-time_operating_systemhttp://en.wikipedia.org/wiki/Real-time_operating_systemhttp://en.wikipedia.org/wiki/Embedded_middlewarehttp://www.linfo.org/operating_systems_list.htmlhttp://www.linfo.org/shell.htmlhttp://www.linfo.org/shell.htmlhttp://www.linfo.org/unix-like.htmlhttp://www.linfo.org/command.htmlhttp://www.linfo.org/memory.htmlhttp://www.linfo.org/memory.htmlhttp://www.linfo.org/command.htmlhttp://www.linfo.org/unix-like.htmlhttp://www.linfo.org/shell.htmlhttp://www.linfo.org/operating_systems_list.htmlhttp://en.wikipedia.org/wiki/Embedded_middlewarehttp://en.wikipedia.org/wiki/Real-time_operating_systemhttp://en.wikipedia.org/wiki/Real-time_operating_systemhttp://en.wikipedia.org/wiki/Non-blocking_synchronizationhttp://en.wikipedia.org/wiki/Non-blocking_synchronizationhttp://en.wikipedia.org/wiki/Semaphore_%28programming%29http://en.wikipedia.org/wiki/Message_queuehttp://en.wikipedia.org/wiki/Memory_management_unit
  • 8/10/2019 Embedded Systems[All Units]

    23/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    23 EMBEDDED SYSTEMS

    MICROKERNELS AND EXOKERNELS

    Amicrokernel is a logical step up from a real-time OS.

    The usual arrangement is that the operating system kernel allocates memory and switches

    the CPU to different threads of execution. User mode processes implement major functions such

    as file systems, network interfaces, etc.In general, microkernels succeed when the task switching and intertask communication is

    fast, and fail when they are slow.

    Exokernels communicate efficiently by normal subroutine calls. The hardware and all the

    software in the system are available to, and extensible by application programmers.

    MONOLITHIC KERNELS

    In this case, a relatively large kernel with sophisticated capabilities is adapted to suit an

    embedded environment. This gives programmers an environment similar to a desktop operating

    system likeLinux orMicrosoft Windows,and is therefore very productive for development; on

    the downside, it requires considerably more hardware resources, is often more expensive, and

    because of the complexity of these kernels can be less predictable and reliable.

    Common examples of embedded monolithic kernels areEmbedded Linux andWindows CE.

    Despite the increased cost in hardware, this type of embedded system is increasing in

    popularity, especially on the more powerful embedded devices such as Wireless Routers and

    GPS Navigation Systems.Here are some of the reasons:

    Ports to common embedded chip sets are available.

    They permit re-use of publicly available code for Device Drivers, Web Servers,

    Firewalls,and other code.

    Development systems can start out with broad feature-sets, and then the distribution can

    be configured to exclude unneeded functionality, and save the expense of the memory

    that it would consume.

    Many engineers believe that running application code in user mode is more reliable,

    easier to debug and that therefore the development process is easier and the code moreportable.

    Many embedded systems lack the tight real time requirements of a control system.

    Although a system such as Embedded Linux may be fast enough in order to respond to

    many other applications.

    http://en.wikipedia.org/wiki/Microkernelhttp://en.wikipedia.org/wiki/Exokernelhttp://en.wikipedia.org/wiki/Linuxhttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Embedded_Linuxhttp://en.wikipedia.org/wiki/Windows_CEhttp://en.wikipedia.org/wiki/Routershttp://en.wikipedia.org/wiki/Automotive_navigation_systemhttp://en.wikipedia.org/wiki/Device_driverhttp://en.wikipedia.org/wiki/Web_servershttp://en.wikipedia.org/wiki/Firewall_%28networking%29http://en.wikipedia.org/wiki/Firewall_%28networking%29http://en.wikipedia.org/wiki/Web_servershttp://en.wikipedia.org/wiki/Device_driverhttp://en.wikipedia.org/wiki/Automotive_navigation_systemhttp://en.wikipedia.org/wiki/Routershttp://en.wikipedia.org/wiki/Windows_CEhttp://en.wikipedia.org/wiki/Embedded_Linuxhttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Linuxhttp://en.wikipedia.org/wiki/Exokernelhttp://en.wikipedia.org/wiki/Microkernel
  • 8/10/2019 Embedded Systems[All Units]

    24/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    24 EMBEDDED SYSTEMS

    Features requiring faster response than can be guaranteed can often be placed in

    hardware.

    Many RTOS systems have a per-unit cost. When used on a product that is or will become

    a commodity, that cost is significant.

    VI.

    EXOTIC CUSTOM OPERATING SYSTEMSA small fraction of embedded systems require safe, timely, reliable or efficient behavior

    unobtainable with the one of the above architectures. In this case an organization builds a system

    to suit. In some cases, the system may be partitioned into a "mechanism controller" using special

    techniques, and a "display controller" with a conventional operating system. A communication

    system passes data between the two.

    7. Explain Any One Of The Applications Of The Embedded Systems In Detail?

    I. Military and aerospace embedded software applications

    From in-orbit embedded systems to jumbo jets to vital battlefield networks, designers of

    mission-critical aerospace and defense systems requiring real-time performance, scalability, and

    high-availability facilities consistently turn to the LynxOSRTOS and the LynxOS-178 RTOS

    forsoftware certification to DO-178B.

    Rich in system resources and networking services, LynxOS provides an off-the-shelf

    software platform with hard real-time response backed by powerful distributed computing

    (CORBA),high reliability, software certification, and long-term support options.

    The LynxOS-178 RTOS for software certification, based on the RTCA DO-178B

    standard,assists developers in gaining certification for their mission- andsafety-critical systems.

    Real-time systems programmers get a boost with LynuxWorks' DO-178B RTOS training

    courses.

    LynxOS-178 is the first DO-178B and EUROCAE/ED-12B certifiable, POSIX-

    compatible RTOS solution.

    http://en.wikipedia.org/wiki/Programmable_logic_devicehttp://www.lynuxworks.com/solutions/milaero/milaero.php3http://www.lynuxworks.com/rtos/high-availability.php3http://www.lynuxworks.com/rtos/rtos.phphttp://www.lynuxworks.com/rtos/rtos-178.phphttp://www.lynuxworks.com/partners/corba.phphttp://www.lynuxworks.com/partners/corba.phphttp://www.lynuxworks.com/solutions/milaero/do-178b.php3http://www.lynuxworks.com/solutions/milaero/do-178b.php3http://www.lynuxworks.com/products/whitepapers/safety-critical.php3http://www.lynuxworks.com/support/courses/do-178b.phphttp://www.lynuxworks.com/support/courses/do-178b.phphttp://www.lynuxworks.com/products/posix/posix.php3http://www.lynuxworks.com/products/posix/posix.php3http://www.lynuxworks.com/support/courses/do-178b.phphttp://www.lynuxworks.com/support/courses/do-178b.phphttp://www.lynuxworks.com/products/whitepapers/safety-critical.php3http://www.lynuxworks.com/solutions/milaero/do-178b.php3http://www.lynuxworks.com/solutions/milaero/do-178b.php3http://www.lynuxworks.com/partners/corba.phphttp://www.lynuxworks.com/partners/corba.phphttp://www.lynuxworks.com/rtos/rtos-178.phphttp://www.lynuxworks.com/rtos/rtos.phphttp://www.lynuxworks.com/rtos/high-availability.php3http://www.lynuxworks.com/solutions/milaero/milaero.php3http://en.wikipedia.org/wiki/Programmable_logic_device
  • 8/10/2019 Embedded Systems[All Units]

    25/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    25 EMBEDDED SYSTEMS

    II. Medical electronics technology

    With the introduction of the LynxSecure separation kernel and embedded

    hypervisor,medical devices can now have the best of both worlds, with hard real-time

    applications running alongside commercial desktop operating systems on the same

    industry-standard Intel processors.The separation kernel offers both safety and security partitioning for applications.

    The embedded hypervisor functionality allows "guest" operating systems and their

    applications to run in their own partitions.

    III. Communications applications

    "Five-nines" availability,CompactPCI hot swap support, and hard real-time response

    LynxOS delivers on these key requirements and more for today's carrier-class systems. Scalable

    kernel configurations, distributed computing capabilities, integrated communications stacks, and

    fault-management facilities make LynxOS the ideal choice for companies looking for a single

    operating system for all embedded telecommunications applicationsfrom complex central

    controllers to simple line/trunk cards.

    LynuxWorks JumpStart for Communicationspackage enables OEMs to rapidly develop

    mission-critical communications equipment, with pre-integrated, state-of-the-art, data

    networking and porting software componentsincluding source code for easy customization.

    The Lynx Certifiable Stack (LCS) is a secure TCP/IP protocol stack designed especially

    for applications where standards certification is required.

    IV. Electronics applications and consumer devices

    As the number of powerful embedded processors in consumer devices continues to rise,

    theLynxOS real-time operating systemprovides a highly reliable option for systems designers.

    For makers of low-cost consumer electronic devices who wish to integrate the LynxOS real-time

    operating system into their products, we offer specialMSRP-based pricing to reduce royalty fees

    to a negligible portion of the device's MSRP.

    http://www.lynuxworks.com/solutions/medical/index.phphttp://www.lynuxworks.com/virtualization/hypervisor.phphttp://www.lynuxworks.com/virtualization/hypervisor.phphttp://www.lynuxworks.com/products/jumpstart/communications.php3http://www.lynuxworks.com/board-support/cpci.phphttp://www.lynuxworks.com/rtos/rtos.phphttp://www.lynuxworks.com/products/jumpstart/communications.php3http://www.lynuxworks.com/rtos/lcs.php3http://www.lynuxworks.com/solutions/electronics/index.phphttp://www.lynuxworks.com/rtos/rtos.phphttp://www.lynuxworks.com/rtos/msrp.php3http://www.lynuxworks.com/rtos/msrp.php3http://www.lynuxworks.com/rtos/rtos.phphttp://www.lynuxworks.com/solutions/electronics/index.phphttp://www.lynuxworks.com/rtos/lcs.php3http://www.lynuxworks.com/products/jumpstart/communications.php3http://www.lynuxworks.com/rtos/rtos.phphttp://www.lynuxworks.com/board-support/cpci.phphttp://www.lynuxworks.com/products/jumpstart/communications.php3http://www.lynuxworks.com/virtualization/hypervisor.phphttp://www.lynuxworks.com/virtualization/hypervisor.phphttp://www.lynuxworks.com/solutions/medical/index.php
  • 8/10/2019 Embedded Systems[All Units]

    26/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    26 EMBEDDED SYSTEMS

    V. Industrial automation and process control software

    Designers of industrial and process control systems know from experience that

    LynuxWorks operating systems provide the security and reliability that their industrial

    applications require.

    FromISO 9001 certification tofault-tolerance,POSIX conformance,secure partitioning

    andhigh availability,we've got it all. Take advantage of our two decades of experience.

    8. Discuss the shared data problem and its remedies with example. [April 2010]

    Some data is common to different processes ortasks. Examples are as follows:Time, which is updated continuously by a process, is also used by display process in a system.

    Port input data, which is received by one process and further processed and analyzed by

    another process.

    Memory Buffer data which is inserted by one process and further read (deleted), processed and

    analyzed by another.

    Assume that at an instant when the value of variable operates and during the operations

    on it, only a part of the operation is completed and another part remains incomplete. At that

    moment, assume that there is an interrupt.

    Assume that there is another function. It also shares the same variable. The value of the

    variable may differ from the one expected if the earlier operation had been completed. .

    http://www.lynuxworks.com/solutions/industrial/industrial.phphttp://www.lynuxworks.com/solutions/industrial/industrial.phphttp://www.lynuxworks.com/products/iso9001.php3http://www.lynuxworks.com/rtos/rtos-mmu-high-availability.phphttp://www.lynuxworks.com/products/posix/posix.php3http://www.lynuxworks.com/products/whitepapers/partition.phphttp://www.lynuxworks.com/rtos/high-availability.php3http://www.lynuxworks.com/rtos/high-availability.php3http://www.lynuxworks.com/products/whitepapers/partition.phphttp://www.lynuxworks.com/products/posix/posix.php3http://www.lynuxworks.com/rtos/rtos-mmu-high-availability.phphttp://www.lynuxworks.com/products/iso9001.php3http://www.lynuxworks.com/solutions/industrial/industrial.phphttp://www.lynuxworks.com/solutions/industrial/industrial.php
  • 8/10/2019 Embedded Systems[All Units]

    27/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    27 EMBEDDED SYSTEMS

    Whenever another process sharing the same partly operated data, then shared data problem

    arises.

    Example:

    Considerx, a 128-bit variable, b127.b0.

    Assume that the operation OPsl is shift left by 2 bits to multiplyit by 4 and findy = 4 x.Let OPsl be done non-atomically in four sub-operations,

    OPAsl, OPBsl, OPCsl and OPDsl

    For

    b31.b0 , b63.b32 ,

    b95.b64 and b127.b96 ,

    respectively.

    Assuming at an instance OPAsl, OPBsl and OPCsl completed and OPDsl remained

    incomplete.

    Now interruptI occurs at that instance.

    I calls some function which usesx ifx is the global variable.

    It modifiesx to b127.b0.

    On return from interrupt, since OPDsl did not complete, OPDsl operates on

    b127.b96 .

    Resulting value of x is different due to the problem of incomplete operation before I

    occurred.

  • 8/10/2019 Embedded Systems[All Units]

    28/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    28 EMBEDDED SYSTEMS

    9. Explain the Bus structure of an embedded system. [April 2010]

    Using VLSI tools, a processor itself can be designed. A system specific processor (ASIP)

    is the one that does not use the GPP (standard available CISC or RISC microprocessor or

    microcontroller or signal processor). The processor on chip incorporates a section of the CISC or

    RISC instruction set.

    This specific processor may have especially configurable instruction-set for an

    application. An ASIP can also be configurable. Using appropriate tools, an ASIP can be designed

    and configured for the instructions needed in the following exemplary functions: DSP functions,

    controller signals processing function, adaptive filtering functions and communication protocol

  • 8/10/2019 Embedded Systems[All Units]

    29/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    29 EMBEDDED SYSTEMS

    implementing functions. On a VLSI chip, an embedded ASIP in a special system can be a unit

    within an ASIC or SoC.

    On a VLSI chip, there may be high-level components. These are components that possess

    gate-level Sophistication in circuits above that of the counter, register, multiplier, floating point

    operation unit and ALU. A standard source solution for synthesizing a higher-level componentby configuring FPGA core or a core of VLSI chip may be available as an Intellectual Property,

    called (IP). The copyright for the synthesized design of a higher-level component for gate-level

    implementation of an IP is held by the designer or designing company.

    One has to pay royalty for every chip shipped. An embedded system may incorporate an

    IP(s) . An IP may provide hardwired implement-able design of a transform or of an encryption

    algorithm or a deciphering algorithm. An IP may provide a design for adaptive filtering of a

    signal. An IP may provide full design for implementing Hyper Text Transfer Protocol (HTTP)

    or File Transfer Protocol (FTP) to transmit a web page or a file on the Internet. An IP may be

    designed for the PCI or USB bus controller.

    A General Purpose Processor (GPP) can be embedded on a VSLI chip. Recently,

    exemplary GPPs, called ARM 7 and ARM 9, which embed onto a VLSI chip, have been

    developed by ARM and their enhancements by Texas Instruments.

    An ARM-processor VLSI-architecture is available either as a CPU chip or for integrating

    it into VLSI or SoC. ARM provides CISC functionality with RISC architecture at the core. An

    application of ARM embed circuit is ICE. ICE is used for debugging an embedded system.

    Exemplary ARM 9 applications are setup boxes, cable modems, and wireless devices such as

    mobile handsets.

  • 8/10/2019 Embedded Systems[All Units]

    30/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    30 EMBEDDED SYSTEMS

    10. Explain briefly about Interrupt [April 2010]

    Insystems programming,an interruptis a signal to theprocessor emitted by hardware or

    software indicating an event that needs immediate attention. An interrupt alerts the processor to a

    high-priority condition requiring the interruption of the current code the processor is executing

    (the currentthread). The processor responds by suspending its current activities, saving its state,

    and executing a small program called an interrupt handler(or interrupt service routine, ISR) to

    deal with the event. This interruption is temporary, and after the interrupt handler finishes, theprocessor resumes execution of the previous thread.

    http://en.wikipedia.org/wiki/Systems_programminghttp://en.wikipedia.org/wiki/Central_processing_unithttp://en.wikipedia.org/wiki/Thread_%28computing%29http://en.wikipedia.org/wiki/Thread_%28computing%29http://en.wikipedia.org/wiki/Thread_%28computing%29http://en.wikipedia.org/wiki/State_%28computer_science%29http://en.wikipedia.org/wiki/Interrupt_handlerhttp://en.wikipedia.org/wiki/Interrupt_handlerhttp://en.wikipedia.org/wiki/Interrupt_handlerhttp://en.wikipedia.org/wiki/Interrupt_handlerhttp://en.wikipedia.org/wiki/State_%28computer_science%29http://en.wikipedia.org/wiki/Thread_%28computing%29http://en.wikipedia.org/wiki/Central_processing_unithttp://en.wikipedia.org/wiki/Systems_programming
  • 8/10/2019 Embedded Systems[All Units]

    31/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    31 EMBEDDED SYSTEMS

    Two types of interrupts:

    A hardware interrupt is an electronic alerting signal sent to the processor from an external

    device, either a part of the computer itself such as adisk controller or an externalperipheral.For

    example, pressing a key on thekeyboard or moving themouse triggers hardware interrupts that

    cause the processor to read the keystroke or mouse position. Unlike the software type (below),hardware interrupts are asynchronous and can occur in the middle of instruction execution,

    requiring additional care in programming. The act of initiating a hardware interrupt is referred to

    as aninterrupt request (IRQ).

    A software interrupt is caused either by an exceptional condition in the processor itself, or a

    special instruction in the instruction set which causes an interrupt when it is executed. The

    former is often called a trap or exception and is used for errors or events occurring during

    program execution that is exceptional enough that they cannot be handled within the program

    itself. For example, if the processor'sarithmetic logic unit is commanded to divide a number by

    zero, this impossible demand will cause a divide-by-zero exception, perhaps causing the

    computer to abandon the calculation or display an error message. Software interrupt instructions

    function similarly tosubroutine calls and are used for a variety of purposes, such as to request

    services from low level system software such asdevice drivers.For example, computers often

    use software interrupt instructions to communicate with the disk controller to request data be

    read or written to the disk.

    Each interrupt has its own interrupt handler. The number of hardware interrupts is limited by the

    number of interrupt request (IRQ) lines to the processor, but there may be hundreds of different

    software interrupts. Interrupts are a commonly used technique for computer multitasking,

    especially inreal-time computing.Such a system is said to be interrupt-driven.

    11. Explain in detail about Monolithic Kernel. [April 2012], [NOV 2012]

    In this case, a relatively large kernel with sophisticated capabilities is adapted to suit an

    embedded environment. This gives programmers an environment similar to a desktop operatingsystem likeLinux orMicrosoft Windows,and is therefore very productive for development; on

    the downside, it requires considerably more hardware resources, is often more expensive, and

    because of the complexity of these kernels can be less predictable and reliable.

    Common examples of embedded monolithic kernels areEmbedded Linux andWindows CE.

    http://en.wikipedia.org/wiki/Disk_controllerhttp://en.wikipedia.org/wiki/Peripheralhttp://en.wikipedia.org/wiki/Keyboard_%28computing%29http://en.wikipedia.org/wiki/Mouse_%28computing%29http://en.wikipedia.org/wiki/Asynchronous_communicationhttp://en.wikipedia.org/wiki/Interrupt_requesthttp://en.wikipedia.org/wiki/Instruction_%28computer_science%29http://en.wikipedia.org/wiki/Instruction_sethttp://en.wikipedia.org/wiki/Exception_handlinghttp://en.wikipedia.org/wiki/Exception_handlinghttp://en.wikipedia.org/wiki/Arithmetic_logic_unithttp://en.wikipedia.org/wiki/Subroutine_callhttp://en.wikipedia.org/wiki/System_softwarehttp://en.wikipedia.org/wiki/Device_driverhttp://en.wikipedia.org/wiki/Disk_controllerhttp://en.wikipedia.org/wiki/Computer_multitaskinghttp://en.wikipedia.org/wiki/Real-time_computinghttp://en.wikipedia.org/wiki/Linuxhttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Embedded_Linuxhttp://en.wikipedia.org/wiki/Windows_CEhttp://en.wikipedia.org/wiki/Windows_CEhttp://en.wikipedia.org/wiki/Embedded_Linuxhttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Linuxhttp://en.wikipedia.org/wiki/Real-time_computinghttp://en.wikipedia.org/wiki/Computer_multitaskinghttp://en.wikipedia.org/wiki/Disk_controllerhttp://en.wikipedia.org/wiki/Device_driverhttp://en.wikipedia.org/wiki/System_softwarehttp://en.wikipedia.org/wiki/Subroutine_callhttp://en.wikipedia.org/wiki/Arithmetic_logic_unithttp://en.wikipedia.org/wiki/Exception_handlinghttp://en.wikipedia.org/wiki/Instruction_sethttp://en.wikipedia.org/wiki/Instruction_%28computer_science%29http://en.wikipedia.org/wiki/Interrupt_requesthttp://en.wikipedia.org/wiki/Asynchronous_communicationhttp://en.wikipedia.org/wiki/Mouse_%28computing%29http://en.wikipedia.org/wiki/Keyboard_%28computing%29http://en.wikipedia.org/wiki/Peripheralhttp://en.wikipedia.org/wiki/Disk_controller
  • 8/10/2019 Embedded Systems[All Units]

    32/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    32 EMBEDDED SYSTEMS

    Despite the increased cost in hardware, this type of embedded system is increasing in

    popularity, especially on the more powerful embedded devices such as Wireless Routers and

    GPS Navigation Systems.Here are some of the reasons:

    Ports to common embedded chip sets are available.

    They permit re-use of publicly available code for Device Drivers, Web Servers,Firewalls,and other code.

    Development systems can start out with broad feature-sets, and then the distribution can

    be configured to exclude unneeded functionality, and save the expense of the memory

    that it would consume.

    Many engineers believe that running application code in user mode is more reliable,

    easier to debug and that therefore the development process is easier and the code more

    portable.

    Many embedded systems lack the tight real time requirements of a control system.

    Although a system such as Embedded Linux may be fast enough in order to respond to

    many other applications.

    Features requiring faster response than can be guaranteed can often be placed in

    hardware.

    Many RTOS systems have a per-unit cost. When used on a product that is or will become

    a commodity, that cost is significant.

    http://en.wikipedia.org/wiki/Routershttp://en.wikipedia.org/wiki/Automotive_navigation_systemhttp://en.wikipedia.org/wiki/Device_driverhttp://en.wikipedia.org/wiki/Web_servershttp://en.wikipedia.org/wiki/Firewall_%28networking%29http://en.wikipedia.org/wiki/Programmable_logic_devicehttp://en.wikipedia.org/wiki/Programmable_logic_devicehttp://en.wikipedia.org/wiki/Firewall_%28networking%29http://en.wikipedia.org/wiki/Web_servershttp://en.wikipedia.org/wiki/Device_driverhttp://en.wikipedia.org/wiki/Automotive_navigation_systemhttp://en.wikipedia.org/wiki/Routers
  • 8/10/2019 Embedded Systems[All Units]

    33/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    33 EMBEDDED SYSTEMS

    12. Explain the skill required for embedded system designer. [April 2012]

    An embedded system designer has to develop a product using the available tools within the given

    specifications, cost and time frame. [Chapters 7 and 12 will cover the design aspects of

    embedded systems.

    Skil ls for Smal l Scale Embedded System Designer: Author Tim Wilmshurst in the book referred

    above, has said that the following skills are needed in the individual or team that is developing a

    small-scale system: Full understanding of microcontrollers witha basic knowledge of computer

    architecture, digital electronic design, software engineering, data communication, control

    engineering, motors and actuators, sensors and measurements, analog electronic design and IC

    design and manufacture. Specific skills will be needed in specific situations. For example,

    control engineering knowledge will be needed for design of control systems and analog

    electronic design knowledge will be needed when designing the system interfaces. Basic aspects

    of the following topics will be described in this book to prepare the designer who already has a

    good knowledge of the microprocessor or microcontroller to be used. (i) Computer architecture

    and organization. (ii) Memories. (iii) Memory allocation. (iv) Interfacing the memories. (v)

  • 8/10/2019 Embedded Systems[All Units]

    34/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    34 EMBEDDED SYSTEMS

    Burning (a term used for porting) the executable machine codes in PROM or ROM (Section

    2.3.1). (vi) Use of decoders and demultiplexers. (vii) Direct memory accesses. (viii) Ports. (ix)

    Device drivers in assembly. (x) Simple and sophisticated buses. (xi) Timers. (xii) Interrupt

    servicing mechanism. (xiii) C programming elements. (xiv) Memory optimization. (xv) Selection

    of hardware and microcontroller. (xvi) Use of ICE (In-Circuit-Emulators), cross-assemblers andtesting equipment. (xvii) Debugging the software and hardware bugs by using test vectors. Basic

    knowledge in the other areasdata communication, control engineering, motors and actuators,

    sensors and measurements, analog electronic design and IC design and manufacturecan be

    obtained from the standard textbooks available.

    Skil ls for M edium Scale Embedded System Designer: C programming and RTOS

    programming and program modeling skills are a must to design a medium-scale embedded

    system. Knowledge of the following becomes critical.

    (i) Tasks and their scheduling by RTOS.

    (ii) Cooperative and preemptive scheduling.

    (iii) Inter processor communication functions.

    (iv) Use of shared data, and programming the critical sections and re-entrant functions. (v) Use

    of semaphores, mailboxes, queues, sockets and pipes.

    (vi) Handling of interrupt-latencies and meeting task deadlines.

    (vii) Use of various RTOS functions.

    (viii) Use of physical and virtual device drivers. A designer must have access to an RTOS

    programming tool with Application Programming Interfaces (APIs) for the specific

    microcontroller to be used. Solutions to various functions like memory allocation, timers, device

    drivers and interrupt handing mechanism are readily available as the

    APIs of the RTOS. The designer needs to know only the hardware organization and use of these

    APIs. The microcontroller or processor then represents a small system element for the designer

    and a little knowledge may suffice.

    Skil ls for Sophi sticated Embedded System Designer:A team is needed to co-design and solvethe high level complexities of the hardware and software design. An embedded system hardware

    engineer should have full skills in hardware units and basic knowledge of C, RTOS and other

    programming tools. Software engineer should have basic knowledge in hardware and a thorough

  • 8/10/2019 Embedded Systems[All Units]

    35/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    35 EMBEDDED SYSTEMS

    knowledge of C, RTOS and other programming tools. A final optimum design solution is then

    obtained by system integration.

    QUESTION BANK

    TWO MARKS1. What is an embedded system? [April 2012]

    2. What are the components of the Embedded Systems? [NOV 2011]

    3. What is the Classification of an embedded system? [April 2013]

    4. What is Sophisticated Embedded System?

    5. What are the characteristics of an embedded system?

    6. What are the advantages of embedded system?

    7. What are the disadvantages of embedded system?

    8. What are the various embedded system requirements?

    9. What are the functional requirements of embedded system?

    10. What are the temporal requirements of the embedded systems?

    11. What are dependability requirements of an embedded system?

    12. What is a Microprocessor?

    13. What is a Microcontroller? [NOV 2012]

    14. What are differences between Microprocessor and Microcontroller?

    15. What are the various embedded system designs?

    16. What are the complicating factors in embedded design?

    17. What are the real time requirements of an embedded system?

    18. Explain digital signal processing in embedded system?

    19. List the various processors that are present?

    20. What is the Embedded Processor? [April 2013]

    21. Give the reactivitys in embedded system?

    22. What are embedded cores?23. What are hybrid chips?

    24. Give the diversity of embedded computing?

    25. What is a kernel? [April 2012]

    26. What are the types of Kernel?

  • 8/10/2019 Embedded Systems[All Units]

    36/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    36 EMBEDDED SYSTEMS

    27. Define Cooperative Multitasking?

    28. What is Preemptive Multitasking?

    29. What is Exotic custom operating system?

    30. List the applications of Embedded Systems?

    31. What are the two essential units of a Processor? [NOV 2011]

    ELEVEN MARKS

    1. Describe Embedded System In Detail? [Page: 9]

    2. Explain The Components, Classification And Characteristics Of Embedded System Briefly?

    [NOV 2011], [April 2012], [April 2013] [Page: 11]

    3. What Is A Microcontroller Explain With An Example? [NOV 2011] [Page: 13]

    4. What Is A Microprocessor Explain With An Example? [NOV 2012] [Page: 14]

    5. What Is An Embedded Processor? [Page: 18]

    6. Explain The Embedded System Architectures In Detail? [April 2010], [NOV 2012] [Page:

    21]

    7. Explain Any One Of The Applications Of The Embedded Systems In Detail [Page: 25]

    8. Discuss the shared data problem and its remedies with example. [April 2010]

    [Page: 29]

    9. Explain the Bus structure of an embedded system. [April 2010] [Page: 31]

    10. Explain briefly about Interrupt [April 2010] [Page: 33]

    11. Explain in detail about Monolithic Kernel. [April 2012], [NOV 2012] [Page: 35]

    12. Explain the skill required for embedded system designer. [April 2012] [Page: 36]

    PONDICHERRY UNIVERSITY QUESTIONS

    1. Explain The Components, Classification And Characteristics Of Embedded System Briefly?

    [NOV 2011], [April 2012], [April 2013] [Page: 11]

    2. What Is A Microcontroller Explain With An Example? [NOV 2011] [Ref. Page No.: 13]

    3.. What Is A Microprocessor Explain With An Example? [NOV 2012] [Ref. Page No.: 14]

    Explain The Embedded System Architectures In Detail?[April 2010], [NOV 2012]

    [Ref. Page No.: 21]

  • 8/10/2019 Embedded Systems[All Units]

    37/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    37 EMBEDDED SYSTEMS

    4. Discuss the shared data problem and its remedies with example. [April 2010]

    [Ref. Page No.: 29]

    5. Explain the Bus structure of an embedded system. [April 2010] [Ref. Page No.: 31]

    6. Explain briefly about Interrupt [April 2010] [Ref. Page No.: 33]

    7. Explain in detail about Monolithic Kernel. [April 2012], [NOV 2012] [Ref. Page No.: 35]8. Explain the skill required for embedded system designer.[April 2012][Ref. Page No.: 36]

  • 8/10/2019 Embedded Systems[All Units]

    38/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    38 EMBEDDED SYSTEMS

    Department of Computer Science and Engineering

    Subject Name:EMBEDDED SYSTEMS Subject Code: CS T56

    Prepared By :

    Mr.P.Karthikeyan,AP/CSE

    Mr.B.Thiyagarajan, AP/CSE

    Mrs.P.Subha Priya, AP/CSE

    Verified by : Approved by :

    UNITII

    Embedded Hardware Architecture:32 Bit Microcontrollers:

    ARM 2 TDMI core based 32 Bit microcontrollers and family of processors:

    Register, Memory and Data transfer, Arithmetic and Logic instructions, Assembly

    Language, I/O operations interrupt structure, ARM cache. ARM Bus, Embedded

    systems with ARM.

    Networks for Embedded systems:

    Serial bus protocols: The CAN bus, and the USB bus, Parallel bus protocols: ThePCI Bus and GPIB bus,

  • 8/10/2019 Embedded Systems[All Units]

    39/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    39 EMBEDDED SYSTEMS

    1. Give the summary of I/O devices used in embedded system

    Program, data and stack memories occupy the same memory space. The total addressable

    memory size is 64 KB.

    Program memory - program can be located anywhere in memory. Jump, branch and call

    instructions use 16-bit addresses, i.e. they can be used to jump/branch anywhere within 64 KB.All jump/branch instructions use absolute addressing.

    Data memory- the processor always uses 16-bit addresses so that data can be placed anywhere.

    Stack memory is limited only by the size of memory. Stack grows downward.

    First 64 bytes in a zero memory page should be reserved for vectors used by RST instructions.

    I/O ports

    256 Input ports

    256 Output ports

    Registers

    Accumulator or A register is an 8-bit register used for arithmetic, logic, I/O and load/store

    operations.

    2. Define bus.

    Buses: The exchange of information.

    Information is transferred between units of the microcomputer by collections of conductors

    called buses. There will be one conductor for each bit of information to be passed, e.g., 16 lines

    for a 16 bit address bus. There will be address, control, and data buses

    3. What are the classifications of I/O devices?

    Synchronous serial input and output

    Asynchronous serial UART input and output

    Parallel one bit input and output

    Parallel port input and output

    4. Give some examples for serial input I/O devices.

    Audio input, video input, dial tone, transceiver input, scanner, serial IO bus input, etc.,5. Give the steps for accomplishing input output data transfer

    Accomplishing input/output data transfer

    There are three main methods used to perform/control input/output data transfers. They are,

    Software programming (scanning or polling)

  • 8/10/2019 Embedded Systems[All Units]

    40/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    40 EMBEDDED SYSTEMS

    Interrupt controlled

    Direct memory access (DMA)

    6. Give the limitations of polling technique.

    The polling technique, however, has limitations.

    It is wasteful of the processors time, as it needlessly checks the status of all devices allthe time.

    It is inherently slow, as it checks the status of all I/O devices before it comes back to

    check any given one again.

    When fast devices are connected to a system, polling may simply not be fast enough to

    satisfy the minimum service requirements. Priority of the device is determined

    7. What do you meant by bus arbitration?

    Bus Arbitration

    Most processors use special control lines for bus arbitration, ie, controlling the use of the address

    and data bus,

    An input which the DMAC uses to request the bus

    An output(s) indicating the bus status

    An output indicating acceptance of the DMAC\'s bus request

    8. What are the two characteristics of synchronous communication?

    Bytes/frames maintain constant phase difference and should not be sent at random time

    intervals. No handshaking signals are provided during the communication.

    Clock pulse is required to transmit a byte or frame serially. Clock rate information is

    transmitted by the transmitter.

    9. What do you mean by asynchronous communication?

    The most basic way of sharing data is by copying the data in question to each server. This

    will only work if the data is changed infrequently and always by someone with administrative

    access to all the servers in the cluster.

    10. What are the characteristics of asynchronous communication? Variable bit rateneed not maintain constant phase difference

    Handshaking method is used

    Transmitter need not transmit clock information along with data bit stream

  • 8/10/2019 Embedded Systems[All Units]

    41/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    41 EMBEDDED SYSTEMS

    11. What are the three ways of communication for a device?

    Separate clock pulse along with data bits

    Data bits modulated with clock information

    Embedded clock information with data bits before transmitting

    12. Expand a) SPI b) SCI

    SPISerial Peripheral Interface

    SCISerial Communication Interface

    13. What are the features of SPI?

    SPI has programmable clock rates

    Full-duplex mode

    Crystal clock frequency is 8MHz

    Open drain or totempole output from master to slave

    14. Define software timer.

    A software timer is software that executes the increase/decrease count value on an

    interrupt from timer or RTC. Software timer is used as virtual timing device.

    15. What are the forms of timer?

    Hardware interrupt timer

    Software timer

    User software controlled hardware timer

    RTOS controlled hardware timer

    UP/DOWN count action timer

    One-shot timer (No reload after overflow and finished states)

    16. Define RTC

    RTC Stands for Real Time Systems. Once the system starts, do not stop/reset and the

    count value cannot be reloaded.

    17. What is I2C?

    Inter- Integrated Circuit (2-wire/line protocol) which offers synchronous communication.

    Standard speed: 100Kbps and High speed: 400 Kbps

    18. What are the bits in I2C corresponding to?

    SDASerial Data Line and SCLSerial Clock Line

  • 8/10/2019 Embedded Systems[All Units]

    42/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    42 EMBEDDED SYSTEMS

    19. What is a CAN bus? Where is it used?

    CAN stands for Controller Area Network. Serial line, bi-directional bus used in

    automobiles.Operates at the rate of 1Mbps.

    20. What is USB? Where is it used? [November 2012]

    USBUniversal Serial Bus

    Operating speed - up to 12 Mbps in fast mode and 1.5Mbps in low-speed mode.

    21. What are the features of the USB protocol?

    A device can be attached, configured and used, reset, reconfigured and used, detached and

    reattached, share the bandwidth with other devices.

    22. What are the four types of data transfer used in USB?

    Controlled transfer

    Bulk transfer

    Interrupt driven data transfer

    Iso-synchronous transfer

    23. Explain briefly about PCI and PCI/X buses. (or) List any two parallel buses used in

    embedded Systems [April/May 2014]

    Used for most PC based interfacing

    Provides superior throughput than EISA

    Platform-independent

    Clock rate is nearest to sub-multiples of system clock

    24. Mention some advanced bus standard protocols;

    GMII (Gigabit Ethernet MAC Interchange Interface)

    XGMI (10 Gigabit Ethernet MAC Interchange Interface)

    CSIX-1 6.6 Gbps

    Rapid IO interconnect specification v1.1 at 8 Gbps

    25. What do you meant by high speed device interfaces?

    Fail-over clustering would not be practical without some way for the redundant servers to

    access remote storage devices without taking a large performance hit, as would occur if these

  • 8/10/2019 Embedded Systems[All Units]

    43/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    43 EMBEDDED SYSTEMS

    devices were simply living on the local network. Two common solutions to this problem are

    double-ended SCSI and fiber-channel.

    26. Mention some I/O standard interfaces.

    HSTLHigh Speed Transceiver Logic (Used in high speed operations)

    SSTL Stub Series Terminated Logic (Used when the buses are needed to isolate from the

    large no. of stubs)

    27. WHAT IS THE ARM BUS ARCHITECTURE? [ April/may 2012]

    28. What are the types of Interrupt handler?

    There are two types of Interrupt hander. They are as follows:

    Nested Interrupt Handling

    Non Nested Interrupt Handling

    29. What are the arithmetic instructions?

    The basic expression for arithmetic instructions is

    OPcode Rd, Rn, Rm

    For example, ADD R0, R2, R4

    Performs the operation R0[R2]+[R4]

    SUB R0, R6, R5

    Performs the operation R0[R6]-[R5]

    Immediate mode: ADD R0, R3, #17

  • 8/10/2019 Embedded Systems[All Units]

    44/250

    SRI MANAKULA VINAYAGAR ENGINEERING COLLEGE

    44 EMBEDDED SYSTEMS

    Performs the operation R0[R3]+17

    The second operand can be shifted or rotated before being used in the operation

    For example, ADD R0, R1, R5, LSL #4 operates as follows: the second operand

    stored in R5 is shifted left 4-bit positions (equivalent to [R5]x16), and its is then added to

    the contents of R1; the sum is placed in R0

    30. What are the Logic Instructions?

    The logic operations AND, OR, XOR, and Bit-Clear are implemented by instructions

    with the OP codes AND, ORR, EOR, and BIC.

    For example

    AND R0, R0, R1: performs R0[R0]+[R1]

    The Bit-Clear instruction (BIC) is closely related to the AND i