1 / 20

embeded system

CONTENTS AT A GLANCE. INTRODUCTIONDEFINITIONSEXAMPLE OF AN EMBEDDED SYSTEMCOMPONENTSCLASSIFICATIONSSKILLSSYSTEM LEVEL REQUIREMENTSCOMMUNICATIONSPROGRAMMING LANGUAGE REQUIRED FOR EMBEDDED SOFTWAREWHAT IS RTOS? BASIC FEATURES OF RTOSBASIC SERVICES OF RTOSESSENCITY OF RTOSFUTURE OF EMBEDDED SYSTEMCONCLUSION.

salena
Download Presentation

embeded system

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. EMBEDED SYSTEM

    3. DEFINITIONS AN EMBEDDED SYSTEM IS ONE THAT HAS COMPUTER HARDWARE WITH SOFTWARE EMBEDDED IN IT AS ONE OF ITS MOST IMPORTANT COMPONENT. THEY ARE DEVICES USED TO CONTROL, MONITOR OR ASSIST THE OPERATION OF EQUIPMENT,MACHINERY OR PLANT. EMBEDDED MEANS WITH IN EMBEDDED SYSTEMS FORM A SMSLLER PART OF A LARGER SYSTEM. EMBEDDED SYSTEMS , IN GENERAL CONTAIN VARIOUS COMPONENTS ALONG WITH THE CENTRAL MICROCONTROLLERS.

    4. EXAMPLE OF AN EMBEDDED SYSTEM Telescopes with embedded processors spread across the world, perform a sky survey co-ordinated by a central main telescope. The network scans millions of frequencies, looking for signals that dont seem to be generated by natural phenomena. If one telescope uncovers an interesting signal, the embedded processor in it, alerts the main telescope. The embedded device in the main telescope directs the other telescopes in the network, to lock on to the suspect frequency, point their antennas in its direction, and perform their own transmission analysis.

    5. COMPONENTS EMBEDDED SYSTEMS HAVE A HARDWARE PART . IT HAS MAIN APPLICATION SOFTWARE. THE APPLICATION MAY PERFORM CONCURRENTLY THE SERIES OF TASKS OR MULTIPLE TASKS. IT HAS A REAL TIME OPERATING SYSTEM, THAT SUPERVISES THE APPLICATION SOFTWARE AND PROVIDES A MECHANISM TO LET THE PROCESSOR RUN A PROCESS AS PER SCHEDULING AND DO THE CONTEXT-SWITCH BETWEEN THE VARIOUS PROCESS.

    6. CLASSIFICATIONS EMBEDDED SYSTEM CAN BE CLASSIFIED INTO THREE TYPES AS:- SMALL SCALE EMBEDDED SYSTEM MEDIUM SCALE EMBEDDED SYSTEM SOPHISTICATED EMBEDDED SYSTEM

    7. SYSTEM LEVEL REQUIREMENTS Embedded systems are complex as they are enclosed within a larger device Hence they have to be considered in their entirety during the design phase. Embedded systems control an environment by monitoring and interacting with it. This requires transformation of analogue inputs to digital signals. smart actuators and sensors these contain their own small processors, power switches and analogue interfaces Embedded systems are valued based on their utility. They function as control systems. Input, output and process mechanism is maintained by the application, which contains the embedded system. Hence the focus is on utility of the application instead of the embedded system. Conservation of battery power is one of the issues in embedded systems. Power requirement depends on the design factors of the systems. In complex, systems, unexpected events might cause embedded systems to fail. Hence it should be highly stable and reliable.

    8. SKILLS REQUIRED FOR SKILLS FOR SMALL SCALE EMBEDDED SYSTEM DESIGNER SKILLS FOR MEDIUM SCALE EMBEDDED SYSTEM DESIGNER SKILLS FOR SOPHESTICATED EMBEDDED SYSTEM DESIGNER

    9. PROGRAMMING LANGUAGE FOR EMBEDDED SOFTWARE Embedded systems use different processors depending on performance requirements and cost. Each processor has its own instruction set; therefore, writing the software for the target processor requires your learning the corresponding assembly language instruction set. However with the advances in software development tools, now you can do the programming in high level languages as well. The following sections describe the various options available for writing embedded software and the pros and cons of each.

    10. STRUCTURE OF A C COMPILER Because embedded software development is done extensively in C, this section examines the structure of a compiler to understand how the compiled gets in memory and how the C program is organised in the memory. Although you issue only one command to compile a program and generate the machine code, the compiler does a lot of things behind the senses. It has a lexical analyser, a syntax analyser, an intermediate code generator, a code optimiser, and a machine code generator. In addition, it has a symbol table and an error handler.

    12. LEXICAL ANALYZER The lexical analyzer takes the source code as input and separates the input characters into tokens. The output is a stream of tokens. Each token consists of a token type and token value. For instance, the operator > has a token type operator and a token value >. The lexical analyser takes the statements characters one by one, such as in the statement int a, b;. Because int is a valid keyword, int is declared as a token and is assigned a value and put it in the symbol table. if an invalid token is encountered , such as an integer,then the lexical analyzer informs the error handler, which through a compiler error message. In a nutshell, the lexical analyzer identifies the various constructs of the programming language, such as keywords, punctuation marks, operators, etc.

    13. SYNTAX ANALYZER The stream of tokens sent by the lexical analyzer is parsed by the syntax analyser, which checks whether each statement contains the correct grammar. if a semicolon is missing, or if the necessary arguments are not given for a particular statement , the syntax analyzer complains via the error handler. The parser groups the tokens into syntactic structures. The parser generates a tree like structure called a parse tree.

    14. INTERMEDIATE CODE GENERATOR The intermediate code generator takes the syntactic structure as the input and generates a stream of simple instructions, similar to an assembly language program. Each statement will be in the following format: T=Y OP X Consider the following statement: X= a/b + c/d The intermediate code for the preceding statement is as follows: T1= a/b T2= c/d T3= T1 + T2 T1, T2 and T3 are temporary variables.

    15. CODE OPTIMIZATION The intermediate code that is generated as explained in the preceding section is optimized to make the program efficient. The objective to minimize both the memory requirement and the time needed for execution. here, we need to differentiate between algorithm optimization and code optimization. Optimising the algorithm is the programmers job. For instance, if you want to implement a search or sort algorithm, which algorithm to choose depends on the timing and memory requirements of the various algorithms available for searching and sorting. Code optimisation is done by the compiler for a given algorithm implementation. This is an optional phase. By providing a compiler option, the user can bypass the code optimizer.

    16. Consider the example of a program to determine the roots of a quadratic equation. if (a*x*x + b*x +c =0) is the quadratic equation, you could calculate the roots using the following formulas: Root1 = (-b + sqrt (b**2 4*a*c)) / (2*a) Root2 = (-b - sqrt (b**2 - 4*a*c)) / (2*a) However, a better option would be to calculate the value of the sqrt, assign it to the variable d, and then calculate the roots as follows: Root1=(-b+d)/(2*a) Root2=(-b d)/(2*a) This is known as local optimization. Another type of optimisation done by the optimizer is called loop optimization

    17. . Consider the following code segment: For (i=0 ; i<10 ; i++) { X= 2.0 * a + 3.1 * b ; /* some other statements */ } The statement to calculate the value of x within the for loop is called a loop invariant, because the value of x does not depend on the value of i. therefore, it is unnecessary to keep that statement within the loop. a casual programmer may leave it in , but the optimizer , to produce efficient code , will place the statement above the loop. .

    18. WHAT IS RTOS? The term RTOS is an abbreviation for real time operating system. This term usually triggers an image of highly complicated operating systems in the minds of a programmer who is new to embedded systems. Current RTOS provide a huge Varity of features. A basic RTOS is just small enough to provide some scheduling, memory management and a decent level of H/W subtraction.

    19. FEATURES OF RTOS The basic features of RTOS are followed as: Task creation or management. Scheduling. Synchronisation. Memory management. Timers.

    20. CONCLUSION THIS TOPIC DISCUSSES VARIOUS EMBEDDED SYSTEMS APPLICATIONS,THEIR SCOPE AND FUTURE. YOU HAVE LEARNED ABOUT INNOVATIVE EMBEDDED END-USER PRODUCTS LIKE THE MOBILE WEB PAD, NET-ENABLED ESPRESSO MAKER,DIGITAL MUSIC PLAYER AND FINGER PRINT SECURITY SYSTEM.

More Related