Lab 2: 80x86 Interrupts

Size: px
Start display at page:

Download "Lab 2: 80x86 Interrupts"

Transcription

1 ELEC-4601: Microprocessor Systems The Point Lab 2: 80x86 Interrupts Writing software to properly respond to a hardware interrupt is fussy. There is a hardware path from the incoming interrupt signal all the way to the microprocessor that needs to be correctly laid out and enabled using specific bits within specific registers that are located at specific addresses in the I/O mapped memory space of the microprocessor. In this lab, the microprocessor is a member of the 80x86 family but the process or laying out and enabling this path is fundamentally the same for all microprocessors and microcontrollers. There are typically three places where interrupts can be enabled or disabled i.e. allowed to proceed or blocked from proceeding. The microprocessor itself usually has a global Interrupt enable bit or bits as part of a CPU flags register e.g. IF bit in the FLAGS register in the 80x86. If there is a subsystem that is responsible for arbitrating incoming interrupts (in this case, the 8259 Programmable Interrupt Controller or PIC) then it will have registers and bits that need configuring to accept an interrupt and forward it on to the CPU. Finally, the interface subsystem that actually connects to the interrupt source will have some set of registers and bits that need to be configured in order to let the interrupt proceed on its way to the interrupt arbitrator (e.g. the PIC). Once the hardware path has been properly enabled and interrupts can actually reach the CPU, the software has to be written to recognize the interrupt, service it, and gracefully restore the system back to its normal waiting for an interrupt state. The frustrating part of this process arises from the fact that unless everything is working and configured properly then the system will fail, usually in a fatal fashion. If all the hardware isn t configured properly you will not see the interrupt. Once you can see the interrupt, incorrect software will fail (totally) and you will have to reset the hardware and try again. Debugging a hardware interrupt in real time is a notoriously difficult thing but once you have done it for a system such as this one you will know what to look for in any microprocessor system and you will be able to anticipate the amount of time to allocate to this part of the design process. This is something worth knowing. Introduction Interrupts offer an alternate way of responding to external events in a microprocessor system. The microprocessor can poll for changes in the environment by constantly looking for those changes or it can wait until a device signals a change and handle the interrupt caused by the change. For real time events, such as keyboard presses, internal time-ofday clock changes, printer-out-of-paper etc., an actual hardware digital signal, referred to as an IRQ (Interrupt ReQuest) can be generated. They are usually numbered according to their priority, with IRQ0 having the highest priority (the system time-of-day) and IRQ7 the lowest (the LPT1 printer port). For typical simple microprocessor systems, the following flowchart applies:

2 Execute software instruction No Interrupt received? YES Save state, jump to service Service the interrupt Restore state as before interrupt The software procedure, usually small and fast, that runs in response to an interrupt is referred to as an Interrupt Service Routine (ISR). 80X86 processors operating in real-mode (the simple microprocessor mode used in the lab) make use of an Interrupt Descriptor Table (IDT) which consists of 256 entries (numbered 0 through 255), each of which holds the address of an ISR. The IDT starts at memory location 0000:0000. Most of these entries are for the 255 software interrupts and processor exceptions that the processor supports. Some of the entries in this table have been set aside for hardware interrupts, with IRQ0 to IRQ7 using up the IDT slots at positions 8 to 15, and IRQ8 to IRQ15 using up the IDT slots at positions 0x70 to 0x77. In response to an interrupt, the processor will finish executing the current instruction, immediately jump to the address stored in the IDT at the appropriate location, and continue executing instructions from this new address. Purpose This lab will investigate a number of things in software: - the steps necessary to get a typical microprocessor system to actually recognize that an external hardware interrupt has occurred - the steps necessary to service this interrupt and to clear the interrupting condition This lab will look at a number of things related to hardware: How to debug interrupts using the logic analyzer How to measure the speed of interrupt handlers

3 Equipment required HP 16702B Logic Analyzer PC/104 or ISA bus PC HP33120A Function Generator for Part A Windows PC with a serial port and running a terminal (TeraTerm Pro) program Part A : Simple Squarewave Interrupts This portion of the lab concerns setting up a simple square wave generator to input a TTL signal at a variable frequency through the IRQ7 hardware interrupt of a conventional 80x86 PC. In addition, the lab involves writing software to allow this interrupt to be recognized by the 80x86 processor and to display a count of the interrupts that have been recognized. The student is expected to have tried to fill in the steps of the LAB2A.PAS text file that has been posted to the course website. The steps are laid out in the source file with the actual setting/clearing of register bits, as required, left to the student. All registers of interest for the purposes of this lab are I/O mapped i.e. the bits within each register can be accessed through the standard instructions MOV DX,<register address> IN AL,DX OR AL,<some value> ; read an 8-bit device register value whose I/O address is <register address> ; set one or more bits in the register AND AL,<some value> ; clear one or more bits in the register OUT DX,AL ; write an 8-bit value back to the device register The registers of interest are documented in Appendix C at the end of this lab. Procedure 1. Fill in the necessary code in the LAB2A.PAS file that has been supplied. This is most of the work. 2. Create an executable (.EXE) file from this code using the supplied tools (MAKE.BAT, TPC.EXE, TURBO.TPL) e.g. C>make lab2a.pas 3. Run the LAB2A.EXE file 4. Turn on the HP33120 function generator and set it for a squarewave at about 100Hz. Connect the SYNC output of this function generator, using a supplied BNC cable, to the little black parallel port unit with the LED lights on it (there should be a BNC connector on the end of this unit).

