RAJIV GANDHI PROUDYOGIKI VISHWAVIDYALAYA, BHOPAL
PROGRAMME: B.E. Computer Science & Engineering, VI Semester
Branch: Computer Science and Engineering VI Semester Course:
CS 601 Micro Processor and Interfacing
The purpose of this subject is to cover the underlying concepts and techniques used in Micro Processor and Interfacing. In this subject we cover the unique issues associated with designing, testing, integrating, and implementing microcontroller/microprocessor- based embedded systems.
The students should have acquired fundamental microcontroller-associated programming skills using both the C programming language and assembly language
Evolution of microprocessor, single chip micro computers, Micro processor Application, Microprocessor and its architecture, addressing modes, instruction, Instruction sets, Arithmetic and Logic Instruction, Program control instruction, Introduction – 8086 family, procedure and macros, connection , Timing and Trouble shooting interrupt, 80286, 80836 and 80486 micro processor system concept.
UNIT – II
Microprocessor Cycle, AIU, Timing and control Unit, Register data, Address bus, Pin Configuration, Intel 8086 instruction, Opcode and operands, limitation word size. Programming the microprocessor Assembly language, The Pentium and Pentium Pro Micro Processor with features, Pentium II, Pentium III and Pentium – IV Microprocessor with software changes. Instruction set for Intel 8086, Introduction Intimation and data formats, Addressing modes, Status flags, Symbols and abbreviations, programming of microprocessors, Assembly language, high level language, areas of application of various languages, Stacks, Sub routines system, software, commands in assembly
language, software Development, Debugging program, Modular programming, Structured programming, Top-down, Bottom- up design , MACRO microprogramming
Assembly language programming with Examples like Addition of 8/16-bit Binary number, subtraction of 8/16 bit binary number, Address partitioning, addressing mode, type of addressing mode, memory and I/o interfacing, Data transfer schemes, Interfacing device and I/o devices I/o ports, Basic I/o Interfacing MDS, Micro controllers, I/o processor and co- processors ,Microcomputer Development system, Single chip micro computers, intel 8748 intel 8051, inter 8096, intel 8049intel 2920/2921, I/o processor UPI-425,UPI-41,42, Co-processor, math processor math co-processor – 8087, 80287, 80387DX 803875x.
Bus Interface I/o port Addressing, decoding 8279, Programmable key board/display interface, 8254 Internal Timer, 16550 programmable communication interface A/D, 8259A Programmable Interrupt Controller, 8237 DMA Controller, Shared bus operation, disk Memory system Video display. ISA Bus, Extended ISA ( EISA) and VeSa Local Buses, Peripheral Component Inter Connect (Pc I) Bus, Parallel Printer interface (LPT) Universal serial Bus (USB) Accelerated graphics port (AGP),Programmable Communication interfere 8251 VSART CRT Controller 8275, 6854, Floppy disk Controller 8272, I/o processor 8089.
UNIT – V
Memory Unit, RAM,SRAM, DRAM,ROM, PROM EPROM, EEPROM Nonvolatile RAM semiconductor Technology for memory, Shift register, Magnetic Memory, Tap, disc, main memory and secondary memory cache memory, program memory and Data Memory, Real and virtual memory Buses, memory Addressing capacity of CPU, processing speed of computer.
List of Experiments
- Add a data byte located at offset 0500H in 2000H segment to another data byte available at 06000H in same segment and store the resulting 0700H in same segment?
- Add the contents of memory location 2000H, offset 0500H to the contained of accumulator.
- Write a program to find the average to two temperature name HI-TEMP and LO- TEMP and puts the result in the memory location AV-TEMP.
- Find out the largest number from an unordered array of sixteen 8-bit numbers stored sequentially in the memory locations starting at offset 0500H in the segment 2000H
- Move a byte string, 16 bytes long, from the offset 0200H to 0300H in the segment 7000H.
- Write a program to add a profit factor to each element in a cost array and puts the result in a PRICES array, where profit factor is 15H and COST =20H, 28H, 15H, 26H, 19H, 27H, 16H, 29H.
- Write a program to find out the number of positive numbers and negative numbers from a given series of signed numbers.
- Write a program that performs the addition, subtraction, multiplications, division of the given operands. Perform BCD operation for addition and subtraction.
- A Program to find out the number of even and odd numbers from a given series of 16 bit hexad4ecimal numbers.
- Douglas V Hall, “Microprocessors and interfacing – Programming & Hardware” TMH
- Barry B. Brey, “The intel Microprocessor – 8086”, Pearson Education
- Kenneth J.Ayala,”The 8086 Microproccessor: Programming & Interfacing The PC”,Cengage Learning
- Krishna Kant,”Microprocessors and Microcontrollers”, PHI Learning
- A.K.Ray KM Bhurchandi, “Advanced Microprocessor and peripherals” McGraw Hill
- R.S. Gaonkar /’Microprocessors and interfacing”, TMH
Branch: Computer Science and Engineering VI Semester Course: CS 602 Principles Of Programming Languages
The purpose of this subject is to cover the underlying concepts and techniques used in Programming Languages. It provides general idea related to operating & Programming environment.
The students should have general idea about programming language . In addition, a familiarity with Elementary and Structured Data Types is needed for better understanding.
Language Evaluation Criteria, influences on Language design, Language categories, Programming Paradigms – Imperative, Object Oriented, functional Programming , Logic Programming. Programming Language Implementation – Compilation and Virtual Machines, programming environments. Issues in Language Translation: Syntax, Semantics, Stages, analysis and synthesis, Parse Tree, CFG and BNF grammar.
Data types: Introduction, primitive, character, user defined, array, associative, record, union, pointer and reference types, design and implementation uses related to these types. Names ,Variable, concept of binding, type checking, strong typing, type compatibility, named constants, variable initialization. Sequence control with Expressions, Conditional Statements, Loops, Exception handling.
Subprograms and Blocks: Fundamentals of sub-programs, Scope and lifetime of variable, static and dynamic scope, Design issues of subprograms and operations, local referencing environments, parameter passing methods, overloaded sub-programs, generic subprograms, design issues for functions overloaded operators, co routines.
Abstract Data types: Abstractions and encapsulation, introductions to data abstraction, Static and Stack-Based Storage management. heap based storage management. Garbage Collection.object oriented programming in small talk, C++, Java, C#, PHP, Perl . Concurrency: Subprogram level concurrency, semaphores, monitors, massage passing, Java threads, C# threads.
UNIT – V
Exception handling, Exceptions, exception Propagation, Exception handler in C++ and Java. Logic Programming Language : Introduction and overview of logic programming, basic elements of prolog, application of logic programming. Functional Programming Languages: Introduction, fundamentals. Introduction to 4GL.
- Sebesta,”Concept of programming Language”, Pearson Edu.
- Louden, “Programming Languages: Principles & Practices” , Cengage Learning
- Tucker, “ Programming Languages: Principles and paradigms “, Tata McGraw -Hill
- Terrance W Pratt, “Programming Languages: Design and Implementation” Pearson Edu.
5 Cavlo Ghezzi & Mehdi Jazayeri ” Programming Languages Concepts”, Willey India
6 E Horowitz, “Programming Languages”, 2nd Edition, Addison Wesley
Branch: Computer Science & Engineering VI Semester
Course: CS 6516/ CS603 Software Engineering & Project Management
The purpose of this subject is to cover the underlying concepts and techniques used in Software Engineering & Project Management. Some of these techniques can be used in software design & its implementation.
The students should have at least one year of experience in programming a high-level language and databases. In addition, a familiarity with software development life cycle will be useful in studying this subject..
Unit I: The Software Product and Software Process:
Software Product and Process Characteristics, Software Process Models: Linear Sequential Model, Prototyping Model, RAD Model, Evolutionary Process Models like Incremental Model, Spiral Model, Component Assembly Model, RUP and Agile processes. Software Process customization and improvement, CMM, Product and Process Metrics
Unit II: Requirement Elicitation, Analysis, and Specification
Functional and Non-functional requirements, Requirement Sources and Elicitation Techniques, Analysis Modeling for Function-oriented and Object-oriented software development, Use case Modeling, System and Software Requirement Specifications, Requirement Validation, Traceability
Unit III: Software Design
The Software Design Process, Design Concepts and Principles, Software Modeling and UML, Architectural Design, Architectural Views and Styles, User Interface Design, Function-oriented Design, SA/SD Component Based Design, Design Metrics
Unit IV: Software Analysis and Testing
Software Static and Dynamic analysis, Code inspections, Software Testing Fundamentals, Software Test Process, Testing Levels, Test Criteria, Test Case Design, Test Oracles, Test Techniques, Black-Box Testing, White-Box Unit Testing and Unit Testing Frameworks, Integration Testing, System Testing and other Specialized Testing, Test Plan, Test Metrics, Testing Tools. , Introduction to Object-oriented analysis, design and comparison with structured software engg.
Unit V: Software Maintenance & Software Project Measurement
Need and Types of Maintenance, Software Configuration Management (SCM), Software Change Management, Version Control, Change control and Reporting, Program Comprehension Techniques, Re-engineering, Reverse Engineering, Tool Support. Project Management Concepts, Feasilibility Analysis, Project and Process Planning, Resources Allocations, Software efforts, Schedule, and Cost estimations, Project Scheduling and Tracking, Risk Assessment and Mitigation, Software Quality Assurance (SQA). Project Plan, Project Metrics.
Practical and Lab work
Lab work should include a running case study problem for which different deliverables at the end of each phase of a software development life cycle are to be developed. This will include modeling the requirements, architecture and detailed design. Subsequently the design models will be coded and tested. For modeling, tools like Rational Rose products. For coding and testing, IDE like Eclipse, NetBeans, and Visual Studio can be used.
- Pankaj Jalote ,”An Integrated Approach to Software Engineering”, Narosa Pub, 2005
- Rajib Mall, “Fundamentals of Software Engineering” Second Edition, PHI Learning
- R S. Pressman ,”Software Engineering: A Practitioner’s Approach”, Sixth edition 2006, McGraw-Hill.
- Sommerville,”Software Enginerring”,Pearson Education.
- Richard H.Thayer,”Software Enginerring & Project Managements”,Willey India
- Waman S.Jawadekar,”Software Enginerring”, TMH
- Schwalbe,”IT Project Managements”,Cengage Learning.
Branch: Computer Science & Engineering VI Semester.
Course: CS 6515/ CS604 Computer Networking
The purpose of this subject is to cover the underlying concepts and techniques used in Computer Networking. This syllabus provides a comprehensive introduction to computer network, network architecture and protocols.
The students should have thorough exposure in Analog and Digital Communication and Data Communications. Knowledge of Topology and protocol will help in better understanding
Computer Network: Definitions, goals, components, structure, Architecture, Classifications & types, Growth, Complexity and applications etc. Layered Architecture: Protocol hierarchy, Connection Oriented & Connectionless Services, Service permative Design issues & its functionality. ISO-OSI Reference Model: Principle, Model, Descriptions of various layers and its comparison with TCP/IP. Network standardization. Examples of Networks: Telecommunication Network, Corporate Networks, Connection oriented network i.e., X.25, Frame relay & ATM, Wireless LAN 802.11, internet, Intranet, Extranet, SNA & DNA etc.
Data Link Layer: Need, Services Provided, Framing & its methods, Flow Control, Error control. DLL Protocol: Elementary & Sliding Window. Piggybacking & Pipelining. Protocol verification: Finite State Machine Models & Petri net models. Example in Data Link Layers: HDLC & Internet. Comparison of BISYNC and HDLC Features. Bridges and layer-2 switches
MAC Sub layer: Static & Dynamic channel allocation, Media access control for LAN & WAN. Classification of MAC Sub layer protocol, Study of various collision, Collision free
& limited contention protocol i.e., ALOHA : pure, slotted , CSMA, CSMA/CD,CSMA/CA, Bit Map, Binary count down, BRAP, MLMA, Adaptive tree walk & urn protocol etc. IEEE 802 standards for LAN & MAN & their comparison. Ethernet: Cabling, Binary exponentials algorithms, performance fast Ethernet, Gigabit Ethernet, FDDI. Wireless LANs, Broadband Wireless, Bluetooth: Architecture, Application & Layering.
UNIT – IV
Network Layer: Need, Services Provided , Design issues, Routing algorithms: Least Cost Routing algorithm, Dijkstra’s algorithm, Bellman-ford algorithm, Hierarchical Routing, Broadcast Routing, Multicast Routing, Routing for mobile hosts, Routing in Ad Hoc Networks Routing Strategies, Congestion Control Algorithms: General Principles of Congestion control, Prevention Policies, Congestion Control in Virtual-Circuit Subnets, Congestion Control in Datagram subnets. IP protocol, IP Addresses, Comparative study of IPv4 & IPv6, Mobile IP.
Processes to Processes Delivery – Transmission Control Protocol (TCP) – User Datagram Protocol, Data Traffic, Congestion Control and Quality of Service, Techniques to improve QOS, Integrated Services, and Differentiated Services. Network Security: Cryptography, Message Security, Digital Signature, User Authentication, Key Management, Security Protocols in Internet ,DNS,SMTP, FTP, HTTP, WWW, Virtual Terminal Protocol, VoIP: Basic IP Telephone System,H.323 Characteristic & Layering, SIP Characteristics, Method & Sessions.
List of Experiments
- To study Communication Guiding system
- To study various types of connectors.
- To study of different type of LAN equipments.
- Study and verification of standard Network topologies i.e. Star, Bus, Ring etc
- LAN installations and their Configurations.
- To implement various types of error correcting techniques.
- To implement various types of framing methods.
- To implement various types of DLL protocols.
- To study & configure various types of router & Bridges.
- To implement various types of routing algorithm.
- To study of Tool Command Language(TCL).
- Study and Installation of Standard Network Simulator, N.S-2.
- Study & Simulation of MAC Protocols like Aloha, CSMA, CSMA/CD and CSMA/CA using Standard Network Simulator.
- Study & Simulation of Routing Protocols using Standard Network Simulator.
- Study & implementations of VoIP Concepts.
- Implementation & Comparisons of various types of Cryptographic algorithms. Suggested Reading:
- Tanenbaum A. S ,”Computer Networks “Pearson Education.
- Stalling W, “Computer Networks”, Pearson Education
- Douglas E. Comer & M.S Narayanan,”Computer Network & Internet”, Pearson Education
- Behraj A Forouzan,”Data Communication & Networking”, McGraw-Hill.
- Natalia Olifar & Victor Olifer,”Computer Networks”, Willey Pub.
- Prakash C. Gupta, “Data Comunications and Computer Networks”, PHI
- Bertsekas & Gallager “Data Network” , PHI
8 Gallo,”Computer Communication & Networking Technologies”,Cengage Learning
Branch: Computer Science and Engineering VI Semester Course: CS 605 Advance Computer Architecture
The purpose of this subject is to cover the underlying concepts and techniques used in Advance Computer Architecture. The Syllabus discusses principles of parallel algorithms design and different parallel programming models
The students should have general Idea of Computer Organization. In addition, a familiarity with Memory organization, Computational models is required.
Flynn’s Classification, System Attributes to Performance, Parallel computer models – Multiprocessors and multicomputers, Multivector and SIMD Computers. Data and resource dependences,Hardware and software parallelism,Program partitioning and scheduling, Grain size and latency, Control flow, data flow and Demand driven mechanisms. Static interconnection networks,Dynamic interconnection Networks: Bus Systems, Crossbar Switch, Multiport Memory, Multistage and Combining Networks
Instruction set architecture, CISC Scalar Processors , RISC Scalar Processors, VLIW architecture, Memory Hierarchy, Inclusion, Coherence and Locality, Memory capacity planning. Interleaved memory organization- memory interleaving, pipelined memory access, Bandwidth and Fault Tolerance. Backplane Bus System :Backplane bus specification, Addressing and timing protocols, Arbitration transaction and interrupt.
Linear pipeline processor, Nonlinear pipeline processor, Instruction pipeline design, Mechanisms for instruction pipelining, pipeline hazards, Dynamic instruction scheduling –
Cache coherence, Snoopy protocols, Directory based protocols. Message routing schemes in multicomputer network, deadlock and virtual channel. Vector Processing Principles, Vector instruction types, Vector-access memory schemes. Vector supercomputer architecture, SIMD organization: distributed memory model and shared memory model. Principlesof Multithreading: Multithreading Issues and Solutions, Multiple-Context Processors
Parallel Programming Models, Shared-Variable Model, Message-Passing Model, Data- Parallel Model, Object-Oriented Model, Functional and Logic Models, Parallel Languages and Compilers, Language Features for Parallelism, Parallel Programming Environment, Software Tools and Environments.
- Kai Hwang, “Advanced computer architecture”, TMH.
- J.P.Hayes, “computer Architecture and organization”; MGH.
- V.Rajaranam & C.S.R.Murthy, “Parallel computer”; PHI Learning.
- Kain,”Advance Computer Architecture: – A System Design Approach”, PHI Learning
- M.J Flynn, “Computer Architecture, Pipelined and Parallel Processor Design”; Narosa Publishing.
- Hwang and Briggs, “Computer Architecture and Parallel Processing”; MGH.
- David E. Callav & Jaswinder Pal Singh Marge Kaufmann”Advance Computer Architecture”, EIS India.
- Sajjan G. Shiva, Taylar & Francis, “Advance Computer Architecture