ํฌ์ŠคํŠธ

๐ŸŒ‘ Machine Instruction/Cycle - ๊ธฐ๊ณ„ ๋ช…๋ น์–ด, ๊ธฐ๊ณ„ ์‚ฌ์ดํด

๐Ÿ’ซ Machine Instruction - ๊ธฐ๊ณ„ ๋ช…๋ น์–ด


  • ๊ธฐ๊ณ„ ๋ช…๋ น์–ด Machine Instruction
    • CPU๊ฐ€ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ช…๋ น์–ด ๋‹จ์œ„
      • ๊ณ ๊ธ‰ ์–ธ์–ด๋กœ๋ถ€ํ„ฐ ๋ฒˆ์—ญ๋˜์–ด ์‹คํ–‰ ์‹œ ๋ฉ”๋ชจ๋ฆฌ์— ์ ์žฌ
      • CPU์— ์˜ํ•ด ์ธ์ถœ๋˜์–ด ์ฒ˜๋ฆฌ๋จ
    • ์—ฐ์‚ฐ์ฝ”๋“œ Operation Code ์™€ ํ”ผ์—ฐ์‚ฐ์ž Operand
      • ์—ฐ์‚ฐ ์ฝ”๋“œ๋Š” ํ”ผ์—ฐ์‚ฐ์ž์— ์ ์˜ํ•  ๋ง์…ˆ, ๋บ„์…ˆ ๋“ฑ์˜ ์—ฐ์‚ฐ์„ ์˜๋ฏธํ•˜๋Š” ์ฝ”๋“œ
      • ํ”ผ์—ฐ์‚ฐ์ž๋Š” ์—ฐ์‚ฐ์— ์‚ฌ์šฉ๋  ๊ฐ’์„ ์˜๋ฏธ
      • ํ”ผ์—ฐ์‚ฐ์ž๋กœ ์ฃผ๊ธฐ์–ต์žฅ์น˜ ์ฃผ์†Œ, ์ƒ์ˆ˜ ,CPU ๋ ˆ์ง€์Šคํ„ฐ ๋ฒˆํ˜ธ ๋“ฑ์ด ๊ฐ€๋Šฅ
      • = ์œ„์™€ ๊ฐ™์ด ๋‹ค์–‘ํ•œ ํ˜•ํƒœ์˜ ํ”ผ์—ฐ์‚ฐ์ž๋ฅผ ์–ด๋“œ๋ ˆ์‹ฑ ๋ชจ๋“œ ADdressing mode๋ผ ํ•จ
      • ํ”ผ์—ฐ์‚ฐ์ž ๋ถ€๋ถ„์˜ ํฌ๊ธฐ๋Š” ์ฃผ๊ธฐ์–ต์žฅ์น˜์˜ ํฌ๊ธฐ์— ์˜ํ–ฅ์„ ๋ฐ›์Œ
      • #์ „ํ˜•์ ์ธ ๊ธฐ๊ณ„ ๋ช…๋ น์–ด ํฌ๋งท ์—ฐ์‚ฐ์ฝ”๋“œ 4๋น„ํŠธ+ํ”ผ์—ฐ์‚ฐ์ž 12๋น„ํŠธ
      • #ํ”ผ์—ฐ์‚ฐ์ž ์ตœ๋Œ€ ํฌ๊ธฐ์— ๋งž์ถฐ์„œ

๐Ÿ’ซ Machine Cycle - ๊ธฐ๊ณ„ ์‚ฌ์ดํด, (Instruction Cycle - ๋ช…๋ น ์‚ฌ์ดํด)


์ฐธ๊ณ 

