๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋นˆ ๊ตฌ๋ฉ ์ฑ„์šฐ๊ธฐ

[์šฉ์–ด] CPU ์•„ํ‚คํ…์ฒ˜

์ถœ์ฒ˜

ChatGPT


CPU ์•„ํ‚คํ…์ฒ˜๋Š” ์ค‘์•™ ์ฒ˜๋ฆฌ ์žฅ์น˜(Central Processing Unit, CPU)์˜ ๊ตฌ์กฐ์™€ ์„ค๊ณ„ ์›์น™์„ ์ •์˜ํ•˜๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. CPU๋Š” ์ปดํ“จํ„ฐ์˜ ๋‘๋‡Œ ์—ญํ• ์„ ํ•˜๋ฉฐ, ๋‹ค์–‘ํ•œ ๋ช…๋ น์–ด๋ฅผ ์ฒ˜๋ฆฌํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์—ญํ• ์„ ๋‹ด๋‹นํ•œ๋‹ค. CPU ์•„ํ‚คํ…์ฒ˜๋Š” ํ•˜๋“œ์›จ์–ด์˜ ์ž‘๋™ ๋ฐฉ์‹๊ณผ ํ”„๋กœ์„ธ์„œ๊ฐ€ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๊ทœ์ •ํ•œ๋‹ค.

CPU ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ปดํ“จํ„ฐ์˜ ์„ฑ๋Šฅ, ํšจ์œจ์„ฑ, ๊ธฐ๋Šฅ์„ ์ขŒ์šฐํ•˜๋ฉฐ, ์‹œ์Šคํ…œ ์„ค๊ณ„์ž์™€ ๊ฐœ๋ฐœ์ž๊ฐ€ ์†Œํ”„ํŠธ์›จ์–ด์™€ ํ•˜๋“œ์›จ์–ด๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ๊ฒฐํ•ฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค.

 

CPU ์•„ํ‚คํ…์ฒ˜์˜ ์ฃผ์š” ์š”์†Œ

1. ๋ช…๋ น์–ด ์ง‘ํ•œ ์•„ํ‚คํ…์ฒ˜ Insturction Set Architecture, ISA

  • ์ •์˜ : ํ”„๋กœ์„ธ์„œ๊ฐ€ ์ดํ•ดํ•˜๊ณ  ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋ช…๋ น์–ด์˜ ์ง‘ํ•ฉ
  • ์—ญ  :ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ CPU์™€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐ„์˜ ์ธํ„ฐํŽ˜์ด์Šค๋กœ ์ž‘๋™ํ•˜๋ฉฐ, ํ”„๋กœ์„ธ์„œ๊ฐ€ ์ˆ˜ํ–‰ํ•  ์ž‘์—…์„ ์ •์˜ํ•œ๋‹ค.
  • ์˜ˆ : x86, ARM, MIPS, RISC-V ๋“ฑ

 

2. ๋งˆ์ดํฌ๋กœ์•„ํ‚คํ…์ฒ˜ Microarchitecture

  • ์ •์˜ : ๋ช…๋ ์–ด ์ง‘ํ•ฉ์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฌผ๋ฆฌ์  ํ•˜๋“œ์›จ์–ด ์„ค๊ณ„
  • ์—ญํ•  :์‹ค์ œ ํ”„๋กœ์„ธ์„œ ๋‚ด์—์„œ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ์‹ ๋“ฑ์„ ์ •์˜ํ•œ๋‹ค.
  • ์˜ˆ :Intel์˜ Skylake, AMD์˜ Zen, ARM์˜ Cortex-A ์‹œ๋ฆฌ์ฆˆ

 

3. ๋ ˆ์ง€์Šคํ„ฐ Register

  • ์ •์˜ : ํ”„๋กœ์„ธ์„œ ๋‚ด๋ถ€์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ณ ์† ๋ฉ”๋ชจ๋ฆฌ
  • ์—ญํ•  : ๋ฐ์ดํ„ฐ์™€ ๋ช…๋ น์–ด ์ฃผ์†Œ๋ฅผ ์ž„์‹œ๋กœ ์ €์žฅํ•˜๊ณ  ๋น ๋ฅด๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค.

 

