์ด์ ๊ฒ์๊ธ์์ ์ด ํ๋์จ์ด์ ๊ธฐ๋ณธ ๊ตฌ์ฑ ๋ฐ ์ค๋ช ์ ๋ค๋ฃจ์๋ค. ์ด๋ฒ์๋ ํ๋์จ์ด ์ค์์ ๊ฐ์ฅ ์ค์ํ ์ญํ ์ ๋งก๊ณ ์๋ CPU์ ๋ํด์ ์ข ๋ ์์๋ณด๋ ค๊ณ ํ๋ค.
- CPU์ ๊ธฐ๋ฅ
- ๋ช
๋ น์ด ์ธ์ถ(Instruction Fetch)
๊ธฐ์ต์ฅ์น๋ก๋ถํฐ ๋ช ๋ น์ ์ฝ์ด์จ๋ค. ํน์ ๊ฐ์ง๊ณ ์จ๋ค. (๋ฐ์ดํฐ, ์ฃผ์)
- ๋ช
๋ น์ด ํด๋
(Instruction Decode)
์ํํด์ผ ํ ๋์์ ๊ฒฐ์ ํ๊ธฐ ์ํ์ฌ ์ธ์ถ๋ ๋ช ๋ น์ด๋ฅผ ํด๋ ํ๋ค.
- ๋ฐ์ดํฐ ์ธ์ถ(Data Fetch)
๋ช ๋ น์ด ์คํ์ ์ํด ๋ฐ์ดํฐ๊ฐ ํ์ํ ๊ฒฝ์ฐ์๋ ๊ธฐ์ต ์ฅ์น ๋๋ ์ ์ถ๋ ฅ ์ฅ์น๋ก๋ถํฐ ๊ทธ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์จ๋ค.
- ๋ฐ์ดํฐ ์ฒ๋ฆฌ(Data Process)
๋ฐ์ดํฐ์ ๋ํ ์ฐ์ ์ ๋๋ ๋ ผ๋ฆฌ์ ์ฐ์ฐ์ ์ํํ๋ค.
- ๋ฐ์ดํฐ ์ ์ฅ(Data Store)
์ํํ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํ๋ค.
์์ ๊ธฐ๋ฅ๋ค ์ค์์ ๋นจ๊ฐ์์ผ๋ก ํ์ํ ๋ด์ฉ์ ๋ชจ๋ ๋ช
๋ น์ ๊ณตํต์ผ๋ก ์ํ๋์ง๋ง, ํ๋์์ผ๋ก ํ์ํ ๋ด์ฉ์ ํ์ํ ๊ฒฝ์ฐ์๋ง ์คํ๋๋ค.
- CPU์ ๋ด๋ถ ๊ตฌ์กฐ
-
์ฐ์ ๋ ผ๋ฆฌ ์ฅ์น(ALU)
๊ฐ์ข ์ฐ์ ์ฐ์ฐ๋ค๊ณผ ๋ ผ๋ฆฌ ์ฐ์ฐ๋ค์ ์ํํ๋ ํ๋ก๋ค๋ก ์ด๋ฃจ์ด์ง ํ๋์จ์ด ๋ชจ๋์ด๋ค. ์ฌ์น์ฐ์ฐ๊ณผ ๊ฐ์ ์ฐ์ ์ฐ์ฐ ๊ทธ๋ฆฌ๊ณ AND, OR, NOT, XOR ๋ฑ๊ณผ ๊ฐ์ ๋ ผ๋ฆฌ ์ฐ์ฐ ๋ฐ >, <, = ๋ฑ๊ณผ ๊ฐ์ ๊ด๊ณ ์ฐ์ฐ, ๋น๊ต ์ฐ์ฐ์ ์ํํ๋ค. -
๋ ์ง์คํฐ ์ธํธ(register set)
CPU ๋ด๋ถ ๋ ์ง์คํฐ๋ค์ ์งํฉ์ด๋ค. ๊ธฐ์ต์ฅ์น๋ค ์ค์์ ์ก์ธ์ค ์๋๊ฐ ๊ฐ์ฅ ๋น ๋ฅด๋ฉฐ, CPU ๋ด๋ถ์ ํฌํจํ ์ ์๋ ๋ ์ง์คํฐ๋ค์ ์๊ฐ ์ ํ๋๋ค. ๋ฐ๋ผ์ ๋ ์ง์คํฐ๋ ์ ์ฉ ๋ ์ง์คํฐ์ ๋ฒ์ฉ ๋ ์ง์คํฐ๋ก ๋๋๋ค. ๋ํ ๋ ์ง์คํฐ์ ์ ์ฅ๋๋ ์ข ๋ฅ์ ๋ฐ๋ผ์ ๋ฐ์ดํฐ ๋ ์ง์คํฐ, ์ฃผ์ ๋ ์ง์คํฐ, ์ํ ๋ ์ง์คํฐ๋ก ๊ตฌ๋ถํ๋ค. -
ํ๋ก๊ทธ๋จ ์นด์ดํฐ(PC : Program Counter)
๋ค์์ ์ธ์ถํ ๋ช ๋ น์ด์ ์ฃผ์๋ฅผ ๊ฐ์ง๊ณ ์๋ ๋ ์ง์คํฐ์ด๋ค. ํ๋ก๊ทธ๋จ ์นด์ดํฐ๋ ๋ถ๊ธฐ(branch) ๋ช ๋ น์ด๊ฐ ์คํ๋ ๋ ๋ชฉ์ ์ง ์ฃผ์๋ก ๊ฐฑ์ (๋ชฉ์ ์ง๊ฐ ๋ณ๊ฒฝ)๋๋ค. -
๋์ฐ๊ธฐ(AC : Accumulator)
๋ฐ์ดํฐ๋ฅผ ์ผ์์ ์ผ๋ก ์ ์ฅํ๋ ๋ ์ง์คํฐ์ด๋ค. -
๋ช ๋ น์ด ๋ ์ง์คํฐ(IR : Instruction Register)
๊ฐ์ฅ ์ต๊ทผ์ ์ธ์ถ๋ ๋ช ๋ น์ด ์ฝ๋๊ฐ ์ ์ฅ๋์ด ์๋ ๋ ์ง์คํฐ์ด๋ค. -
๊ธฐ์ต ์ฅ์น ์ฃผ์ ๋ ์ง์คํฐ(MAR : Memory Address Register)
ํ๋ก๊ทธ๋จ ์นด์ดํฐ(PC)์ ์ ์ฅ๋ ๋ช ๋ น์ด ์ฃผ์๊ฐ ์์คํ ์ฃผ์ ๋ฒ์ค๋ก ์ถ๋ ฅ๋๊ธฐ ์ ์ ์ผ์์ ์ผ๋ก ์ ์ฅ๋๋ ์ฃผ์ ๋ ์ง์คํฐ์ด๋ค. -
๊ธฐ์ต ์ฅ์น ๋ฒํผ ๋ ์ง์คํฐ(MBR : Memory Buffer Register)
๊ธฐ์ต ์ฅ์น์ ์ฐ์ฌ์ง ๋ฐ์ดํฐ ํน์ ๊ธฐ์ต ์ฅ์น๋ก๋ถํฐ ์ฝํ์ง ๋ฐ์ดํฐ๋ฅผ ์ผ์์ ์ผ๋ก ์ ์ฅํ๋ ๋ฒํผ ๋ ์ง์คํฐ ์ด๋ค.
์์ ๋ ์ง์คํฐ ์ธํธ๋ฅผ ๊ทธ๋ฆผ์ผ๋ก ๋ํ๋ด๋ฉด ์๋์ ๊ฐ์ด ๋ํ๋ผ ์ ์๋ค.
๊ทธ๋ฆผ์์ ๋ณด๋ค์ํผ CPU ๋ด๋ถ์๋ ํด๋น ๊ธฐ๋ฅ์ ๋ด๋นํ๋ ๋ ์ง์คํฐ๋ค์ด ๋ฐฐ์น๋์ด ์๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ฌํ ๋ ์ง์คํฐ๋ค์ ๊ฐ๊ฐ์ ๋ฐ์ดํฐ ํน์ ๋ช ๋ น์ด๋ฅผ ์ ์ฅํ๊ณ ์ ์ถ๋ ฅ์ ํ๋ฉฐ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ๋ก ๊ฐ์ ์ ๋ฌํ๊ณ ์ ๋ฌ๋ฐ๋๋ค.
-
์ ์ด์ ๋ํธ(์ ์ด ์ฅ์น)
ํ๋ก๊ทธ๋จ ์ฝ๋(๋ช ๋ น์ด)๋ฅผ ํด์ํ๊ณ , ๊ทธ๊ฒ์ ์คํํ๋ ์ ์ด ์ ํธ(Control Signals)๊ฐ ์์ฐจ์ ์ผ๋ก ๋ฐ์ํ๋ ํ๋์จ์ด ๋ชจ๋ -
๋ด๋ถ CPU ๋ฒ์ค(Internal CPU bus)
ALU์ ๋ ์ง์คํฐ๋ค ๊ฐ์ ๋ฐ์ดํฐ ์ด๋์ ์ํด ๋ฐ์ดํฐ ์ ๋ค๊ณผ ์ ์ด ์ ๋ํธ๋ก๋ถํฐ ๋ฐ์ํ๋ ์ ์ด ์ ํธ ์ ๋ค๋ก ๊ตฌ์ฑ๋ ๋ด๋ถ ๋ฒ์ค์ด๋ค. ์ธ๋ถ์ ์์คํ ๋ฒ์ค๋ค๊ณผ๋ ์ง์ ์ฐ๊ฒฐ๋์ง ์์ผ๋ฉฐ, ๋ฐ๋์ ๋ฒํผ ๋ ์ง์คํฐ(MBR) ํน์ ์์คํ ๋ฒ์ค ์ธํฐํ์ด์ค ํ๋ก๋ฅผ ํตํ์ฌ ์์คํ ๋ฒ์ค์ ์ ์ํ๋ค.
'์ด์์ฒด์ ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
20180111 ์ด์์ฒด์ ๊ตฌ์ฑ (0) | 2018.01.11 |
---|---|
2018-01-11 ์ปดํจํฐ ์์คํ ์ ๋์ : ๋ช ๋ น์ด ์คํ (0) | 2018.01.11 |
2018-01-06 ํ๋์จ์ด ๊ธฐ๋ณธ ๊ตฌ์ฑ ๋ฐ ์ค๋ช 02 (0) | 2018.01.06 |
2018-01-06 ํ๋์จ์ด ๊ธฐ๋ณธ ๊ตฌ์ฑ ๋ฐ ์ค๋ช 01 (0) | 2018.01.06 |
2018-01-05 ์ปดํจํฐ ์์คํ ๊ธฐ๋ณธ (0) | 2018.01.05 |