[Computer Science] CPU ์ž‘๋™์›๋ฆฌ

2023. 10. 6. 10:37ยท๐Ÿ”ฎ CS
728x90

CPU ์ž‘๋™์›๋ฆฌ

CPU ๊ตฌ์„ฑ

  • ์—ฐ์‚ฐ ์žฅ์น˜(ALU)
    • ์‚ฐ์ˆ  / ๋…ผ๋ฆฌ ์—ฐ์‚ฐ ์ˆ˜ํ–‰
    • ๋ฐ์ดํ„ฐ๋ฅผ ๋ ˆ์ง€์Šคํ„ฐ์—์„œ ์ฝ์–ด์˜ค๊ณ  ๋‹ค์‹œ ๋ ˆ์ง€์Šคํ„ฐ์— ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅ
  • ์ œ์–ด ์žฅ์น˜
    • ๋ช…๋ น์–ด์˜ ์ˆœ์„œ๋ฅผ ์ œ์–ด
    • ์ฃผ๊ธฐ์–ต์žฅ์น˜์—์„œ ๋ช…๋ น์–ด๋ฅผ ๊ฐ€์ ธ์™€ ํ•ด๋… → ์‹คํ–‰์„ ์œ„ํ•œ ์‹ ํ˜ธ๋ฅผ ๊ธฐ์–ต/์—ฐ์‚ฐ/์ž…์ถœ๋ ฅ ์žฅ์น˜๋กœ ์ „์†ก
  • ๋ ˆ์ง€์Šคํ„ฐ
    • ๊ณ ์† ๊ธฐ์–ต ์žฅ์น˜
    • ๋ช…๋ น์–ด ์ฃผ์†Œ, ์ฝ”๋“œ, ๋ฐ์ดํ„ฐ, ๊ฒฐ๊ณผ ๋“ฑ์„ ์ž„์‹œ ์ €์žฅํ•จ
    • ์ข…๋ฅ˜
      • ๋ฒ”์šฉ ๋ ˆ์ง€์Šคํ„ฐ
        • ์ผ๋ฐ˜์ ์ธ ๋ฐ์ดํ„ฐ/์—ฐ์‚ฐ๊ฒฐ๊ณผ ์ €์žฅ
      • ํŠน์ˆ˜๋ชฉ์  ๋ ˆ์ง€์Šคํ„ฐ
        • ํŠน์ˆ˜ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๋ ˆ์ง€์Šคํ„ฐ

ํŠน์ˆ˜๋ชฉ์  ๋ ˆ์ง€์Šคํ„ฐ

  • MAR(Memory Address Register) : ์ฝ๊ธฐ/์“ฐ๊ธฐ ์ˆ˜ํ–‰ํ•˜๋Š” ์ฃผ๊ธฐ์–ต์žฅ์น˜ ์ฃผ์†Œ
  • PC(Program Counter): ๋‹ค์Œ์— ์ˆ˜ํ–‰ํ•  ๋ช…๋ น์–ด ์ฃผ์†Œ
  • IR(Instruction Register): ํ˜„์žฌ ์‹คํ–‰์ค‘์ธ ๋ช…๋ น์–ด
  • MBR(Memory Buffer Register): ์ฃผ๊ธฐ์–ต์žฅ์น˜์—์„œ ์ฝ๊ฑฐ๋‚˜ ์ €์žฅํ•  ๋ฐ์ดํ„ฐ ์ž„์‹œ ์ €์žฅ
  • AC(Accumulator ๋ˆ„์‚ฐ๊ธฐ): ์—ฐ์‚ฐ ๊ฒฐ๊ณผ ์ž„์‹œ ์ €์žฅ