4 4. Observe the results, which should be the following - the 8 bit LED display should show an incrementing binary count - the LED display should count faster or slower as the frequency of the squarewave generator is increased or decreased 5. Measure the response time of the software. The response time will be defined as the time difference between the rising edge of the IRQ7 interrupt signal (the squarewave) and the final execution of the code that is in the Interrupt Service Routine. The logic analyzer will be required in order to make this measurement. Performing time measurements on an interrupt driven system is sometimes tricky and you generally have to include your own markers (unique events that simplify triggering o f the logic analyzer) into the code. This code is removed after you have done the tests that you want to do. A recommended event, immediately after you enter the ISR and save your registers (notice that saving the DX register is now required because of this code) is the following : MOV DX,0379h ; read the parallel port status, something unique IN AL,DX It is pretty much a certainty for this lab that you have the following code inside your ISR in some fashion, just before you exit the ISR (hint here) OUT 020h,020h ; send EOI to PIC and enable further interrupt processing Unfortunately, this particular instruction is being executed all the time in a normal, simple PC system when other interrupts, such as the system timer that keeps track of the time of day, are being handled. So a more unique condition for our test would be to trigger on the two instructions: an I/O read from address 0379h followed by an I/O write to address 020h. If you trigger on this event, a display on the logic analyzer of the IRQ7 rising edge, followed by the I/O read and write, will give you a single picture from which you can make a timing measurement. Measure the time from the IRQ7 rising edge to the execution of the marker instruction above. This is the interrupt response time to get to the first part of your ISR. Knowing that the processor that we are using is a 40MHz 80386sx, and knowing how many instructions are executed before executing the marker (basically a few PUSH instructions), calculate a more accurate value for the response time i.e. what you measured minus the time it takes to save some things on the stack. Now measure the time it takes to actually service the interrupt i.e. the time from the very first instruction of the ISR to the very last. This is just the time that elapses between the marker command and the write EOI to PIC command. Now adjust this time to account for the code that occurs just before the marker (the PUSH commands) and the code that occurs just after the EOI write (the POP commands and the IRET). 6. Show the TA that you have made the measurements (two screen shots of the logic analyzer should be taken) and that the little LEDs on the parallel port actually operate as expected. Note: Load your LAB1 configuration file for the Logic Analyzer. This time, you will need to add the IRQ, IOR and IOW pins to your configuration. Refer back to Lab 1 s setup procedure, if you need more help. Refer to Appendix B for the pin layout. **Note: IOR and IOW are located on the clock inputs. **

5 Part B : Serial Port Interrupts This portion of the lab involves generating an interrupt by sending one or more serial characters over a connection between the Windows PC at the lab station and the 80x86 microprocessor that we are testing. For the setup that we are using, the hardware interrupt of interest is IRQ4 (serial port COM1 in a PC). In addition, this lab involves writing software to handle this interrupt and to echo the received characters back to the Windows PC over the serial connection. The software for this part of the lab is almost exactly the same as the previous code, except for some setup of the serial communications chip and the use of a different IRQ signal. Procedure 1 Make sure that you have TeraTerm Pro running on the Windows machine at your workstation and that is is setup as shown in Appendix D. Run the mode command on the 80x86 system as described in the appendix. First, a quick check of the connection between the two machines. Run debug; on the 80x86 machine as you did in Lab 1. C>debug - Now press the A key on the Windows machine keyboard while the TeraTerm Pro app has the focus. Then look at the contents of the register at i/o address 0x3F8

6 - i 3F8 61 Hex 61 is the ASCII (a standard for encoding serial data) code for the lowercase letter a. Repeat this process (press key, read port 0x3F8) for the letters b, c and d and note the codes. Now look at the contents of the registers at 0x3F9 (IMR) and 0x3FA (IIR) - i 3F i 3FA 01 From the register information, this shows that no interrupts are enabled and no interrupts are pending. Now enable the interrupt that occurs when a character is available from the serial port: - o 3F9 01 Now press the a key on the Windows keyboard and then read the register at 0x3FA - i 3FA 04 This indicates that an interrupt has been generated and that the interrupt is related to the Received Data Available Interrupt. Read the value of port 0x3FA several times to show that the interrupt is still pending (the value doesn t change). Now read the value at port 0x3F8 and then the value at port 0x3FA - i 3F i 3FA 01 This indicates that the act of reading the serial buffer register automatically clears the interrupt condition i.e. you have handled the interrupt Procedure 2 Now make and run the LAB2B.PAS code that you have written for the lab. Proper operation is indicated by a simple echoing of the character pressed at the Windows keyboard i.e. if you press the a key, you will see an a appear in the window.

7 Hopefully we will have a little demonstration station setup so that you can actually see the serial communication waveforms on an oscilloscope and see how they change with the data and with changes to the communication parameters.

8 Write up and Deliverables: 1. Parallel Port Interrupt a. Print and submit well commented code for both of the interrupts. b. Have a TA check and verify that your parallel port interrupt counter works from the 1 to 100Hz range. c. Using your logic analyzer, monitor the IRQ, IOR, IOW and the ADDR lines. Track the changes in the address lines. How long does it take from receiving the interrupt to the code jump? Print out a screenshot and hand it in. d. Speed up the incoming clock, and see if you can make the ISR fail. How might it fail? 2. Serial Interrupt a. Demonstrate the serial interrupt echo.

9 Appendix A PIC# (Base Address) INT (Hex) IRQ Common Uses Exception Handlers - 02 Non-Maskable IRQ Non-Maskable IRQ (Parity Errors) Exception Handlers - PIC#1 (0x20) 08 Hardware IRQ0 System Timer 09 Hardware IRQ1 Keyboard 0A Hardware IRQ2 Redirected 0B Hardware IRQ3 Serial Comms. COM2/COM4 0C Hardware IRQ4 Serial Comms. COM1/COM3 0D Hardware IRQ5 Reserved/Sound Card 0E Hardware IRQ6 Floppy Disk Controller 0F Hardware IRQ7 Parallel Comms. 10-6F Software Interrupts - PIC#2 (0xA0) 70 Hardware IRQ8 Real Time Clock 71 Hardware IRQ9 Redirected IRQ2 72 Hardware IRQ10 Reserved 73 Hardware IRQ11 Reserved 74 Hardware IRQ12 PS/2 Mouse 75 Hardware IRQ13 Math's Co-Processor 76 Hardware IRQ14 Hard Disk Drive 77 Hardware IRQ15 Reserved 78 - FF Software Interrupts - Table 1 : x86 Interrupt Vectors

