






















































































Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
advance compzuter organisation
Typology: Lecture notes
1 / 94
This page cannot be seen from the preview
Don't miss anything!
Course Code : (^) CSPC Course Title : Data Structures Number of Credits : 3-0-0- Prerequisites(Course code) : (^) - Course Type : PC
Objectives To understand the various techniques of sorting and searching To design and implement arrays, stacks, queues, and linked lists To understand the complex data structures such as trees and graphs
Unit – I Development of Algorithms - Notations and analysis - Storage structures for arrays - Sparse matrices - Stacks and Queues: Representations and applications.
Unit – II Linked Lists - Linked stacks and queues - Operations on polynomials - Doubly linked lists - Circularly linked lists - Dynamic storage management - Garbage collection and compaction.
Unit – III Binary Trees - Binary search trees - Tree traversal - Expression manipulation - Symbol table construction - Height balanced trees - Red-black trees.
Unit – IV Graphs - Representation of graphs - BFS, DFS - Topological sort - Shortest path problems. String representation and manipulations - Pattern matching.
Unit – V Sorting Techniques - Selection, Bubble, Insertion, Merge, Heap, Quick, and Radix sort - Address calculation - Linear search - Binary search - Hash table methods.
Outcomes Ability to develop programs to implement linear data structures such as stacks, queues, linked lists, etc. Ability to apply the concept of trees and graph data structures in real world scenarios Ability to comprehend the implementation of sorting and searching algorithms
Text Books
1. J. P. Tremblay and P. G. Sorenson, "An Introduction to Data Structures with _applications", Second Edition, Tata McGraw Hill, 1981
Reference Book
1. Sartaj Sahni, “Data Structures, Algorithms and Applications in C++”, Universities Press (I) Pvt. Ltd.
Course Code : CSPC 22 Course Title : Digital Systems Design Number of Credits : (^) 3 - 0 - 0 - 3 Prerequisites(Course code) : - Course Type : PC
Objectives To understand the essential knowledge on the fundamental of digital circuits To understand the overview on the design principles of digital computing systems
Unit - I Binary codes - Weighted and non-weighted - Binary arithmetic conversion algorithms, Canonical and standard boolean expressions - Truth tables, K-map reduction - Don't care conditions - Adders / Subtractors - Carry look-ahead adder - Code conversion algorithms - Design of code converters - Equivalence functions.
Unit - II Binary/Decimal Parallel Adder/Subtractor for signed numbers - Magnitude comparator - Decoders / Encoders - Multiplexers / Demultiplexers - Boolean function implementation using multiplexers.
Unit - III Sequential logic - Basic latch - Flip-flops (SR, D, JK, T and Master-Slave) - Triggering of flip- flops - Counters - Design procedure - Ripple counters - BCD and Binary - Synchronous counters, Registers - Shift registers - Registers with parallel load, Reduction of state and flow tables - Race-free state assignment - Hazards.
Unit - IV Introduction to VLSI design - Basic gate design - Digital VLSI design - Design of general boolean circuits using CMOS gates. Verilog Concepts – Basic concepts – Modules & ports & Functions – useful modeling techniques – Timing and delays – user defined primitives. Modeling Techniques
Unit - V Advanced Verilog Concepts – Synthesis concepts – Inferring latches and flip-flops – Modeling techniques for efficient circuit design. Design of high-speed arithmetic circuits – Parallelism Pipelined Wallace tree tipliers - Systolic algorithms - Systolic matrix multiplication.
Outcomes Ability to design and implement complicated digital systems using Verilog Ability to design a VLSI circuit for an application Ability to comprehend the digital design logic
Text Books
1. Morris Mano and Michael D. Ciletti, "Digital Design", 5th^ _Ed, PHI, 2012
Reference Books
1. Michael D. Ciletti, "Advanced Digital Design with the Verilog HDL, 2nd^ Edition, Pearson _Education, 2010
Text Books
1. Robert W. Sebesta, “Concepts of Programming Languages”, Tenth Edition, Addison _Wesley, 2012.
Course Code : CSPC2 4 Course Title : Computer Organization Number of Credits : (^) 3 - 0 - 0 - 3 Prerequisites(Course code) : - Course Type : PC
Objectives To understand the basic hardware and software issues of computer organization To understand the representation of data at machine level To understand how computations are performed at machine level
Unit – I Introduction, Technologies for building Processors and Memory, Performance, The Power Wall, Operations of the Computer Hardware, Operands Signed and Unsigned numbers, Representing Instructions, Logical Operations, Instructions for Making Decisions
Unit – II MIPS Addressing for 32-Bit Immediates and Addresses, Parallelism and Instructions: Synchronization, Translating and Starting a Program, Addition and Subtraction, Multiplication, Division, Floating Point, Parallelism and Computer Arithmetic: Subword Parallelissm, Streaming SIMD Extensions and Advanced Vector Extensions in x86.
Unit – III Logic Design Conventions, Building a Datapath, A Simple Implementation Scheme, overview of Pipelining, Pipelined Datapath, Data Hazards: Forwarding versus Stalling, Control Hazards, Exceptions, Parallelism via Instructions, The ARM Cortex – A8 and Intel Core i7 Pipelines, Instruction – Level Parallelism and Matrix Multiply Hardware Design language
Unit – IV Memory Technologies, Basics of Caches, Measuring and Improving Cache Performance, dependable memory hierarchy, Virtual Machines, Virtual Memory, Using FSM to Control a Simple Cache, Parallelism and Memory Hierarchy: Redundant Arrays of Inexpensive Disks, Advanced Material: Implementing Cache Controllers
Unit – V Disk Storage and Dependability, Parallelism and Memory Hierarchy: RAID levels, performance of storage systems, Introduction to multi threading clusters, message passing multiprocessors.
Outcomes Ability to analyze the abstraction of various components of a computer Ability to analyze the hardware and software issues and the interfacing Ability to work out the tradeoffs involved in designing a modern computer system
Text Book
1. David A. Patterson and John L. Hennessey, “Computer organization and design, The _Hardware/Software interface”, Morgan Kauffman / Elsevier, Fifth edition, 2014
Course Code : CSPC 25 Course Title : Combinatorics and Graph Theory Number of Credits : (^) 3 - 0 - 0 - 3 Prerequisites(Course code) : CSPC Course Type : PC
Objective To introduce basic combinatorics and graph theory
Unit – I Scope of the course, Application areas in CS, A feel of some advanced problems in Combinatorial Optimization/Graph Theory, Sum/Product rules, Power set - algorithm, Bijections/Mapping/Examples Permutations and combinations, examples, Combinatorial ideas, Pascal Triangle Counting principles via examples, Insertion sort, Stirling numbers
Unit – II Average case analysis and combinatorial ideas Double counting - Fubini's method, PHP principle, various illustrations Stirling numbers of II kind, Combinatorial identities, Binomial theorem Multinomial theorem, P(n,t1, - - - ,tp) notation, Euler PHI-function, Properties, Steps in Sieve of Eratosthenes
Unit – III Inclusion/Exclusion Principle, Exercises, Derangements, IMO type problems, Ramsey Theory, Partition problems, Ferrar Diagrams Recurrences - Examples in CS, Substitution methods, Recurrence trees, D&C Solving Fibonacci series - GF idea, Difference equations, examples. Homogeneous case Inhomogeneous case
Unit – IV Basics of GFs, Review problems, Examples, GF manipulations Coupled difference equations, Graph theory fundamentals, Representations, Examples in CS - MST review, Party problem Distance in graphs, Floyd-Warshall algorithm, Operations in graphs, Meanings of products
Unit – V Regular graphs, related results, Coloring, Cliques and independent sets, Trees, definitions, related problems, properties, Network Flows, Definitions, Related discussions and Max-Flow Min-Cut Theorem, Introduction to optimization problems in CS, LP formulation, Branch-and- Bound
Outcomes Ability to apply combinatorial ideas in mathematical arguments in analysis of algorithms, queuing theory, etc. Ability to comprehend graph theory fundamentals and tackle problems in dynamic programming, network flows, etc. Ability to design and develop real time application using graph theory
Textbooks
1. J. H. Van Lint and R. M. Wilson, “A course in Combinatorics”, 2nd^ edition, Cambridge _Univ. Press, 2001
Reference Books
1. Kenneth H. Rosen, “Discrete Mathematics and its Applications”, 7th^ edition, McGraw- _Hill, 2012
Course Code : CSPC 26 Course Title : (^) Operating Systems Number of Credits : 3 - 0 - 0 - 3 Prerequisites(Course code) : CSPC Course Type : PC
Objectives To provide knowledge about the services rendered by operating systems To provide a detailed discussion of the various memory management techniques To discuss the various file-system design and implementation issues To discuss how the protection domains help to achieve security in a system
Unit – I Operating Systems – Definition- Types- Functions -Abstract view of OS- System Structures – System Calls- Virtual Machines – Process Concepts – Threads – Multithreading
Unit – II Process Scheduling- Process Co-ordination – Synchronization – Semaphores – Monitors Hardware Synchronization – Deadlocks – Methods for Handling Deadlocks
Unit – III Memory Management Strategies – Contiguous and Non-Contiguous allocation – Virtual memory Management – Demand Paging- Page Placement and Replacement Policies
Unit – IV File System – Basic concepts - File System design and Implementation – Case Study: Linux File Systems - Mass Storage Structure – Disk Scheduling – Disk Management – I/O Systems-System Protection and Security.
Unit – V Distributed Systems – Distributed operating systems – Distributed file systems – Distributed Synchronization.
Outcomes Ability to comprehend the techniques used to implement the process manager Ability to comprehend virtual memory abstractions in operating systems Ability to design and develop file system interfaces, etc.
Text Book
1. Silberschatz, Galvin, Gagne, "Operating System Concepts", John Wiley and Sons, 9th edition, 2013
References Books
1. William Stallings, “Operating Systems –Internals and Design Principles”, 8/E, Pearson _Publications, 2014
Course Code : MAIR Course Title : Principles of Operations Research Number of Credits : 3-0-0- Prerequisites(Course code) : (^) - Course Type : GIR
Objectives To classify and formulate real-life problem for modelling, solving and applying for decision making. To study the formulation and various methods of solutions for linear programming, transportation, assignment, CPM and PERT problems
Unit - I Introduction to operational research-Linear programming problems (LPP)-Graphical method- Simplex method-Big M Method-Dual simplex method-Primal Dual problems
Unit – II Dual theory and Sensitivity analysis-Transportation and assignment problems- Applications(Emphasis should be more on problems than theory)
Unit – III CPM and PERT – Network diagram-Events and activities-Project Planning-Reducing critical events and activities-Critical path calculations-example-Sequencing problems
Unit – IV Replacement problems-Capital equipment- Discounting costs- Group replacement - Inventory models-various costs- Deterministic inventory models-Economic lot size-Stochastic inventory models-Single period inventory models with shortage cost.
Unit – V Dynamic programming-Formulation-Invest problem-General allocation problem-Stage coach problem-Production Scheduling.
Outcomes Ability to analyse problems in engineering, management, or business environment, focusing on important details Ability to formulate real problems in terms of input-output-parameters relationships and identify the solution procedure
Text Books
1. H. A. Taha, “Operations Research - An introduction”, 9th^ edition, Prentice Hall, _Macmillan, 2010
Course Code : CSPC 28 Course Title : Automata and Formal Languages Number of Credits : 3 - 1 - 0 - 4 Prerequisites(Course code) : (^) CSPC Course Type : PC
Objectives To introduce concepts in automata theory and theory of computation To identify different formal language classes and their relationships To design grammars and recognizers for different formal languages
Unit – I Introduction: Alphabets, Strings and Languages; Automata and Grammars, Deterministic finite Automata (DFA)-Formal Definition, Simplified notation: State transition graph, Transition table, Language of DFA, Nondeterministic finite Automata (NFA), NFA with epsilon transition, Language of NFA, Equivalence of NFA and DFA, Minimization of Finite Automata, Distinguishing one string from other, Myhill-Nerode Theorem
Unit – II Regular Expression (RE): Definition, Operators of regular expression and their precedence, Algebraic laws for Regular expressions, Kleen’s Theorem, Regular expression to FA, DFA to Regular expression, Arden Theorem, Non Regular Languages, Pumping Lemma for regular Languages. Application of Pumping Lemma, Closure properties of Regular Languages, Decision properties of Regular Languages, FA with output: Moore and Mealy machine, Equivalence of Moore and Mealy Machine, Applications and Limitation of FA.
Unit – III Context Free Grammar (CFG) and Context Free Languages (CFL) : Definition, Examples, Derivation, Derivation trees, Ambiguity in Grammar, Inherent ambiguity, Ambiguous to Unambiguous CFG, Useless symbols, Simplification of CFGs, Normal forms for CFGs: CNF and GNF, Closure proper ties of CFLs, Decision Properties of CFLs: Emptiness, Finiteness and Membership, Pumping lemma for CFLs
Unit – IV Push Down Automata (PDA): Description and definition, Instantaneous Description, Language of PDA, Acceptance by Final state, Acceptance by empty stack, Deterministic PDA, Equivalence of PDA and CFG, CFG to PDA and PDA to CFG,
Unit – V Turing machines (TM): Basic model, definition and representation, Instantaneous Description, Language acceptance by TM, Variants of Turing Machine, TM as Computer of Integer functions, Universal TM, Chur ch’s Thesis, Recursive and recursively enumerable languages, Halting problem, Introduction to Undecidability, Undecidable problems about TMs. Post correspondence problem (PCP), Modified PCP, Introduction to recursive function theory
Outcomes Ability to relate practical problems to languages, automata, and computability Ability to demonstrate an increased level of mathematical sophistication Ability to apply mathematical and formal techniques for solving problems
Text Book
1. Hopcroft and Ullman, “Introduction to Automata Theory, Languages and Computation”,Pearson Education, 3rd^ edition, 2014
Reference books
1. Martin J. C., “Introduction to Languages and Theory of Computations”, TMH, 4th _edition, 2010
Course Code : HSIR
Number of Credits : (^) 3-0-0- Prerequisites(Course code) : - Course Type : GIR
This Course Syllabus will provided by the Humanities Department
Course Code : CSLR Course Title : Algorithms Laboratory Number of Credits : (^) 0 - 0 - 3 - 2 Prerequisites(Course code) : CSPC Course Type : ELR
Objectives To learn how to analyze the complexity of algorithms To compare and evaluate algorithms in terms of time and space complexity To program brute force, divide and conquer, decrease and conquer, transform and conquer, greedy, and dynamic techniques
Experiments Estimating worst-case/average-case complexity of algorithms via programs Determining machine constants Programs involving some advanced data structures Implementing example problems Illustrating the different paradigms of algorithm design Solving miscellaneous problems e.g. problems in string manipulation, graph theory, optimization
Outcomes Ability to solve and analyze general algorithms based on space and time complexity Ability to implement and empirically compare fundamental algorithms and data structures to real-world problems Ability to design, develop, and optimize algorithms in different paradigms
Course Code : CSPC 31 Course Title : (^) Computer Architecture Number of Credits : 3 - 1 - 0 - 4 Prerequisites(Course code) : CSPC Course Type : (^) PC
Objectives To understand the concept of advanced pipelining techniques To understand the current state of art in memory system design To know the working principle of I/O devices
Unit - I Introduction, Classes of computers, Defining Computer Architecture – Trends in Technology – Trends in Power and Energy in Integrated Circuits – Trends in Cost – Dependability – Measuring, Reporting and Summarizing Performance – Quantitative Principles of Computer Design.
Unit - II Basic and Intermediate pipelining Concepts, The Major Hurdle of Pipelining – Pipeline Hazards, Pipelining Implementation, Implementation issues that makes Pipelining hard, Extending the MIPS Pipeline to Handle Multicycle Operations, The MIPS R4000 Pipeline.
Unit - III Instruction-Level Parallelism: Concepts and Challenges – Basic Compiler Techniques for Exposing ILP – Reducing Branch Costs with Prediction – Overcoming Data Hazards with Dynamic Scheduling – Dynamic Scheduling – Hardware-Based Speculation – Exploiting ILP Using Multiple Issue and Static Scheduling – Exploiting ILP, Advanced Techniques for Instruction Delivery and Speculation, Studies of the Limitations of ILP
Unit - IV Vector Architecture – SIMD Instruction Set Extensions for Multimedia – Graphics Processing Units – Detecting and Enhancing Loop-Level Parallelism – Centralized Shared-Memory Architectures – Performance of Shared-Memory Multiprocessors – Distributed Shared Memory, Models of Memory Consistency, Multicore Processors and Their Performance.
Unit - V Review of Memory Hierarchy Design, Cache Performance, Basic Cache Optimizations, Virtual Memory, Protection and Examples of Virtual Memory, Advanced Optimizations of Cache Performance, Memory Technology and Optimizations, Protection: Virtual Memory and Virtual Machines, Crosscutting Issues: The Design of Memory Hierarchies. Case Studies / Lab Exercises
Outcomes Ability to apply performance metrics to find the performance of systems Ability to identify the problems in components of computer Ability to comprehend and differentiate various computer architectures and hardware
Text Book
1. David. A. Patterson and John L. Hennessy, "Computer Architecture: A Quantitative approach", Elsevier, 5th^ Edition, 2012 Reference Book 1. K. Hwang and Naresh Jotwani, “Advanced Computer Architecture, Parallelism, Scalability, Programmability”, Tata McGraw Hill, 2nd^ Edition, 2010
Course Code : CSPC 32
Number of Credits : 3 - 0 - 0 - 3 Prerequisites(Course code) : CSPC2 7 Course Type : PC
Objectives To provide insight about networks, topologies, and the key concepts To gain comprehensive knowledge about the layered communication architectures (OSI and TCP/IP) and its functionalities To understand the principles, key protocols, design issues, and significance of each layers in ISO and TCP/IP To know the implementation of various layers
Unit – I Review of Reference Models, Topology and switching, IEEE Standard 802 from Ethernet, Token Bus, Token Ring and Wireless LAN, Connecting Devices
Unit - II IPv4 headers, IP forwarding, Host Processing of IP datagrams, DHCP and Autoconfiguration, Firewalls and NAT, ICMPv4, IP Fragmentation, DNS, Broadcasting and Local Multicasting – IGMP, Routing Protocols
Unit – III IPv6 Transition issues, Protocol basics, Addressing, Options and Extension headers, ICMPv6, Neighbor Discovery, Routing, Autoconfiguration, Multicast Listener Discovery (MLD), IPv and DNS
Unit – IV Transmission Control Protocol (TCP), TCP Connection Management, TCP Data Flow and Window Management, Stream Control Transmission Protocol (SCTP), Services, SCTP Association management, SCTP flow and error control Unit - V Need for Mobile IP, Overview of Mobile IP, Details of Mobile IP, Tunneling, Mobility for IPv6, Applications of Mobile IP – Security primer, Campus Mobility, Internet wide mobility, A service provider perspective
Outcomes Ability to gain insight about basic network theory and layered communication architectures Ability to code and implement MAC protocols, IPv4, IPv6, and TCP Ability to design and develop Mobile IP Ability to design and develop a communication protocol
Text Books
1. W. Richard Stevens and G. Gabrani, “TCP/IP Illustrated: The Protocols”, Pearson, _2011