Mom24 25

Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

Machine Organization and Microprocessor

Teaching Scheme Examination Scheme Credit Scheme


Hours/Week Marks Credits
Theory: 03 Hours/Week End Semester Examination 60 Marks Theory: 03
Internal Assessment: 40 Marks
Total: 100 Marks Total: 03

Course Objective:
The Course Would Provide Students with an Understanding of the Architecture and Programmer’s
Model of Advanced Processor and Provide Practical Exposure On Microprocessor. Students Will
Learn The Basic Operations And The System Level Features Of Advanced Processor To Apply The
Assembly Language Programming To Develop Small Real Life Embedded Application.

Prerequisite:
The Students Should Have Basic Knowledge Digital Electronics And Logic Design.

Course Outcomes: On Completion Of The Course, Students Will Have The Ability To:
1. Understand Instruction Set And Assembly Language Programming.
2. Remember The Architecture And Features Of Microprocessor.
3. Analyze Different Processor Modes.
4. Apply Exceptions And Interrupt Mechanism In Application.
5. Identify And Analyze The Tools Used To Design And Debug Microprocessor Based Systems.
6. Create Systems Using Microprocessor And Microcontroller For Real Time Applications.

Unit I: Introduction to 80386 Architecture 06 Hours


Brief History of Intel Processors, 80386 Features and Architecture, Operating
Modes, Addressing Modes, Data Types.
Applications Instruction Set- Data Movement Instructions, Binary Arithmetic
Instructions, Decimal Arithmetic Instructions, Logical Instructions, Control
Transfer Instructions, String And Character Transfer Instructions .

Unit II: Systems Architecture and Memory Management 06 Hours


System Registers (Flag Registers, Memory Management Registers, Control
Registers, Debug Register, Test Registers), System Instructions.
Memory Management- Global Descriptor Table, Local Descriptor Table,
Interrupt Descriptor Table, Segment Translation, Page Translation, Combining
Segment And Page Translation.

Unit III: Protection and Multitasking 06 Hours


Protection- Need of Protection, Overview of 80386DX Protection Mechanisms,
Segment Level Protection, Page Level Protection, Combining Segment and Page
Level Protection. Multitasking- Task State Segment, TSS Descriptor, Task
Register, Task Gate Descriptor, Task Switching, Task Linking, Task Address
Space.

Unit IV: Input-Output, Exceptions And Interrupts 06 Hours


Input-Output- I/O Addressing, I/O Instructions, Protection and I/O Exceptions
And Interrupts- Identifying Interrupts, Enabling And Disabling Interrupts,
Priority Among Simultaneous Interrupts And Exceptions, Interrupt Descriptor
Table (IDT), IDT Descriptors, Interrupt Tasks And Interrupt Procedures, Error
Code, And Exception Conditions.

Unit V: Initialization of 80386, Debugging 06 Hours


Initialization- Processor State After Reset, Software Initialization for Real
62
Address Mode, Switching to Protected Mode, Software Initialization For
Protected Mode, Initialization Example, TLB Testing Debugging- Debugging
Features Of The Architecture, Debug Registers, Debug Exceptions, Breakpoint
Exception.

Unit VI: Virtual 8086 Mode and Introduction To Microcontrollers 06 Hours


Virtual 8086 Mode- Executing 8086 Code, Structure of V86 Stack, Entering and
Leaving Virtual 8086 Mode. Architecture Of Typical Microcontroller,
Difference Between Microprocessor And Microcontroller, Characteristics Of 8
Bit And 16 Bit Microcontrollers, Application Of Microcontrollers.

Textbooks:
1. Douglas Hall, “Microprocessors & Interfacing”, Mcgraw Hill, Revised Second Edition, 2006
ISBN 0-07-100462-9
2. A.Ray, K.Bhurchandi, ”Advanced Microprocessors And Peripherals: Arch, Programming &
Interfacing”, Tata Mcgraw Hill,2004 ISBN 0-07-463841-6
3. James Turley, “Advanced 80386 Programming Techniques”, Mcgraw-Hill, ISBN: 10:
0078813425, 13: 978-0078813429.
4. Intel 80386 Programmer's Reference Manual 1986, Intel Corporation, Order No.: 231630-011,
December 1995.
5. Intel 80386 Hardware Reference Manual 1986, Intel Corporation, Order No.: 231732-001, 1986

