Top Banner
EE6602 EMBEDDED SYSTEMS UNIT I INTRODUCTION TO EMBEDDED SYSTEMS 9 Introduction to Embedded Systems – The build process for embedded systems- Structural units in Embedded processor , selection of processor & memory devices- DMA – Memory management methods- Timer and Counting devices, Watchdog Timer, Real Time Clock, In circuit emulator, Target Hardware Debugging. UNIT II EMBEDDED NETWORKING 9 Embedded Networking: Introduction, I/O Device Ports & Buses– Serial Bus communication protocols - RS232 standard – RS422 – RS485 - CAN Bus -Serial Peripheral Interface (SPI) – Inter Integrated Circuits (I2C) –need for device drivers. UNIT III EMBEDDED FIRMWARE DEVELOPMENT ENVIRONMENT 9 Embedded Product Development Life Cycle- objectives, different phases of EDLC, Modelling of EDLC; issues in Hardware-software Co-design, Data Flow Graph, state machine model, Sequential Program Model, concurrent Model, object oriented Model. UNIT IV RTOS BASED EMBEDDED SYSTEM DESIGN 9 Introduction to basic concepts of RTOS- Task, process & threads, interrupt routines in RTOS, Multiprocessing and Multitasking, Preemptive and non-preemptive scheduling, Task communication shared memory, message passing-, Inter process Communication – synchronization between processes- semaphores, Mailbox, pipes, priority inversion, priority inheritance, comparison of Real time Operating systems: Vx Works, чC/OS-II, RT Linux. UNIT V EMBEDDED SYSTEM APPLICATION DEVELOPMENT 9
34

  · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

Mar 19, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

EE6602 EMBEDDED SYSTEMS

UNIT I INTRODUCTION TO EMBEDDED SYSTEMS 9Introduction to Embedded Systems – The build process for embedded systems- Structural units in Embedded processor , selection of processor & memory devices- DMA – Memory management methods- Timer and Counting devices, Watchdog Timer, Real Time Clock, In circuit emulator, Target Hardware Debugging.

UNIT II EMBEDDED NETWORKING 9Embedded Networking: Introduction, I/O Device Ports & Buses– Serial Bus communication protocols - RS232 standard – RS422 – RS485 - CAN Bus -Serial Peripheral Interface (SPI) – Inter Integrated Circuits (I2C) –need for device drivers.

UNIT III EMBEDDED FIRMWARE DEVELOPMENT ENVIRONMENT 9Embedded Product Development Life Cycle- objectives, different phases of EDLC, Modelling ofEDLC; issues in Hardware-software Co-design, Data Flow Graph, state machine model, Sequential Program Model, concurrent Model, object oriented Model.

UNIT IV RTOS BASED EMBEDDED SYSTEM DESIGN 9Introduction to basic concepts of RTOS- Task, process & threads, interrupt routines in RTOS,Multiprocessing and Multitasking, Preemptive and non-preemptive scheduling, Task communication shared memory, message passing-, Inter process Communication – synchronization between processes-semaphores, Mailbox, pipes, priority inversion, priority inheritance, comparison of Real time Operating systems: Vx Works, чC/OS-II, RT Linux.

UNIT V EMBEDDED SYSTEM APPLICATION DEVELOPMENT 9Case Study of Washing Machine- Automotive Application- Smart card System Application

TOTAL: 45 PERIODS

TEXT BOOKS:1. Rajkamal, ‘Embedded System-Architecture, Programming, Design’, Mc Graw Hill, 2013.2. Peckol, “Embedded system Design”, John Wiley & Sons,20103. Lyla B Das,” Embedded Systems-An Integrated Approach”, Pearson, 2013

REFERENCES:1. Shibu. K.V, “Introduction to Embedded Systems”, Tata Mcgraw Hill,2009.2. Elicia White,” Making Embedded Systems”, O’ Reilly Series,SPD,2011.3. Tammy Noergaard, “Embedded Systems Architecture”, Elsevier, 2006.4. Han-Way Huang, ”Embedded system Design Using C8051”, Cengage Learning,2009.5. Rajib Mall “Real-Time systems Theory and Practice” Pearson Education, 2007.Bloom’s Taxonomy:Remembering: R, Understanding: U, Applying: Ap, Analyzing: A, Evaluating: E, Creating: C

Page 2:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

UNIT – I INTRODUCTION TO EMBEDDED SYSTEMAnna University two marks

1. What is an embedded system? (May/June 2010) (R) A sophisticated system that has a computer (hardware with application software and

RTOS embedded in it) as one of its components. An embedded system is dedicated computer-based system for an application or product.2. List some applications of Embedded Systems. (A) (May/June 2014) Smart card Missiles & Satellites Computer Networking Auto motive

3. What are the classifications of embedded system? (R)(Nov/Dec 2012) Small scale Embedded System Medium scale Embedded System Sophisticated Embedded System

