Embedded Systems BIS714C
Course Code: BIS714C
Credits: 03
CIE Marks: 50
SEE Marks: 50
Total Marks: 100
Exam Hours: 03
Total Hours of Pedagogy: 40H
Teaching Hours/Weeks: [L:T:P:S] 3:0:0:0
Introduction to Embedded Systems: What is an Embedded System? Embedded Systems Vs
General Computing Systems, History of Embedded Systems, Classification of Embedded
systems, Major Application Areas of Embedded Systems. Purpose of Embedded Systems.
The Typical Embedded System: Microprocessor vs. Microcontroller, RISC vs. CISC
Processors, Harvard vs. Von-Neumann Processor Architecture, Big-Endian vs. Little-Endian
Processors, Memory-ROM and RAM types, Sensors & Actuators, The I/O Subsystem – I/O
Devices, Light Emitting Diode (LED), 7-Segment LED Display, Optocoupler, Relay, Piezo
Buzzer, Push button switch, Communication Interfaces, On-board Communication Interfaces,
External Communication Interfaces.
Embedded System Design Concepts: Characteristics and Quality Attributes of Embedded
Systems, Operational and Non-Operational Quality Attributes. Embedded Systems-Application
and Domain Specific, Hardware Software Co-Design and Program Modelling.
Embedded Firmware Design and Development: Embedded Firmware Design Approaches,
Embedded Firmware Development Languages, Programming in Embedded C (Excluding C
language).
RTOS and IDE for Embedded System Design: Operating System Basics, Types of Operating Systems, Tasks, Process and Threads (Only POSIX Threads with an example program), Thread Preemption, Preemptive Task Scheduling Techniques, Task Communication, Task Synchronization Issues – Racing and Deadlock. How to Choose an RTOS, Integration and Testing of Embedded Hardware and Firmware, The Embedded System Development Environment.
ARM Embedded Systems: The RISC Design Philosophy, The ARM Design Philosophy,
Embedded System Hardware, Embedded System Software.
ARM Processor Fundamentals: Registers, Current Program Status Register, Pipeline,
Exceptions, Interrupts, and the Vector Table, Core Extensions.
Introduction to the ARM Instruction Set: Data Processing Instructions, Branch Instructions, Load-Store Instructions, Software Interrupt Instruction, Program Status Register Instructions, Loading Constants.