10 Channel Number [Pin #] Appendix B POD 1 POD 2 POD 3 Pin Name DATA Pin Name ADDR Pin Name MISC GND GND GND GND 0 SD0 SA0 SA16 1 SD1 SA1 SA17 2 SD2 SA2 SA18 3 SD3 SA3 SA19 4 SD4 SA4 IRQ4 5 SD5 SA5 IRQ5 6 SD6 SA6 IRQ3 7 SD7 SA7 IRQ7 8 SD8 SA8 MEMR 9 SD9 SA9 MEMW 10 SD10 SA10 BALE 11 SD11 SA11 REFRESH 12 SD12 SA12 AEN 13 SD13 SA13 OSC 14 SD14 SA14 SYSCLK 15 SD15 SA15 - CLK IOR IOW Table 2: Logic Analyzer Pin Assignments

11 Links : Appendix C (also available as a separate document) Dir = direction, R=read, W=write, R/W=read and write Register offset : add this to the base I/O address to access the register itself Device Base address Register offset Dir Bit functions PIC 0x20 0 W Command 1 R/W IMR Interrupt Mask Register for IRQn, n=0..7 Bit n = 0, interrupt IRQn enabled Bit n = 1, interrupt IRQn disabled LPT1 0x378 0 W data port a read returns the last byte written 1 R status port 2 R/W control port

12 7..6 : unused 5 : enable bi-directional port 4 : enable IRQ through the pin 10 3 : select printer 2 : reset printer 1 : auto linefeed 0 : strobe Device Base address Register offset Dir Bit functions COM1 0x3F8 0 R/W Data register Read receiver data Write transmitter data 0 R/W Baud rate divisor low if DLAB bit=1 in LCR below low byte of 16-bit baud rate divisor 1 R/W IER Interrupt Enable Register

13 enable=1, disable= : reserved 3 : enable modem status int. 2 : enable receiver line status int. 1 : enable transmitter empty int. 0 : enable receiver full int. 1 R/W Baud rate divisor high if DLAB bit=1 in LCR below high byte of 16-bit baud rate divisor 2 R IIR Interrupt Identification Register Device Base address Register offset Dir Bit functions COM1 0x3F8 3 R/W LCR Line Control Register

14 7 : DLAB=0 normally : DLAB=1 to access baud rate divisor bytes 6 : set break enable if : parity select code X X 0 no parity odd parity even parity parity bit always high parity bit always low 2 : one stop bit = 0 two stop bits = : word length 1 1 = eight bit data 1 0 = seven bit data 0 1 = six bit data 0 0 = five bit data 4 R/W MCR Modem Control Register 5 R/W LSR Line Status Register

15 Table of Baud Rate Divisor Values for a serial port Values based on the following calculation : divisor = /16/baud_rate e.g. for 2400 baud rate, divisor = /16/2400 = 49 (decimal) = 0x30 bps (bit/sec) divisor (decimal) latch high byte (hex) latch low byte (hex) h 00h h 80h h C0h h 30h h 18h h 0Ch h 06h h 03h h 02h h 01h

16 Running TeraTerm Pro on the Windows machine in the lab. Appendix D Somewhere on the desktop of the Windows machine at the lab station will be an icon for the serial terminal program TeraTerm Pro. HyperTerminal is the classic terminal program for windows but it doesn t normally come with Windows 7 (the version in the lab). Start up this program and you should get an option for either a TCP/IP connection or serial connection. Choose the serial connection over COM1 (the communication port in the Windows machine). A window should appear that looks like the the following: Serial communication connections have setup information that you need to configure. You can get at this information through the main menu: a

17 Selecting the Serial port option will finally bring up the place where communications parameters can be changed: For this lab, these default settings are fine. For communication to the 80x86 system to work, we need to ensure that the 80x86 system is physically connected to the Windows 7 with a serial cable. The cable is what is referred to as DB-9. The DB specifies the shape and style of the connectors on the end of the cable (a letter D rectangular shape) and the 9 specifies the number of pins on the connector. You should also see the words NULL or NULL MODEM on the cable. This ensures that the pins used to transmit and receive data are connected properly between the machines i.e. the transmitted data from one machine is connected to the received data of the other and vice versa.

18 Ensure that the serial cable is connected to the Serial1 connector on the 80x86 machine. This is also referred to as COM1: Now ensure that the serial communication parameters on the 80x86 system are the same as the Windows machine. From a command prompt on the 80x86 system, type the following: C>mode com1: 9600,n,8,1 This will execute the MODE command on the port COM1 (the one connected to the Windows machine) and set the parameters for 9600 baud, no parity, 8 data bits, 1 stop bit. This should match the Windows machine and now serial communication should be possible.

=0 Read/Write IER Interrupt Enable Register =1 Read/Write - Divisor Latch High Byte + 2

=0 Read/Write IER Interrupt Enable Register =1 Read/Write - Divisor Latch High Byte + 2 EEE 410 Microprocessors I Spring 04/05 Lecture Notes # 20 Outline of the Lecture Interfacing the Serial Port Serial Port registers Transmitting Serial Data Receiving Serial Data INTERFACING THE SERIAL

More information

These three counters can be programmed for either binary or BCD count.

These three counters can be programmed for either binary or BCD count. S5 KTU 1 PROGRAMMABLE TIMER 8254/8253 The Intel 8253 and 8254 are Programmable Interval Timers (PTIs) designed for microprocessors to perform timing and counting functions using three 16-bit registers.

More information

ELEC 4601: Laboratory 1 Introduction to Microprocessors

ELEC 4601: Laboratory 1 Introduction to Microprocessors Department of Electronics ELEC 4601: Laboratory 1 Introduction to Microprocessors Record of Changes REV By Description Issue Date 4.1 MR Reformatting Aug 25, 2013 4.2 TP Changed trigger terms to table,

More information

Laboratory 1 Introduction to Microprocessors

Laboratory 1 Introduction to Microprocessors Department of Electronics Laboratory 1 Introduction to Microprocessors Record of Changes REV By Description Issue Date 4.1 MR Reformatting Aug 25, 2013 4.2 TP Changed trigger terms to table, added more

More information

8086 Interrupts and Interrupt Responses:

8086 Interrupts and Interrupt Responses: UNIT-III PART -A INTERRUPTS AND PROGRAMMABLE INTERRUPT CONTROLLERS Contents at a glance: 8086 Interrupts and Interrupt Responses Introduction to DOS and BIOS interrupts 8259A Priority Interrupt Controller

More information

UNIT - II PERIPHERAL INTERFACING WITH 8085

UNIT - II PERIPHERAL INTERFACING WITH 8085 UNIT - II PERIPHERAL INTERFACING WITH 8085 Peripheral Interfacing is considered to be a main part of Microprocessor, as it is the only way to interact with the external world. The interfacing happens with

More information

Week 11 Programmable Interrupt Controller

Week 11 Programmable Interrupt Controller Week 11 Programmable Interrupt Controller 8259 Programmable Interrupt Controller The 8259 programmable interrupt controller (PIC) adds eight vectored priority encoded interrupts to the microprocessor.

More information

EC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers UNIT-I

EC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers UNIT-I EC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers 1. Define microprocessors? UNIT-I A semiconductor device(integrated circuit) manufactured by using the LSI technique. It includes

More information

PC Interrupt Structure and 8259 DMA Controllers

PC Interrupt Structure and 8259 DMA Controllers ELEC 379 : DESIGN OF DIGITAL AND MICROCOMPUTER SYSTEMS 1998/99 WINTER SESSION, TERM 2 PC Interrupt Structure and 8259 DMA Controllers This lecture covers the use of interrupts and the vectored interrupt

More information

Topics. Interfacing chips

Topics. Interfacing chips 8086 Interfacing ICs 2 Topics Interfacing chips Programmable Communication Interface PCI (8251) Programmable Interval Timer (8253) Programmable Peripheral Interfacing - PPI (8255) Programmable DMA controller

More information

Computer Labs: I/O and Interrupts

Computer Labs: I/O and Interrupts Computer Labs: I/O and Interrupts 2 o MIEIC Pedro F. Souto (pfs@fe.up.pt) October 3, 2010 I/O Operation I/O devices are the interface between the computer and its environment Most of the time, the processor

More information

ECE 485/585 Microprocessor System Design

ECE 485/585 Microprocessor System Design Microprocessor System Design Lecture 3: Polling and Interrupts Programmed I/O and DMA Interrupts Zeshan Chishti Electrical and Computer Engineering Dept Maseeh College of Engineering and Computer Science

More information

The K Project. Interrupt and Exception Handling. LSE Team. May 14, 2018 EPITA. The K Project. LSE Team. Introduction. Interrupt Descriptor Table

The K Project. Interrupt and Exception Handling. LSE Team. May 14, 2018 EPITA. The K Project. LSE Team. Introduction. Interrupt Descriptor Table and Exception Handling EPITA May 14, 2018 (EPITA) May 14, 2018 1 / 37 and Exception Handling Exception : Synchronous with program execution (e.g. division by zero, accessing an invalid address) : Asynchronous

More information

Module 3. Embedded Systems I/O. Version 2 EE IIT, Kharagpur 1

Module 3. Embedded Systems I/O. Version 2 EE IIT, Kharagpur 1 Module 3 Embedded Systems I/O Version 2 EE IIT, Kharagpur 1 Lesson 15 Interrupts Version 2 EE IIT, Kharagpur 2 Instructional Objectives After going through this lesson the student would learn Interrupts

More information

7/19/2013. Introduction. Chapter Objectives Upon completion of this chapter, you will be able to: Chapter Objectives 12 1 BASIC INTERRUPT PROCESSING

7/19/2013. Introduction. Chapter Objectives Upon completion of this chapter, you will be able to: Chapter Objectives 12 1 BASIC INTERRUPT PROCESSING Chapter 12: Interrupts Introduction In this chapter, the coverage of basic I/O and programmable peripheral interfaces is expanded by examining a technique called interrupt-processed I/O. An interrupt is

More information

Chapter 12: Interrupts

Chapter 12: Interrupts Chapter 12: Interrupts Introduction In this chapter, the coverage of basic I/O and programmable peripheral interfaces is expanded by examining a technique called interrupt-processed I/O. An interrupt is

More information

UART Register Set. UART Master Controller. Tx FSM. Rx FSM XMIT FIFO RCVR. i_rx_clk o_intr. o_out1 o_txrdy_n. o_out2 o_rxdy_n i_cs0 i_cs1 i_ads_n

UART Register Set. UART Master Controller. Tx FSM. Rx FSM XMIT FIFO RCVR. i_rx_clk o_intr. o_out1 o_txrdy_n. o_out2 o_rxdy_n i_cs0 i_cs1 i_ads_n October 2012 Reference Design RD1138 Introduction The Universal Asynchronous Receiver/Transmitter (UART) performs serial-to-parallel conversion on data characters received from a peripheral device or a

More information

CS609 Final Term Solved MCQs with References Without Repetitions 14/02/2013

CS609 Final Term Solved MCQs with References Without Repetitions 14/02/2013 1 CS609 Final Term Solved MCQs with References Without Repetitions 14/02/2013 In BPB, root directory is saved in. (BIOS parameter block) Cluster#0 Cluster#1 (Ref) Cluster#2 Cluster#3 In NTFS, total sizes

More information

MP Assignment III. 1. An 8255A installed in a system has system base address E0D0H.

MP Assignment III. 1. An 8255A installed in a system has system base address E0D0H. MP Assignment III 1. An 8255A installed in a system has system base address E0D0H. i) Calculate the system addresses for the three ports and control register for this 8255A. System base address = E0D0H

