STUDY/์•„์นจ ๊ณต๋ถ€ ์ฑŒ๋ฆฐ์ง€

์•„์นจ ์Šคํ„ฐ๋”” 25 - ์ปดํ“จํ„ฐ ๊ณตํ•™ ๊ธฐ์ดˆ : ์ธํ„ฐ๋ŸฝํŠธ ์ฒ˜๋ฆฌ ๊ณผ์ • โ‘ 

์˜์˜๋ฃจ 2025. 12. 9. 08:16

2025.12.09์ผ ํ™”์š”์ผ

์ธํ„ฐ๋ŸฝํŠธ ์ฒ˜๋ฆฌ ๊ณผ์ • โ‘ 

 


content

 

ํ•˜๋“œ์›จ์–ด ์ธํ„ฐ๋ŸฝํŠธ ์ฒ˜๋ฆฌ ๊ณผ์ • ์ •๋ฆฌ

 

์˜ค๋Š˜ ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์€ ์šด์˜์ฒด์ œ์—์„œ ๋งค์šฐ ์ค‘์š”ํ•œ ๊ฐœ๋…์ธ ํ•˜๋“œ์›จ์–ด ์ธํ„ฐ๋ŸฝํŠธ(Interrupt) ์˜ ๋™์ž‘ ๊ณผ์ •์ด๋‹ค.
CPU๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋Š” ๋™์•ˆ์—๋„ ๋‹ค์–‘ํ•œ ํ•˜๋“œ์›จ์–ด ์žฅ์น˜(ํ‚ค๋ณด๋“œ, ๋งˆ์šฐ์Šค, ๋””์Šคํฌ ๋“ฑ)๋กœ๋ถ€ํ„ฐ ์š”์ฒญ ์‹ ํ˜ธ๋ฅผ ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ด๋•Œ CPU๊ฐ€ ์ด๋ฅผ ์–ด๋–ป๊ฒŒ ๊ฐ์ง€ํ•˜๊ณ  ์ฒ˜๋ฆฌํ•˜๋Š”์ง€๊ฐ€ ๋ฐ”๋กœ ์ธํ„ฐ๋ŸฝํŠธ์˜ ํ•ต์‹ฌ์ด๋‹ค.

 

ํ•˜๋“œ์›จ์–ด ์ธํ„ฐ๋ŸฝํŠธ ์ฒ˜๋ฆฌ ์ˆœ์„œ


์ž…์ถœ๋ ฅ ์žฅ์น˜ → CPU์— ์ธํ„ฐ๋ŸฝํŠธ ์š”์ฒญ ์‹ ํ˜ธ ์ „์†ก

CPU๋Š” ํ˜„์žฌ ์‹คํ–‰ ์ค‘์ธ ๋ช…๋ น์–ด๋ฅผ ๋๋งˆ์นœ ํ›„ ์ธํ„ฐ๋ŸฝํŠธ ์—ฌ๋ถ€๋ฅผ ํ™•์ธ

์ธํ„ฐ๋ŸฝํŠธ ํ”Œ๋ž˜๊ทธ๋ฅผ ํ™•์ธํ•˜์—ฌ ํ˜„์žฌ ์ธํ„ฐ๋ŸฝํŠธ ์ˆ˜์šฉ ๊ฐ€๋Šฅ ์—ฌ๋ถ€ ์ฒดํฌ

์ธํ„ฐ๋ŸฝํŠธ ํ—ˆ์šฉ ์‹œ, ํ˜„์žฌ ์‹คํ–‰ ์ค‘์ธ ์ž‘์—… ์ƒํƒœ๋ฅผ ๋ฐฑ์—…

CPU๋Š” ์ธํ„ฐ๋ŸฝํŠธ ๋ฒกํ„ฐ(Interrupt Vector)๋ฅผ ์ฐธ์กฐํ•ด ํ•ด๋‹น ์ธํ„ฐ๋ŸฝํŠธ์˜ ์„œ๋น„์Šค ๋ฃจํ‹ด(ISR) ์‹คํ–‰

ISR ์‹คํ–‰์ด ์™„๋ฃŒ๋˜๋ฉด, ๋ฐฑ์—…ํ•ด๋‘์—ˆ๋˜ ์ž‘์—…์„ ๋ณต๊ตฌํ•˜๊ณ  ์›๋ž˜ ์ž‘์—…์œผ๋กœ ๋ณต๊ท€

 

์ธํ„ฐ๋ŸฝํŠธ ์š”์ฒญ ์‹ ํ˜ธ(Interrupt Request)


ํ•˜๋“œ์›จ์–ด ์žฅ์น˜๊ฐ€ CPU์—๊ฒŒ "์ง€๊ธˆ ์ฒ˜๋ฆฌํ•ด๋„ ๋ ๊นŒ์š”?" ๋ผ๊ณ  ๋ณด๋‚ด๋Š” ์‹ ํ˜ธ

CPU๋Š” ์ธํ„ฐ๋ŸฝํŠธ ํ”Œ๋ž˜๊ทธ๋ฅผ ํ™•์ธํ•˜์—ฌ ์š”์ฒญ์„ ๋ฐ›์„์ง€ ๋ง์ง€ ๊ฒฐ์ •ํ•œ๋‹ค.

ํ•˜์ง€๋งŒ!
๐Ÿ‘‰ ๋ชจ๋“  ์ธํ„ฐ๋ŸฝํŠธ๊ฐ€ ํ”Œ๋ž˜๊ทธ์— ์˜ํ•ด ๋ง‰์„ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค.
๐Ÿ‘‰ Non-maskable Interrupt(NMI) ์™€ ๊ฐ™์ด ๊ธด๊ธ‰ํ•˜๊ฑฐ๋‚˜ ์˜ค๋ฅ˜์™€ ๊ด€๋ จ๋œ ์ธํ„ฐ๋ŸฝํŠธ๋Š” ๋ฌด์‹œํ•  ์ˆ˜ ์—†๋‹ค.

 

์ธํ„ฐ๋ŸฝํŠธ ์„œ๋น„์Šค ๋ฃจํ‹ด(Interrupt Service Routine, ISR)


์ธํ„ฐ๋ŸฝํŠธ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ CPU๊ฐ€ ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•˜๋Š”์ง€ ๊ธฐ๋ก๋œ ํ”„๋กœ๊ทธ๋žจ(๋ฃจํ‹ด)

์˜ˆ) ํ‚ค๋ณด๋“œ ์ž…๋ ฅ → ํ‚ค ์ž…๋ ฅ ์ฒ˜๋ฆฌ ๋ฃจํ‹ด ์‹คํ–‰

๊ฐ ํ•˜๋“œ์›จ์–ด ์žฅ์น˜๋Š” ์ž์‹ ๋งŒ์˜ ISR ์ฃผ์†Œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ, CPU๋Š” ๋ฒกํ„ฐ๋ฅผ ํ†ตํ•ด ํ•ด๋‹น ๋ฃจํ‹ด ์œ„์น˜๋ฅผ ์ฐพ์•„ ์‹คํ–‰ํ•œ๋‹ค.

์‹คํ–‰ ํ›„ ์›๋ž˜ ํ”„๋กœ์„ธ์Šค๋กœ ๋Œ์•„๊ฐ€๊ธฐ ์œ„ํ•ด ๋ฐฑ์—…ํ•ด๋‘” ์ƒํƒœ๋ฅผ ๋ณต๊ตฌํ•œ๋‹ค.

 

๋ฐ˜์‘ํ˜•