4. ๋ฐ์ดํ„ฐ ๊ฒฝ๋กœ Data Path

  • ์ •์˜ :  ๋ฐ์ดํ„ฐ์˜ ์ด๋™๊ณผ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒฝ๋กœ
  • ์—ญํ•  : ์—ฐ์‚ฐ ์žฅ์น˜(ALU), ๋ ˆ์ง€์Šคํ„ฐ, ๋ฒ„์Šค ๋“ฑ์„ ํฌํ•จํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ณ  ์ด๋™์‹œํ‚จ๋‹ค.

 

5. ์ œ์–ด ์œ ๋‹› Control Unit

  • ์ •์˜ : ํ”„๋กœ์„ธ์„œ ์˜ ๋™์ž‘์„ ์ œ์–ดํ•˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ
  • ์—ญํ•  : ๋ช…๋ น์–ด๋ฅผ ํ•ด์„ํ•˜๊ณ  ์ ์ ˆํ•œ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋„๋ก ์ง€์‹œํ•œ๋‹ค.

 

6. ์บ์‹œ Cache

  • ์ •์˜ : CPU์˜ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ ์†๋„๋ฅผ ๋†’์ด๊ธฐ ์œ„ํ•œ ์ž„์‹œ ์ €์žฅ์†Œ
  • ์—ญํ•  : ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ์ดํ„ฐ์™€ ๋ช…๋ น์–ด๋ฅผ ์บ์‹œ์— ์ €์žฅํ•˜์—ฌ ์ ‘๊ทผ ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•œ๋‹ค.

 

์ฃผ์š” CPU ์•„ํ‚คํ…์ฒ˜ ์ข…๋ฅ˜

1.x86 ์•„ํ‚คํ…์ฒ˜

์„ค๋ช…

  • ์ธํ…”(Intel)๊ณผ AMD๊ฐ€ ์ฃผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์•„ํ‚คํ…์ฒ˜๋กœ, ๋ณต์žกํ•œ ๋ช…๋ น์–ด ์ง‘ํ•ฉ ์ปดํ“จํ„ฐ(CISC, Complex Instruction Set Computer) ๊ธฐ๋ฐ˜์ด๋‹ค.
  • ๋†’์€ ์„ฑ๋Šฅ๊ณผ ํ˜ธํ™˜์„ฑ์œผ๋กœ ๋ฐ์Šคํฌํƒ‘, ์„œ๋ฒ„, ๋…ธํŠธ๋ถ์—์„œ ๋„๋ฆฌ ์‚ฌ์šฉ๋œ๋‹ค.

ํŠน์ง•

  • ๋ณต์žกํ•œ ๋ช…๋ น์–ด ์ง‘ํ•ฉ์œผ๋กœ ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ ˆ์ง€์Šคํ„ฐ ํฌ๊ธฐ๋Š” 32๋น„ํŠธ(x86)์™€ 64๋น„ํŠธ(x86_64)๋กœ ๊ตฌ๋ถ„๋œ๋‹ค.

์žฅ์ 

  • ๋‹ค์–‘ํ•œ ์†Œํ”„ํŠธ์›จ์–ด์™€ ํ˜ธํ™˜์„ฑ์ด ๋›ฐ์–ด๋‚˜๋‹ค.
  • ํ’๋ถ€ํ•œ ์ตœ์ ํ™” ๋ฐ ์ง€์› ์ƒํƒœ๊ณ„

๋‹จ์ 

  • ๋ณต์žก์„ฑ์œผ๋กœ ์ธํ•œ ์ „๋ ฅ ์†Œ๋ชจ ์ฆ๊ฐ€
  • ์„ค๊ณ„ ๋ณต์žก์„ฑ ์ฆ๊ฐ€๋กœ ์ธํ•ด ์†Œํ˜• ๋””๋ฐ”์ด์Šค์—์„œ์˜ ํšจ์œจ์„ฑ ์ €ํ•˜

 

2. ARM ์•„ํ‚คํ…์ฒ˜

