CS421: Computer Peripherals and Interfaces

Instructor: Dr A Sahu


  1. Model Answer End Semster PPTX Slides
  2. Tentative Total Marks tobe updated soon after 3rd Nov 2010 Sorted Mark

Course Structure:

Lecture Slides Thanks to Prof Anshul Kumar (IIT Delhi), Allan Cruse (USF CA) for providing slide of their courses.
  1. 29th July 2010 : Introduction and Motivation to Computer Peripheral Interfacing PPTX Slides
  2. 03rd Aug 2010 : Review of Computer Architecture PPTX Slides
  3. 04th Aug 2010 : 8085 Architecture and its programming PPTX Slides
  4. 05th Aug 2010 : 8085 Architecture and its programming contd.. PPTX Slides
  5. 10th Aug 2010 : 8086 Architecture and its programming (MASM) PPTX Slides
  6. 11th Aug 2010 : Architecture x86 and 32 bit architecure with MASM programming. PPTX Slides

  7. 12th Aug 2010 : Device interfacing methodology and characteristics PPTX Slides
  8. 17th Aug 2010 : DAC/ADC interfacing to MPU without Peripheral Controller PPTX Slides
  9. 18th Aug 2010 : Display interfacing to MPU without Peripheral Controller PPTX Slides
  10. 19th Aug 2010 : Keyboard interfacing to MPU without Peripheral Controller PPTX Slides

  11. 24th Aug 2010 : Peripheral Interface and Timer (Programmable) (8155 I/O+Timer) PPTX Slides
  12. 25th Aug 2010 : Peripheral Interface and Timer (Programmable) (8155 I/O+Timer )Cntd.PPTX Slides
  13. 26th Aug 2010 : Dedicated Periphral Interface (8255 I/O :with out timer) PPTX Slides
  14. 31th Aug 2010 : Periphral Interface (8255 I/O) Cntd.. PPTX Slides
  15. 1st Sep 2010 : Programmable Interrupt Controller (8259A ) PPTX Slides 8259 Spec from Intel or Appendix of Gaonkar Book
  16. 2st Sep 2010 : Interrupt Controller (8259A Programming and Intro to DMA) PPTX Slides
  17. 7nd Sep 2010 : DMA Controller (8237) and its programming PPTX Slides 8237 data sheet fft.tgz
  18. 8th Sep 2010 : DMA Controller (8237) and its programming Cntd ..
  19. 9th Sep 2010 : Introduction to serial communication and USART Controller (8251A) PPTX Slides
  20. 14th Sep 2010 : Architecture and Programming of USART Controller (8251A) PPTX Slides
  21. 15th Sep 2010 : 8253/8254 Programable Timer and interval counter PPTX Slides
  22. 16th Sep 2010 : Summary of course material tought as of now PPTX_Slides

  23. =============================================================================
    Mid Semester Exam (20 Sept 2010, Room: 2202/2204, Time: 10.00AM-12.00Noon)
    Mid Sem Question PPTX
    MidSem Model Answer PPTX Mid-semester-Marks
    =============================================================================
  24. Introduction to Advance Device Interfacing (OS, Kernel and Drivers) PPTX Slides
  25. Introduction to LDD, CMOS Clock and Device Driver Types PPTX Slides
  26. Character Device Driver and Delay SR using CMOS examples PPTX Slides
  27. Solution to Mid Sem Examination and Advance topics PPTX Slides
  28. Pre Requsite for Device Drivers (Multitasking and Races) and listing thread/process PPTX Slides
  29. Peripheral of Advance Desktop Board and its linux programming PPTX Slides
  30. Video/Graphics of Modern Desktop Board and its linux programming PPTX Slides
  31. GPU Architecture and its programming PPTX Slides
  32. GPU Memory Model, Architecuture Model, Programming model and GPGPU with CUDA PPTX Slides
  33. UART/Modem of modern Desktop PC and its linux programming PPTX Slides
  34. Network Interface Card and its linux programming PPTX Slides
  35. Network Device Driver for NIC PPTX Slides
  36. NIC, Kernel Timer and Block Driver PPTX Slides
  37. Block Device Driver PPTX Slides
  38. USB Basic and Driver model PPTX Slides
  39. USB Drivers and Linux Device Model PPTX Slides
  40. Summarisation Before End Sem, Question pattern, Feedback PPTX Slides
  41. Model Answer End Semster PPTX Slides

Assignments
  1. 8085 Simulator (2.5 marks)

    Statement:Write and execute 8085 assembly language program to find value of Nth Fibonacci number (Recursive version: using recursive subroutine call), 16 bit can support up to 65356 which is greater than F24.
    Deadline: 12th Aug 2010, 11.55 PM (before Mid night)
    After deadline grading: Maximum 5 marks out of 10 marks scale
    Send TXT version of program with file name RollNo.txt to asahu AT iitg DOT ernet.in with Assignment one as subject of email
    Don’t submit copied one: will get Negative marks

  2. 8086 Simulator (2.5 marks) (Use MASM simulator or TASM or Microsoft Visual C++ _asm option or NASM linux)

  3. Statement:Write and execute 8086 assembly language program to find value of SUM of square of first N number (for N=10, S=12+22+32+42+..102)
    Deadline: 21st Aug 2010, 11.55 PM (before Mid night)
    After deadline grading: Maximum 5 marks out of 10 marks scale
    Send TXT version of program with file name RollNo.txt to asahu AT iitg DOT ernet.in with Assignment two as subject of email
    Don’t submit copied one: will get Negative marks


  4. Write a kernel module to display NIC statistics counter registers values (5 marks)
  5. Statement: Write a kernel module to display NIC statistics counter registers values.
    Deadline: 13th Nov 2010, 11.55 PM (before Mid night)
    You have to show/demo your program on your system otherwise you will not get any mark. Submiting through email merely get any marks but can be used for deadline of submission.
    Send TXT version of program with file name RollNo.txt to asahu AT iitg DOT ernet.in with Assignment three as subject of email
    Don’t submit copied one


Books : Text:
  1. R S Gaonkar, “Microprocessor Architecture, Programming and Application with the 8085”, 5th edition, Penram India
  2. J. Corbet, A Rubini, “Linux Device Driver” 3rd Edition,O’relly publisher References PDF
  3. LKM , “Linux Kernel Module” 3rd Edition,O’relly publisher References PDF
  4. M Bach, “The Design of Unix OS ” PHI 2007
References:
  1. D V Hall, Microprocessors and Interfacing, TMH, 1995
  2. Brey. Barry B, The Intel Microprocessors 8086/8088, 80186/80188, 80286, 80386, 80486, Pentium, and Pentium Pro Processor Architecture, Programming, and Interfacing, Prentice Hall India, 2005
  3. M B Cook and H White Neil, Computer Peripherals, 3/e. London: Edward Arnold, 1995.
  4. L F Doyle, Computer Peripherals, Prentice Hall, 1996
  5. George Pajari, Writing UNIX Device Drivers, Pearson son education India

Class timing, Venue and Rules