Reference Books:
1. Chris H. Pappas, William H. Murray, ―80386 Microprocessor Handbooks‖, Mcgraw-Hill
Osborne Media, ISBN-10: 0078812429, 13: 978-0078812422..
2. Walter A. Triebel, ―The 80386Dx Microprocessor: Hardware‖, Software, And Interfacing,
Pearson Education, ISBN: 0137877307, 9780137877300.
3. Brey, Barry B, ―8086/8088, 80286, 80386 And 80486 Assembly Language Programming‖,
Prentice Hall, ISBN: 13: 9780023142475.
4. Introduction To 64 Bit Intel Assembly Language Programming For Linux, 2nd Edition, Ray
Seyfarth, ISBN10: 1478119209, ISBN-13: 9781478119203, 2012.
5. Mohammad Rafiquzzaman, ―Microprocessors: Theory And Applications: Intel And
Motorola", Prentice Hall, ISBN:-10:0966498011, 13:978:0966498011.
6. Assembly Language Step-By-Step: Programming With Linux, 3rd Edition, Jeff Duntemann,
Wiley ISBN:-10 0470497025, ISBN-13: 978-0470497029, 2009.

Project Based Learning


1. Auto Controlled Lights.
2. Gate Controller, Automated
3. A Basic 16-Bit Calculator
4. Temperature Sensor
5. Create A Text-Based Adventure Game with Multiple Choices and Outcomes.
6. Build A Memory Game Where the Player Has to Match Pairs of Numbers or Symbols.
7. Design A Digital Clock That Displays Hours, Minutes, And Seconds.
8. Timing Events with A Timer/Counter and an Interrupt Service Routine
9. Number Converter.

List Of Laboratory Exercises:


1. Write X86/64 ALP To Count Number Of Positive And Negative Numbers From The Array.
2. Write An ALP To Accept Five 64 Bit Hexadecimal Numbers From User And Store Them In An
Array And Display The Accepted Numbers.
3. Write X86/64 ALP To Perform Non-Overlapped Block Transfer (With And Without String
Specific Instructions). Block Containing Data Can Be Defined In The Data Segment.
4. Write X86/64 ALP To Perform Overlapped Block Transfer (With And Without String Specific
63
Instructions). Block Containing Data Can Be Defined In The Data Segment.
5. Write X86/64 ALP To Perform Multiplication Of Two 8-Bit Hexadecimal Numbers. Use
Successive Addition And Add And Shift Method. (Use Of 64-Bit Registers Is Expected).
6. Write X86/64 ALP To Convert 4-Digit Hex Number Into Its Equivalent BCD Number And 5-
Digit BCD Number Into Its Equivalent HEX Number. Make Your Program User Friendly To
Accept The Choice From User For: (A) HEX To BCD B) BCD To HEX (C) EXIT. Display
Proper Strings To Prompt The User While Accepting The Input And Displaying The Result.
(Wherever Necessary, Use 64-Bit Registers).
7. Write X86 Assembly Language Program (ALP) To Implement The Following OS Commands I.
TYPE Ii. COPY And Iii. DELETE Using File Operations. Users Are Supposed To Provide
Command Line Arguments In All Cases.
8. Write X86 ALP To Find, A) Number Of Blank Spaces B) Number Of Lines C) Occurrence Of A
Particular Character. Accept The Data From The Text File. The Text File Has To Be Accessed
During Program_1 Execution And Write FAR PROCEDURES In Program_2 For The Rest Of
The Processing. Use Of PUBLIC And EXTERN Directives Is Mandatory.
9. Write X86 Program To Sort The List Of Integers In Ascending/Descending Order. Read The
Input From The Text File And Write The Sorted Data Back To The Same Text File Using
Bubble Sort.
10. Write X86/64 ALP To Switch From Real Mode To Protected Mode And Display The Values
Of GDTR, LDTR, IDTR, TR And MSW Registers Also Identify CPU Type Using CPUID
Instruction.

Syllabus for Unit Tests:


Unit Test -1 Unit – I, Unit – II, Unit - III
Unit Test -2 Unit – IV, Unit – V, Unit - VI

64

You might also like