4. What are the hardware components of embedded systems? (R) (May/June 2014) Input devices, Interfacing/Driver circuits, Processor Timers Interrupt Controller Memory Serial/Parallel Ports Output Interfacing/Driver circuits Power supply, Reset & Oscillator circuits

5. What is a microcontroller? (R) (May/June 2014) A unit with a processor. Memory, timers, watchdog timer, interrupt controller, ADC or PWM, etc. are provided as required by the application.

6. What is an ASSP? (May/June 2010) (R) ASSP means Application Specific System Processor. A processing unit for specific tasks, for example, image compression, and that is integrated through the buses with the main processor in the embedded system.

7. What are the types of memories? (R) (Nov/Dec 2012)Read Only Memory ROMErasable Programmable ROM – EPROMElectrical Erasable Programmable ROM – EEPROMFlash Memory

Read – Write MemoryRAMStatic Ram

Page 3:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

Dynamic RAMPseudo Static RAMNon Volatile RAM

8. What is role of RAM in an embedded system? (R)(Nov/Dec 2013) This is a Random Access Red and Write memory that the processor used to store

programs and data that are volatile and which disappear on power down or off.

9. What is meant by dynamic memory allocation? (R) (May/June 2014)Dynamic objects are allocated from a region of memory known as the heap using library

function malloc.

10. Compare CISC and RISC processor.(Nov / Dec 2013)CISC: Complex Instruction Set Computer (CISC) Aim of designing CISC processor is

to reduce the software complexity by increasing the complexity of the processor architecture. CISC has large no of instructions. Instructions required to do a job is less and hence, the memoryrequirement in less. No. of registers are available in CISC processor is very less.Eg. Intel x86 family and Motorola 68000 series processors.

RISC: Reduced Instruction Set Computer (RISC)RISC has limited no. of instructions and hence, complex operation is carried out through sequence of more simple instructions. Large number of registers is required in RISCprocessor. Another important feature of RISC processor is pipelined instruction execution.

Embedded systems generally use RISC processor.Eg. ARM, ATMEL, AVR, MIPS, Microchip’s PIC family processors, Power PC and Sun SPARC processor.

11. What is fragmentation? (Nov / Dec 2013)

Fragmentation occurs in a dynamic memory allocation system when many of the free blocks are too small to satisfy any request.

External Fragmentation: External Fragmentation happens when a dynamic memory allocation algorithm allocates some memory and a small piece is left over that cannot be effectively used. If too much external fragmentation occurs, the amount of usable memory is drastically reduced. Total memory space exists to satisfy a request, but it is not contiguous

Internal Fragmentation: Internal fragmentation is the space wasted inside of allocated memory blocks because of restriction on the allowed sizes of allocated blocks. Allocated memory may be slightly larger than requested memory; this size difference is memory internal to a partition, but not being used

12. Define Emulator. (Nov / Dec 2013)In computers, an emulator is a hardware device or a program that pretends to be another particular device or program that other components expect to interact with

Page 4:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

Two marks 13. What is a System? (R)

A way of working, organizing or doing some task or series of tasks by following the fixed plan, program and a set of rules.14. What is a processor? (R) A processor implements a process or processes as per the command (instruction) given to it.

ORA program or task or thread that has a distinct memory allocation of its own and has with

other tasks. A processor may run multiple processes separately or concurrently.15. List the examples for Small, Medium & sophisticated scale embedded systems. (A)

1. Small Scale Embedded System Automatic chocolate vending machine Stepper motor controller for a robotics system Washing or cooking system Multitasking toys

2. Medium Scale Embedded System Computer Networking Systems Entertainment systems Embedded firewall / Router Signal tracking system

16. Sophisticated Scale Embedded System Embedded system s for wireless LAN & for convergent technology devices. Security products & high speed network security, gigabit rate encryption rate products Embedded system for real time video & speech

17. List the categories of embedded system. (R) Stand-alone embedded systems. Eg. AC, Oven, CD player, TV. Real-time systems. Eg. Aircraft control, Missile & Satellite control Networked Information appliances. Eg. Weather monitoring system Mobile Devices. Eg. PDAs, Smart phones.

18. List the specialties of embedded systems. (A) Reliability performance Power Consumption cost Size Limited User interface Software up gradation capability

Page 5:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

19. List the factors to be considered while evaluating the processor for embedded system. (A)

Clock Speed Length of Registers Number of Registers Width of Data and Address bus Internal RAM & ROM Interrupt lines No. of programmable I/O lines On-chip peripherals such as Timers, UART, ADC, DAC, etc.

20. Define embedded system processor. (R)An embedded system processor has two essential units: Program Flow Control Unit and

Execution Unit. The control unit includes a fetch unit for fetching instructions from the memory. Execution unit has circuits that implement the instructions. 21. What are the three processor architectures in embedded systems? (R)Von-Neuman Architecture :

This architecture has common memory for both data and program codes

