**SEMESTER VI**

** **

**EI/EC/CS 601 Digital Signal Processing**** **

** **

** **

Module I. Introduction to discrete time signals & system – Discrete time signals and systems – Properties of discrete systems – linearity – time invariance – causality – stability – convolution – difference equation representation of discrete systems – The Z transform – properties of Z transform – the inverse Z transform – System function.

Module II. Discrete Fourier Transform & Fast Fourier Transform. Discrete Fourier series – properties – discrete fourier transform – properties – block convolution – decimation in – time FFT algorithms – decimation in – frequency FFT algorithms – FFT algorithms for Na composite number.

Module III. FIR Digital Filters Realizations – direct – cascade – lattice forms – hardware implementation – FIR filter design using Fourier series – use of window functions – frequency sampling design.

Module IV. IIR Digital Filters Realizations – Direct – Cascade – Parallel forms – hardware implementation – Analog filter approximations – Butterworth and chebychev approximations – The method of mapping of differentials – impulse invariant transformation – Bilinear transformation – Matched Z transform technique.

Module V. Finite word length effects in digital filters – Fixed point arithmetic – Floating point arithmetic – Block floating point arithmetic – Truncation – Rounding – Quantization error in analog to digital conversion – finite register length effects in IIR & FIR filters Limit cycles. Digital signal processing application (Only brief description required) Soft ware implementation of digital filters- Architecture of typical DSP processor .

** **

**Reference :-**

** **

1) Oppenheim & Ronald W Schafer,” Digital Signal Processing”, Prentice Hall India

2) .Andreas Antoniou , “Digital Filters Analysis & Design”, Prentice Hall India

3) R Rabiner & B. Gold , “Theory & Application of Digital Signal processing”, Prentice Hall India

4) Andreas Antoniou , “Digital Signal Processing”, Prentice Hall India

5) John G Proakis & Dimitris G Manolakis ,”Digital Signal Processing “, Prentice Hall India

6) Sanjit K.Mithra , , “Digital Signal Processing”, Tata Mc –Graw Hill.

7) Douglas K.Lindner, “Introduction to signals &Systems” Mc Graw Hill.

**CS/IT 602 Operating Systems**** **

Module I. Introduction to Operating Systems. Extended Machine – Operating System Structure . Processes – Interprocess Communication – Race Conditions – Critical Sections – Mutual Exclusion – Busy Waiting – Sleep And Wakeup – Semaphores – Event Counters – Monitors – Message Passing. Process Scheduling – Round Robin Scheduling – Priority scheduling – multiple queues – Shortest Job First – Guaranteed scheduling – Two-level scheduling.

Module II. Memory management. Multiprogramming. Multiprogramming and memory usage – Multiprogramming with fixed partitions. Swapping – multiprogramming with variable partitions – Memory management with bit maps, linked lists, Buddy system – allocation of swap space. Virtual memory – paging and page tables, associative memory – inverted page tables. Page replacement algorithms. Design issues for paging systems – Working set model. Example systems.

Module III. File systems and I/O files. Directories – File system implementation – security and protection mechanisms. Principles of I/O hardware – I/O devices – device controllers – DMA. Principles of I/O software – interrupt handlers – device drivers – Disk scheduling – clocks and terminals.

Module IV. Deadlock – conditions for deadlock – deadlock modelling. Deadlock detection and recovery. Deadlock avoidance – resource trajectories – safe and unsafe states – bankers algorithm. Deadlock prevention. Two phase locking – non-resource deadlocks – starvation.

Module V. Introduction to distributed operating systems – distributed systems – design issues. Client server model. Remote procedure call. Synchronisation in distributed systems – clock synchronisation – concurrency control – Deadlocks in distributed systems. Process management – threads – system models – processor allocation algorithms – distributed file systems.

**Case Study**** **

UNIX operating system

**Text Book**** **

Andrew S. Tanenbaum, “Modern Operating Systems”, Prentice Hall, 1991

**Reference**** **

1) Bach, M.J., “Design of UNIX Operating System”, Prentice Hall

2) Charles Crowley, “Operating systems – A Design Oriented Approach”, Tata McGrawhill, 1997