More information

Week 7. Input/Output Interface Circuits and LSI Peripheral Devices

Week 7. Input/Output Interface Circuits and LSI Peripheral Devices Week 7 Input/Output Interface Circuits and LSI Peripheral Devices Core and Special Purpose I/O Interfaces Special purpose I/O interfaces display parallel printer interface serial communication interface

More information

Interrupts. Chapter 20 S. Dandamudi. Outline. Exceptions

Interrupts. Chapter 20 S. Dandamudi. Outline. Exceptions Interrupts Chapter 20 S. Dandamudi Outline What are interrupts? Types of interrupts Software interrupts Hardware interrupts Exceptions Interrupt processing Protected mode Real mode Software interrupts

More information

Introduction. Description of the BUS. PC KITS-tutorial page (ISA BUS) Pagina 1 di 5

Introduction. Description of the BUS. PC KITS-tutorial page (ISA BUS) Pagina 1 di 5 PC KITS-tutorial page (ISA BUS) Pagina 1 di 5 Introduction. The serial port enables to the electronic designer to communicate a PC with devices that supports the RS-232 standard. On the other hand, the

More information

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 09, SPRING 2013

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 09, SPRING 2013 CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 09, SPRING 2013 TOPICS TODAY I/O Architectures Interrupts Exceptions FETCH EXECUTE CYCLE 1.7 The von Neumann Model This is a general

More information

Chapter 8 PC Peripheral Chips - Pt 3 Interrupts

Chapter 8 PC Peripheral Chips - Pt 3 Interrupts Chapter 8 PC Peripheral Chips - Pt 3 Interrupts PC Architecture for Technicians: Level-1 Systems Manufacturing Training and Employee Development Copyright 1996 Intel Corp. Ch 8 - Page 1 OBJECTIVES: AT

More information

QUESTION BANK. EE 6502 / Microprocessor and Microcontroller. Unit I Processor. PART-A (2-Marks)

QUESTION BANK. EE 6502 / Microprocessor and Microcontroller. Unit I Processor. PART-A (2-Marks) QUESTION BANK EE 6502 / Microprocessor and Microcontroller Unit I- 8085 Processor PART-A (2-Marks) YEAR/SEM : III/V 1. What is meant by Level triggered interrupt? Which are the interrupts in 8085 level

More information

YOU WILL NOT BE ALLOWED INTO YOUR LAB SECTION WITHOUT THE REQUIRED PRE-LAB.

YOU WILL NOT BE ALLOWED INTO YOUR LAB SECTION WITHOUT THE REQUIRED PRE-LAB. Page 1/5 Revision 3 OBJECTIVES Explore and understand microprocessor interrupts. In part A of this lab, you will use XMEGA external interrupt system. Learn how to utilize asynchronous serial communication.

More information

An Interrupt is either a Hardware generated CALL (externally derived from a hardware signal)