CPU ๋™์ž‘ ๊ณผ์ •

  1. ์ฃผ๊ธฐ์–ต์žฅ์น˜์— ์ž…๋ ฅ์žฅ์น˜์—์„œ ๋ฐ›์€ ๋ฐ์ดํ„ฐ or ๋ณด์กฐ๊ธฐ์–ต์žฅ์น˜(HDD)์— ์ €์žฅ๋œ ํ”„๋กœ๊ทธ๋žจ ๋กœ๋“œ
  2. CPU์—์„œ ์ฃผ๊ธฐ์–ต์žฅ์น˜์˜ ํ”„๋กœ๊ทธ๋žจ ๋ช…๋ น์–ด ๋ฐ ๋ฐ์ดํ„ฐ ์ฝ์–ด์™€์„œ ์ฒ˜๋ฆฌ ํ›„ ๊ฒฐ๊ณผ๋ฅผ ์ฃผ๊ธฐ์–ต์žฅ์น˜์— ์ €์žฅ
  3. ์ฃผ๊ธฐ์–ต์žฅ์น˜๊ฐ€ ์ฒ˜๋ฆฌ๊ฒฐ๊ณผ๋ฅผ ๋ณด์กฐ๊ธฐ์–ต์žฅ์น˜ / ์ถœ๋ ฅ์žฅ์น˜๋กœ ์ „์†ก
  4. ์ œ์–ด์žฅ์น˜์—์„œ 1-3 ๊ณผ์ •์˜ ๋ช…๋ น์–ด๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ์‹คํ–‰๋˜๋„๋ก ์ œ์–ด

๋ช…๋ น์–ด ์„ธํŠธ

๋ช…๋ น์–ด ์‚ฌ์ดํด

  • Operation code + operand๋กœ ๊ตฌ์„ฑ
    • ex) add $3 $2
  • operation code๋Š” ์—ฐ์‚ฐ/์ œ์–ด/๋ฐ์ดํ„ฐ์ „๋‹ฌ/์ž…์ถœ๋ ฅ
  • operand๋Š” ๊ฐ’
  • ๋ช…๋ น์–ด ์‚ฌ์ดํด
    • ๋ช…๋ น์–ด ์ธ์ถœ(instruction fetch)
      • CPU์—์„œ ๋ช…๋ น์–ด๋ฅผ ์ฝ์–ด์˜ด
      1. ๋ช…๋ น์–ด๊ฐ€ ์ €์žฅ๋œ ์ฃผ์†Œ ์ง€์ •
        • MAR ← PC : PC์— ์ €์žฅ๋œ ์ฃผ์†Œ๋ฅผ MAR๋กœ ์ „์†ก
      2. MAR ๋ฒˆ์ง€์˜ ๋ฉ”๋ชจ๋ฆฌ ๋ช…๋ น์–ด๋ฅผ MBR๋กœ ์ „์†ก, PC๋Š” ๋‹ค์Œ ๋ช…๋ น์–ด ์ฃผ์†Œ ์ค€๋น„
        • MBR ← M[MAR], PC = PC + n
      3. ์ธ์ถœ ๋ช…๋ น์–ด๋ฅผ IR๋กœ ์ „์†ก
        • IR ← MBR
    • ์‹คํ–‰
      • CPU์—์„œ ๋ช…๋ น์–ด ์‹คํ–‰(decode + execution)
      1. ๋ช…๋ น์–ด ํ•ด๋…(decode)
        • opcode ํ•ด๋… : ์ธ์ถœํ•œ ๋ช…๋ น์–ด์˜ opcode(๋ช…๋ น์–ด ์‹๋ณ„์ฝ”๋“œ)ํ•ด๋… ํ›„ ๋™์ž‘ ๊ตฌํ˜„ ํšŒ๋กœ๋กœ ์‹ ํ˜ธ ์ „์†ก
        • operand ํ•ด๋… : ์œ ํšจ์ฃผ์†Œ ์ทจ๋“. operand ์ €์žฅ ๊ฐ’์„ ํ†ตํ•ด์„œ ์œ ํ˜ธํ•œ ์ฃผ์†Œ๋ฅผ ์–ป๋Š”๋‹ค.
      2. ๋ช…๋ น์–ด ์‹คํ–‰(execution)
        • ๋ช…๋ น์–ด ์‹คํ–‰์— ํ•„์š”ํ•œ CPU ๋‚ด์™ธ๋ถ€ ์ œ์–ด์‹ ํ˜ธ ๋ฐœ์ƒ
        • decoder ์ถœ๋ ฅ ๋ผ์ธ์˜ microcode๋ฅผ ์‹คํ–‰ํ•ด์„œ ๋ช…๋ น์–ด ๋™์ž‘
    • ์ธํ„ฐ๋ŸฝํŠธ
      • ํ”„๋กœ๊ทธ๋žจ ์˜ˆ์™ธ์ƒํ™ฉ ๋ฐœ์ƒ์‹œ cpu์—๊ฒŒ ์•Œ๋ ค์ฃผ๊ณ  ์ฒ˜๋ฆฌํ•˜๋„๋ก ํ•จ
      • interrupt๋ฅผ ๊ฒ€์‚ฌํ•˜๊ณ , interrupt๋ฅผ ์ฒ˜๋ฆฌํ•  ์ธํ„ฐ๋ŸฝํŠธ ์„œ๋น„์Šค ๋ฃจํ‹ด(interrupt service routine) ํ˜ธ์ถœ
      • interrupt handler: ์ธํ„ฐ๋ŸฝํŠธ ์ฒ˜๋ฆฌ ํ”„๋กœ๊ทธ๋žจ