์„ค๋ช…

  • RISC(Reduced Instruction Set Computer) ๊ธฐ๋ฐ˜ ์•„ํ‚คํ…์ฒ˜๋กœ, ์ฃผ๋กœ ๋ชจ๋ฐ”์ผ ์žฅ์น˜, ์ž„๋ฒ ๋””๋“œ ์‹œ์Šคํ…œ์—์„œ ์‚ฌ์šฉ๋œ๋‹ค.
  • ์ „๋ ฅ ํšจ์œจ์„ฑ๊ณผ ์„ฑ๋Šฅ์˜ ๊ท ํ˜•์„ ์ด๋ฃฌ ์„ค๊ณ„๋กœ, ์Šค๋งˆํŠธํฐ, ํƒœ๋ธ”๋ฆฟ, IoT ๊ธฐ๊ธฐ์— ์ ํ•ฉํ•˜๋‹ค.

ํŠน์ง•

  • ๋‹จ์ˆœํ•œ ๋ช…๋ น์–ด ์ง‘ํ•ฉ์œผ๋กœ ํšจ์œจ์ ์ธ ์ „๋ ฅ ์†Œ๋น„๋ฅผ ์‹คํ˜„ํ•œ๋‹ค.
  • ๋ ˆ์ง€์Šคํ„ฐ ํฌ๊ธฐ๋Š” 32๋น„ํŠธ์™€ 64๋น„ํŠธ(ARM64)๋กœ ๊ตฌ๋ถ„๋œ๋‹ค.

์žฅ์ 

  • ๋†’์€ ์ „๋ ฅ ํšจ์œจ์„ฑ์œผ๋กœ ๋ฐฐํ„ฐ๋ฆฌ ์ˆ˜๋ช… ์—ฐ์žฅ
  • ๋‹ค์–‘ํ•œ ๊ธฐ๊ธฐ์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์œ ์—ฐ์„ฑ

๋‹จ์ 

  • x86 ์•„ํ‚คํ…์ฒ˜์™€ ๋น„๊ตํ•ด ๊ณ ์„ฑ๋Šฅ ์ปดํ“จํŒ…์—์„œ๋Š” ์ƒ๋Œ€์ ์œผ๋กœ ๋‚ฎ์€ ์„ฑ๋Šฅ

 

3. MIPS ์•„ํ‚คํ…์ฒ˜

์„ค๋ช…

  • RISC ๊ธฐ๋ฐ˜์˜ ์•„ํ‚คํ…์ฒ˜๋กœ, ์ž„๋ฒ ๋””๋“œ ์‹œ์Šคํ…œ, ๋ผ์šฐํ„ฐ, ๋„คํŠธ์›Œํ‚น ์žฅ๋น„์—์„œ ์‚ฌ์šฉ๋œ๋‹ค.

ํŠน์ง•

  • ๋‹จ์ˆœํ•œ ๋ช…๋ น์–ด ์ง‘ํ•ฉ๊ณผ ๊ณ ์„ฑ๋Šฅ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋Šฅ๋ ฅ

์žฅ์ 

  • ๋†’์€ ์„ฑ๋Šฅ ๋Œ€ ์ „๋ ฅ ์†Œ๋น„ ๋น„์œจ

๋‹จ์ 

  • ํ˜„๋Œ€ ๋ฐ์Šคํฌํ†ฑ ๋ฐ ์„œ๋ฒ„ ์‹œ์žฅ์—์„œ์˜ ๋‚ฎ์€ ์ฑ„ํƒ๋ฅ 

 

4.RISC-V ์•„ํ‚คํ…์ฒ˜

์„ค๋ช…

  • ์˜คํ”ˆ์†Œ์Šค ๋ช…๋ น์–ด ์ง‘ํ•ฉ ์•„ํ‚คํ…์ฒ˜๋กœ, ํ™•์žฅ์„ฑ๊ณผ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•์ด ์šฉ์ดํ•˜๋‹ค.

ํŠน์ง•

  • ๋ฌด๋ฃŒ ๋ฐ ์˜คํ”ˆ์†Œ์Šค ์•„ํ‚คํ…์ฒ˜๋กœ ์—ฐ๊ตฌ, ๊ต์šฑ, ์ƒ์—…์  ์šฉ๋„๋กœ ๋„๋ฆฌ ํ™œ์šฉ๋œ๋‹ค.