An Interrupt is either a Hardware generated CALL (externally derived from a hardware signal) An Interrupt is either a Hardware generated CALL (externally derived from a hardware signal) OR A Software-generated CALL (internally derived from the execution of an instruction or by some other internal

More information

Chapter 12: INTERRUPTS

Chapter 12: INTERRUPTS Chapter 12: INTERRUPTS 12 1 BASIC INTERRUPT PROCESSING This section discusses the function of an interrupt in a microprocessor-based system. Structure and features of interrupts available to Intel microprocessors.

More information

CS 134. Operating Systems. April 8, 2013 Lecture 20. Input/Output. Instructor: Neil Rhodes. Monday, April 7, 14

CS 134. Operating Systems. April 8, 2013 Lecture 20. Input/Output. Instructor: Neil Rhodes. Monday, April 7, 14 CS 134 Operating Systems April 8, 2013 Lecture 20 Input/Output Instructor: Neil Rhodes Hardware How hardware works Operating system layer What the kernel does API What the programmer does Overview 2 kinds

More information

Advanced Microprocessors

Advanced Microprocessors Advanced Microprocessors Notes #7 I/O Interfacing EE 467/567 Winter 2012 By Avinash Kodi IO.1 Background Materials Textbook: See Web Other: IA-32 Intel Architecture Software Developer s Manual Volume 1

More information

2. List the five interrupt pins available in INTR, TRAP, RST 7.5, RST 6.5, RST 5.5.

2. List the five interrupt pins available in INTR, TRAP, RST 7.5, RST 6.5, RST 5.5. DHANALAKSHMI COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING EE6502- MICROPROCESSORS AND MICROCONTROLLERS UNIT I: 8085 PROCESSOR PART A 1. What is the need for ALE signal in

More information

Digital System Design

Digital System Design Digital System Design by Dr. Lesley Shannon Email: lshannon@ensc.sfu.ca Course Website: http://www.ensc.sfu.ca/~lshannon/courses/ensc350 Simon Fraser University i Slide Set: 15 Date: March 30, 2009 Slide

More information

Design and Implementation Interrupt Mechanism

Design and Implementation Interrupt Mechanism Design and Implementation Interrupt Mechanism 1 Module Overview Study processor interruption; Design and implement of an interrupt mechanism which responds to interrupts from timer and UART; Program interrupt

More information

e-pg Pathshala Subject : Computer Science Paper: Embedded System Module: Interrupt Handling Module No: CS/ES/13 Quadrant 1 e-text

e-pg Pathshala Subject : Computer Science Paper: Embedded System Module: Interrupt Handling Module No: CS/ES/13 Quadrant 1 e-text e-pg Pathshala Subject : Computer Science Paper: Embedded System Module: Interrupt Handling Module No: CS/ES/13 Quadrant 1 e-text 1. Interrupt An interrupt is the occurrence of a condition--an event --

More information

CENG-336 Introduction to Embedded Systems Development. Timers

CENG-336 Introduction to Embedded Systems Development. Timers CENG-336 Introduction to Embedded Systems Development Timers Definitions A counter counts (possibly asynchronous) input pulses from an external signal A timer counts pulses of a fixed, known frequency

More information

Chapter 13 Direct Memory Access and DMA-Controlled I/O

Chapter 13 Direct Memory Access and DMA-Controlled I/O Chapter 13 Direct Memory Access and DMA-Controlled I/O The DMA I/O technique provides direct access to the memory while the microprocessor is temporarily disabled This allows data to be transferred between

More information

+ Overview. Projects: Developing an OS Kernel for x86. ! Handling Intel Processor Exceptions: the Interrupt Descriptor Table (IDT)

+ Overview. Projects: Developing an OS Kernel for x86. ! Handling Intel Processor Exceptions: the Interrupt Descriptor Table (IDT) + Projects: Developing an OS Kernel for x86 Low-Level x86 Programming: Exceptions, Interrupts, and Timers + Overview! Handling Intel Processor Exceptions: the Interrupt Descriptor Table (IDT)! Handling

More information

Description of the Simulator

Description of the Simulator Description of the Simulator The simulator includes a small sub-set of the full instruction set normally found with this style of processor. It includes advanced instructions such as CALL, RET, INT and

More information

CHAPTER 11 INTERRUPTS PROGRAMMING

CHAPTER 11 INTERRUPTS PROGRAMMING CHAPTER 11 INTERRUPTS PROGRAMMING Interrupts vs. Polling An interrupt is an external or internal event that interrupts the microcontroller To inform it that a device needs its service A single microcontroller

More information

The Purpose of Interrupt

The Purpose of Interrupt Interrupts 3 Introduction In this chapter, the coverage of basic I/O and programmable peripheral interfaces is expanded by examining a technique called interrupt-processed I/O. An interrupt is a hardware-initiated

More information

4) In response to the the 8259A sets the highest priority ISR, bit and reset the corresponding IRR bit. The 8259A also places

4) In response to the the 8259A sets the highest priority ISR, bit and reset the corresponding IRR bit. The 8259A also places Lecture-52 Interrupt sequence: The powerful features of the 8259A in a system are its programmability and the interrupt routine address capability. It allows direct or indirect jumping to the specific

More information

UNIT V MICRO CONTROLLER PROGRAMMING & APPLICATIONS TWO MARKS. 3.Give any two differences between microprocessor and micro controller.

UNIT V MICRO CONTROLLER PROGRAMMING & APPLICATIONS TWO MARKS. 3.Give any two differences between microprocessor and micro controller. UNIT V -8051 MICRO CONTROLLER PROGRAMMING & APPLICATIONS TWO MARKS 1. What is micro controller? Micro controller is a microprocessor with limited number of RAM, ROM, I/O ports and timer on a single chip

More information

SIPS - Group. Technical Description May ISA96 Bus Specification V 1.0

SIPS - Group. Technical Description May ISA96 Bus Specification V 1.0 SIPS - Group Technical Description May 1995 ISA96 Bus Specification V 1.0 o:\text\normen\isa96bu1.doc SIPS - Group Specification ISA96-Bus page 1 Contents 1. Notation...3 2. ISA96 Overview...4 2. 1 General...4

More information

Chapter NINE 8088,80286 MICROPROCESSORS AND ISA BUS

Chapter NINE 8088,80286 MICROPROCESSORS AND ISA BUS Chapter NINE 8088,80286 MICROPROCESSORS AND ISA BUS OBJECTIVES this chapter enables the student to: State the function of the pins of the 8088. List the functions of the 8088 data, address, and control

More information

Chapter Operation Pinout Operation 35

Chapter Operation Pinout Operation 35 68000 Operation 35 Chapter 6 68000 Operation 6-1. 68000 Pinout We will do no construction in this chapter; instead, we will take a detailed look at the individual pins of the 68000 and what they do. Fig.