Harvard Architecture:This architecture has separate memory for data and program codes

. Super Harvard Architecture: This architecture has slight modification from Harvard with instruction cache and separate program memory for program codes and secondary data

22. What is a GPP? (R)GPP Means General Purpose processor. A processor from a number of families of processors, microcontrollers, embedded processors and digital signal processors(DSPs) having a general

Page 6:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

purpose instruction set and readily available compliers to enable programming in a high level language.

23. What is a FPGA? (R)These are Field Programmable Gate Arrays on a chip. The chip has a large number of arrays with each element having fusable links. Each element of array consists of several XOR AND, OR, multiplexer, demultiplexer and tristategates.By appropriate programming of the fusabel links, a design of a complex digital circuit is created on the chip.24. What is a Registers? (R)These are associated with the processor and temporarily store the variable values from the memory and from the execution unit during processing of an instruction(s)25. What is a clock? (R)Fixed frequency pulses that an oscillator circuit generates and that control all operations during processing and all timing references of the system. Frequency depends on the needs of the processor circuit. A processor, if it needs 100 MHz clock then it minimum instruction processing time is a reciprocal of it, which is 10ns.26. What is a Reset? (R)A Processor state in which the processor registers acquires initial values and from which starts an initial program; this program is usually the one that also runs on power up. 27. What is a Memory? (R)This stores all the programs, input data and output data. The processor fetches instructions from it to execute and gives the processed results back to it as per the instruction.28. What is a ROM? (R)A Read Only Memory that locates the following in its ROM embedded software, initial data and strings and operating system or RTOS.29. What is a Cache? (R)Fasts read and write on –chip unit for the processor execution unit. It stores a copy of a page of instructions and data. It has these fetched in advance from the ROM and RAM so that the processor does not have to wait for instruction and data from external buses.30. What do need at least one timer device in an embedded system? (May/June 2010) (R)

It is a unit to provide the time for the system clock and real-time operations and scheduling the task. 31. What is a Watchdog timer? (May/June 2010) (R)

A timer the timeout from which resets the processor in case the program gets stuck for an unexpected time.32. What is an interrupt controller? (R) A unit that controls the processor operations arising out of an interrupt from a source.33. Define System on Chip (SoC). (May/June 2010) (R) Embedded System are being designed on a single silicon chip, called System On Chip((SoC).A design Innovation .SoC is a system on a VLSI chip that has all the necessary analog as well as digital circuits, processor and software.

Ex: Mobile Phone34. What are the components embedded in the SoC? (R)

Embedded Processor GPP or ASIP Core

Page 7:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

Single or Multi Processor Network bus protocol Encryption function unit Memories FPGA Core

35. What is Flash Memory? (R) It is used to erase the large blocks of memory, rather than just one word at a time as in EEPROM, Fast Erase ability can vastly improve the performance of the embedded system.

36. What is Timer and counting devices? (R)

A Timer gets the inputs from the internal clock of a processor or from system clock and generates a required time delay. Counting device is a unit for getting the count-inputs on the occurrence of events that may be at irregular intervals.37. What are the types of Timer? (R)There are two types of timer. They are,

Hardware timer Software timer

38. What is Timer Overflow or Time-Out? (R)A state in which the number of count inputs exceeded the last acquirable value and on

reaching that state, an interrupt can be generated. This state is called Time-Out or Timer Overflow.

39. What is the difference between hardware timer and software timer? (R)Hardware timer gets the inputs from the internal clock with the processor or system

clock. A device driver program programs it like any other physical device. Software timer executes a program which increases or decreases a count variable on an interrupt from a timer output or from a real-time clock interrupt.

40. What are the different states in a timer? (R)The different states in a timer are,

Reset State Idle State Present State Overflow State Active or Blocked State Done State

41. Define the DMA. (R) A direct memory access by controller internal or external. DMA operations facilitating the peripherals and devices of the system to obtain access to the system memories directly without processor controlling the transfer of the bytes in a memory block.

Page 8:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

42. What is meant by shared memory? (R)When two or more asynchronous (no predictable time relationship) instruction sequences

access the same data, that data is called shared memory. Access to shared memory must be carefully coordinated or else data corruption may occur.

43. What is meant by shared functions? (R)A shared function in one that is called by more than one thread; any function called by a

shared function is also a shared function. Any static object referenced within a shared function is thus form of shared memory. Since there is only a single instance of the object, its content is inherently shared by all threads that call a function that references it.

44. What is meant by scope in memory management? (R)Scope of a variable is based on the place of declaration in the program. It is either

declared (1) outside of all functions to create global variables or (2) immediately following a function header to create temporary variables local to the function.

45. List the factors to be considered while evaluating the processor for embedded system. (A)

Clock Speed Length of Registers Number of Registers Width of Data and Address bus Internal RAM & ROM Interrupt lines No. of programmable I/O lines On-chip peripherals such as Timers, UART, ADC, DAC, etc.

PART-B1. List the hardware units that must be present in the embedded systems. (May/June 2010),

(Nov/Dec 2012), (May/June 2014) (A)2. Explain the Exemplary applications of each type of embedded system. (U)

i) Explain the various form of memories present in a system (May/June 2010), (Nov/Dec 2012)