Instruction : ๋ช…๋ น, (์‚ฌ์ „ = ์ง€์นจ)

  • Fetch (=bring) ์ธ์ถœ
    • CPU๊ฐ€ ๋ช…๋ น์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ๊ทธ ๋ช…๋ น์–ด๋ฅผ ๋ ˆ์ง€์Šคํ„ฐ์—์„œ ๊บผ๋‚ด ์˜ค๋Š” ๊ฒƒ
    • ์œ„ ๋ง๊ณ ๋„ ๊ทธ๋ƒฅ ์ผ๋ฐ˜์ ์œผ๋กœ ๊ฐ€์ ธ์˜จ๋‹ค๋Š” ๋œป์œผ๋กœ ๋งŽ์ด ์“ฐ์ด๊ธฐ๋„ ํ•˜๋Š” ๋“ฏ
  • (CPU) ๋ช…๋ น ์‚ฌ์ดํด Instruction Cycle (๊ธฐ๊ณ„ ์‚ฌ์ดํด Machine Cycle)
    • CPU์˜ ์ผ๊ณผ
      • Memory(#์ฃผ๊ธฐ์–ต์žฅ์น˜)๋กœ๋ถ€ํ„ฐ ๋Š์ž„์—†์ด ๊ธฐ๊ณ„ ๋ช…๋ น์–ด๋ฅผ ์ฃผ์†Œ ๋ฒˆํ˜ธ๋Œ€๋กœ (์ฐจ๋ก€๋กœ) ์ธ์ถœ, ํ•ด๋‹น ๋ช…๋ น์–ด๊ฐ€ ์š”๊ตฌํ•˜๋Š” ๋™์ž‘์„ ์ˆ˜ํ–‰/์ฒ˜๋ฆฌ
      • ์ ํ”„๋ฅผ ์˜๋ฏธํ•˜๋Š” ๊ธฐ๊ณ„ ๋ช…๋ น์–ด๋ฅผ ๋งŒ๋‚˜๋ฉด ๋ช…๋ น์–ด ์ธ์ถœ ์œ„์น˜๋ฅผ ๋ณ€๊ฒฝ
    • ์ธ์ถœ ์‚ฌ์ดํด Fetch Cycle
      • ์ด๋ฒˆ ์ฐจ๋ก€ ์ฃผ์†Œ(PC๊ฐ€ ๊ฐ€๋ฅดํ‚ค๋Š” ๊ณณ)์˜ ์ฃผ ๊ธฐ์–ต์žฅ์น˜์—์„œ ๋ช…๋ น์–ด๋ฅผ ์ฝ์–ด ์˜ด
      • ์ธ์ถœ์ด ์™„๋ฃŒ๋˜๋ฉด, PC๋Š” ๋‹ค์Œ ์ฐจ๋ก€์˜ ๋ช…ใ„ด๋ น์–ด ์ฃผ์†Œ๋กœ ์—…๋ฐ์ดํŠธ๋จ
    • ํ•ด๋… ์‚ฌ์ดํด Decoding Cycle
      • ์—ฐ์‚ฐ ์ฝ”๋“œ๋ฅผ ๋ถ„์„ํ•˜์—ฌ ์–ด๋–ค ์—ฐ์‚ฐ์ธ์ง€๋ฅผ ์‹๋ณ„ํ•จ
    • ํ”ผ์—ฐ์‚ฐ์ž ์‚ฌ์ดํด Operand Cycle
      • ํ”ผ์—ฐ์‚ฐ์ž ์ธ์ถœ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ง€์ •๋œ ๊ณณ์—์„œ ํ”ผ์—ฐ์‚ฐ์ž๋ฅผ ์ฝ์–ด์˜ด
    • ์‹คํ–‰ ์‚ฌ์ดํด Execution Cycle
      • ๋ˆ„์‚ฐ๊ธฐ์™€ ํ”ผ์—ฐ์‚ฐ์ž ์‚ฌ์ด์— ์—ฐ์‚ฐ์„ ์ ์šฉํ•˜์—ฌ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰
    • #๋” ์„ธ๋ถ€์ ์œผ๋กœ ๋‚˜๋ˆŒ ์ˆ˜๋„ ์žˆ๊ณ , ๊ฐ ๋‹จ๊ณ„๋ฅผ ๋” ๋‚˜๋ˆŒ ์ˆ˜๋„ ์žˆ์Œ (๋งˆ์ด๋„ˆ ์‚ฌ์ดํด or Micro Operation != ๋ฉ”์ด์ € ์‚ฌ์ดํด)
    • #ํ†ฑ๋‹ˆ๋ฐ”ํ€ดํ˜• ํŒŒ์ด? ํด๋Ÿญ (CPU ํŒŒํ˜•)?

๐Ÿ’ซ Clock - ํด๋Ÿญ


  • @์—ฌ์น˜
  • ํด๋Ÿญ CLOCK
    • CPU์™€ ๊ฐ™์€ ์ „์žํšŒ๋กœ๋Š” ๋‚ด๋ถ€์ ์œผ๋กœ ๋™๊ธฐ(Sync.)๊ฐ€ ๋งž์•„์•ผํ•œ๋‹ค.
    • ํšŒ๋กœ๋Š” ์ด์ „์˜ ๋ฐ์ดํ„ฐ๊ฐ’์— ์˜ํ–ฅ์„ ๋ฐ›์•„ ์ž‘๋™ํ•˜๋ฏ€๋กœ ์ด์ „์ƒํƒœ๋ฅผ [๊ธฐ์–ต]ํ•˜๊ณ  ์žˆ์–ด์•ผํ•˜๋ฉฐ ์ด์ „ ์ƒํƒœ์™€ ํ˜„์žฌ ์ƒํƒœ๋ฅผ ๊ฐ€๋ฅด๋Š” ๊ธฐ์ค€์œผ๋กœ, ํด๋Ÿญ์ด๋ผ ๋ถ€๋ฅด๋Š” ์‚ฌ๊ฐํŒŒ ์ „๊ธฐ์‹ ํ˜ธ๋ฅผ ์‚ฌ์šฉ
    • ํŒŒํ˜•์˜ ํ•œ ์ฃผ๊ธฐ๊ฐ€ ํ•œ ํด๋Ÿญ, ํ•œ ์ฃผ๊ธฐ๊ฐ€ ๋ฐ”๋€”๋•Œ๋งˆ๋‹ค ์ƒˆ๋กœ์šด ์ƒํƒœ (๊ฐœ๋…์ ์œผ๋กœ, ์ด์ „ ์ƒํƒœ์™€ ํ˜„์žฌ ์ƒํƒœ๊ฐ€ ๊ฐ™์„ ์ˆ˜ ์žˆ์Œ)
    • ๋ช…๋ น์–ด๋Š” ํ•œ ํด๋Ÿญ(ํ•œ ์ฃผ๊ธฐ)๋งŒ์— ์™„๋ฃŒ๋˜๋Š” ๊ฒƒ๋„ ์žˆ์ง€๋งŒ, ์•„๋‹Œ๊ฒƒ๋„ ๋งŽ๋‹ค.
      • ํšŒ๋กœ๊ตฌ์„ฑ์ด ์ด์ „ ์ƒํƒœ (์ด์ „ ์ฃผ๊ธฐ)๋ฅผ ํ•„์š”๋กœ ํ•˜๋Š” ๋ช…๋ น
      • ๋ฉ”๋ชจ๋ฆฌ ์นฉ ๋“ฑ ์†๋„๊ฐ€ ๋Š๋ฆฐ ์žฅ์น˜๋ฅผ ์–ต์„ธ์Šคํ• ๋•Œ ์†๋„๋ฅผ ๋งž์ถ”๊ธฐ ์œ„ํ•ด ๋Œ€๊ธฐ
    • I.E. 2.4GHz ํŽœํ‹ฐ์—„ 4, 2.4GHz = ํด๋Ÿญ ์ฃผํŒŒ์ˆ˜, ์ดˆ๋‹น 24์–ต๋ฒˆ ํด๋Ÿญ ์ฃผ๊ธฐ
์ด ๊ธฐ์‚ฌ๋Š” ์ €์ž‘๊ถŒ์ž์˜ CC BY 4.0 ๋ผ์ด์„ผ์Šค๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.