Monday, March 7, 2011

Embedded System Training - Day1

Embedded System Training - Day 1
A system is a way of working , organizing or doing one or many tasks
e.g.
Time display system.
Automatic Cloth Washing Machine : Wash by spinning a motor .
Computers Vs Embedded System
1)Combination of HW and SW.
2)Operating System manages many tasks at a time.
3)Combination of HW and SW which works towards specific goal is called embedded system.As a manufacturer, we clearly predict what embedded system is used for.
Optimally Designed HW and Dedicated Software and Firmware.
CPU sits on top of firmware , sensors and actuators communicate through them.
ES domains
a)Automotive
b)Aerospace
c)Livestock Management
d)Medical

Embedded Systems are not used for computation these days..

Real time system : A time constrained Embedded system.
Hard and Soft Real time systems.

Types of Developement
Native Developement : Desktop application and normal development.
Cross Development : Usage of two environment, host machine[PC] and Target [ where application gets executed]
Here the program executes in different machine and developement happens in different machines.
This interface between the Host and Target can be anything * [Doubt1]
Device corresponds to Data Sheet.ESD is all about Cross Development.


Components of embedded system :
System-On-Chip
1.Processor
2.Program Memory and Data Memory
[Memory is no more critical due to advancement in Memory technology]
3)Timers
4)Interrupt Controller
5)Parellel Ports
6)Serial Communication Port
7)Clock Generation Unit
8)Power Supply and Management
[Critical in all systems]
9)Output Interface
10)System Application Specific Circuits.
Power Source :
Systems may or may not have own power supply
digital watch
media player

System which do not have power supply
-- Network Interface card
-- Pen Drive
-- External Hard Disk.
Power Requirements :
-- 5.0V +/- 0.25V
-- 3.3V +/- 0.3V
-- 2.0V +/- 0.2V
-- 1.5V +/- 0.2V
Power Management :
-- Optimizing the code.
-- Enabling and Disabling Caches and Cache blocks
[High speed memory,bypassing accessing of Cache can save power]
-- Reduction of the clock rate during specific set of instruction.
Clock Oscillator and Clocking Units
-- of the cpu
-- of the system timers
-- Fetching codes and data,decoding and execution

Why exe needs to be moved from Secondary memory to RAM?
Processor is not capable : Harddisk is block addressible and RAM[primary memory] is byte addresible .Microcontrollers are Bit-addresible.Flash is Byte Addresible*[semi-conductor based-- Doubt2]
Reset Circuit
1)CPU begins the processing the instruction from a starting address.
2)Program which runs after reset on powerup
-- A system program that executes from the beginings
-- A system boot-up program
-- A system initialization program
3)Reset on WDT expiry.
Types of Memory:
--Internal and external RAM.
--Internal Caches
-- Flash EEPROM [ external or internal ]
-- ROM/PROM
-- NVRAM
ROM/EROM/FLASH
-- RTOS & Application program bundled together
-- Codes for System Booting/Initialization/Initial input data and strings.
-- Non-Volatile results for processing.
RAM[ Internal/ External / Buffer RAM]
-- Storing the code segment
-- Stack/Heap memory

NOR Flash : Kernel, Configuration data , hence protection is there.
NAND Flash :FS,Application,User Space.

Caches
-- copies of instruction/data and brance tranfer instruction .
Interrupt Handler
-- external port interrupt
-- IO interrupt
-- timer and RTC interrupt
-- SW interrupt
Design Process in ES
-- Abstraction
-- HW & SW Architecture
-- Extra functional properties
-- System related family of design [ Not valid much as embedded devices are very much different from each other]
-- Modular Design [ reusable ]
Design process contd....
-- UI design
-- Refinements
Developement Process
-- Model Analysis
-- Design SW architecture,interfaces and algorithms
-- Implementation of Design
-- Test Internal Logic and External Functions.
Design Metrics
-- Power dissipation
-- Performance
-- Process deadlines
-- User Interfaces [ IOS ]
-- Size : code and device both
-- Engineering Cost
-- Manufacturing Cost
-- Flexibility
-- Prototype
-- Development time
-- Time to Market
-- System and user safety
-- Maintenence
Challenges in ESD
-- Clock rate reduction
-- Voltage reduction
-- Wait , Stop and Cache disable functions
-- Process deadlines
-- Flexibility and upgrade ability

ROM image : Final stage of Software image
-- Just as an image in a unique sequence and arrangement of pixel
-- Embedded software must be placed in proper address.
-- Placed in Non-Volatile Memory
General Concepts :
Boot Loader is loaded through MBR.
Boot Loader loads the Operating System.
Basic GCC
gcc -e file.c ---> output to monitor
gcc -s file.c ---> .s file
gcc -c file.c ---> .o file
gcc -d INTEL file.c ---> conditional compilation using INTEL which defined externally.

Small Scale ES
-- Designed with a single 8 or 16 bit microcontroller
-- Little HW & SW complexities and involved board design.
Medium Scale ES
-- 16 bit or 32 bit micro controllers
-- DSP and RISC

Sophisticated ES
-- Enormous SW and HW complexities
-- Scalable and Configurable Processors
-- HW and SW co-design and component integrations in final stages.

No comments:

Post a Comment