Embedded Systems [EEE, ECE Department]

Embedded Systems [EEE, ECE Department]


Embedded Systems





1 What is an embedded system


1. What is an embedded system?
2. Inside the embedded system



2 Embedded processors


1. Embedded processors
2. 8 bit accumulator processors
3. Example 8 bit architectures: Z80, Z80 programming model, MC6800
4. Microcontrollers: MC68HC05, MC68HC11 - Architecture
5. Data processors: Complex instructions, microcode and nanocode
6. INTEL 80286
7. INTEL 80386DX
8. INTEL 80486
9. Intel Pentium
10. Motorola MC68000 and its hardware
11. Motorola MC68020
12. Motorola MC68030
13. The MC68040
14. Integrated processors
15. RISC processors
16. The Berkeley RISC model
17. Sun SPARC RISC processor
18. The Stanford RISC model
19. The MPC603 block diagram
20. The ARM RISC architecture
21. Digital signal processors
22. DSP basic architecture
23. Choosing a processor



3 Memory systems


1. Memory systems and Memory technologies



4 Basic peripherals


1. Parallel ports
2. Timer/counters
3. 8253 timer modes
4. MC68230 modes
5. Timer processors
6. Real-time clocks
7. Serial ports
8. Serial peripheral interface
9. I2C bus
10. What is an RS232 serial port?
11. Asynchronous flow control
12. UART implementations
13. DMA controllers
14. A generic DMA controller
15. DMA controller models
16. Channels and control blocks
17. Sharing bus bandwidth
18. DMA implementations



5 Interfacing to the analogue world


1. Analogue to digital conversion techniques
2. Sample rates and size: Irregular sampling errors, Nyquist�s theorem
3. Codecs: Linear, A-law and Inf-law, DPCM and ADPCM
4. Power control in Interfacing to the analogue



6 Interrupts and exceptions


1. What is an interrupt?
2. Interrupt sources
3. Recognising an interrupt
4. The interrupt mechanism
5. MC68000 interrupts
6. RISC exceptions
7. Fast interrupts
8. Interrupt controllers
9. Instruction restart and continuation
10. Interrupt latency
11. Do�s and Don�ts - Interrupts and exceptions



7 Real


1. What are operating systems?
2. Operating system internals
3. Multitasking operating systems
4. What is a real-time operating system?
5. Task swapping methods
6. Scheduler algorithms
7. Priority inversion
8. Tasks, threads and processes
9. Exceptions
10. Memory model
11. Memory management address translation
12. Choosing an operating system
13. Commercial operating systems
14. Windows NT characteristics
15. Resource protection
16. Linux
17. Disk partitioning
18. The Linux disk partitioning
19. Linux software structure, Physical and Memory management
20. Linux limitations
21. eLinux



8 Writing software for embedded systems


1. Writing software for embedded systems
2. The compilation process
3. Native versus cross-compilers
4. Run-time libraries
5. Writing a library
6. Using alternative libraries
7. Using a standard library
8. Porting kernels
9. C extensions for embedded systems
10. Downloading- Writing software for embedded systems



9 Emulation and debugging techniques


1. Debugging techniques
2. High level language simulation
3. Low level simulation
4. Onboard debugger
5. Task level debugging
6. Symbolic debug
7. Emulation
8. Optimisation problems in Emulation techniques
9. Xray - Emulation technique
10. The role of the development system: Floating point and memory management functions
11. Emulation techniques: BDM, OnCE, JTAG



10 Buffering and other data structures


1. What is a buffer?
2. Linear buffers
3. Directional buffers
4. Double buffering
5. Buffer exchange
6. Linked lists - Buffering
7. FIFOs and Circular buffers
8. Buffer underrun and overrun
9. Allocating buffer memory
10. Memory leakage in Buffering



11 Memory and performance trade


1. The effect of memory wait states
2. Single cycle processor with large external memory
3. Reducing the cost of memory access



12 Software examples


1. Benchmark example - Embedded Systems
2. Creating software state machines



13 Design examples


1. Burglar alarm system
2. Burglar alarm system



14 Real time without a RTOS


1. Choosing the software environment
2. Deriving real-time performance from a non-real-time system
3. Scheduling the data sampling
4. Sampling the data- Real-time without a RTOS
5. Controlling from an external switch
6. Problems- Real-time without a RTOS
7. Program listing- Real-time without a RTOS



EMBEDDED SYSTEM APPLICATION DEVELOPMENT


1. Embedded System : An Introduction
2. Elements of Embedded Systems
3. Core of The Embedded System
4. Characteristics & Quality Attributes of Embedded Systems
5. Program for Embedded Systems and Build Process
6. Debugging on Embedded Systems
7. Embedded Hardware from Software Programmers Perspective
8. Embedded Systems: Memory
9. Embedded Systems: Memory Testing
10. Embedded Systems: Peripherals
11. Embedded Operating System
12. Embedded Systems: Integrated Development Environment
13. Embedded Development Life Cycle
14. EDLC Models
15. Trends in Embedded Systems
16. Case Study of an Embedded System for Smart Card



EMBEDDED SYSTEMS and REAL TIME OPERATING SYSTEMS


1. Introduction to Embedded Systems
2. Devices and Buses for Devices Network
3. Bus communication Protocols: 12C, USB, CAN, PCI
4. Embedded Programming Concepts
5. Concepts and Embedded Programming in C, C++
6. Real Time Operating Systems
7. Real Time Operating System Programming



EMBEDDED COMPUTING


1. Embedded Computing - Introduction
2. Challenges in Embedded Computing System Design
3. The Embedded System Design Process
4. 8051 Microcontroller
5. ARM processor
6. Important Short Questions and Answers: Embedded Computing



MEMORY AND INPUT OUTPUT MANAGEMENT


1. Programming Input and Output in Embedded Systems
2. Memory System Mechanisms
3. Memory Devices in Embedded Systems
4. I/O Devices
5. Component Interfacing: Memory and Device Interfacing
6. Interrupts in Embedded Systems
7. Important Short Questions and Answers: Embedded Systems - Memory and Input/Output Management



PROCESSES AND OPERATING SYSTEMS


1. Multiple Tasks and Multiple Processes
2. Context Switching
3. Scheduling Policies
4. Interprocess Communication Mechanisms
5. Evaluating Operating System Performance
6. Telephone Answering Machine
7. Important Short Questions and Answers: Processes and Operating Systems



EMBEDDED SOFTWARE


1. Programming Embedded Systems in Assembly And C
2. Embedded Software Development Tools
3. Embedded System Development Tools
4. Important Short Questions and Answers: Embedded Software



EMBEDDED SYSTEM DEVELOPMENT


1. Embedded System Development
2. Intruder Alarm System
3. Important Short Questions and Answers: Embedded System Development



Comments