3) D.M.Dhamdhere, “System Programming and Operating Systems”, Tata McGraw-Hill,1996

4) Deital, H.M., “Operating Systems”, Addison Wesley, 1992

5) Garry Nutt, “Operating Systems – A Modern perspective ”, Second Edition, Addison Wesley, 2000

6) Pradeep K.Sinha, “Distributed Operating Systems”, Tata McGrahill, 1998

7) Silberschatz et.al., “Operating System Concepts”, Addison Wesley, 1993

8) William Stallings, “Operating systems”, Prentice Hall, 1997

**CS 603** **Software Engineering**** **

Module I. Software Engineering Paradigms – Classic life cycle – spiral model. Software metrics – Software productivity and quality – Size oriented and function oriented metrics. Software project management – software project estimation. Line of Code and function point estimation. Empirical estimation – COCOMO model Putnam estimation. Automated estimation tools. Project planning – project scheduling – Software Reengineering.

Module II. System and Software Requirement Analysis. Computer Systems Engineering – System Analysis – Modelling the system architecture – requirement analysis. Structural analysis and its extensions. Basic notations – Data flow diagrams. Behaviour modelling.Object oriented analysis and data modelling – Object oriented concepts – Object oriented analysis and modelling – Data modelling concepts. Alternate models – Data structure oriented methods – Jackson system development – Formal specification.

Module III. Software Design Fundamentals – Abstraction – Refinement – Modularity – Information hiding. Effective modular design – Architectural Design – Procedural design. Data flow oriented design – Transform analysis – Transaction Analysis. Object Oriented design. Object Oriented Design Concepts – Objects -operations and messages. Design issues. Classes, Instances and Inheritance. Object oriented Design methods – Classes and object Definition. Notation for Object Oriented Design.

Module IV. Data oriented Design methods – Design and Data structures – Jackson system development – Data structured Systems development. user Interface Design- Human-Computer Interface design – Guidelines – Interface standards. Real time design. Real-time systems – integration and performance issues – Interrupt handling – Real time databases – operating systems and languages. Task synchronisation and communication. Mathematical tools. Design methods.

Module V. Programming Language and coding. Language characteristics. Software quality assurance- formal technical reviews – software quality metrics. Formal methods. Proof of correctness. Software reliability. Reliability models. Software testing techniques – Different methods of testing – Testing for real-time systems. Automated testing tools. Software testing strategies. Software maintenance. Software configuration management. Computer Aided Software Engineering(CASE). Tools for project management – support – Analysis and design – programming and testing. Prototyping tools. Case and Artificial Intelligence. Software standards – Capability Maturity Model – SEI levels. ISO standards. Alternate Software Development Paradigms – Open Source Software Development -issues

**References**

1) Ali Bahrami, “Classical and Object Oriented Software Engineering”, McGrawHill International, 1999

2) Ali Behforooz and Frederick J.Hudson, “Software Engineering Fundamentals”, Oxford Univeristy Press, 1996

3) Booch G.,” Object Oriented Design”, Benjamin Cummings, 1990

4) Brooks F., “The Mythical Man Month”,

5) Edward Yourdon, “Modern Structured Analysis” , Prentice hall India Ltd., New Delhi, 1996

6) Eric S. Raymond, “Bazar and the Cathedral, http://www.opensource.org/

7) Ian Sommerville, “Software Engineering”, 5^{th} ed., Addison Wesley, 1997

8) James Rumbaugh et al , “Object oriented Modelling and Design”, Prentice hall India Ltd., 1992

9) Roger S Pressman, “Software Engineering , A Practitioners Approach”, McGraw-Hill Inc., 4^{th }edition New York, 1992

**CS 604 Compiler Construction**

Module I. Introduction to compilers – Different Phases. Lexical Analysis – input buffering – specification of tokens – Recognition of tokens – lexical Analyser generators – lex – Finite Automata – Regular expressions to finite automata . Design of lexical analysers generator.

Module II. Syntax Analysis. Context free grammar – Elimination of ambiguity – elimination of left recursion. Top down parsing – Recursive descent parsing – predictive parsers Construction of predictive parsing tables. Bottom Up Parsing – Shift reduce parsing Operator precedence parsing – precedence relations and functions. LR parsers – LR parsing algorithms – LR grammars – Construction ofSLR, Canonical and LALR parsing tables. Parser generators – Case study – Yacc.