More information

Programming the 8259 PIC: A Tech-Tip Example and Boilerplate

Programming the 8259 PIC: A Tech-Tip Example and Boilerplate Programming the 8259 PIC: A Tech-Tip Example and Boilerplate Thomas W. Associate Professor, New Mexico State University, Department of Engineering Technology PO Box 3001, MSC 3566, Las Cruces, NM 88003-8001,

More information

Control Unit: The control unit provides the necessary timing and control Microprocessor resembles a CPU exactly.

Control Unit: The control unit provides the necessary timing and control Microprocessor resembles a CPU exactly. Unit I 8085 and 8086 PROCESSOR Introduction to microprocessor A microprocessor is a clock-driven semiconductor device consisting of electronic logic circuits manufactured by using either a large-scale

More information

Parallel-to-Serial and Serial-to-Parallel Converters

Parallel-to-Serial and Serial-to-Parallel Converters Session 1532 Parallel-to-Serial and Serial-to-Parallel Converters Max Rabiee, Ph.D., P.E. University of Cincinnati Abstract: Microprocessors (MPUs) on a computer motherboard communicate in a parallel format

More information

Code No: RR Set No. 1

Code No: RR Set No. 1 Code No: RR310501 Set No. 1 1. (a) If an absolute address of the type 6A3D9H is given, express it in the form of CS : IP and explain what are the advantages of the memory segmentation. Discuss about the

More information

ECE251: Thursday September 27

ECE251: Thursday September 27 ECE251: Thursday September 27 Exceptions: Interrupts and Resets Chapter in text and Lab #6. READ ALL this material! This will NOT be on the mid-term exam. Lab Practical Exam #1 Homework # due today at

More information

School of Computer Science Faculty of Engineering and Computer Science Student ID Number. Lab Cover Page. Lab Date and Time:

School of Computer Science Faculty of Engineering and Computer Science Student ID Number. Lab Cover Page. Lab Date and Time: Student Information First Name School of Computer Science Faculty of Engineering and Computer Science Last Name Student ID Number Lab Cover Page Please complete all fields: Course Name: Structure and Application

More information

SIO-DLL. Serial I/O DLL. User Manual

SIO-DLL. Serial I/O DLL. User Manual SIO-DLL Serial I/O DLL User Manual SIO-DLL User Manual Document Part N 0127-0178 Document Reference SIO-DLL\..\0127-0178.Doc Document Issue Level 1.3 Manual covers software version 1 All rights reserved.

More information

Digital Input and Output

Digital Input and Output Digital Input and Output Topics: Parallel Digital I/O Simple Input (example) Parallel I/O I/O Scheduling Techniques Programmed Interrupt Driven Direct Memory Access Serial I/O Asynchronous Synchronous

More information

Module Introduction. PURPOSE: The intent of this module is to explain MCU processing of reset and interrupt exception events.

Module Introduction. PURPOSE: The intent of this module is to explain MCU processing of reset and interrupt exception events. Module Introduction PURPOSE: The intent of this module is to explain MCU processing of reset and interrupt exception events. OBJECTIVES: - Describe the difference between resets and interrupts. - Identify

More information

INTERRUPTS in microprocessor systems

INTERRUPTS in microprocessor systems INTERRUPTS in microprocessor systems Microcontroller Power Supply clock fx (Central Proccesor Unit) CPU Reset Hardware Interrupts system IRQ Internal address bus Internal data bus Internal control bus

More information

Unit DMA CONTROLLER 8257

Unit DMA CONTROLLER 8257 DMA CONTROLLER 8257 In microprocessor based system, data transfer can be controlled by either software or hardware. To transfer data microprocessor has to do the following tasks: Fetch the instruction

More information

1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE:

1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE: 1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE: A microprocessor is a programmable electronics chip that has computing and decision making capabilities similar to central processing unit

More information

Serial Interfacing. Pulse width of 1 bit

Serial Interfacing. Pulse width of 1 bit ١ ٢ Asynchronous Frame 10 bits 7E1 (7 data bits, even parity, 1 stop bit) Serial Data Transfer used by keyboards, plotters, modems and other peripherals with low data transfer rates (low bandwidth) * *

More information

DEVICE DRIVERS AND TERRUPTS SERVICE MECHANISM Lesson-15: Writing Device Driving ISRs in a System

DEVICE DRIVERS AND TERRUPTS SERVICE MECHANISM Lesson-15: Writing Device Driving ISRs in a System DEVICE DRIVERS AND TERRUPTS SERVICE MECHANISM Lesson-15: Writing Device Driving ISRs in a System 1 Writing the software for the driver Writing the software for the driver Information about how the device

More information

UNIT-IV. The semiconductor memories are organized as two-dimensional arrays of memory locations.

UNIT-IV. The semiconductor memories are organized as two-dimensional arrays of memory locations. UNIT-IV MEMORY INTERFACING WITH 8086: The semi conductor memories are of two types: Static RAM Dynamic RAM The semiconductor memories are organized as two-dimensional arrays of memory locations. For Ex:

More information

Interrupts. by Rahul Patel, Assistant Professor, EC Dept., Sankalchand Patel College of Engg.,Visnagar

Interrupts. by Rahul Patel, Assistant Professor, EC Dept., Sankalchand Patel College of Engg.,Visnagar Chapter 12 Interrupts by Rahul Patel, Assistant Professor, EC Dept., Sankalchand Patel College of Engg.,Visnagar Microprocessor & Interfacing (140701) Rahul Patel 1 Points to be Discussed 8085 Interrupts

More information

9. PERIPHERAL CHIPS 9a

9. PERIPHERAL CHIPS 9a 9. PERIPHERAL CHIPS 9a 8255: Programmable Peripheral Interface. Draw the pin diagram of PPI 8255. Ans. The pin diagram of 8255 is shown in Fig. 9a. PA 3 4 PA 4 PA2 2 39 PA 5 PA 3 38 PA 6 PA 4 37 PA7 RD

More information

8051 Timers and Serial Port

8051 Timers and Serial Port 8051 Timers and Serial Port EE4380 Fall 2001 Class 10 Pari vallal Kannan Center for Integrated Circuits and Systems University of Texas at Dallas Timer: Mode 1 Operation (recap) 16 bit counter. Load the

More information

Microprocessor Architecture

Microprocessor Architecture Microprocessor - 8085 Architecture 8085 is pronounced as "eighty-eighty-five" microprocessor. It is an 8-bit microprocessor designed by Intel in 1977 using NMOS technology. It has the following configuration

More information

AE66/AC66/AT66/ AE108/AC108/AT108 MICROPROCESSORS & MICROCONTROLLERS

