Title: Yongjun Zheng
1Mobile Networking
2Outline
- 1.0 Embedded Systems Overview
- 2.0 Processors of Embedded System
- 3.0 Embedded Operating System
- 4.0 Windows CE OS
- 5.0 Introduction of J2ME
- 6.0 Wireless data transmission
- 7.0 Current Research
31.0 Embedded Systems Overview
4- Computing systems are everywhere
5- Most of us think of desktop computers
- PCs
- Laptops
- Mainframes
- Servers
- But theres another type of computing system
- Far more common...
6- Embedded computing systems
- Computing systems embedded within electronic
devices - Hard to define. Nearly any computing system other
than a desktop computer - Billions of units produced yearly, versus
millions of desktop units - Perhaps 50 household and 50 automobile
7Common characteristics of embedded systems
- Single-functioned
- Executes a single program, repeatedly
- Tightly-constrained
- Low cost, low power, small, fast, etc.
- Reactive and real-time
- Continually reacts to changes in the systems
environment - Must compute certain results in real-time without
delay
8Hardware/software evolution
- Software design evolution
- Machine instructions
- Assemblers
- convert assembly programs into machine
instructions - Compilers
- translate sequential programs into assembly
- Hardware design evolution
- Interconnected logic gates
- Logic synthesis
- converts logic equations or FSMs into gates
- Register-transfer (RT) synthesis
- converts FSMDs into FSMs, logic equations,
predesigned RT components (registers, adders,
etc.) - Behavioral synthesis
- converts sequential programs into FSMDs
9Components of Embedded System
- An embedded system is various type of computer
system or computing device that performs a
dedicated function and/or is designed for use
with a specific embedded software application.
Embedded systems may use a combination of
Read-only as well as with Read-Write based
operating system. But an embedded system is not
usable as a commercially viable substitute for
general-purpose computers or devices. - Embedded Systems have 3 important componets
- HardWare
- Applications. Implement the tasks
- Real-Time Operating System,RTOS, to manage the
applications.
102.0 Processors of Embedded System
Acorn RISC Machine ARM is a leader in
microprocessor Intellectual Property. ARM designs
and licenses fast, low-cost, power-efficient RISC
(Reduced Instruction Set Computing ) processors,
peripherals and 'system-on-chip' solutions for
embedded control.
11ADS build Software
- ARM Object Library
- Empty Project
- Makefile Importer Wizard
- Thumb ARM Executable Image
- Thumb Executable image
- Thumb Object Library
include ltstdlib.hgt include ltstring.hgt include
"def.h" include "option.h" include
"2410addr.h" include "2410lib.h" include
"2410slib.h" include "mmu.h" include
"uart0.h" void Isr_Init(void) //
void Main(void)
MMU_Init() ChangeClockDivider(1,1)
ChangeMPllValue(0xa1,0x3,0x1)
Port_Init() Isr_Init()
Uart_Init(0,115200) Uart_Select(0)
12ADS build Software
133.0 Embedded Operating System
- 1. Real-Time Operating System(RTOS)
- VxWorks, NeutrinoRTOS
- Task Management)
- Task Scheduling)
- IPC
- Memory Management
- 2. Non-RTOS
- Linux
- Window CE
- Palm soucePalm OS
- SymbianSymbian OS
14Linux
An embedded operating system is the software
program that manages all the other programs in an
embedded device after initial load of programs by
a boot loader.It normally guarantees a certain
capability within a specified storage size and
time constraint as well as with application
programs. It also normally has small foot print
including initial boot loader, OS kernel,
required device drivers, file systems for the
user data and so forth. It has very-likely
structure of a normal operating system however
mainly differentiated by some factors such as
type of pre-installed device, functional limits,
taking designed job only.
15Typical development cycle
- Writing the code
- Translating the code
- Debugging the code with the help of debugging
tools, including emulators - Programming Flash or OTP version of the
microcontroller to built up a first functional
prototype of your system
161. Writing Microcontroller Code Software Code for
a microcontroller is written in a programming
language of choice (often Assembler or C). This
source code is written with a standard ASCII text
editor and saved as an ASCII text file.
Programming in assembler involves learning a
microcontroller's specific instruction set
(assembler mnemonics), but results in the most
compact and fastest code. A higher level
language like C is for the most part independent
of a microcontroller's specific architecture, but
still requires some controller specific
extensions of the standard language to be able to
control all of a chip's peripherals and
functionality. The penalty for more portable code
and faster program development is a larger code
size (20...40 compared to assembler).
172. Translating the Code Next the source code
needs to be translated into instructions the
microcontroller can actually execute. A
microcontroller's instruction set is represented
by "op codes". Op codes are a unique sequence of
bits ("0" and "1") that are decoded by the
controller's instruction decode logic and then
executed. Instead of writing opcodes in bits,
they are commonly represented as hexadecimal
numbers, whereby one hex number represents 4 bits
within a byte, so it takes two hex numbers to
represent 8 bits or 1 byte. For that reason a
microcontroller's firmware in machine readable
form is also called Hex-Code and the file that
stores that code Hex-File.
183. Debugging the Code A debugger is a piece of
software running on the PC, which has to be
tightly integrated with the emulator that you use
to validate your code. For that reason all
emulator manufacturers ship their own debugger
software with their tools, but also compiler
manufacturers frequently include debuggers, which
work with certain emulators, into their
development suites
19Set Up Linux Environment
20Linux Development Aspects
- Create a device deriver
- After creating a platform, you can create a
device driver for a specific target device to
operate under the Windows CE operating system
(OS). You create your driver once you have
identified the hardware platform that you want
use with the OS. - Network Programming
- GUI Programming
214.0 Windows CE OS
Platform Builder for Windows Embedded CE 6.0
comes with a full set of development tools that
apply to each phase of the development process.
Real-time Support A few of the real-time
functionalities Windows Embedded CE supports
are Nested interrupts Per-thread quantums 256
levels of thread priority Supported Processors
ARM MIPS SH x86
22Windows CE Development
It's Still Windows Programming While differences
between Windows CE and the other versions of
Windows do exist, they shouldn't be overstated.
Programming a Windows CE application is
programming a Windows application. It has the
same message loop, the same windows, and for the
most part, the same resources and the same
controls. The differences don't hide the
similarities. For those who aren't familiar with
Windows programming, here's a short introduction.
HelloCE.hstruct decodeUINT   // Structure assoc
iates    UINT Code   // messages              Â
                                 .     LRESULT (
Fxn)(HWND, UINT, WPARAM, LPARAM) struct decod
eCMD   // Structure associates    UINT Code   /
/ menu IDs with a     LRESULT (Fxn)(HWND, WORD,Â
HWND, WORD) Â
235.0 Introduction of J2ME
3.1 What is J2ME The Java 2 Platform, Micro
Edition (J2ME) offers great tools for developers,
porting the Java platform's network-centric and
platform-agnostic worldview down to memory- and
processor-limited devices. J2ME is not a kind of
product, but a kind of technology, J2ME includes
the packages of two kinds, namely dispose
(configuration) and describe (profile). It is API
of a series of low levels (use the programming
interface) and a kind of virtual machine
optimized for this clan equipment to dispose
(configuration). There are two kinds of with
general dispositions today, device layout joined
in device layout( CDC) and restricting that is
being joined?
246.0 Wireless Technology
- A wide range of portable devices, such as PDAs,
mobile phones and other wearable equipment are
emerging - W-WAN (wireless wide area networking),
- WLAN (wireless local area networking)
- PAN (personal area networking) capabilities.
- With the emergence of high speed wireless data
transmission technologies (e.g. Bluetooth, LAN,
3G, GPRS), incorporating broadband and
multi-media support
25- AMPS The big boom in mobile phone service really
began with the introduction of analog cellular
service called AMPS (Analog Mobile Phone Service)
starting in 1981. This generation is 1G, the
first for using cell technology that let users
place their own calls and continue their
conversations seamlessly as they moved from cell
to cell. - GSM stands for Global System for Mobile
Communications, It is a digital wireless radio
system which can be referred to as 2G. - HSCSD stands for High Speed Circuit Switch Data.
It allows high data rateds14400 bits per
channel, this is currently being upgraded in many
networks to rates of and up to 43.2 kbps. - GPRS stands for General Packet Radio Service. It
is commonly referred to as 2.5 G, whish is an
interim improvement to GSM which adds a packet
switching layer to the GSM network, and which
allows for consistent connectivity.
26- UMTS stands for Universal Mobile
Telecommuncications System. UMTS is 3G. it is
based on different underlying technology to 2G.
As a key member of the "global family" of third
generation (3G) mobile technologies identified by
the ITU, UMTS is the natural evolutionary choice
for operators of GSM networks. - 2G uses Time Division Multiple Access (TDMA) but
3G use Code Division Multiple Access
(CDMA)."UMTS" is synonymous with a choice of
WCDMA radio access technology that has already
been selected by approaching 120 licensees
worldwide.
27Latest Wireless Technology
- WLAN(Wi-Fi) denotes a set of Wireless LAN/WLAN
standards developed by working group 11 of the
IEEE LAN/MAN Standards Committee (IEEE 802). - WiMAX as "a standards-based technology enabling
the delivery of last mile wireless broadband
access as an alternative to cable and DSL - To meet these demands, pioneers in the industry
working through the IEEE turned to
Ultra-Wideband (UWB) technology. Scalable in
performance from 100Mbps to over 2Gbps, certain
Ultra-Wideband systems will deliver secure
wireless connections between high-quality
multimedia products that arent susceptible to
interference and breaks in performance. - There is also an emerging cellular standard you
should be aware of called 4G. The fourth
generation being championed in Japan will boost
the data rates to 20 Mbps. These speeds enable
high quality video transmission and rapid
download of large music files.
28Thanks!