Module III. Syntax directed Translation. Syntax directed definitions – Synthesised and inherited attributes – Dependency graphs. Construction of syntax trees – syntax tree. Bottom up evaluation of S-attributed definition – L -attributed definitions. Type checking – type systems – static and dynamic type checking.

Module IV. Run time Environment. Storage organisation schemes – Activation records – Compile time layout. Storage allocation strategies – static allocation – stack allocation – heap allocation. Accessing non-local names. Parameter passing mechanisms.

Module V. Symbol tables -representing scope information. Intermediate code generation – intermediate languages – declaration and assignment statements. Code generation. issues – memory management – instruction selection – register allocation. Runtime storage allocation. basic blocks and flow graphs. Code optimisation. Principal sources of optimisation – function preserving transformations – common subexpressions – copy propagation – dead-code elimination – loop optimisation – code motion – strength reduction.

**Text Books**

Alfred V.Aho et.al., “Compilers: Principles, Techniques and Tools*”*, Addison Wesley Publishing Company, 1986

**References**

1) Alfred V.Aho, Jeffrey D. Ullman., “Principles of Compiler Design*”*, Narosa Publishing House, 1990

2) Allen Holub, “Compiler Design in C*”*, Prentice Hall India Pvt. Ltd., 1991

3) Arthur B. Pyster, “Compiler Design and Construction*”*, Van Nostrand Reinhold Company, New York,1993

4) David Gries, “Compiler Construction for Digital computers”, John Wiley and Sons,1980

5) Henk Albalas, “Albert Nymer, Practice and Principles of Compiler Building with C”, Prentice Hall, 1996

6) Jean Paul Tremblay, “Introduction to Compiler Writing”, McGrawhill,1988

7) “Compiler Construction” , Learning Material Series, Indian Society for Technical Education, New Delhi, 1996.

**EB/EI/CS/EC 605** **Control Systems Engineering**** **

** **

** **

Module I. Basic idea of control systems and their classification – differential equations of systems – linear approximation – Laplace transform and transfer function of linear system – Model of physical system ( Electrical, mechanical and electromechanical )- block diagram – signal flow graph – Mason’s gain formula.

Module II. Time domain analysis – Representation of deterministic signals – First order system response – S-plane root location and transient response – impulse and step response of second order systems – performance – characteristics in the time domain – effects of derivative and integral control – steady state response – error constant – generalised definition of error coefficients – concepts of stability – Routh – Hurwitz criterion.

Module III. Frequency domain analysis – frequency response – Bode plot, Polar plot, Nicol’s chart – closed loop frequency response and frequency domain performance characteristics . Stability in the frequency domain . Nyquist criterion.

Module IV. Root locus method – basic theory and properties of root loci – procedure for the construction of root loci – complete root locus diagram. Design and compensation of feed back control system :- approaches to compensation – cascade compensation networks and their design in the frequency domain – simple design in S-plane.

Module V. State variable methods :- introduction to state variable concepts – state variable description of linear dynamic systems – representation in matrix forms – block diagram and signal flow graph representation of state equations – Transfer matrix from state equations – transition matrix – general solution for linear time invariant state equations. Control system components :- Error detectors , servomotor, tachogenerator, servo amplifier, magnetic amplifier, rotating amplifier – Basic principles of adaptive control systems.

References:-

** **

** **

1) Ogata K, “ Modern Control Engineering”, Prentice Hall

2) Kuo B. C , “Automatic Control System”, Prentice Hall

3) Nagarath & Gopal, “ Control System Engineering”, Wiley Eastern

4) M Gopal, “ Control Systems principles and design” , Tata Macgraw Hill

**CS 606** **Compiler Design Lab**** **

** **

1. Lexical Analysis – regular expression. Lexical Analyser generator- Use of Lex to generate scanners.

2. Writing parsers – Recursive descent parsers. Development of LALR(1) parsers using yacc

3. Symbol tables and intermediate code generation.

4. Developing a compiler for a subset of a programming Language.

**CS 607 Minor Project**

Great post!😀