|
ÀÎÅÍ·´Æ®´Â ÄÄÇ»ÅÍ°¡ °øÅëµÇ´Â ÀÛ¾÷À» Çϱâ À§ÇØ È£ÃâÇÏ´Â ·çƾ. ÇÁ·Î±×·¥ÀÇ ½ÇÇà Áß¿¡ ¿ÜºÎÀÇ ÀåÄ¡ µî¿¡¼ ¿ä±¸°¡ ÀÖÀ¸¸é ½ÇÇàÁßÀÇ ÇÁ·Î±×·¥À» ÀϽà Áß´ÜÇÏ°í ¿ä±¸¿¡ µû¶ó ´Ù¸¥ 󸮸¦ Âø¼öÇϱâ À§ÇØ ¸¸µé¾îÁø °Í.
1. ÀÎÅÍ·´Æ®ÀÇ Á¾·ù 1.1 Çϵå¿þ¾î ÀÎÅÍ·´Æ® ¿¹»óÇÒ ¼ö ¾ø´Â ½Ã±â¿¡ ÁÖº¯ ÀåÄ¡¿¡¼ ¹ß»ýµÈ
ÀÏ¿¡ ´ëÇؼ ÁÖº¯ ÀåÄ¡°¡ 󸮸¦ ¿äûÇÏ´Â °æ¿ì. ÁÖº¯ ÀåÄ¡¿¡ ±ä±Þ
»óȲÀ̳ª CPU·Î 󸮸¦ ¿ä±¸ÇÏ¿©¾ß ÇÏ´Â »óȲÀÌ ¹ß»ýµÇ¾úÀ» ¶§ ±×
»óŸ¦ CPU¿¡ Àü´ÞÇÏ´Â Åë·Î°¡ INTR(Interru-pt Request) ½ÅÈ£¼±ÀÌ´Ù. (1) Maskable
ÀÎÅÍ·´Æ® ó¸®ÇÒ °ÍÀÎÁö, ¸» °ÍÀÎÁö¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ´Â ÀÎÅÍ·´Æ®¸¦ ¸¶½ºÄ¿ºí(Maskable) ÀÎÅÍ·´Æ®¶ó°í ÇÑ´Ù. (2) Non Maskable
ÀÎÅÍ·´Æ® ó¸® ¿©ºÎ¸¦ ¹¯Áö ¾Ê°í CPU°¡ ¹«Á¶°Ç ó¸®ÇÏ´Â ÀÎÅÍ·´Æ®. ¿¹) ¸Þ¸ð¸® Æи®Æ¼ ¿¡·¯, I/O channel check (3) ÀÎÅÍ·´Æ®
ÄÁÆ®·Ñ·¯(Interrupt Controller) ÁÖº¯ ±â±âÀÇ ÀÎÅÍ·´Æ®¸¦ ¹Þ¾ÆµéÀÌ´Â ¸î°³ÀÇ
ÀÎÅÍ·´Æ® ÀÔ·Â ´ÜÀÚ°¡ ¸¶·ÃµÇ¾î ÀÖÀ¸¸ç, CPU·Î ¿äûÇϱâ À§ÇÑ
ÀÎÅÍ·´Æ® ´ÜÀÚ°¡ º°µµ·Î ¸¶·ÃµÇ¾î ÀÖ´Ù. ÁÖº¯ ÀåÄ¡¿¡¼ ¹ß»ýµÈ
ÀÎÅÍ·´Æ®´Â CPU·Î ¹Ù·Î Àü´Þ µÇÁö ¾Ê°í ÀÏ´Ü ÀÎÅÍ·´Æ® ÄÁÆ®·Ñ·¯·Î
Àü´ÞµÈ´Ù. ÀÎÅÍ·´Æ® ÄÁÆ®·Ñ·¯´Â ´Ù½Ã CPU·Î ¹Ù·Î Àü´ÞµÇÁö ¾Ê°í
ÀÏ´Ü ÀÎÅÍ·´Æ®°¡ ¹ß»ýµÇ¾ú´ÂÁö¸¦ ¹¯´Â´Ù. ÀÌ ¶§ ÀÎÅÍ·´Æ® ÄÁÆ®·Ñ·¯´Â
¹ß»ýµÈ ÀÎÅÍ·´Æ®ÀÇ Á¾·ù¸¦ ¾Ë·ÁÁÖ°Ô µÇ°í CPU´Â ÀÎÅÍ·´Æ®ÀÇ
Á¾·ù¿¡ µû¶ó ÀÎÅÍ·´Æ®¸¦ ¹ß»ý½ÃŲ ÀåÄ¡¸¦ Á¦¾îÇÏ°Ô µÈ´Ù. 1.2 ¼ÒÇÁÆ®¿þ¾î ÀÎÅÍ·´Æ® ¿¹»óµÈ ½Ã±â¿¡ ¾î¶² ±â´ÉÀ» ¹ßÈÖÇϵµ·Ï Çϱâ À§ÇØ ÀÎÀ§ÀûÀ¸·Î ÀÎÅÍ·´Æ®¸¦ ¹ß»ý½ÃÅ°´Â °æ¿ì. ÇÁ·Î±×·¥ ó¸® µµÁß ºñ Á¤»óÀûÀÎ ¸í·É¾î·Î ÀÎÇÏ¿© ÀÎÅÍ·´Æ®°¡ ¹ß»ýµÇ´Â °æ¿ì. Çϵå¿þ¾î¸¦ Á¦¾îÇϱâ À§ÇÑ ¹ÙÀÌ¿À½º(BIOS)¿Í µµ½º (DOS) ¶Ç´Â À©µµ¿ì(Window)¶ó´Â ¿î¿µ ÇÁ·Î±×·¥(Operating System), ÀÀ¿ëÇÁ·Î±×·¥(Application Program)À¸·Î µµ½º³ª ¹ÙÀÌ¿À½º¿¡ ÀÖ´Â ±â´ÉÀ» ÀÌ¿ëÇÏ°íÀÚ ÇÒ ¶§´Â ±× ±â´ÉÀ» °¡Áö´Â ÀÎÅÍ·´Æ®¸¦ È£ÃâÇÏ¸é µÈ´Ù. (1) ¿¹¿Ü(Exception) CPU ÀÚü¿¡¼ ÇÁ·Î±×·¥ ¿î¿µ ¿À·ù½Ã¿¡ ¹ß»ýÇÑ´Ù. (2) ¹ÙÀÌ¿À½º
ÀÎÅÍ·´Æ® ¹ÙÀÌ¿À½º¿¡ ÀÖ´Â ±â´ÉÀ» ÀÌ¿ëÇÏ¿© È£ÃâµÈ´Ù. ¿¹) ºñµð¿À, Å°º¸µå, ¸¶¿ì½º, µð½ºÄÏ, ÇÁ¸°ÅÍ, serial port, joystick, memory, printer µî (3) µµ½º ÀÎÅÍ·´Æ® µµ½º¿¡ ÀÖ´Â ±â´ÉÀ» ÀÌ¿ë½Ã¿¡ È£Ãâ(µµ½º¸¦ ÅëÇؼ Çϵå¿þ¾î¸¦ È£Ãâ) 1.3 CPU¿Í 8259A ÀÎÅÍ·´Æ® ó¸® IBM PC¿¡¼´Â 00ºÎÅÍ FF±îÁöÀÇ 8ºñÆ®ÀÇ CPU·Î Àü´ÞµÇ´Â ÀÎÅÍ·´Æ®´Â Çϵå¿þ¾î¿Í ¼ÒÇÁÆ®¿þ¾î ÀÎÅÍ·´Æ®¸¦ ¸Á¶óÇÏ¿© 256°¡ÁöÀÇ ÀÎÅÍ·´Æ® ÁßÀÇ Çϳª·Î¼ ÀνĵȴÙ. ÀÎÅÍ·´Æ® ¹éÅÍ Å×À̺íÀ̶õ 256°¡Áö ÀÎÅÍ·´Æ®¿¡ ´ëÇÏ¿© °¢ ÀÎÅÍ·´Æ®°¡ ¹ß»ýµÇ¾úÀ» ¶§ ó¸®ÇÏ´Â ÇÁ·Î±×·¥ÀÌ ÀÖ´Â °÷ÀÇ ÁÖ¼Ò¸¦ Ç¥·Î ¸¸µé¾î ÀúÀåÇÏ°í ÀÖ´Â °÷À¸·Î¼, ÀÎÅÍ·´Æ®°¡ ¹ß»ýµÇ¸é CPU´Â ÀÌ Ç¥¿¡ ÀÖ´Â Å×À̺íÀ» ÀÌ¿ëÇÏ¿© ó¸®ÇÏ´Â ¹æ¹ý. (1) ÀÎÅÍÆäÀ̽º ·ÎÁ÷ÀÌ system bus interface¿¡¼ Interrupt Request¸¦ È°¼ºÈ ÇÑ´Ù. (2) Interrupt Controller(8259A)¿¡ ¿äûµÇ°Å³ª, pending µÈ ÀÎÅÍ·´Æ®´Â ¿ì¼±¼øÀ§¿¡ µû¶ó¼ ÀÎ½Ä ÇÑ´Ù. (3) ¿äûµÈ ÀÎÅÍ·´Æ®´Â °¡Àå ³ôÀº ·¹º§ÀÇ ¼ºñ½º¸¦ CPU¿¡°Ô ÀÎÅÍ·´Æ®¸¦ ¿äûÇÑ´Ù. (4) CPU´Â 8259A Interrupt Controller¿¡°Ô INTA¸¦ º¸³½´Ù. ù°·Î ¿ì¼±¼øÀ§´Â ¸ØÃçÁö°í, ¼ºñ½º latchÀÇ
·¹º§À» ¼³Á¤ ÇÑ´Ù. (5) CPU 8-bit Æ÷ÀÎÅÍ °ªÀ» ¹Þ´Â´Ù. Æ÷ÀÎÅÍ °ªÀº low memory table À妽º·Î ÀÌ¿ëÇÑ´Ù. ¼ºñ½º µÉ Ưº°ÇÑ ·¹º§ÀÇ IP ¿Í offset °ªÀ¸·Î ÀÎÅÍ·´Æ®-¼ºñ½º ·çƾÀ» °¡Áø´Ù. (6) CPU´Â IP¿Í Code Segment °ªÀ» Fetch ÇÏ°í, ÇöÀç IP, code segment, flagsÀ» stack¿¡ ÀúÀåÇÏ°í, »õ·Î¿î IP, code segment °ªÀ¸·Î ºÐ±âÇÑ´Ù. ÀÎÅÍ·´Æ® ¼ºñ½º ÇÁ·Î±×·¥Àº ½ÇÇàµÇÁö ¾Ê´Â´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¤
¦£¦¡¦¡¦¡¦¡¦¤ ¡´±×¸²¡µ CPU¿Í Interrupt Controller ÀÎÅÍ·´Æ® ó¸® |