Embedded and Real-Time Operating Systems: Course Code: 70439
Embedded and Real-Time Operating Systems: Course Code: 70439
OPERATING SYSTEMS
Course Code: 70439
Mr N Srikanth Prasad
Assistant Professor
Department of Electronics and Communication Engineering
Malla Reddy Engineering College(A)
[email protected]
+91-93 9104 9134
1
Course Description
• Module – I : Introduction to Embedded Systems
• Module - II : Typical Embedded System
• Module - III : Embedded Firmware
• Module – IV : RTOS Based Embedded System Design
2
TEXT BOOKS:
• Shibu K. V, “Introduction to Embedded Systems”, McGraw
Hill, 2013. (Modules I, II, III, IV & V)
REFERENCE BOOKS:
• Raj Kamal, “Embedded Systems”, TMH.
• Frank Vahid, Tony Givargis, John Wiley,“Embedded System
Design”.
• Lyla, “Embedded Systems”, Pearson, 2013.
• David E. Simon, “An Embedded Software Primer”, Pearson
Education.
3
Module - III : Embedded Firmware
• Reset Circuit
• Brown-out Protection Circuit
• Oscillator Unit
• Real Time Clock
• Watchdog Timer
• Embedded Firmware Design Approaches and Development
Languages.
4
Embedded Firmware
• Embedded firmware refers to the control
algorithm (Program instructions) and/or the
configuration settings that an embedded
system developer dumps into the code (program)
memory of the embedded system. It is an un-
avoidable part of an embedded system. There
are various methods available for developing
the embedded firmware. They are listed below:
5
1. Write the program in high level languages
like Embedded C/C++ using an Integrated
Development Environment.
2. Write the program in Assembly language
using the instructions
supported by your
application’s target
processor/controller.
6
•The instruction set for each family of processor/controller is
different and the program written in either of the methods
given above should be converted into a processor
understandable machine code before loading it into the
program memory.
•The process of converting the program written in either a high
level language or processor/controller specific Assembly code
to machine readable binary code is called ‘HEX File Creation’.
•If the program is written in Embedded C/C++ using an IDE, the
cross compiler included in the IDE converts it into
corresponding processor/controller understandable ‘HEX File’.
7
•If you are following the Assembly language
based programming technique, you can use the
utilities supplied by the processor/controller
vendors to convert the source code into ‘HEX
File’.
8
Other System Components
• The other system components refer to the
components/circuits/Ics which are necessary for the
proper functioning of the embedded system.
10
• Some microprocessors/controllers contain
built-in internal reset circuitry and they don’t
require external reset circuitry. Figure
illustrates a resistor capacitor based passive
reset circuit for active high and low
configurations. The reset pulse width can be
adjusted by changing the resistance value R
and capacitance value C.
11
12
Brown-out Protection Circuit
•. The brown-out protection circuit prevents
the processor/controller from unexpected
program execution behavior when the supply
voltage to the processor/controller falls below a
specified voltage.
13
Oscillator
• The Oscillator unit generates clock signals
for synchronizing the operations of the
processor.
14
Real-Time Clock (RTC)
• Real-Time Clock (RTC) is a system component responsible for
keeping track of time. RTC holds information like current
time (in hours, minutes and seconds) in 12 hour/24 hour format,
date, month, year, day of the week, etc. and supplies timing
reference to the system. RTC is intended to function even in the
absence of power. The RTC chip contains a microchip for
holding the time and date related information and backup
battery cell for functioning in the absence of power, in a
single IC package. The RTC chip is interfaced to the processor
or controller of the embedded system. For Operating System
based embedded devices, a timing reference is essential for
synchronizing the operations of the OS kernel. 15
Watchdog Timer
• A watchdog is to monitor the firmware
execution and reset the system processor/
microcontroller when the program execution hangs up or
generates an Interrupt in case the execution time for a
task is exceeding the maximum allowed limit.
16
•Most of the processors implement watchdog as
a built-in component and provides status
register to control the watchdog timer (like
enabling and disabling watchdog functioning)
and watchdog timer register for writing the
count value. If the processor/controller doesn’t
contain a built in watchdog timer, the same
can be implemented using an external
watchdog timer IC circuit.
17
18
The applications of watchdog timer:
• An application in mobile phone is that display is off in case no GUI
interaction takes place within a watched time interval. This will save good
amount of battery power.
19
PCB and Passive Components
• Printed Circuit Board (PCB) is the backbone of every
embedded system. After finalizing the components and the
inter-connection among them, a schematic design is created and
according to the schematic PCB is fabricated. PCS acts as a
platform for mounting all the necessary components as per
the design requirement. Also it acts as a platform for testing
your embedded firmware. You can also find some passive
electronic components like resistor, capacitor, diodes, etc. on
your board. They are the co-workers of various chips
contained in your embedded hardware. They are very essential
for the proper functioning of your embedded system.
20
Module - III : Embedded Firmware
• Reset Circuit
• Brown-out Protection Circuit
• Oscillator Unit
• Real Time Clock
• Watchdog Timer
• Embedded Firmware Design Approaches and Development
Languages.
21