ii) Explain the software tools in designing of an embedded system. 3. Explain the basic processors and hardware units in the embedded system. (U) (Nov / Dec 2013)4. Explain the various build blocks of embedded systems. (U) (May/June 2014)5. Explain the internal units of a processor and memory in a system with its block diagram. (U)

(Nov / Dec 2013)6. Explain the different types of cache mapping techniques. (U) (Nov/Dec 2012)7. Define embedded system and give their classification. (Nov / Dec 2013)

8. Explain the different program layers in embedded system software with a suitable

Page 9:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

block diagram. (Nov / Dec 2013)9. Explain the role of timer in embedded system (May/June 2014)10. Explain the operation of interrupt controllers in embedded system. (May/June 2014)11. Explain the timer and counting devices in details. (May/June 2014)12. Explain the I2C bus. (May/June 2014)13. Outline on Exemplary Applications of each type of embedded system. (U)14. Explain how a processor can be selected for hardware design. (U)15. Explain dynamic memory allocation with an example and list its advantages and disadvantages. (U)

UNIT II EMBEDDED NETWORKING

1. What are the two characteristics of synchronous communication? (R) (Nov/Dec 2012)

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.

2. What is USB? Where is it used? (R) (Nov / Dec 2013)USB – Universal Serial Bus

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

3. Give any three examples of advanced serial high speed bus. (Nov/Dec 2012) PCI Ethernet Hyper Transport

4. What are the features of I2C? (Nov/Dec 2012)I2C has many important features worth mentioning. It supports multiple data speeds:

standard (100 kbps), fast (400 kbps) and high speed (3.4 Mbps) communications.Other features include:

Built in collision detection 10-bit Addressing Multi-master support Data broadcast (general call).

Two marks5. Classify the I/O devices used in embedded system. (U)

Program, data and stack memories occupy the same memory space. The total addressablememory size is 64 KB.

Program memory - program can be located anywhere in memory. Jump, branch and callinstructions use 16-bit addresses, i.e. they can be used to jump/branch anywhere within 64

Page 10:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

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 RSTinstructions.

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.

6. Define bus. (R)Buses: The exchange of information.

Information is transferred between units of the microcomputer by collections of conductorscalled buses.There will be one conductor for each bit of information to be passed, e.g., 16 lines for a 16bit address bus. There will be address, control, and data buses

7. What are the classifications of I/O devices? (R) Synchronous serial input and output Asynchronous serial UART input and output Parallel one bit input and output Parallel port input and output

8. List some examples for serial input I/O devices. (A)Audio input, video input, dial tone, transceiver input, scanner, serial IO bus input, etc.,

9. List the steps for accomplishing input output data transfer. (A)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) interrupt controlled Direct memory access (DMA)

10. List the limitations of polling technique. . (A) The polling technique, however, has limitations.

It is wasteful of the processors time, as it needlessly checks the status of all devices all the 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

11. What do you meant by bus arbitration? (R) Bus Arbitration Most processors use special control lines for bus arbitration, ie, controlling the use of the address and data bus,

Page 11:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

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

12. What do you mean by asynchronous communication? (R)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 withadministrative access to all the servers in the cluster.

13. What are the characteristics of asynchronous communication? (R) Variable bit rate – need not maintain constant phase difference Handshaking method is used Transmitter need not transmit clock information along with data bit stream

14. What are the three ways of communication for a device? (R)I. Separate clock pulse along with data bits

II. Data bits modulated with clock informationIII. Embedded clock information with data bits before transmitting

15. Extent a) SPI b) SCI (U)

SPI – SERIAL PERIPHERAL INTERFACESCI – SERIAL COMMUNICATION INTERFACE

16. What are the features of SPI? (R) SPI has programmable clock rates Full-duplex mode Crystal clock frequency is 8MHz Open drain or totempole output from master to slave

17. Define software timer. (R)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.

18. What are the forms of timer? (R) 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)

19. Define RTC. (R)

Page 12:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

RTC Stands for Real Time Systems. Once the system starts, do not stop/reset and the count value cannot be reloaded.

20. What is I2C? (R)Inter- Integrated Circuit (2-wire/line protocol) which offers synchronous

communication.Standard speed: 100Kbps and High speed: 400 Kbps

21. What are the bits in I2C corresponding to? (R)SDA – Serial Data Line and SCL – Serial Clock line

22. What is a CAN bus? Where is it used? (R)CAN stands for Controller Area Network. Serial line, bi-directional bus used in

automobiles.Operates at the rate of 1Mbps.

23. What are the features of the USB protocol? (R)A device can be attached, configured and used, reset, reconfigured and used, detached and reattached, share the bandwidth with other devices.

