CS421: Computer Peripherals and Interfaces

Instructor: Dr A Sahu


  1. Model Answer End Semster PDF 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 PDF Slides
  2. 03rd Aug 2010 : Review of Computer Architecture PDF Slides
  3. 04th Aug 2010 : 8085 Architecture and its programming PDF Slides
  4. 05th Aug 2010 : 8085 Architecture and its programming contd.. PDF Slides
  5. 10th Aug 2010 : 8086 Architecture and its programming (MASM) PDF Slides
  6. 11th Aug 2010 : Architecture x86 and 32 bit architecure with MASM programming. PDF Slides

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

  11. 24th Aug 2010 : Peripheral Interface and Timer (Programmable) (8155 I/O+Timer) PDF Slides
  12. 25th Aug 2010 : Peripheral Interface and Timer (Programmable) (8155 I/O+Timer )Cntd.PDF Slides
  13. 26th Aug 2010 : Dedicated Periphral Interface (8255 I/O :with out timer) PDF Slides
  14. 31th Aug 2010 : Periphral Interface (8255 I/O) Cntd.. PDF Slides
  15. 1st Sep 2010 : Programmable Interrupt Controller (8259A ) PDF Slides 8259 Spec from Intel or Appendix of Gaonkar Book
  16. 2st Sep 2010 : Interrupt Controller (8259A Programming and Intro to DMA) PDF Slides
  17. 7nd Sep 2010 : DMA Controller (8237) and its programming PDF Slides 8237 data sheet FFT example 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) PDF Slides
  20. 14th Sep 2010 : Architecture and Programming of USART Controller (8251A) PDF Slides
  21. 15th Sep 2010 : 8253/8254 Programable Timer and interval counter PDF Slides
  22. 16th Sep 2010 : Summary of course material tought as of now PDF_Slides

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

Assignments
  1. 8085 Simulator (Download Simulator:TextBookVersion, EvalVersion)(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