Basic Structure of Computers:
Basic Operational Concepts, Bus Structures, Performance – Processor Clock, Basic Performance Equation, Clock Rate, Performance Measurement.
Text Book 1: Chapter 1 – 1.3, 1.4, 1.6 (1.6.1-1.6.4, 1.6.7), Chapter 2 – 2.2 to 2.10
Input/Output Organization:
Accessing I/O Devices, Interrupts – Interrupt Hardware, Direct Memory Access, Buses, Interface Circuits, Standard I/O Interfaces – PCI Bus, SCSI Bus, USB.
Text Book 1: Chapter 4 – 4.1, 4.2, 4.4, 4.5, 4.6, 4.7
Memory System:
Basic Concepts, Semiconductor RAM Memories, Read Only Memories, Speed, Size, and Cost, Cache Memories – Mapping Functions, Replacement Algorithms, Performance Considerations.
Text book 1: Chapter 5 – 5.1 to 5.4, 5.5 (5.5.1, 5.5.2), 5.6
Basic Processing Unit:
Some Fundamental Concepts, Execution of a Complete Instruction, Multiple Bus Organization, Hard-wired Control, Micro programmed Control. Basic concepts of pipelining,
Text book 1: Chapter7, Chapter 8 – 8.1
ARM Embedded Systems:
Introduction, RISC design philosophy, ARM design philosophy, Embedded system hardware – AMBA bus protocol, ARM bus technology, Memory, Peripherals, Embedded system software – Initialization (BOOT) code, Operating System, Applications. ARM Processor Fundamentals, ARM core dataflow model, registers, current program status register, Pipeline, Exceptions, Interrupts and Vector Table, Core extensions.
Text book 2: Chapter 1, 2
Introduction to the ARM Instruction set:
Introduction, Data processing instructions, Load - Store instruction, Software interrupt instructions, Program status register instructions, Loading constants, ARMv5E extensions, Conditional Execution. Text book 2: Chapter 3
Introduction to the THUMB instruction set:
Introduction, THUMB register usage, ARM – THUMB interworking, Other branch instructions, Data processing instructions, Stack instructions, Software interrupt instructions.
Efficient C Programming:
Overview of C Compilers and optimization, Basic C Data types, C looping structures. Text book 2: Chapter 4, 5
PRACTICAL COMPONENT OF IPCC
Conduct the following experiments by writing Assembly Language Program (ALP) using ARM Cortex M3 Registers using an evaluation board/simulator and the required software tool. Sl.No
Experiments
1 Write an ALP to i) multiply two 16-bit binary numbers. ii) add two 64-bit numbers.
2 Write an ALP to find the sum of first 10 integer numbers.
3 Write an ALP to find factorial of a number.
4 Write an ALP to add an array of 16-bit numbers and store the 32-bit result in internal RAM.
5 Write an ALP to find the square of a number (1 to 10) using look-up table.
6 Write an ALP to find the largest/smallest number in an array of 32 numbers.
7 Write an ALP to arrange a series of 32-bit numbers in ascending/descending order.
8 i) Write an ALP to count the number of ones and zeros in two consecutive memory locations. ii)Write an ALP to Scan a series of 32-bit numbers to find how many are negative. Demonstration Experiments (For CIE only not for SEE) Conduct the following experiments on an ARM CORTEX M3 evaluation board using evaluation version of Embedded 'C' & Keil μvision-4 tool/compiler.
9 Interface a Stepper motor and rotate it in clockwise and anti-clockwise direction.
10 Interface a DAC and generate Triangular and Square waveforms.
11 Display the Hex digits 0 to F on a 7-segment LED interface, with a suitable delay in between.
12 Interface a simple Switch and display its status through Relay, Buzzer and LED.
Course Outcomes
At the end of the course the student will be able to:
1. Explain the basic organization of a computer system.
2. Demonstrate functioning of different sub systems, such as processor, Input/output, and memory.
3. Describe the architectural features and instructions of 32-bit microcontroller ARM Cortex M3.
4. Apply the knowledge gained for Programming ARM Cortex M3 for different applications.
Assessment Details (both CIE and SEE)
Two Tests each of 20 Marks (duration 01 hour)
Two assignments each of 10 Marks
CIE for the practical component of IPCC
SEE for IPCC
Theory SEE will be conducted by University as per the scheduled timetable, with common question papers for the course (duration 03 hours)
Suggested Learning Resources:
Textbooks
1. Carl Hamacher, Zvonko Vranesic, Safwat Zaky, Computer Organization, 5th Edition, Tata McGraw Hill, 2002. (Listed topics only from Chapters 1, 2, 4, 5, 8).
2. Andrew N Sloss, Dominic System and Chris Wright, “ARM System Developers Guide”, Elsevier, Morgan Kaufman publisher, 1st Edition, 2008.