AE66/AC66/AT66/ AE108/AC108/AT108 MICROPROCESSORS & MICROCONTROLLERS Q.2 a. Draw pin diagram and signal group diagram of 8085 microprocessor. (8) b. List out the various categories of the 8085 instructions. Give examples of the instructions for each group. (8) Data transfer

More information

MICROPROCESSOR TECHNOLOGY

MICROPROCESSOR TECHNOLOGY MICROPROCESSOR TECHNOLOGY Assis. Prof. Hossam El-Din Moustafa Lecture 13 Ch.6 The 80186, 80188, and 80286 Microprocessors 21-Apr-15 1 Chapter Objectives Describe the hardware and software enhancements

More information

Grundlagen Microcontroller Interrupts. Günther Gridling Bettina Weiss

Grundlagen Microcontroller Interrupts. Günther Gridling Bettina Weiss Grundlagen Microcontroller Interrupts Günther Gridling Bettina Weiss 1 Interrupts Lecture Overview Definition Sources ISR Priorities & Nesting 2 Definition Interrupt: reaction to (asynchronous) external

More information

sequence is not needed. (ROM space). Another application is to use the poll mode to expand the number of priority levels to more than 64.

sequence is not needed. (ROM space). Another application is to use the poll mode to expand the number of priority levels to more than 64. Lecture-55 Poll Command: In this mode the INT output is not used for the microprocessor internal interrupt enable F/F is reset, disabling its interrupt input, service to device is achieved by software

More information

Interface DAC to a PC. Control Word of MC1480 DAC (or DAC 808) 8255 Design Example. Engineering 4862 Microprocessors

Interface DAC to a PC. Control Word of MC1480 DAC (or DAC 808) 8255 Design Example. Engineering 4862 Microprocessors Interface DAC to a PC Engineering 4862 Microprocessors Lecture 22 Cheng Li EN-4012 licheng@engr.mun.ca DAC (Digital-to-Analog Converter) Device used to convert digital pulses to analog signals Two methods

More information

SW2. PCM-3641 User's Manual

SW2. PCM-3641 User's Manual PCM-3641 4-port RS-232 High-Speed Module Introduction The PCM-3641 is a PC/104-compatible 4-port High-Speed RS-232 serial interface module. It works with PC/104 CPU modules or CPU cards which accept PC/104

More information

Computer Organization ECE514. Chapter 5 Input/Output (9hrs)

Computer Organization ECE514. Chapter 5 Input/Output (9hrs) Computer Organization ECE514 Chapter 5 Input/Output (9hrs) Learning Outcomes Course Outcome (CO) - CO2 Describe the architecture and organization of computer systems Program Outcome (PO) PO1 Apply knowledge

More information

Course Introduction. Purpose: Objectives: Content: 27 pages 4 questions. Learning Time: 20 minutes

Course Introduction. Purpose: Objectives: Content: 27 pages 4 questions. Learning Time: 20 minutes Course Introduction Purpose: This course provides an overview of the Direct Memory Access Controller and the Interrupt Controller on the SH-2 and SH-2A families of 32-bit RISC microcontrollers, which are

More information

SIPS - Group. Technical Description May AT96 Bus Specification V 1.1

SIPS - Group. Technical Description May AT96 Bus Specification V 1.1 SIPS - Group Technical Description May 1995 AT96 Bus Specification V 1.1 o:\text\normen\at96bus1.doc Contents 1. Notation...3 2. AT96 Overview...4 2. 1 General...4 2. 2 Recommendations...4 3. Signal Description...5

More information

MICROPROCESSOR MICROPROCESSOR. From the above description, we can draw the following block diagram to represent a microprocessor based system: Output

MICROPROCESSOR MICROPROCESSOR. From the above description, we can draw the following block diagram to represent a microprocessor based system: Output 8085 SATISH CHANDRA What is a Microprocessor? The word comes from the combination micro and processor. Processor means a device that processes whatever. In this context, processor means a device that processes

More information

ST16C552 ST16C552A DUAL UART WITH 16-BYTE FIFO AND PARALLEL PRINTER PORT

ST16C552 ST16C552A DUAL UART WITH 16-BYTE FIFO AND PARALLEL PRINTER PORT ST16C552 ST16C552A DUAL UART WITH 16-BYTE FIFO AND PARALLEL PRINTER PORT DESCRIPTION December 2003 The ST16C552/ST16C552A (552/552A) is a dual universal asynchronous receiver and transmitter (UART) with

More information

1 MALP ( ) Unit-1. (1) Draw and explain the internal architecture of 8085.

1 MALP ( ) Unit-1. (1) Draw and explain the internal architecture of 8085. (1) Draw and explain the internal architecture of 8085. The architecture of 8085 Microprocessor is shown in figure given below. The internal architecture of 8085 includes following section ALU-Arithmetic

More information

Question Bank Microprocessor and Microcontroller

Question Bank Microprocessor and Microcontroller QUESTION BANK - 2 PART A 1. What is cycle stealing? (K1-CO3) During any given bus cycle, one of the system components connected to the system bus is given control of the bus. This component is said to

More information

Logic Analyzers by Link Instruments, Inc Logic Analyzers

Logic Analyzers by Link Instruments, Inc Logic Analyzers Logic Analyzers Our latest series of logic analyzers offer all of the features and performance you have come to expect from much more expensive units: Very high speed clock rates, super deep data buffers,

More information

INPUT/OUTPUT ORGANIZATION

INPUT/OUTPUT ORGANIZATION INPUT/OUTPUT ORGANIZATION Accessing I/O Devices I/O interface Input/output mechanism Memory-mapped I/O Programmed I/O Interrupts Direct Memory Access Buses Synchronous Bus Asynchronous Bus I/O in CO and

More information

8254 is a programmable interval timer. Which is widely used in clock driven digital circuits. with out timer there will not be proper synchronization

8254 is a programmable interval timer. Which is widely used in clock driven digital circuits. with out timer there will not be proper synchronization 8254 is a programmable interval timer. Which is widely used in clock driven digital circuits. with out timer there will not be proper synchronization between two devices. So it is very useful chip. The

More information

The 8237 DMA Controller: -

The 8237 DMA Controller: - The 8237 DMA Controller: - The 8237 is the LSI controller IC that is widely used to implement the direct memory access (DMA) function in 8088 and 8086 based microcomputer systems. It is available in 40-pin

More information

MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI UNIT IV I/O INTERFACING PART A (2 Marks)

MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI UNIT IV I/O INTERFACING PART A (2 Marks) MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI-621213. UNIT IV I/O INTERFACING PART A (2 Marks) 1. Name the three modes used by the DMA processor to transfer data? [NOV/DEC 2006] Signal transfer mode (cycling

More information

ATC-AD8100K. 8 Channel 100 khz Simultaneous Burst A/D in 16 bits IndustryPack Module REFERENCE MANUAL Version 1.

ATC-AD8100K. 8 Channel 100 khz Simultaneous Burst A/D in 16 bits IndustryPack Module REFERENCE MANUAL Version 1. ATC-AD8100K 8 Channel 100 khz Simultaneous Burst A/D in 16 bits IndustryPack Module REFERENCE MANUAL 791-16-000-4000 Version 1.6 May 2003 ALPHI TECHNOLOGY CORPORATION 6202 S. Maple Avenue #120 Tempe, AZ

More information

Configurable UART with FIFO ver 2.20

Configurable UART with FIFO ver 2.20 D16550 Configurable UART with FIFO ver 2.20 OVERVIEW The D16550 is a soft Core of a Universal Asynchronous Receiver/Transmitter (UART) functionally identical to the TL16C550A. The D16550 allows serial

More information

An SPI interface for the 65(C)02 family of microprocessors

An SPI interface for the 65(C)02 family of microprocessors Rev 4/B Dec 30, 2011 65SPI/B An SPI interface for the 65(C)02 family of microprocessors This device was created to provide a basic SPI interface for the 65xx family of microprocessors. Currently, the only

More information

Microcomputer Architecture..Second Year (Sem.2).Lecture(2) مدرس المادة : م. سندس العزاوي... قسم / الحاسبات

Microcomputer Architecture..Second Year (Sem.2).Lecture(2) مدرس المادة : م. سندس العزاوي... قسم / الحاسبات 1) Input/output In computing, input/output or I/O, is the communication between an information processing system (such as a computer) and the outside world, possibly a human or another information processing

More information

HANDLING MULTIPLE DEVICES

HANDLING MULTIPLE DEVICES HANDLING MULTIPLE DEVICES Let us now consider the situation where a number of devices capable of initiating interrupts are connected to the processor. Because these devices are operationally independent,

More information

IP-48DAC channel 16-bit Digital/Analog Converter With memory Industry Pack Module PROGRAMMING MANUAL Version 1.

IP-48DAC channel 16-bit Digital/Analog Converter With memory Industry Pack Module PROGRAMMING MANUAL Version 1. IP-48DAC-16 48-channel 16-bit Digital/Analog Converter With memory Industry Pack Module PROGRAMMING MANUAL 828-10-000-4000 Version 1.0 January 2007 ALPHI TECHNOLOGY CORPORATION 1898 E. Southern Ave Tempe,

More information

For technical support and service, please visit our support website at:

For technical support and service, please visit our support website at: Copyright Notice This document is copyrighted 2002. All rights are reserved. The original manufacturer reserves the right to make improvements to the products described in this manual at any time without

More information

Emerald-MM-8Plus. PC/104-Plus 8-Port Multi-Protocol Serial Port Module. User Manual v1.04

Emerald-MM-8Plus. PC/104-Plus 8-Port Multi-Protocol Serial Port Module. User Manual v1.04 Emerald-MM-8Plus PC/104-Plus 8-Port Multi-Protocol Serial Port Module User Manual v1.04 Copyright 2006 1255 Terra Bella Ave. Mountain View, CA 94043 Tel (650) 810-2500 Fax (650) 810-2525 www.diamondsystems.com

More information

8051 Microcontrollers

8051 Microcontrollers 8051 Microcontrollers Richa Upadhyay Prabhu NMIMS s MPSTME richa.upadhyay@nmims.edu March 8, 2016 Controller vs Processor Controller vs Processor Introduction to 8051 Micro-controller In 1981,Intel corporation

More information

Mark Redekopp, All rights reserved. EE 357 Unit 10b. Interrupts Timers

Mark Redekopp, All rights reserved. EE 357 Unit 10b. Interrupts Timers EE 357 Unit 10b Interrupts Timers IPL bits Coldfire / M68K Interrupts Coldfire interrupt architecture is based on original M68K 3-bit input (IPL[2:0]) indicating interrupt requests/priorities 000 = No

More information

BASIC INTERRUPT PROCESSING

BASIC INTERRUPT PROCESSING Interrupts BASIC INTERRUPT PROCESSING This section discusses the function of an interrupt in a microprocessor-based system. Structure and features of interrupts available to Intel microprocessors. The

More information

EITF35 - Introduction to the Structured VLSI Design (Fall 2016) Interfacing Keyboard with FPGA Board. (FPGA Interfacing) Teacher: Dr.

EITF35 - Introduction to the Structured VLSI Design (Fall 2016) Interfacing Keyboard with FPGA Board. (FPGA Interfacing) Teacher: Dr. EITF35 - Introduction to the Structured VLSI Design (Fall 2016) Interfacing Keyboard with FPGA Board (FPGA Interfacing) Teacher: Dr. Liang Liu v.1.0.0 1 Abstract This document describes the basic behavior

More information

PIO-16/16B(PC)H. Digital I/O Board with Opto-Isolation. User s Guide

PIO-16/16B(PC)H. Digital I/O Board with Opto-Isolation. User s Guide Digital I/O Board with Opto-Isolation User s Guide Copyright Copyright 1997 CONTEC Co., LTD. ALL RIGHTS RESERVED No part of this document may be copied or reproduced in any form by any means without prior

More information

UNIT II SYSTEM BUS STRUCTURE 1. Differentiate between minimum and maximum mode 2. Give any four pin definitions for the minimum mode. 3. What are the pins that are used to indicate the type of transfer

More information

Intel Architecture Segment:Offset Memory Addressing

Intel Architecture Segment:Offset Memory Addressing Name: Date: Lab Section: Lab partner s name: Lab PC Number: Objectives: Understanding video memory and character mapping of CGA characters in ROM BIOS, using the DOS debug command. Writing simple assembly-language

More information

8254 PROGRAMMABLE INTERVAL TIMER Y Y Y Compatible with All Intel and Most Other Microprocessors Handles Inputs from DC to 10 MHz 8 MHz 8254 10 MHz 8254-2 Status Read-Back Command Y Y Y Y Y Six Programmable

More information

1. Internal Architecture of 8085 Microprocessor

1. Internal Architecture of 8085 Microprocessor 1. Internal Architecture of 8085 Microprocessor Control Unit Generates signals within up to carry out the instruction, which has been decoded. In reality causes certain connections between blocks of the

More information

3. The MC6802 MICROPROCESSOR

3. The MC6802 MICROPROCESSOR 3. The MC6802 MICROPROCESSOR This chapter provides hardware detail on the Motorola MC6802 microprocessor to enable the reader to use of this microprocessor. It is important to learn the operation and interfacing

More information