์žฅ์ 

  • ๋†’์€ ํ™•์žฅ์„ฑ๊ณผ ์ปค์Šคํ„ฐ๋งˆ์ด์ง• ๊ฐ€๋Šฅ์„ฑ

๋‹จ์ 

  • ์•„์ง ์ดˆ๊ธฐ ๋‹จ๊ณ„์˜ ์ƒํƒœ๊ณ„

 

CPU ์•„ํ‚คํ…์ฒ˜์˜ ์ค‘์š”์„ฑ

1. ์„ฑ๋Šฅ

  • ์•„ํ‚คํ…์ฒ˜๋Š” CPU์˜ ์—ฐ์‚ฐ ๋Šฅ๋ ฅ, ํšจ์œจ์„ฑ ๋ฐ ์ฒ˜๋ฆฌ ์†๋„๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค.
  • ํ˜„๋Œ€ CPU๋Š” ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ, ๋‹ค์ค‘ ์ฝ”์–ด, ๊ณ ๊ธ‰ ์บ์‹œ ์„ค๊ณ„๋ฅผ ํ†ตํ•ด ์„ฑ๋Šฅ์„ ๊ทน๋Œ€ํ™”ํ•œ๋‹ค.

2. ์ „๋ ฅ ํšจ์œจ์„ฑ

  • ์ €์ „๋ ฅ ์•„ํ‚คํ…์ฒ˜๋Š” ๋ฐฐํ„ฐ๋ฆฌ ์ˆ˜๋ช…์„ ์—ฐ์žฅํ•˜๊ณ , ์—ด ๋ฐœ์‚ฐ์„ ์ค„์ด๋Š” ๋ฐ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•œ๋‹ค.
  • ARM ์•„ํ‚คํ…์ฒ˜๋Š” ํŠนํžˆ ๋ชจ๋ฐ”์ผ ๊ธฐ๊ธฐ์—์„œ ์ „๋ ฅ ํšจ์œจ์„ฑ์œผ๋กœ ์œ ๋ช…ํ•˜๋‹ค.

3.ํ˜ธํ™˜์„ฑ

  • ํŠน์ • ์•„ํ‚คํ…์ฒ˜๋Š” ํŠน์ • ์†Œํ”„ํŠธ์›จ์–ด ๋ฐ ์šด์˜ ์ฒด์ œ์™€ ํ˜ธํ™˜๋œ๋‹ค.
  • x86 ์•„ํ‚คํ…์ฒ˜๋Š” Windows, Linux, macOS ๋“ฑ ๋‹ค์–‘ํ•œ ์šด์˜ ์ฒด์ œ์—์„œ ์ง€์›๋œ๋‹ค.

4. ํ™•์žฅ์„ฑ ๋ฐ ์œ ์—ฐ์„ฑ

  • ์•„ํ‚คํ…์ฒ˜๋Š” ์‹œ์Šคํ…œ์˜ ํ™•์žฅ์„ฑ๊ณผ ์œ ์—ฐ์„ฑ์„ ์ œ๊ณตํ•˜์—ฌ ๋‹ค์–‘ํ•œ ๋””๋ฐ”์ด์Šค์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค.
  • RISC-V ์•„ํ‚คํ…์ฒ˜๋Š” ์˜คํ”ˆ์†Œ์Šค์˜ ์œ ์—ฐ์„ฑ์„ ์ œ๊ณตํ•œ๋‹ค.

 

CPU ์•„ํ‚คํ…์ฒ˜์˜ ๋ฏธ๋ž˜ ์ „๋ง

1. ๊ณ ์„ฑ๋Šฅ ์ปดํ“จํŒ…

 

  • ์ธ๊ณต์ง€๋Šฅ๊ณผ ๋จธ์‹ ๋Ÿฌ๋‹: AI์™€ ML ์ž‘์—…์— ์ตœ์ ํ™”๋œ ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„๊ฐ€ ํ•„์š”ํ•˜๋‹ค.
  • ์–‘์ž ์ปดํ“จํŒ…: ์–‘์ž ์ปดํ“จํ„ฐ์˜ ๋ฐœ์ „์— ๋”ฐ๋ผ ์ƒˆ๋กœ์šด ์•„ํ‚คํ…์ฒ˜ ๋ชจ๋ธ์ด ์š”๊ตฌ๋œ๋‹ค.

 