24. What are the four types of data transfer used in USB? (R) Controlled transfer Bulk transfer Interrupt driven data transfer Iso-synchronous transfer

25. Explain briefly about PCI and PCI/X buses. (U) Used for most PC based interfacing Provides superior throughput than EISA Platform-independent Clock rate is nearest to sub-multiples of system clock

26. Measure some advanced bus standard protocols. (E) 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

27. What do you meant by high speed device interfaces? (R) 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 devices were simply living on the local network. Two common solutions to this problem are double-ended SCSI and fibre-channel.

28. Mark some I/O standard interfaces. (E)HSTL – High Speed Transceiver Logic (Used in high speed operations)

Page 13:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

SSTL – Stub Series Terminated Logic (Used when the buses are needed to isolate from the large no. of stubs)

29. List the serial data communication standards. (R) RS232 RS422 RS423 RS485

RS – Recommended Standard PART-B

1. Compare various bus standards that are used to provide parallel communication. (U) (MAY / JUNE 10)2. Explain the serial communication using I2C, CAN, and USB in detail. (U) (Nov / Dec 2013)3. i) Explain the parallel port devices. (6) (U) (Nov/Dec 2012)

ii) Explain the sophisticated interfacing features in device ports. (6) (U) (Nov/Dec 2012)

4. i) Explain the signal using a transfer of byte when using the I2C bus and also the format of bits at the I2C bus with diagram. (6) (U) (Nov/Dec 2012) ii) Explain the internal serial communication devices. (6) (U)5. Demonstrate the functions of a typical parallel I/O interface with a neat diagram. (U)6. Explain high speed I/O interfacing in detail. (U)7. Explain the functions of various buses used during transfer. (U)8. Explain the synchronous and asynchronous communications from serial devices. (U)9. Explain the sophisticated interfacing features in devices /ports. (U)10. Explain the classification of IO devices. (U)

UNIT III EMBEDDED FIRMWARE DEVELOPMENT ENVIRONMENT

1. What is EDLC? (R) EDLC is an analysis –Design – Implementation based problem solving approach for the product development

Analysis: What products need to be developed? Design: Good approach to build it Implementation: To develop it Maintain

2. Why EDLC? (R) Essential in understanding the scope and complexities involved in any Embedded product development. Defines interaction and activities among Various groups of product development sector.

Project management System design and development System testing

Page 14:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

Release management and quality assurance

3. List phase representation of the embedded design life cycle. (R) Time flows from the left and proceeds through seven phases:

Product specification Partitioning of the design into its software and hardware components Iteration and refinement of the partitioning Independent hardware and software design tasks Integration of the hardware and software components Product testing and release On-going maintenance and upgrading

4. Design the embedded system life cycle. (C)

5. What is partitioning? (R) An embedded design will involve both hardware and software contents. Someone must decide which portion of the problem will be solving in hardware and software. This choice is called the partitioning 6. List the requirements for the debugging of a real-time system. (A)

Run control Memory substitution Real-time analysis

7. What is testing? (R) Testing is the process to prove that the system works correctly.8. List the various types of testing of embedded system. (A)

Black-box testing White-box testing

Page 15:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

Performance testing Gorilla testing Field testing Acceptance testing Regression testing

9. List the testing of target system. (A) Functional requirement Performance requirement Environmental requirement

10. Build the SDLC. (C)

11. List the issues in hardware software design and co-design. (A) The software development life cycle ends and the life cycle for the process of integrating the

software into hardware begin at the time when a system is designed. Both cycles concurrently proceed when co-designing a time-critical sophisticated system.

PART –B 1. Explain about embedded system design life cycle. (U) (Nov/Dec 2012)2. Write the action plan to follow while designing an embedded system.(Nov / Dec 2013) 3. What is target system? How does the target system differ from the final embedded system.(Nov /

Dec 2013)4. Explain the embedded system design issues in system development process. (May/June 2014)5. Why is the selection of the right platform essential during the embedded system development

process? (R)6. Explain the software-hardware tradeoff. (U)7. What are the advantages and disadvantages of hardware implementation instead of software

implementation? (R)8. What are the factors for selection a processor during the system-design phase? (R)9. What is the use of a simulator in a development phase?(R)

UNIT IV RTOS BASED EMBEDDED SYSTEM DESIGN

Page 16:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

1. Compare OS and RTOS. (U) (Nov / Dec 2013)OS: On a PC, OS takes control of the PC as soon as it is turned on and then it lets

the application program to start. OS checks any pointer which passes into a system function for its validity. OS consumes lot of memory space and it contains all in-built functions.

RTOS: Application program is linked to the RTOS. At boot-up, applicationusually gets control first and then it starts RTOS. Many RTOS don not protect themselves and skip the checking process for better performance. To save memory, RTOS has only the functions needed for an application.

2. List the Main functions of RTOS. (A) (Nov/Dec 2012) Handling of interrupts. Task scheduling.