์ธํ„ฐ๋ŸฝํŠธ ๋™์ž‘

 

728x90
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'๐Ÿ”ฎ CS' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Computer Science] ์ปดํ“จํ„ฐ์˜ ๊ตฌ์„ฑ  (0) 2023.06.30
'๐Ÿ”ฎ CS' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [Computer Science] ์ปดํ“จํ„ฐ์˜ ๊ตฌ์„ฑ
darly213
darly213
ํ˜ธ๋ฝํ˜ธ๋ฝํ•˜์ง€ ์•Š์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜์–ด๋ณด์ž
  • darly213
    ERROR DENY
    darly213
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (97)
      • ๐Ÿฌ ML & Data (50)
        • ๐ŸŒŠ Computer Vision (2)
        • ๐Ÿ“ฎ Reinforcement Learning (12)
        • ๐Ÿ“˜ ๋…ผ๋ฌธ & ๋ชจ๋ธ ๋ฆฌ๋ทฐ (8)
        • ๐Ÿฆ„ ๋ผ์ดํŠธ ๋”ฅ๋Ÿฌ๋‹ (3)
        • โ” Q & etc. (5)
        • ๐ŸŽซ ๋ผ์ดํŠธ ๋จธ์‹ ๋Ÿฌ๋‹ (20)
      • ๐Ÿฅ Web (21)
        • โšก Back-end | FastAPI (2)
        • โ›… Back-end | Spring (5)
        • โ” Back-end | etc. (9)
        • ๐ŸŽจ Front-end (4)
      • ๐ŸŽผ Project (8)
        • ๐ŸงŠ Monitoring System (8)
      • ๐Ÿˆ Algorithm (0)
      • ๐Ÿ”ฎ CS (2)
      • ๐Ÿณ Docker & Kubernetes (3)
      • ๐ŸŒˆ DEEEEEBUG (2)
      • ๐ŸŒ  etc. (8)
      • ๐Ÿ˜ผ ์‚ฌ๋‹ด (1)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ๋ฐฉ๋ช…๋ก
    • GitHub
    • Notion
    • LinkedIn
  • ๋งํฌ

    • Github
    • Notion
  • ๊ณต์ง€์‚ฌํ•ญ

    • Contact ME!
  • 250x250
  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
darly213
[Computer Science] CPU ์ž‘๋™์›๋ฆฌ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”