3rd Sem Syllabus Combined
3rd Sem Syllabus Combined
Ques 4: PROJECT
Students are required to develop a DBMS for the applications assigned to them. Following items are
required to be submitted for the project
a. Problem Statement
b. ER model/ Relational Model
c. Integrity Constraints implemented
d. Suitable Queries to create and manage database
Note: Students have to make sure that they have defined proper integrity constraints to ensure
consistency of database used in assignments as well as project.
SUGGESTED READINGS:
Textbook-
Korth ,Silbertz, Sudarshan, ”Data base concepts”, McGraw-Hill, 2013
Reference books-
a. Elmasri, Navathe, “Fundamentals of Database systems”, Addison Wesley, 2010
b. Date C.J., “An Introduction to Database systems”, Addison-Wesley Longman, Inc.,2004
Design and Analysis of Algorithms
Course Code Type Subject L T P Credits CA MS ES CA ES Pre-requisites
CBCPC06 CC Design and Analysis of 3 0 2 4 15 15 40 15 15 Data
Algorithms Structures
COURSE OUTCOMES:
1. To be able to analyse the asympto�c performance of algorithms.
2. To be able to write rigorous correctness proofs for algorithms.
3. Ably demonstrate a familiarity with major algorithms and data structures.
4. To be able to apply important algorithmic design paradigms and methods of analysis.
5. To be able to synthesize efficient algorithms in common engineering design situa�ons.
Unit Content
Unit-1 Design and analysis of algorithms, Asympto�c nota�ons and their significance, Introduc�on to
RAM model of computa�on, Complexity analysis of algorithms, Worst case and average case,
Basic introduc�on to algorithmic paradigms like divide and conquer, recursion, greedy, etc.
Unit-2 Searching: Binary search trees, Balanced binary search trees, AVL trees and Red-black trees, B-
trees, Skip lists, Hashing, Priority queues, Heaps, Interval trees, Tries; Order sta�s�cs
Sor�ng: Comparison based sor�ng- Quick sort, Heap sort, Merge sort, Worst and average case
analysis, Decision tree model and (worst case) lower bound on sor�ng, Sor�ng in linear �me -
Radix sort, Bucket sort, Coun�ng sort, etc., String matching
Unit-3 Graph Algorithms: BFS, DFS, Connected components, Topological sort, Minimum spanning trees,
Shortest paths- single source and all pairs.
Models of computa�on: RAM model and its logarithmic cost.
Formal introduc�on to algorithmic paradigms: Divide and conquer, Recursion, Dynamic
programming, Greedy, Branch and bound, etc.
Advanced data structures: Fibonacci heap, Union-find, Splay trees, Amor�zed complexity analysis
Unit-4 Randomized algorithms: Randomized algorithms to be introduced a bit early, i.e., before NP-
completeness to highlight randomiza�on as an algorithmic technique, Applica�on areas
Geometric algorithms: Convex hulls, Nearest neighbour, Voronoi diagram, etc.,
Algebraic and number-theore�c algorithms: FFT, Primality tes�ng, etc.
Unit-5 Graph algorithms: Network flows, Matching, etc.
Op�miza�on techniques: Linear programming, Reducibility between problems and NP-
completeness- Discussion of different NP-completeness problems like sa�sfiability, clique, vertex
cover, independent set, hamiltonian cycle, TSP, knapsack, set cover, bin packing, etc.;
Backtracking, Branch and bound
Approxima�on algorithms: Constant ra�o approxima�on algorithms.
Suggested Readings:
1. E. Horowitz, S. Sahni, and S. Rajsekaran, “Fundamentals of Computer Algorithms,” Galo�a
Publica�on
2. T .H . Cormen, C .E .Leiserson, R .L .Rivest “Introduc�on to Algorithms”, PHI.
3. Sedgewich, Algorithms in C, Galgo�a
4. Berman. Paul, “Algorithms, Cengage Learning”.
5. Richard Neopolitan, Kumar SS Naimipour, “Founda�ons of Algorithms”
Computer Architecture and Organisa�ons
Course Type Subject L T P Credits CA MS ES CA ES Pre-requisites
Code
CBCPC07 CC Computer 3 1 0 4 25 25 50 - - Computer
Architecture and Programming and
Organisa�ons Data Structures
COURSE OUTCOMES:
1. To understand the architecture of modern processors and organiza�on of its components, and
rela�onship between hardware and so�ware in digital machines.
2. To design instruc�ons and corresponding logic circuits for a simple CPU with its essen�al
components such as ALU, a register file, memory and input-output.
3. To understand the organiza�on of computer systems
4. To understand the computa�on standards and using them in wri�ng algorithms
5. To appreciate the evolving technology that governs the evolu�on of modern computers and
con�nue to keep abreast of state-of-art in compu�ng technology
Unit Content
Unit-1 Overview of computer organiza�on: Characteris�cs of a general-purpose computer, The stored
program concept, Von Neumann architecture, Harvard architecture, Programmer’s model- The
Instruc�on Set Architecture (ISA), ISA design and performance criteria, Basic computer
organiza�on with CPU, Memory and IO subsystems, Interconnect busses, Evolu�on of CISC and
RISC based processors and their merging.
Unit-2 Instruc�on Set Architectures: Machine instruc�on, Machine cycle and Instruc�on cycles,
Instruc�on Set- Memory and non-memory reference instruc�ons, Instruc�on categories- Data
movement, Data manipula�on, Program control and machine control instruc�ons, CISC types
addressing modes and instruc�on formats, RISC type addressing modes and instruc�on formats.
Unit-3 Central Processing Unit: Specifica�on of a simple CPU using RTL, Design of the data path for the
simple CPU, Designing the hardwired control path for the simple CPU, Performance analysis of
the simple CPU, Enhancement of the ISA for the simple CPU and design extensions,
Characteris�cs of RISC CPU design- ISA characteris�cs, Pipelining, Data and instruc�on caches,
Prac�cal case studies in CISC type and RISC type CPU designs.
Unit-4 Microprogrammed Control Unit: Control memory system, Microinstruc�on-sequencing,
Condi�onal branch, Mapping and subrou�nes; Direct, Horizontal and Ver�cal microcoding;
Micro-instruc�on format and symbolic representa�on, Design of microcontrol unit for a simple
CPU, Applica�ons of microprogramming
Memory Organiza�on: Memory hierarchy, Cache organiza�on- Direct, Associa�ve and Set
associa�ve cache, Auxiliary memory organiza�on, RAID organiza�ons
Input Output organiza�on: I/O interfacing, Asynchronous data transfer, Programmed IO,
Interrupt driven IO, Priority schemes, Direct memory access, Serial communica�on techniques
Unit-5 Computer arithme�c: Design of binary addi�on and subtrac�on units, Algorithms for
mul�plica�on and division and their implementa�on, Floa�ng point arithme�c, etc.
Pipelined architecture: Basic concepts of pipelining, Speedup and throughput, Minimum
average latency, Instruc�on pipeline.
GPU architecture: Hardware basics, Execu�on model, GPU instruc�on set architecture, NVIDIA
GPU instruc�on set architecture
GUIDELINES FOR PROJECT WORK:
• Exercises using assembly-level programming and debugging to illustrate the working of
instruc�ons in the ISA of a CISC based /RISC based processor. These exercises should illustrate the
status of various registers, flags, counters and pointers a�er data movement, data manipula�on,
program control, and stack opera�ons.
• Semester-long group project on the design and simula�on /hardware emula�on of a simple
processor.
REFERENCE BOOKS:
1. William stallings, “Computer Organiza�on and Architectue, PHI” 2. M. Morris Mano,
2. M. Morris Mano, “Computer System Architecture” , PHI
3. J.D. Carpinelli, “Computer Systems Organiza�on and Architecture,” Pearson Educa�on
4. Heuring and Jordan, Pearson Educa�on, “Computer Systems Design and Architecture”
5. Tor M. Aamodt, Wilson Wai Lun Fung, Timothy G. Rogers General-Purpose Graphics Processor
Architectures
Microprocessors and Microcontrollers
Course Code Type Subject L T P Credits CA MS ES CA ES Pre-requisites
CBEPC08 CC Microprocessors and 3 0 2 4 15 15 40 15 15 None
Microcontrollers
COURSE OUTCOMES:
1. Acquire knowledge of architecture and programming of microprocessors.
2. Understand the salient features of the x86 architecture.
3. Acquire hands-on knowledge of interfacing microprocessors with peripherals.
4. Understand the architecture and working of microcontrollers and their u�lity.
5. Acquire introductory knowledge about high-end microprocessors and microcontrollers.
Unit Content
Unit-1 Intel 8085 microprocessor: Basic concepts of microprocessor, Microcomputer, Microcontroller,
Architecture (pins, signals, buses, register set), Addressing modes, Instruc�on set (instruc�on
format, opcode, mnemonic), Subrou�nes, Timing diagrams and T-states of different instruc�ons,
Programming, Recursive programs, Vectored and non-vectored interrupts and interrupt handling
of 8085.
Unit-2 Intel 8086 microprocessor: Architecture (pins, bus interface unit, execu�on unit, register set,
pipelining), Memory addressing, Segmenta�on, Instruc�on set (data transfer, arithme�c, logic,
string, long and short control transfer and processor control), Timing diagrams, Opera�ng modes,
Programming, Assemblers, Address-objects, Parameter passing to subrou�nes, Hardware and
so�ware interrupts and interrupt handling of 8086.
Unit-3 Interfacing of microprocessors: Interfacing a microprocessor with RAM and ROM chips, Address
alloca�on and decoding techniques, Interfacing with LED, LCD, ADC, DAC, toggle switch and
keypad; Memory-mapped I/O, Interfacing with 8255 programmable peripheral interface
(architecture, ports, I/O modes and BSR mode), Basic architecture and features of 8254
programmable �mer, 8257 programmable DMA controller, 8259 programmable interrupt
controller, 8279 programmable keyboard and display controller and 8087 math coprocessor.
Unit-4 Microcontrollers: 8051 microcontroller: Architecture, I/O ports, Memory organiza�on,
Addressing modes, Instruc�on set, Simple programs.
Introduc�on to IoT: Basic architecture, Sensing and actua�ng, Applica�on domains.
Unit-5 High-end microprocessors and microcontrollers: Important features of 32-bit processors, RISC
and Pen�um; Implementa�on of memory management schemes like segmenta�on, paging and
virtual memory at the hardware level
Introduc�on to Arduino: Basic architecture, Hardware and so�ware, Simple programs.
Guidelines for Prac�cal Work:
1. Write an assembly program to generate the numbers of the Fibonacci series.
2. Write an assembly program to clear all flags without using any data transfer instruc�on.
3. Write an assembly program to search for a number in a list.
4. Write an assembly program to sort a list.
5. Write an assembly program to copy a list from one part of the memory to another.
6. Write an assembly program to mul�ply two numbers using successive addi�ons.
7. Write an assembly program to calculate the square root of a number.
8. Write an assembly program to calculate the factorial of a number using recursion.
9. Write a self-replica�ng assembly program.
10. Interface 8255 with a microprocessor and use all its modes.
11. Interface 8254 with a microprocessor and use it to generate differ types of clock signals.
12. Interface 8259 with a microprocessor and use all its features.
13. Interface 8257 with a microprocessor and write a program to control a keypad and a LED display.
14. Design digital systems with Arduino and simple sensors and actuators.
Suggested Readings:
1. Ramesh S. Gaonkar, “Microprocessor Architecture, Programming, and Applica�ons with the 8085”
Pren�ce Hall.
2. D. V. Hall, “Microprocessor and Interfacing Programming & Hardware” TMH – 2nd Edi�on.
3. S. P. Morse, “8086 Primer: An Introduc�on to Its Architecture, System Design and Programming”
Hayden Book Co.
4. S. Monk, “Programming Arduino: Ge�ng Started with Sketches”, 2nd Edi�on, McGraw-Hill.
5. M.A. Mazidi et. al. “The 8051 Microcontroller and Embedded Systems: Using Assembly and C”
Pearson Publishers.