3. List the basic functions in an RTOS. (A) (Nov/Dec 2012)The basic functions in an RTOS are,

Kernel (Task Scheduler) Error handling functions System level functions System clock functions Time and delay functions Task state switch functions ISR functions Memory related functions IPC functions.

4. What is meant by scope in memory management? (R) (Nov/Dec 2012) Scope of a variable is based on the place of declaration in the program. It is either declared (1) outside of all functions to create global variables or (2) immediately following a function header to create temporary variables local to the function.

5. Define RTOS. (R)Operating System with real time task scheduling, interrupt-latency control,

Synchronization of tasks with IPCs, predictable timing and synchronization behavior of the system.

6. Name some RTOS services. (R) Basic OS functions RTOS Main functions (Task Scheduling & interrupt latency control) Time Management Predictability

7. What is Round Robin or cyclic scheduling? (R)A scheduling algorithm in which the tasks are scheduled in sequence from a list of ready

tasks.

Page 17:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

8. Explain briefly about Preemptive scheduling. (U)A scheduling algorithm in which a higher priority task is forced (Preempted) to block the

low priority task by the scheduler. 9. What is Time Slicing and Fixed real time scheduling? (R)Time Slicing Scheduling

A scheduling algorithm in which each task is allotted a time slice after which it is blocked and waits for its turn on the next cycle.Fixed Real Time Scheduling

A scheduling strategy in which the time for each task is fixed.

10. Explain briefly the term Task. (U)Task is a subroutine in an application that makes certain action to be performed. A Task

that has its independent program counters values and an independent stack. A single CPU system runs one task at a time.11. What is Task State? (R)

A state of a task changes on scheduler directions. A task at an instance can be in one of the four states, idle, ready, blocked ad running that are controlled by the scheduler.12. Explain Task scheduler. (U)

It is part of a RTOS. It keeps track of the state of each task and decides which one task should go into the running state. Scheduler in an RTOS looks at the priorities assigned to tasks, and among the tasks that not in the blocked state, the one with highest priority is allowed to run and the rest of them are made to wait in the ready state.

13. When a blocked task is allowed to run on a processor? (R)When a task is blocked, it never gets the processor. Therefore, an interrupt routine or

some another task in the system should signal that whatever the blocked task waiting for has happened. Otherwise, the task will be blocked forever.

14. How does a scheduler know whether a task is blocked or not? (R)RTOS provides a collection of functions that tasks can tell a scheduler what events they

wait for and to signal that events have happened.

15. What happens if all the tasks are blocked? (R)If all the tasks are blocked, then the scheduler will spin in some tight loop somewhere

inside the RTOS, waiting for something to happen. If nothing ever happens, then it ends in an infinite loop. Therefore care must be taken by programmer to invoke a interrupt routine that call some RTOS function that unblocks a task.

16. What if two tasks with the same priority are ready? (R)There are two options in this situation.

1. RTOS should declare as illegal when two tasks are assigned with same priority.2. RTOS can time-slice between two tasks that has the same priority.

17. List the rules to decide if a function is Re-entrant. (U)1. A reentrant function may not use variables in a non-atomic way unless they are stored on the

stack of the task that call the function or are otherwise the private variables of that task.

Page 18:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

2. A reentrant function may not call any other functions that are not themselves reentrant.3. A reentrant function may not use the hardware in a non-atomic way.4.

18. Define Inter process communication (IPC). (R)An output from one task (or process) passed to another task through the scheduler and

use of signals, exceptions, semaphores, queues, mailboxes, pipes, sockets, and remote procedure call is known as inter process communication.

19. What is shared data problem? (R)If a variable is used in two different tasks and another task if interrupts without before the

operation on that variable is completed, then the shared data problem arises.

20. List the ways to protect the shared data. (U) Disabling the interrupts Taking semaphores Disabling the task switches

21. Explain the term (i) Message Queue (ii) Mailbox (iii) Pipe (iv) Socket. (U)Message Queue

RTOS allows a task to send multiple messages into a FIFO queue for use by another task(s) using queue message as an input.Mailbox

RTOS allows a certain no. of messages to be stored in each mailbox.Separate functions are used to identify the appropriate mailbox, to add and read a message from the selected mailbox.Pipe Pipes are like queues. RTOS can create them, write to them, read from them and so on.Socket

It provides the logical link using a protocol between the tasks in a clientserver or peer-to-peer environment.

22. What is an Event? (R)An event is essentially a Boolean flag that tasks can set or reset and that other tasks can

wait for. Event invokes a interrupt routine that runs a waiting task.

23. Compare Semaphores, Events and Queues/Mailbox/Pipe. (U)Semaphores are usually the fastest and simplest methods. However, not much information can be passed through a semaphore, which passes just a 1-bit message saying that it has been released. Events are a little more complicated than semaphores and take little more of processor time. The advantage of events over semaphores is that a task can wait for any one of the several events at the same time and it can wait for only one semaphore.

