Vous êtes sur la page 1sur 24

EMBEDDED SYSTEMS

SYSTEM DESIGN USING


EMBEDDED PROCESSORS
Module 1
 Embedded Concepts
◦ Introduction to embedded systems,
◦ Application Areas,
◦ Categories of embedded systems,
◦ Overview of embedded system architecture,
◦ Specialties of embedded systems,
◦ recent trends in embedded systems,
◦ Architecture of embedded systems,
◦ Hardware architecture,
◦ Software architecture,
◦ Application Software,
◦ Communication Software,
◦ Development and debugging Tools.
3/23/2018 ESG-NIELIT Calicut 2
Embedded Software
Outline
 Boot loader
 Driver
 Embedded Operating System (EOS)
 Real Time Operating System (RTOS)

4
Boot loader
A special small program to load other software for
the operating system to start.
Common Feature
oOS loader
oFirmware update, from uart/usb/Ethernet
oSystem Configuration
oDebug and testing

5
Device Drivers
OS access I/O hardware using special software called
“device driver”
Standard types of interfaces for device
Can be included in the kernel or loaded when
needed.
Often are interrupt routines and some also create
threads
Special C functions are typically used to setup
interrupt routines

6
Driver Characteristics
Probably written in C/C++
Standard linkage dictated by OS
Several device functions likely needed
•Detect hardware and Initialize?
•Open
•Read
•Write
•Close
•Device Status and Control?

7
Embedded Operating System
 a ROM-based operating system for a
specific embedded application.
 Evaluation
◦ Modular
◦ Scalable
◦ Configurable
◦ Small size
◦ CPU support
◦ Device drivers
◦ …

8
Commercial Embedded OS /RTOS
 Wind River Systems  Palm Computing
◦ VxWorks ◦ PalmOS
◦ pSOS  Symbian
 QNX Software Systems ◦ SymbianOS
◦ QNX  Microsoft
 Green Hills Software ◦ Embedded NT/XP
◦ Integrity  “Real-time” control

 Mentor Graphics ◦ Windows CE (CE.NET)


 Internet devices
◦ VRTX
◦ Pocket PC 2002
 Handheld PC’s and PDA’s

9
Real-time Kernel (RTOS Kernel) Requirements

 Multitasking
 Preemptive scheduling
 Fast, flexible inter-task communications and
synchronizations
 Easy communications between task and interrupt
levels
 Bounded performance

3/23/2018 NIELIT, CALICUT 10


APPLICATION SOFTWARE
 Application software has to be developed above
the OS.
 application software's are written by using
function calls
Function calls provided by an OS
 To Create, suspend, delete tasks
 For Task scheduling.
 For Inter task communication and synchronization
 To Allocate and free memory
 To access the i/o devices.
 To access the communication protocol stack

3/23/2018 NIELIT, CALICUT 11


Steps in making function calls
COMMUNICATION SOFTWARE
 Most of the embedded s/m need a
communication interface.
◦ Hardware interface (Ethernet).
◦ Software interface (TCP/IP protocol stack).
 TCP/IP protocol stack integrated along with the
operating system if required. Application layer
Transport Layer
TCP/IP Protocol suite IP layer
Data link Layer
Physical layer

3/23/2018 NIELIT, CALICUT 13


Communication Software cont..
TCP/IP Protocol Suite.
 TCP/IP protocol stack is now being ported on to
many embedded systems
 TCP/IP protocol stack is now an integral part of
an desktop operating system.
 Embedded systems are network enabled with
TCP/IP protocol stack.
 TCP/IP stack is also being embedded into systems
running real time operating systems.
Communication Software cont..
Physical layer
 This layer defines the characteristics of
transmission such as data rate and signal
encoding.
Data link layer
 This layer defines the protocols to mange the
links.(establishing, transfering, disconnecting)
 It is sub divided into two.
◦ Media access control(MAC)
◦ Logical link control(LLC)
Communication Software cont..
Internet Protocol (IP) layer
 Addressing and Routing is the main
functionality of this layer is implemented in
software.
 IP layer software runs on every end systems and
Router connected to the internet.
 Current running IP software vertions are
IPv4(32bit) and IPv6(128bit).
 Embedded operating system presently support
IPv4.
Communication Software cont..
 This layer provides end-to-end data transfer
service between two systems connected to the
internet.
 Transport layer provide reliable services through
acknowledgement, retransmission etc..
 Connection oriented Transmission Control
Protocol (TCP) and connection less User
Datagram Protocols(UDP) are defined in this
layer.
Communication Software cont..
Transmission Control Protocol (TCP)
Functions of TCP are:-
 To check whether each packet is received without
any errors.
 To check packets are received in sequence or not.
 To check whether all packets are received or
whether some packets are lost.
 Flow control and error control of packets are the
another job of TCP.
Communication Software cont..
User Datagram Protocols(UDP)
 It provide connection less service.
 UDP does not provide reliable service.
 Real-time services such as voice and video
communication and network management are
the main jobs of UDP
 Simple Network Management Protocol(SNMP)
runs above the UDP
 Power require to process UDP datagrams are
less.
Communication Software cont..
Application layer
 This layer differs from application to
application.
 Two processes on two end systems
communicate with application layer as the
interface.
 Simple male transfer protocol(SMTP)
Telnet for remote login
HTTP and FTP etc.. are some protocols runs on
Application layer
Development/Debugging Tools
 Hardware Development/debugging tools
◦ Digital multi-meter
◦ Oscilloscope
◦ Logic Analyzers

 Software Development/debugging tools


◦ Cross platform development suite.
◦ ROM emulator
◦ EPROM programmer.
◦ Instruction set simulator.

3/23/2018 NIELIT, CALICUT 21


Development/Debugging Tools cont..
 The source code is written in the host system.
 Compiled and linked using cross platform
development tools
 Then downloaded into target system and tested.
 If the s/w is not working as per requirements it
can be debugged on the target itself.
 After ensuring everything is ok the executable
image is transferred to ROM or Flash memory
Development/Debugging Tools cont..
Cross Platform development tools
 Cross compiler.
 Cross assembler.
 Cross linker.
 Cross debugger.
 Cross compiled libraries.
 Operating system dependent libraries and
headers for the target processor.
End of Session

Thank you

Vous aimerez peut-être aussi