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

๋ฐ˜์‘ํ˜•

Computer

(52)
3.6 ์ œ์–ด์žฅ์น˜(ALU) ์ œ์–ด๋ฐฉ์‹ : ๋ฉ”๋ชจ๋ฆฌ์—์„œ ๋ช…๋ น์–ด ์ธ์ถœํ•ด ํ•ด๋…ํ•˜๊ณ  ๋ช…๋ น ์‹คํ–‰ํ•˜๋Š”๋ฐ ํ•„์š”ํ•œ ์ œ์–ด์‹ ํ˜ธ ๋ฐœ์ƒ - CPU ๋‚ด์™ธ๋ถ€์— ํ•„์š”ํ•œ ์ œ์–ด์‹ ํ˜ธ ๋ฐœ์ƒ - CPU ๋‚ด๋ถ€ ๋ฒ„์Šค ์ œ์–ด์‹ ํ˜ธ - ALU์™€ register์—ฐ์‚ฐ์— ํ•„์š”ํ•œ ๋™์ž‘ ์‹ ํ˜ธ - CPU ์™ธ๋ถ€ ๋ฉ”๋ชจ๋ฆฌ๋‚˜ I/O ์žฅ์น˜์— ์ฝ๊ธฐ์™€ ์“ฐ๊ธฐ ์‹ ํ˜ธ ๋“ฑ [2๊ฐ€์ง€ ์„ค๊ณ„๋ฐฉ์‹] 1. ํ•˜๋“œ์™€์ด์–ด ์ œ์–ด๋ฐฉ์‹ 2. ๋งˆ์ดํฌ๋กœํ”„๋กœ๊ทธ๋žจ ์ œ์–ด๋ฐฉ์‹ - ํ•˜๋“œ์›จ์–ด๋งŒ์œผ๋กœ ๋งˆ์ดํฌ๋กœ์—ฐ์‚ฐ ์ˆ˜ํ–‰ํ•˜๋„๋ก ๊ตฌ์„ฑ - ์‹คํ–‰์†๋„ ์œ ๋ฆฌํ•˜์ง€๋งŒ ์„ค๊ณ„ ์œ ์—ฐ์„ฑ ๋–จ์–ด์ง - ๋ช…๋ น์–ด ์ข…๋ฅ˜๋‚˜ ์„ค๊ณ„ ๋ฐ”๊พธ๋ ค๋ฉด ํ•˜๋“œ์›จ์–ด ์žฌ๊ตฌ์„ฑ ํ•ด์•ผํ•จ - ์ œ์–ด๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ๋œ ๋งˆ์ดํฌ๋กœ๋ช…๋ น์–ด ์ฐพ์•„ ์ˆœ์ฐจ์ ์œผ๋กœ ์‹คํ–‰(๋Œ€๋ถ€๋ถ„ ์ด ๋ฐฉ์‹) - ๋ช…๋ น์–ด ์„ค๊ณ„ ๋ฐ”๋€Œ์–ด๋„ ์ œ์–ด๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ๋œ ํ”„๋กœ๊ทธ๋žจ๋งŒ ๋ณ€๊ฒฝ
4.5 VLIW ๊ตฌ์กฐ RISC : ๊ฐ„๋‹จํ•œ ๋ช…๋ น๋ถ€ํ„ฐ ๋ณต์žกํ•œ ๋ช…๋ น๊นŒ์ง€ - ํšŒ๋กœ ์„ค๊ณ„ ๋ณต์žก : ๋ณต์žกํ•œ ๋ช…๋ น ๋ชจ๋‘ ์—†์• ๊ณ  ๋ช…๋ น์–ด ์ฒ˜๋ฆฌ๊ตฌ์กฐ๋ฅผ ๋‹จ์ˆœํ™”ํ•ด ๊ธฐ๊ณ„์–ด ๋ช…๋ น์˜ ์ˆ˜๋ฅผ ์ตœ์†Œ๋กœ ์ค„์ธ CPU - ๊ฐ€๋Šฅํ•œ ํ•˜๋“œ์›จ์–ด๋งŒ์œผ๋กœ ์ฒ˜๋ฆฌํ•ด ์†๋„ ์ฆ๊ฐ€ - ๋ฒ”์šฉ register ๊ฐฏ์ˆ˜ ๋Š˜๋ ค ์™ธ๋ถ€ ๋ฉ”๋ชจ๋ฆฌ์˜ ์•ก์„ธ์Šค ํšŸ์ˆ˜ ์ตœ์†Œ๋กœ ์ค„์—ฌ ์‹คํ–‰์†๋„ ๋†’์ž„ - ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ ํ”„๋กœ์„ธ์„œ ์„ค๊ณ„์— ํšจ์œจ์ (pipeline) : ํ•˜๋“œ์›จ์–ด ๋œ ๋ณต์žก - CISC๊ตฌ์กฐ์— ๋น„ํ•ด ๋‚ด๋ถ€ cache๋‚˜ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ช…๋ น์–ด ํŒŒ์ดํ”„๋ผ์ธ๊ณผ ์Šˆํผ์Šค์นผ๋ผ ๊ตฌ์กฐ ๊ตฌ์„ฑํ•˜๊ธฐ ์œ ๋ฆฌ - ๋ช…๋ น์–ด ์ข…๋ฅ˜๋งŒ ์ค„์—ฌ CPU์„ฑ๋Šฅ ๋†’์ด๋Š”๋ฐ ํ•œ๊ณ„ - ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ๋ฅผ ๊ณ ๋ คํ•ด ๋ช…๋ น์–ด ์ ์ ˆํžˆ ๋ถ„์‚ฐ์‹œ์ผœ์•ผ ์„ฑ๋Šฅ ์ œ๋Œ€๋กœ ๋ฐœํœ˜ - ํ•˜๋“œ์›จ์–ด ์ž์› ๋‚ญ๋น„(์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ๋ฒˆ์—ญํ•ด์ค€ ๋ช…๋ น์–ด ํŒ๋…ํ•ด ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•œ ๋ช…๋ น์ด ๋ฌด์—‡์ธ์ง€ ๋‹ค์‹œ ์กฐ์‚ฌํ•˜๊ณ  ํŒ๋‹จํ•ด์•ผ ํ•จ. ์„ฑ๋Šฅ ๋†’์ด๋ ค..
4.4 ์Šˆํผ์Šค์นผ๋ผ ๊ตฌ์กฐ ์Šˆํผ์Šค์นผ๋ผ์™€ ํŒŒ์ดํ”„๋ผ์ธ : ํ•œ ๋ช…๋ น์–ด ์‚ฌ์ดํด๋™์•ˆ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ช…๋ น์–ด๋ฅผ ๋™์‹œ์— ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„ํ•œ CPU ๊ตฌ์กฐ - ์š”์ฆ˜ ๋Œ€๋ถ€๋ถ„์˜ CPU๋Š” ์Šˆํผ์Šค์นผ๋ผ ๊ตฌ์กฐ - ์Šˆํผ์Šค์นผ๋ผ ์ฐจ์ˆ˜ ss : ํ•œ ๋ช…๋ น์–ด ์‚ฌ์ดํด๋™์•ˆ ๋™์‹œ์— ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๋ช…๋ น์–ด ๊ฐฏ์ˆ˜ - ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ช…๋ น์–ด fetch ์žฅ์น˜ - ์‹คํ–‰์ˆœ์„œ์— ๊ด€๊ณ„์—†์ด ๋™์‹œ์— ์‹คํ–‰๋˜์–ด๋„ ๋ฌด๊ด€ํ•œ ์„œ๋กœ ๋…๋ฆฝ์ ์ธ ๋ช…๋ น์–ด๋“ค์„ ํŒ๋‹จํ•ด ๊ณจ๋ผ๋‚ด๋Š” ์žฅ์น˜ - ๋™์‹œ์— ๋ณ‘๋ ฌ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋…๋ฆฝ์ ์ธ ๋ช…๋ น์–ด ์‹คํ–‰ ์žฅ์น˜ ํ•œ ๋ช…๋ น์–ด ์‚ฌ์ดํด๋™์•ˆ ์—ฌ๋Ÿฌ ๋ช…๋ น์–ด๋ฅผ ์ฝ์–ด์™€ ์–ด๋–ค ๋ช…๋ น์ด ๋…๋ฆฝ์ ์ธ์ง€ ์ฐพ์•„ ๊ทธ๊ฒƒ๋“ค์„ ๋จผ์ € ๋™์‹œ์— ์‹คํ–‰ (์ด์ „์— ์‹คํ–‰๋œ ๋ช…๋ น์–ด์˜ ๊ฒฐ๊ณผ์— ์ข…์†๋œ ๋ช…๋ น์–ด๋“ค์€ ๋™์‹œ์— ์‹คํ–‰๋˜์ง€ ๋ชปํ•˜๊ณ  ๊ธฐ๋‹ค๋ ค์•ผ ํ•˜๋ฏ€๋กœ ์†๋„ ์ €ํ•˜) ss = 3 N = 4 ๋‹จ๊ณ„ ์ˆ˜ : N ๋ช…๋ น์–ด ๊ฐฏ์ˆ˜ : i ๋‹จ๊ณ„ ์‹œ..
4.3 ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์กฐ ๋ช…๋ น์–ด ํŒŒ์ดํ”„๋ผ์ธ : ํ•˜๋‚˜์˜ ๋ช…๋ น์–ด ์‚ฌ์ดํด์„ ์—ฌ๋Ÿฌ ๋‹จ๊ณ„๋กœ ๋‚˜๋ˆ„๊ณ  ๊ฐ ๋‹จ๊ณ„์—์„œ ๋™์‹œ์— ๋‹ค๋ฅธ ๋ช…๋ น์–ด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋„๋ก CPU ์„ค๊ณ„ ์ด๋Ÿฐ ์ž‘์—…์„ pipelining์ด๋ผ๊ณ  ํ•œ๋‹ค [2๋‹จ๊ณ„ ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์กฐ] N = 2์ผ ๋•Œ 1. ๋ช…๋ น์–ด ์ธ์ถœ(IF) 2. ๋ช…๋ น์–ด ์‹คํ–‰(IE) [๋ช…๋ น์–ด ์‚ฌ์ดํด์˜ ๋‹จ๊ณ„ ์„ค๊ณ„] 1. ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ๋œ ๋ช…๋ น์–ด ์ธ์ถœ 2. ๋ช…๋ น์–ด ํ•ด๋… -> ์—ฐ์‚ฐ์ฝ”๋“œ, ์˜คํผ๋žœ๋“œ ํ•„๋“œ ๋ถ„๋ฆฌ 3. ์˜คํผ๋žœ๋“œ ํ•„๋“œ์—์„œ ์œ ํšจ์ฃผ์†Œ ์ฐพ์•„๋ƒ„ 4. ์œ ํšจ์ฃผ์†Œ๋กœ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ๋œ ์‹ค์ œ ํ”ผ์—ฐ์‚ฐ์ž ์ธ์ถœ 5. ์—ฐ์‚ฐ ์‹คํ–‰ 6. ์—ฐ์‚ฐ๊ฒฐ๊ณผ ์ €์žฅ -> ์‹ค์ œ ํ”ผ์—ฐ์‚ฐ์ž ๋ช…๋ น์–ด์— ํฌํ•จ๋˜๊ฑฐ๋‚˜ ๋ ˆ์ง€์Šคํ„ฐ์— ์ €์žฅ๋œ ๊ฒฝ์šฐ 3,4 ์ƒ๋žต [4๋‹จ๊ณ„ ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์กฐ] 1. ๋ช…๋ น์–ด ์ธ์ถœ(IF) 2. ๋ช…๋ น์–ด ํ•ด๋…(ID) 3. ์—ฐ์‚ฐ ์‹คํ–‰(EX) 4. ์—ฐ์‚ฐ๊ฒฐ๊ณผ ์ €์žฅ(WB) - ํŒŒ์ด..
4.2 ๋ณ‘๋ ฌ๊ณ„์‚ฐ ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ - ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ(parallel processing) : ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ฒ˜๋ฆฌ์žฅ์น˜๋กœ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ž‘์—… ๋™์‹œ ์ฒ˜๋ฆฌ(๋ช…๋ น์–ด ์—ฌ๋Ÿฌ ๊ฐœ ์žฅ์น˜์— ๋ถ„์‚ฐ์‹œ์ผœ ์ž‘์—… ์‹œ๊ฐ„ ์ค„์ด๋„๋ก ์„ค๊ณ„) - ์ˆœ์ฐจ์ฒ˜๋ฆฌ(sequential processing) : ์‹œ๊ฐ„์ ์ธ ์ˆœ์„œ๋Œ€๋กœ ์ž‘์—… ์ฒ˜๋ฆฌ : ์ปดํ“จํ„ฐ ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ ์ž‘์—…์— ๋Œ€ํ•œ ์ „๋ฌธ์ ์ธ ์šฉ์–ด - ํฐ ๋ฌธ์ œ๋Š” ์ž‘๊ฒŒ ์ชผ๊ฐœ์–ด ์ž‘์€ ๋ฌธ์ œ๋“ค๋กœ ๋งŒ๋“ค์–ด ๋™์‹œ์— ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๋…ผ๋ฆฌ - ๋ฉ€ํ‹ฐ์ฝ”์–ด ํ”„๋กœ์„ธ์„œ๊ฐ€ ๋ฐœ๋‹ฌํ•˜๋ฉด์„œ ๊ด‘๋ฒ”์œ„ํ•˜๊ฒŒ ์‚ฌ์šฉ๋จ ๋ณ‘๋ ฌ๊ณ„์‚ฐ์˜ ์œ ํ˜• - ๋น„ํŠธ ๋ ˆ๋ฒจ ๋ณ‘๋ ฌ๊ณ„์‚ฐ(bit-level parallelism) : CPU ํ”„๋กœ์„ธ์„œ ๋‚ด๋ถ€์—์„œ ์ปดํ“จํ„ฐ ์›Œ๋“œ์˜ ๋น„ํŠธ ์ˆ˜๋ฅผ ๋Š˜๋ ค ํ•œ ๋ฒˆ์— ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๋น„ํŠธ ์ˆ˜ ๋Š˜๋ฆผ - ๋ช…๋ น์–ด ๋ ˆ๋ฒจ ๋ณ‘๋ ฌ๊ณ„์‚ฐ(instruction-level parallelism) : ๊ฒฐ๊ณผ์— ์˜ํ–ฅ์„ ์ฃผ..
4.1 CPU ๋ช…๋ น์–ด ์‚ฌ์ดํด CPU ๋ช…๋ น์–ด ์‚ฌ์ดํด(instruction cycle) : ํ”„๋กœ๊ทธ๋žจ์—์„œ ์ฃผ์–ด์ง„ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ˜๋ณต์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๋Š” ์ผ๋ จ์˜ ์—ฐ์†์  ๋™์ž‘ ๊ธฐ๋ณธ ์‚ฌ์ดํด + (๊ฐ„์ ‘ ์‚ฌ์ดํด) + (์ธํ„ฐ๋ŸฝํŠธ ์‚ฌ์ดํด) - ๋ช…๋ น์–ด ์ธ์ถœ(instruction fetch) : CPU๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ์—์„œ ๋ช…๋ น์–ด ์ฝ์–ด ์˜ด - ๋ช…๋ น์–ด ์‹คํ–‰(instruction execution) : CPU๊ฐ€ ๋ช…๋ น ์ˆ˜ํ–‰ : ๋ช…๋ น์–ด ์ธ์ถœํ•˜์—ฌ ํ•ด๋…ํ•˜๊ณ  ์‹คํ–‰ [๋ช…๋ น์–ด ์ธ์ถœ] 1. ๋ช…๋ น์–ด๊ฐ€ ์ €์žฅ๋œ ์ฃผ์†Œ ์ง€์ • 2. ํ•ด๋‹น ์ฃผ์†Œ์— ์žˆ๋Š” ๋ช…๋ น์–ด ๊ฐ€์ ธ์˜ด 3. PC(Program Counter )์— ๋‹ค์Œ ๋ช…๋ น์–ด ์ฃผ์†Œ ์ €์žฅ [๋ช…๋ น์–ด ์‹คํ–‰] 4. ๋ช…๋ น์–ด ํ•ด๋… 5. ๋ช…๋ น์–ด ์‹คํ–‰์— ํ•„์š”ํ•œ CPU ๋‚ด์™ธ๋ถ€ ์ œ์–ด์‹ ํ˜ธ ๋ฐœ์ƒ : PC๊ฐ€ ๊ฐ€๋ฅดํ‚ค๋Š” ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์—์„œ ๋ช…๋ น์–ด ์ˆœ์„œ๋Œ€๋กœ fetchํ•ด..
3.7 TCP congestion control : window(receiver network๋กœ ์ „์†ก ์–ผ๋งˆ๋‚˜ ํ•  ์ง€) size๋ฅผ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•œ ๋Œ€์—ญํญ, loss๋ฅผ ์‚ดํŽด๋ณด๊ณ  ๊ฒฐ์ • - additive increase : loss๋ฐœ์ƒ ์ „๊นŒ์ง€ ์ฆ๊ฐ€์‹œํ‚ด - multiplicative decrease : loss๋ฐœ์ƒํ•˜๋ฉด ์ ˆ๋ฐ˜์œผ๋กœ ๊ฐ์†Œ - ํ˜ผ์žก๋„์— ๋”ฐ๋ผ congestion window size๋ฅผ ๋…ธ๋ž€ ๋ถ€๋ถ„๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ฒŒ ๋™์ ์œผ๋กœ ์„ค์ • * TCP sending rate : start์— congestion window์˜ MSS(Maximum Segment Size)๋Š” slow์ง€๋งŒ ์ ์  exponentialํ•˜๊ฒŒ ์ฆ๊ฐ€ [TCP tahoe ์ •์ฑ…] - timeout์ด๋‚˜ 3๋ฒˆ ๋ฐ˜๋ณต๋œ ACK ๋ฐœ์ƒํ•  ๋•Œ - congestion window์ด MSS๋ฅผ 1๋กœ ์ค„์ž„ [TCP RENO ์ •..
3.6 principle of congestion control : ๋„ˆ๋ฌด ๋งŽ์€ packet ์ „์†ก๋จ - packet loss(router์—์„œ buffer overflow) ๋ฐœ์ƒ - ๊ธด delay(router buffer์—์„œ queueing) ๋ฐœ์ƒ [1] [2] router 1๊ฐœ, finite buffer์ผ ๋•Œ * ์ด์ƒ์ ์ธ ๊ฒฝ์šฐ(๋ณด๋‚ด๋Š” ์ž…์žฅ์—์„œ ๋‹ค ์•ˆ๋‹ค๊ณ  ๊ฐ€์ •) -> router buffer๊ฐ€ ๋น„์–ด์žˆ์„ ๋•Œ๋งŒ ์ „์†ก(loss ์—†์Œ) : ๋ถˆ๊ฐ€๋Šฅ * loss๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฒƒ์„ ์•„๋Š” ๊ฒฝ์šฐ(๋ถˆ๊ฐ€๋Šฅ) -> loss๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ retransmission * duplicate(ํ˜„์‹ค์ ) -> timeout์œผ๋กœ ๋˜‘๊ฐ™์€ copy๋ณด๋‚ด๋Š” ์ƒํ™ฉ - ํ•„์š”์—†๋Š” ์žฌ์ „์†ก ๋งŽ์ดํ•˜๋ฉด network resource์— ๋‚ญ๋น„ [3] sender 4๊ฐœ, multihop path, timeout, retransmit..

๋ฐ˜์‘ํ˜•