Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
Jan Waclawek
12/09/05 02:21
Read: 760 times
Bratislava
Slovakia


 
#104955 - interrupt
Responding to: Suresh R's previous message
The concept of interrupts on x86 (and PC) is quite different from '51.
Basically, the x86 has only one hardware interrupt source* - an external interrupt - but when it comes active, the interrupting hardware submits the processor an interrupt vector.
To "expand" the number of interrupt lines, in PC a controller is used (in fact, 2 controllers; nowadays integrated in what is called the chipsed). The IRQ lines from ISA bus are fed into this controller, which resolves interrupts enabled/disabled, priorities and a couple of other things, then pulls the single interrupt leg of the processor and tells it the appropriate interrupt vector. For the programmer it means, that he has to program the interrupt controller (it is IO mapped) - enable the interrupt and when it occurs, at the end of ISR reenable it (acknowledge the interrupt); and he has to insert his ISR routines' address into the interrupt vectors table.

A good tutorial on the topic:
http://www.beyondlogic.org/interrupts/interupt.htm

Have fun!

Jan Waclawek

___________
* there are also "software interrupts" - in fact, quick calls to predetermined table - and interrupts caused by program execution exceptions (e.g. division by 0)

List of 33 messages in thread
TopicAuthorDate
Add on card programming      Suresh R      12/07/05 03:11      
   please clarify      Jan Waclawek      12/07/05 03:35      
      RE: please clarify      Suresh R      12/07/05 04:35      
         (E)ISA addressing      Jan Waclawek      12/07/05 04:48      
            IOW and IOR      Suresh R      12/08/05 04:52      
               not explicitly      Jan Waclawek      12/08/05 06:02      
                  IRQ in EISA slot      Suresh R      12/09/05 01:05      
                     interrupt      Jan Waclawek      12/09/05 02:21      
                        QBASIC programming      Valentin Angelovski      12/09/05 04:53      
                           reply      Suresh R      12/10/05 04:10      
                              DIP Switch Address Setting in EISA card      Suresh R      12/12/05 03:10      
                                 DIP switches...      Valentin Angelovski      12/12/05 03:55      
                                    card design enclosed      Suresh R      12/13/05 02:10      
                                       comparator      Jan Waclawek      12/13/05 02:30      
                           QBASIC live and well.      Charles Bannister      12/12/05 11:12      
                              NT - not quite      Andy Neil      12/12/05 16:16      
                                 timing in Win?      Jan Waclawek      12/12/05 16:21      
                              QBasic Lives!!!      Valentin Angelovski      12/12/05 17:24      
   refer to 'Barry B Brey'      Abhishek Singh      12/07/05 07:39      
   EISA Bus interfacing      Valentin Angelovski      12/08/05 15:54      
      beware if (E)ISA bus books      Erik Malund      12/09/05 08:11      
   Try this?      Andy Neil      12/14/05 15:16      
      Power resistor selection      Suresh R      12/16/05 04:52      
         dont do it      Erik Malund      12/16/05 06:39      
            LM317 is an option      Abhishek Singh      12/16/05 07:46      
               Wasteful!      Andy Neil      12/16/05 09:34      
                  if op can...........      Abhishek Singh      12/17/05 07:16      
                     Power!      Andy Neil      12/17/05 08:27      
         basic Ohm's law      Andy Neil      12/16/05 09:40      
            Trouble shoot      Suresh R      12/19/05 05:13      
               heating      Terry Lingle      12/19/05 07:08      
                  Reply : Heating      Suresh R      12/20/05 04:29      
                     if you refer to D4 then      Erik Malund      12/20/05 06:12      

Back to Subject List