2. ์—๋„ˆ์ง€ ํšจ์œจ์„ฑ

 

  • ๋ฐฐํ„ฐ๋ฆฌ ๊ธฐ์ˆ : ์ €์ „๋ ฅ ์†Œ๋น„๋ฅผ ์œ„ํ•œ ์ƒˆ๋กœ์šด ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„๊ฐ€ ์ค‘์š”ํ•˜๋‹ค.
  • ํ™˜๊ฒฝ ์นœํ™”์  ์„ค๊ณ„: ์ „๋ ฅ ํšจ์œจ์„ฑ์„ ๋†’์ด๊ณ  ํƒ„์†Œ ๋ฐœ์ž๊ตญ์„ ์ค„์ด๊ธฐ ์œ„ํ•œ ์•„ํ‚คํ…์ฒ˜ ์—ฐ๊ตฌ๊ฐ€ ์ง„ํ–‰ ์ค‘์ด๋‹ค.

 

3. ๋ณด์•ˆ ๊ฐ•ํ™”

  • ํ•˜๋“œ์›จ์–ด ๋ณด์•ˆ: ๋ฉœํŠธ๋‹ค์šด ๋ฐ ์ŠคํŽ™ํ„ฐ์™€ ๊ฐ™์€ ํ•˜๋“œ์›จ์–ด ์ทจ์•ฝ์ ์„ ์˜ˆ๋ฐฉํ•˜๊ธฐ ์œ„ํ•œ ๋ณด์•ˆ ์ค‘์‹ฌ์˜ ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„๊ฐ€ ์š”๊ตฌ๋œ๋‹ค.

4. ๋ชจ๋“ˆํ™” ๋ฐ ๋งž์ถคํ˜• ๋””์ž์ธ

 

  • ์ปค์Šคํ„ฐ๋งˆ์ด์ฆˆ ๊ฐ€๋Šฅ์„ฑ: ์‚ฌ์šฉ์ž์˜ ํ•„์š”์— ๋”ฐ๋ผ ๋งž์ถคํ˜•์œผ๋กœ ์„ค๊ณ„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“ˆํ™”๋œ ์•„ํ‚คํ…์ฒ˜๊ฐ€ ์ฃผ๋ชฉ๋ฐ›๊ณ  ์žˆ๋‹ค.
  • ์˜คํ”ˆ์†Œ์Šค: RISC-V์™€ ๊ฐ™์€ ์˜คํ”ˆ์†Œ์Šค ์•„ํ‚คํ…์ฒ˜๊ฐ€ ๋” ๋งŽ์€ ์ฃผ๋ชฉ์„ ๋ฐ›๊ณ  ์žˆ๋‹ค.

 

๊ฒฐ๋ก 

CPU ์•„ํ‚คํ…์ฒ˜๋Š” ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ์˜ ์„ฑ๋Šฅ๊ณผ ํšจ์œจ์„ฑ์— ํฐ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋ฉฐ, ๊ธฐ์ˆ  ๋ฐœ์ „์— ๋”ฐ๋ผ ๊ณ„์†ํ•ด์„œ ์ง„ํ™”ํ•˜๊ณ  ์žˆ๋‹ค. ๊ฐ๊ฐ์˜ ์•„ํ‚คํ…์ฒ˜๋Š” ํŠน์ • ์‚ฌ์šฉ ์‚ฌ๋ก€์™€ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋งž๊ฒŒ ์„ค๊ณ„๋˜์–ด ์žˆ์œผ๋ฉฐ, ์ƒˆ๋กœ์šด ๊ธฐ์ˆ ๊ณผ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋งž์ถฐ ์ง€์†์ ์œผ๋กœ ๋ณ€ํ™”ํ•˜๊ณ  ์žˆ๋‹ค. CPU ์•„ํ‚คํ…์ฒ˜์˜ ์ดํ•ด๋Š” ์ปดํ“จํŒ… ์‹œ์Šคํ…œ์˜ ์„ค๊ณ„์™€ ์ตœ์ ํ™”์— ํ•„์ˆ˜์ ์ธ ์š”์†Œ๋‹ค.