Page 19:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

Queues (also mailboxes & pipes) allow sending a lot of information from one task to another. The drawback of queues (also mailboxes and pipes) is that adding and reading a message is more processor intensive and more prone to insert bugs while programming them.

24. How a block of data is passed using queue? (R)Passing a pointer to a buffer from one task to another through a queue is a common way

to pass a block of data.

25. Explain the problem in using malloc() and free() functions. (u)Memory management in RT embedded systems. In real time embedded systems, malloc()

and free() are avoided because of their slow response and unpredictable execution times. Instead, most of the RTOS offer fast and predictable functions along with free fixed size buffers. 26. List the two rules that an interrupt routine must follow in RTOS(A)

Environment that do not apply to task codes. Rule-1: An interrupt routine must not call any RTOS function that might block the caller.Rule-2: An interrupt routine may not call any RTOS function that might cause the RTOS to switch tasks unless the RTOS knows that an interrupt routine, and not a task is executing.27. Choose the RTOS used in embedded systems. (Ap)MUCOS, Vxworks, PSoS, RTX51, WinCE, RT Linux, Nucleus, Symbian are the important RTOS.

28. List the need for well tested & debugged RTOS. (A)When designing a complex embedded system, one needs the thoroughly tested bug free

codes for the following software components. Multiple task functions in Embedded C or C++ Real time clock based software timers employing system clock Software for cooperative scheduler to maintain time deadlines If cooperative scheduler is not suitable, then software for Pre-emptive scheduler Device drivers and device managers Functions for IPC Networking functions Error handling and Exception handling functions Testing and system debugging software

A readily available, well tested and debugged RTOS thus not only simplifies the coding process greatly for a developer, but also helps in building a product fast; it aids in building robust and bug free software by thorough testing and simulation before locating the codes into the hardware.

29. Develop the task synchronization model in ACVM. (Ap)

Page 20:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

30. What are advantages of writing embedded software in Assembly Language? (R) It gives a precise control of the processor internal devices. The machine codes are compact. Device driver codes may need only a few assembly instructions

31. What is embedded C++?(R)Embedded C++ is a version of C++ that provides for a selective disabling

which is the disadvantage in C++. So, there is a less run-time overheadand less run-time library.

32. How can optimization be used to eliminate the disadvantages in embedded C++ programs? (R) (Nov/Dec 2012)Optimization can be used as follows.

Declare private as many classes as possible. Use of char, int and boolean in place of the objects as arguments Use local variables as much as feasible. Recover memory already used by changing the reference to an object to NULL.

33. What is the use of type checking? (R)Type checking makes the program less prone to error.For eg. It does not allow

subtraction, multiplication and division on the ‘char’ data types.

34. Define Configuration files. (R)Configuration files are the files for the configuration of the system. Device configuration

codes can be put in a file of basic variables and included when needed.

35. What is difference between function and macro-function? (R)A macro function is a collection of codes that is defined in a program by a name. It

differs from a function in the sense that once a macro is defined by a name, the compiler puts the corresponding codes for it at every place where that macro name appears. But the codes for a function are compiled once only

Page 21:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

36. What is recursive and reentrant function? (R)Recursive Function:

It is a function that calls itself. It must be a reentrant function also. Most often its use is avoided in embedded systems due to memory constraints.Reentrant Function:

It is a function that is usable by the several tasks and routines at the same time. All its argument values are retrievable from the stack.

37. Define Queue. (R)It is a data structure into which elements can be sequentially inserted and retrieved in a

FIFO mode. It needs two pointers, one for the queue tail for insertion and other for the queue head for deletion.

38. Define Stack. (R)A stack is a data structure in which elements can be pushed in or pulled out. It works on

the principle of Last-In-First-Out (LIFO).

39. How interrupts are handled in Queue? (R)Queuing of pointers to the function on interrupts and later on calling the functions from

this queue is a better approach as it provides the use of short execution time interrupt-service routines.

40. What is meant by inline assembly? (R)Inserting the assembly language codes in between the high-level language codes are called inline assembly. It gives the benefits of processor specific instructions and addressing modes.

41. What is Optimization of memory? (R)When codes are made compact and fitted in small memory without affecting the code performance, it is called memory optimization.

42. What is meant by platform independence? (R)A code that can port on different machine and operating systems is said to be platform independent.

43. What are preprocessor directives? (R)It is the program statements and directives for the compiler before the main function to define global variable, global macro, new data type and global constants.

44. List the bitwise operations performed on data bits. (A) Testing bits Setting bits Clearing bits Inverting bits

Page 22:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

Extracting bits Inserting bits

45. What are the types of thread states? (R)Inactive, running and ready

46. What is time – slicing? (R) It is a scheduling algorithm which runs each thread for the same fixed amount of time.

