BSc in Computer Engineering / Бакалавр в Області Комп'ютерної Інженерії

Course Details

Course Information Package

Course Unit TitleMICROPROCESSORS
Course Unit CodeACOE255
Course Unit Details
Number of ECTS credits allocated6
Learning Outcomes of the course unitBy the end of the course, the students should be able to:
  1. Outline the characteristics of classical and modern microprocessors.
  2. Interface semiconductor memory devices with a microprocessor and perform address decoding and timing analysis calculations.
  3. Analyse data formats, and relate them to data types used by high level languages.
  4. Implement basic program control structures in assembly language and relate them with high level languages.
  5. Design Interfaces with two state devices using programmable devices, and write programs to control their operation.
  6. Design Interfaces with analogue devices using data converters, and write programs to control their operation.
  7. Use interrupt and DMA software and hardware mechanisms to interface the microprocessor with peripherals devices.
  8. Use laboratory instruments and tools to analyse the operation of single board microprocessor systems.
Mode of DeliveryFace-to-face
PrerequisitesACOE201Co-requisitesNONE
Recommended optional program componentsNONE
Course Contents

Introduction to microprocessors: Overview of microprocessor technologies.

Introduction to the x86 family: Pin and signal descriptions, loading and timing of the 80x86 microprocessors. Bus drivers, clock and reset circuits.

x86 Assembly Language: 80X86 programming model, segmentation and memory models. Data representation and correlation with high-level language data structures. Instruction types and addressing modes. Assembly language implementation of control structures such as IF-THEN, CASE, FOR-LOOP, WHILE and REPEAT-UNTIL. The stack, and the call and return mechanism. Parameter passing using registers, memory, pointers and stack.

Memory interfacing, and synchronization: Interfacing with EPROMs, Static and Dynamic RAMs. Address decoding, memory maps and memory mirroring. Static and dynamic bus contention. Memory timing analysis, synchronization using asynchronous buses and wait states.

Input/Output interfacing: Isolated and memory mapped I/O. Interfacing with two state devices such as LEDs, 7-segment displays, switches, keyboards relays and ac loads. I/O synchronization using interrupts and the polling technique. Software and hardware aspects of interrupts. Use of programmable I/O devices.

Interrupts and DMA: Programmable Interval Timers (PIT), Programmable Interrupt Controllers (PIC) and Direct Memory Access Controllers (DMAC), and USART. Computer bus standards.

Laboratory Work: Individual or small group experiments performed with single board computers. Experiments include monitor commands, reset circuits, buffering, memory interfacing and I/O interfacing.

Recommended and/or required reading:
Textbooks
  • B. Brey, The Intel Microprocessors: 8086,80186,80286,80386, 80486, Pentium and Pentium Pro Processors, Pentium II, Pentium III and Pentium 4: Architecture, Programming and Interfacing, Prentice Hall, 2008
References
  • Kip. Irvine, Assembly Language for Intel Based Computers, Pearson Education, 2003
Planned learning activities and teaching methods

The taught part of course is delivered to the students by means of lectures, conducted with the help of computer presentations. Lecture notes and presentations are available through the web for students to use in combination with the textbooks.

Lectures are supplemented with laboratory work carried out on computers and single board microprocessor systems.

Assessment methods and criteria
Assignments10%
Tests30%
Laboratory Work20%
Final Exam40%
Language of instructionEnglish
Work placement(s)NO

 Друк  E-mail