47. What is yield in a thread? (R) A thread may explicitly call the scheduler at any time to give other threads a chance to run. Such a call is known as yield.

48. What is preemptive and non-preemptive scheduling? (R) Under non-preemptive scheduling once the CPU has been allocated to a process, the process

keeps the CPU until it releases the CPU either by terminating or switching to the waiting state. Preemptive scheduling can preempt a process which is utilizing the CPU in between its

execution and give the CPU to another process.

49. Define deadlock. (R)A process requests resources; if the resources are not available at that time, the process

enters a wait state. Waiting processes may never again change state, because the resources they have requested are held by other waiting processes. This situation is called a deadlock.

50. What is Round – robin scheduling? (R) It is the simplest algorithm for selecting one of the ready threads to run. It simply treats all threads as having equal importance.

51. What is PIP? (R)When a higher – priority thread attempts to lock a mutex already locked by a lower –priority thread , the Priority Inheritance Protocol (PIP) temporarily rises the priority of the lower –priority thread to match that of the blocked thread until the lower –priority thread unlocks the mutex.

52. What is PCP? (R)The priority of the low –priority thread is raised immediately when it locks the mutex , rather than waiting for a subsequent lock attempt by a higher – priority thread.

53. Define Semaphore. (R)Semaphore is a special variable or function that is used to take note of certain actions to prevent another task or process from proceeding.

54. Compare counting semaphore and binary semaphore. (E) Binary Semaphore:

Page 23:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

The general-purpose binary semaphore is capable of addressing the requirements of both forms of task coordination: mutual exclusion and synchronization.

A binary semaphore can be viewed as a flag that is available (full) or unavailable (empty).Counting semaphores are another means to implement task synchronization and mutual exclusion.Counting Semaphore:

The counting semaphore works like the binary semaphore except that it keeps track of the number of times a semaphore is given. Every time a semaphore is given, the count is incremented; every time a semaphore is taken, the count is decremented. When the count reaches zero, a task that tries to take the semaphore is blocked. As with the binary semaphore, if a semaphore is given and a task is blocked, it becomes unblocked. However, unlike the binary semaphore, if a semaphore is given and no tasks are blocked, then the count is incremented. This means that a semaphore that is given twice can be taken twice without blocking.

PART-B1. Explain the goals of operating system services. (R) (Nov/Dec 2012)2. List the various software tools of embedded systems and its uses (May / June 10) (U)3. Explain the function related to memory allocation in MUCOS (May / June 10) (U)4. b) Explain about round-robin scheduling. (U) (Nov/Dec 2012)5. Explain: RTOS task and task state. (Nov/Dec 2013)6. How does the interrupts work in RTOS environment? Explain. (Nov/Dec 2013)7. Explain the real time operating systems. (U)8. Design and explain basic system of an Automatic chocolate vending system. (C)9. Demonstrate with the diagram task synchronization model for a specific application. (U)10. Explain a scheduler in which the RTOS inserts into a list the ready tasks for sequential execution

in a cooperative round robin model. (6) (R) Explain the Rate Monotonic and Deadline – driven scheduling. (U)

11. What are the solutions to solve priority inversion problem? Explain in detail. (R)12. Explain in detail about Context switching. (U)13. Discuss about Semaphores with types in detail. (C)14. a) Explain how thread is used in embedded system. (U) Explain the organization of

multithreaded embedded software. (U)a. List the various instructions used for reading from and writing to an I/O port. b. Write short notes about Non-mask able, software and disability interrupts.15. Explain with an example how to write Interrupt service routines in Assembly and in C. (U)16. Explain about Non-preemptive and preemptive multitasking. (U)

UNIT V EMBEDDED SYSTEM APPLICATION DEVELOPMENT

1. Estimate the memory requirement for one – hour voice recorder system. (E)64 KB ROM, 4MB flash and 1 MB RAM

2. Estimate the memory requirement for Automatic chocolate Vending machine. (E)Internal ROM or EPROM 4 to 32 KB , Internal E ans EPROM 256 to 512 B

And Internal RAM 256 to 512 B3. What are the additional structural units in advanced processors? (R)

Page 24:   · Web viewEE6602 EMBEDDED SYSTEMS. UNIT I INTRODUCTION TO EMBEDDED SYSTEMS . 9. Introduction to Embedded Systems – The build process for embedded systems- Structural units in

Pre- fetch control unit, caches for instruction, data and branch transfer, floating point registers, floating point arithmetic unit and Instruction queuing unit.4. List the set of device registers in I/O device. (R) Data registers, control registers and status registers5. Tell the use of size of operator? (R)

The size of operator is normally used to determine the amount of memory required holding an object of the desired type and this result is provided as a parameter to malloc.

Part-B 1. Formulate the basic system of an Automatic chocolate vending system. (C) (Nov/Dec 2012)2. Elaborate the basic system of an Automatic washing machine. (May/June 2014)3. Choose the correct processor and memory for a Digital camera and Voice recorder. (E)