๐ ํด๋น ํฌ์คํ ์ CS ์์ 'ํ ๊ถ์ผ๋ก ์ฝ๋ ์ปดํจํฐ ๊ตฌ์กฐ์ ํ๋ก๊ทธ๋๋ฐ'์ ์ฝ๊ณ ์ ๋ง์ ๋ฐฉ์์ผ๋ก ์ ๋ฆฌ, ์์ฝํ๋ ๊ธ์์ ์๋ฆฝ๋๋ค. ํด๋น ๋ด์ฉ์ 'ํ ๊ถ์ผ๋ก ์ฝ๋ ์ปดํจํฐ ๊ตฌ์กฐ์ ํ๋ก๊ทธ๋๋ฐ' ์์ ์ ๊ธฐ๋ฐํ์์์ ์๋ฆฝ๋๋ค.
์ด๋ฒ ํฌ์คํ ์์๋ ์กฐํฉ ๋ ผ๋ฆฌ์ ํ๊ณ์ ์ฆ, ์ด๋ค ๊ฐ์ ๊ธฐ์ตํ ์ ์๋ค๋ ์ ์ ํด๊ฒฐํ ์ ์๋ ์์ฐจ ๋ ผ๋ฆฌ์ ๋ํด ๋ฐฐ์๋ณด๋๋ก ํ์. ๊ธ ์ ๋ชฉ์ฒ๋ผ ์์ฐจ ๋ ผ๋ฆฌ๋ ํํ ์ฐ๋ฆฌ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๊ธฐ๋ฅ์ ํ๋ค๊ณ ์๊ณ ์๋ ์ปดํจํฐ์ '๋ฉ๋ชจ๋ฆฌ' ์ '๋์คํฌ'์ ํต์ฌ ์์์ด๋ค.
์์ฐจ ๋ ผ๋ฆฌ์ '์์ฐจ'๋ ์์(Sequence) ๋ผ๋ ์ฉ์ด์์ ๋น๋กฏ๋์๋ค. ์์๋ผ๋ ๊ฒ์ ์๊ฐ์ ์ผ๋ก ์ด๋ค ๊ฐ ๋ค์ ์ค๋ ๋ค๋ฅธ ๊ฐ์ ์๋ฏธํ๋ค. ๊ทธ๋ฐ๋ฐ ์ปดํจํฐ๋ ์ฌ๋์ฒ๋ผ '์๊ฐ'์ด๋ผ๋ ์์๋ฅผ ํ์์ ์ผ๋ก๋ ์ธ์งํ์ง ๋ชปํ๋ค. ๋ฐ๋ผ์ ์ด๋ค ํ๋ก ์ฅ์น๋ฅผ ๋ง๋ค์ด ์ปดํจํฐ์๊ฒ๋ ์๊ฐ์ด๋ผ๋ ์์๋ฅผ ์ธ์งํ ์ ์๋๋ก ํด์ผ ํ๋ค. ์ฌ๊ธฐ์ ์๊ฐํ๋ '์ด๋ค ํ๋ก ์ฅ์น'๋, ํ๋๋ ์๊ฐ์ ๋ง๋ค์ด๋ด๋ ํ๋ก, ๋ค๋ฅธ ํ๋๋ ๊ณผ๊ฑฐ๋ฅผ ๊ธฐ์ตํ๊ธฐ ์ํ ํ๋ก๋ฅผ ์๋ฏธํ๋ค. ๊ฐ์ฅ ๋จผ์ ์๊ฐ์ ๋ง๋ค์ด๋ด๋ ํ๋ก์ ๋ํด ์์๋ณด๋๋ก ํ์.
1. ์ปดํจํฐ์์ ์๊ฐ์ ๋ง๋ค์ด๋ด๋ผ! ๋ฐ์ง์์ ํด๋ก
๋ณธ๋ก ์ ๋ค์ด๊ฐ๊ธฐ์ ์์ ์ปดํจํฐ์์ ์๊ฐ์ ์ด๋ป๊ฒ ๋ง๋ค์ด๋ด์ผ ํ ๊น? ์ ๋ต์ ์ฃผ๊ธฐ(periodic) ํจ์๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด๋ค. ์ฌ๋์ ์ผ์ข ์ ์ฃผ๊ธฐ ํจ์๋ฅผ ํ์ฉํด์ ์๊ฐ์ ์ธก์ ํ๊ณ ์๋ค. ์๋ฅผ ๋ค์ด, ์ง๊ตฌ์ ์์ ์ด ๋ฐ๋ก ์ฃผ๊ธฐ ํจ์์ด๋ค. ์ง๊ตฌ๊ฐ ํ ๋ฐํด๋ฅผ ๋ค ๋๋ฉด ํ๋ฃจ(1์ผ)์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. ์ด ํ๋ฃจ๋ฅผ ๋ ์๊ฒ ์ชผ๊ฒ์ ์๊ฐ, ๋ถ, ์ด๋ก ๊ตฌ๋ถํ๋ค. ์ฆ, ํ๋ฃจ๋ 24์๊ฐ, 1์๊ฐ์ 60๋ถ, 1๋ถ์ 60์ด. ์ด๋ฐ ๊ฒ๋ค๋ ๋ชจ๋ ์ฃผ๊ธฐ ํจ์์ ์ข ๋ฅ๋ค์ด๋ค. ์ด๋ ๊ฒ ์ฌ๋์ ์ฃผ๊ธฐ ํจ์๋ค์ ํ์ฉํด ์ด์๊ฐ๋ฉด์ ์๊ฐ์ ์ธก์ ํ๊ณ ์๋ค.
์ปดํจํฐ๋ ๋ง์ฐฌ๊ฐ์ง๋ก ์ปดํจํฐ ์์ฒด์๊ฒ ์ ์ฉํ ์ฃผ๊ธฐ ํจ์๋ฅผ ๋ง๋ค์ด๋ผ ์ ์๋ค๋ฉด ์ปดํจํฐ์์ ์๊ฐ์ด๋ผ๋ ๊ฐ๋ ์ ๋ง๋ค์ด๋ผ ์ ์๋ค. ๋จ, ์ปดํจํฐ๋ ์ ์๊ณตํ์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ฃผ๊ธฐ์ ์ธ '์ ๊ธฐ ์ ํธ'๊ฐ ํ์ํ๋ค.
์ธ๋ฒํฐ๋ฅผ ์ฌ์ฉํด์ ์ฃผ๊ธฐ์ ์ธ ์ ๊ธฐ ์ ํธ๋ฅผ ๋ง๋ค์ด๋ผ ์ ์๋ ๊ฒ์ด ๋ฐ๋ก ๋ฐ์ง์์ด๋ค. ๋ฐ์ง์๋ ์ธ๋ฒํฐ๋ฅผ ํ์ฉํด์ ์ธ๋ฒํฐ์ ์ถ๋ ฅ์ ์ ๋ ฅ์ ๋ค์ ์ฐ๊ฒฐ์ ํ๊ฒ ๋๋ค. ์๋ ๊ทธ๋ฆผ์ ๋ณด์.
์ ๊ทธ๋ฆผ์ฒ๋ผ ์ถ๋ ฅ์ ์ ๋ ฅ์ ๋ค์ ์ฐ๊ฒฐํ๋ ๊ฒ์ ๋๋จน์(feedback) ์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. ์ด๋ฐ ๊ณผ์ ์ ํตํด ์ถ๋ ฅ์ด 0๊ณผ 1์ฌ์ด๋ฅผ ์ง๋ ํ๋ค(์๋ค๊ฐ๋ค ํ๋ค). ์ด๋ ๊ฒ ์ง๋ํ๋ ์ฃผ๊ธฐ ํจ์๋ก ์๊ฐ์ ์ธก์ ํ ์ ์์ ๊ฒ์ด๋ค. ๊ทธ๋ฐ๋ฐ ์์ฝ๊ฒ๋ ์ง๋ํ๋ ์๋๋ ์ ํ ์ง์ฐ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ฉฐ ์จ๋์ ๋ฐ๋ผ๋ ๋ฌ๋ผ์ง๋ ๊ฒฝํฅ์ด ์๋ค. ๊ทธ๋์ ์ข ๋ ์์ ์ ์ธ ์ฃผํ์๋ก ์ง๋ํ๋ ๋ฐ์ง์๊ฐ ์๋ค๋ฉด ๋ ์ ํํ ์๊ฐ์ ์ธก์ ํ ์ ์๋ค.
์ด๋ฅผ ์ํด ์ ์ ๋น์ฉ์ผ๋ก ํจ์จ์ ์ผ๋ก ์ ํํ ๋ฐ์ง์๋ฅผ ๋ง๋ค ์ ์๋ ๋ฐฉ๋ฒ์ ํฌ๋ฆฌ์คํธ์ ํ์ฉํ๋ ๊ฒ์ด๋ค. ์ฌ๊ธฐ์ ํฌ๋ฆฌ์คํธ์ ์ฐ๋ฆฌ๊ฐ ์๋ ๊ทธ ๋ณด์์ด๋ผ๊ณ ๋ถ๋ฅด๋ ํฌ๋ฆฌ์คํธ์ด ๋ง๋ค. ์ด ํฌ๋ฆฌ์คํธ์ ์ ๊ธฐ์ ๊ด๋ จ์ด ์๋๋ฐ, ์ ๊ทน์ ํฌ๋ฆฌ์คํธ์ ์ฐ๊ฒฐํด ํฌ๋ฆฌ์คํธ์ ์์ถํ๋ฉด ํฌ๋ฆฌ์คํธ์ด ์ ๊ธฐ๋ฅผ ๋ง๋ค์ด๋ธ๋ค. ๊ทธ๋ฆฌ๊ณ ์ ๊ทน์ ์ ๊ธฐ๋ฅผ ๊ฐํ๋ฉด ์ฐ๊ฒฐ๋์ด ์๋ ํฌ๋ฆฌ์คํธ์ ๊ตฌ๋ถ๋ฌ์ง๋ค. ํฌ๋ฆฌ์คํธ์ด ๊ตฌ๋ถ๋ฌ์ก์์ผ๋ก ์์ถ์ ๊ฐํ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ๋ค์ ์ ๊ธฐ๊ฐ ๋ฐ์ํ๋ค. ๊ทธ๋ฌ๋ฏ๋ก ํฌ๋ฆฌ์คํธ ๋ฐ์ง์๋ ํฌ๋ฆฌ์คํธ์ ์ ๊ธฐ๋ฅผ ๊ฐํด์ ๋ค์ ์ ๊ธฐ๋ฅผ ์ป์ด๋ผ ์ ์๋ค.
์ด๋ ๊ฒ ์ ๋ ฅํ ์ ๊ธฐ๋ก๋ถํฐ ํฌ๋ฆฌ์คํธ์ด ๋ค์ ์ ๊ธฐ๋ฅผ ๋ง๋ค์ด๋ผ ๋๊น์ง ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ์์ธก์ด ๊ฐ๋ฅํ๋ฉฐ ๋งค์ฐ ์ ํํ๋ค. ๊ทธ๋์ ์์(Quartz)์ด ์ด๋ฐ ๋ชฉํ๋ก ์ฌ์ฉํ ์ ์๋ ๊ฐ์ฅ ์ข์ ํฌ๋ฆฌ์คํธ ๊ณ ์ฒด ๋ฌผ์ง์ด๋ค. ์์ฆ์๋ ์ ์ฐฉ์ฉํ์ง ์์ ์ ์์ง๋ง ์ค๋งํธ ์์น๊ฐ ๋์ค๊ธฐ ์ด์ ์ผ๋ฐ ์๋ ๋ก๊ทธ ์๊ณ ๋์์ธ์ ๋ณด๋ค๋ณด๋ฉด ๋งํฌ ๋ฐ์ QUARTZ ๋ผ๋ ํ์์ด ์๋ ๊ฑธ ๋ณผ ์ ์๋ค. ์ด๊ฒ์ด ๋ฐ๋ก ํฌ๋ฆฌ์คํธ ๋ฐ์ง๊ธฐ๋ฅผ ๋ง๋๋ ์๋ฃ๋ผ๋ ๊ฒ์ ์ค๋ช ํ๋ ๊ฒ์ด์๋ค!(์ด์ ์๊ฒ ๋จ..)
๋ค์ ์์๋ณผ ๊ฐ๋ ์ ํด๋ญ(Clock)์ด๋ค. ํด๋ญ์ ์ผ๋ช ์๊ฐ์ ์ ์ ์๊ฒ ํด์ฃผ๋ ์ ๊ธฐ ์ ํธ๋ฅผ ์๋ฏธํ๋ค. ์๋ฅผ ๋ค์ด, ์ปดํจํฐ์ ์ ์์ ํค๋ฉด ์ ๋ฅ๊ฐ ํ๋ฅด๋ ์ํ(ON)์ ํ๋ฅด์ง ์๋ ์ํ(OFF)๊ฐ ๋ฐ๋ณต๋๋ค. ์ด ๋, ์ด๋ ๊ฒ ON/OFF๊ฐ ๋ฐ๋ณต๋๋(์ฃผ๊ธฐ์ ์ธ) ์ ๋ฅ์ ํ๋ฆ์ ์ํด ์ปดํจํฐ๋ฅผ ๊ตฌ์ฑํ๋ ๋ถํ๋ค์ด ์๋ํ๊ฒ ๋๋ค. ์ด ๋ ๋ฐ๋ณต๋๋(์ฃผ๊ธฐ์ ์ธ) ์ ๋ฅ์ ํ๋ฆ์ ๋ฐ๋ก 'ํด๋ญ'์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. ์ด๋ฌํ ํด๋ญ์ ํ๋ก์ ํ์ด์ค๋ฅผ ๊ฒฐ์ ํ๊ฒ ๋๋ค. ์ฆ, ํ๋ก์ ์ ํ ์ง์ฐ ์๊ฐ์ ์ํด์ ์ต๋ ํด๋ญ ์๋๊ฐ ๊ฒฐ์ ๋๊ฒ ๋๋ค.
2. ์ปดํจํฐ์์ ์ ๋ณด๋ฅผ ๊ธฐ์ตํด๋ผ! ๋์น
[1.๋ชฉ์ฐจ]์์๋ ์ปดํจํฐ์์ ์๊ฐ์ ํํํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด์๋ค. ์ด๋ฒ์๋ ์ ๋ณด(1๋นํธ)๋ฅผ ๊ธฐ์ตํ ์ ์๋๋ก ํด์ฃผ๋ ํ๋ก์ ๋ํด ์์๋ณด์.
๋จผ์ ์๋์ ๋๋จน์์ ์ฌ์ฉํ OR ๊ฒ์ดํธ ๋์น๋ฅผ ์ดํด๋ณด์.
์์ ๊ฐ์ ๋์น๋ฅผ ์ฌ์ฉํ๋๋ฐ, ์ด๊ธฐ out(์ถ๋ ฅ) ๊ฐ์ด 0์ผ๋ก ์์ํ๋ค๊ณ ๊ฐ์ ํด๋ณด์. ๊ทธ๋ฆฌ๊ณ in(์ ๋ ฅ์ด)์ด 1์ด ๋๋ฉด out๋ 1์ด ๋๋ค. ๊ทธ๋ฐ๋ฐ ์ด ๋, out์ด ์ ๋ ฅ์ ๋๋จน์ ๋๊ธฐ ๋๋ฌธ์ in์ด ๋ค์ 0์ด ๋๋ค๊ณ ํด๋ out์ ์ฌ์ ํ 1๋ก ์ญ ์ ์ง๊ฐ ๋๋ค. ์ด๋ ๊ฒ ํจ์ผ๋ก์จ ์ด ํ๋ก๋ ๊ณผ๊ฑฐ ์ํ๋ฅผ ๊ธฐ์ตํ๊ฒ ๋๋ค. ํ์ง๋ง ์์ ๊ฐ์ ํ๋ก๋ฅผ ์ฌ์ฉํ๋ฉด out์ ๋ค์ 0์ผ๋ก ๋ง๋ค ๋ฐฉ๋ฒ์ด ์กด์ฌํ์ง ์๋๋ค. ๊ทธ๋์ ์ถ๊ฐ์ ์ธ ์์ ์ด ์ฝ๊ฐ ํ์ํ๋ค.
๋์น, S-R ๋์น, Gate๊ฐ ์๋ ๋์น, ํ๋ฆฝํ๋กญ ๋ฑ์ ๋ํด์๋ ๋งค์ฐ ์ฝ๊ฒ ์ค๋ช ํด์ฃผ๋ ๋ธ๋ก๊ทธ๊ฐ ์์๋ค. ์ด๋ฅผ ์ฝ์ด๋ณด๋ ๊ฒ์ด ํ์๊ฐ ์ค๋ช ํ๋ ๊ฒ๋ณด๋ค ์ดํด๊ฐ ๋ ์์ํ ๊ฒ์ด๋ผ๊ณ ํ์ (?)ํ์ฌ ํด๋น ๋ธ๋ก๊ทธ๋ฅผ ์ฝ์ด๋ณด๋๋ก ํ์.
ํ๋ฆฝํ๋กญ ์ค D ํ๋ฆฝํ๋กญ์ ์์ฉํ๋ฉด ๋ ์ง์คํฐ(Register)๋ผ๋ ํ๋ก๋ฅผ ์ฝ๊ฒ ๋ง๋ค ์ ์๋ค. ๋ ์ง์คํฐ๋ ํด๋ก์ ๊ณต์ ํ๋ ์ฌ๋ฌ D ํ๋ฆฝํ๋กญ์ ํ๋์ ํจํค์ง์ ๋ฃ์ ๊ฒ์ด๋ค.
์์์ $enable$์ ์นด์ดํฐ๋ฅผ ํ์ฑํ ์ํฌ์ง ์ฌ๋ถ๋ฅผ ๊ฒฐ์ ํ๋ ์ ๋ ฅ์ด๋ค. $clock$์ ๋ง ๊ทธ๋๋ก ํด๋ญ์ ์ญํ ์ ํ๋ ๊ฒ์ธ๋ฐ, ์ด๋ฅผ ์ฌ์ฉํด์ ๊ฐ์ฐ๊ธฐ ๊ฒฐ๊ณผ๋ฅผ ๋ ์ง์คํฐ์ ์ ์ฅํ๊ฒ ๋๋ค. ์ด๋ ๊ฒ ์ ์ฅํ๊ฒ ๋๋ฉด ์ ๋ ฅ์ด ๋ฐ๋์ด๋ ๊ฐ์ฐ๊ธฐ์ ๊ฒฐ๊ณผ๊ฐ ๋ฐ๋์ง ์๋ '๊ธฐ์ต'์ ํ๊ฒ ๋๋ ๊ฒ์ด๋ค.
3. ๋ฉ๋ชจ๋ฆฌ ์กฐ์ง๊ณผ ์ฃผ์ ์ง์
์ ๋ชฉ์ฐจ์ ์ฐธ์กฐ ๋ธ๋ก๊ทธ๋ฅผ ์ฝ์ด๋ณด์๋ค๋ฉด ๋นํธ๋ฅผ ํ๋ ๊ธฐ์ตํ ๋ ํ๋ฆฝํ๋กญ์ด ์ ์ฉํ๋ค๋ ๊ฒ์ ์๊ฒ ๋์์ ๊ฒ์ด๋ค. ๊ทธ๋ฆฌ๊ณ ๋ ์ง์คํฐ๋ฅผ ์ฌ์ฉํ๋ฉด ์ฝ๊ฒ ์ฌ๋ ค ๋นํธ๋ฅผ ์ ์ฅํ ์ ์๋ค๋ ์ฌ์ค๋ ์์๋ค. ํ์ง๋ง ๋ง์ฝ ํจ์ฌ ๋ ๋ง์ ์ ๋ณด๋ฅผ ์ ์ฅํด์ผ ํ๋ค๋ฉด ์ด๋ป๊ฒ ํ ๊น? ์ฒซ ๋ฒ์งธ๋ ๋ ์ง์คํฐ๋ฅผ ์ฌ๋ฌ๊ฐ ๋ง์ด ์์๋๋ ๊ฒ์ด๋ค.
ํ์ง๋ง ์ฌ๋ฌ๊ฐ ์์๋ ๋ ์ง์คํฐ ๊ฐ๊ฐ์ ์ด๋ค ๊ฐ๋ค์ ์ ์ฅํด๋์๋๋ฐ, ๊ฐ์ ์ฝ์ด๋ค์ผ ๋ ์ ์ฅํด๋์ ๋ ์ง์คํฐ๊ฐ ์ด๋ค ๊ฒ์ธ์ง ์ด๋ป๊ฒ ๊ตฌ๋ถํ ๊น? ์ด ๋ ๋ฐ๋ก ๋ ์ง์คํฐ์ '๋ฒํธ'๋ฅผ ๋ถ์ฌํ๋ฉด ๋๋ค. ์ด ๋ฒํธ๋ฅผ ๋ฐ๋ก '์ฃผ์(address)'๋ผ๊ณ ํ๋ค. ์ด๋ ๊ฒ ๋ ์ง์คํฐ์ ์ฃผ์๋ฅผ ํ ๋นํ๋ ๊ฒ์ ๋์ฝ๋๋ฅผ ํ์ฉํ ์ ์๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๊ฐ ์ฝ๊ธฐ๋ฅผ ์ํ๋ ๊ฐ์ด ์ ์ฅ๋ ๋ ์ง์คํฐ๊ฐ ๋ฌด์์ธ์ง ์์์ ๋ ์ด์ ๋ ์ง์คํฐ์ ์ถ๋ ฅ์ ์ ํํ ๋ฐฉ๋ฒ์ด ํ์ํ๋ค. ์ด๋ด ๋๋ ์ฌ๋ฌ ์ ๋ ฅ ์ค ํ๋๋ฅผ ์ ํํ๋ ์ฆ, ์ฌ๋ฌ ๋ ์ง์คํฐ ์ค ํน์ ํ๋์ ๋ ์ง์คํฐ๋ฅผ ์ ํํ๋ ์ค๋ ํฐ(Selector)๋ฅผ ์ฌ์ฉํ ์ ์๋ค.(๋์ฝ๋, ์ค๋ ํฐ์ ๋ํ ๊ฐ๋ ์ ์ ๋ฒ ํฌ์คํ ์์ ๋ฐฐ์ ๋ค)
๋ฉ๋ชจ๋ฆฌ ํ๋ก์์ ๋ง์ฝ 32๋นํธ ์๋ฅผ ๋ค๋ฃจ๊ณ ์ถ๋ค๋ฉด ์ ๋ ฅ๊ณผ ์ถ๋ ฅ์ 32๊ฐ์ฉ ์ฐ๊ฒฐํด์ผ ํ๊ณ , ์ฃผ์, ์ ์ด ์ ํธ, ์ ์๋ ์ฐ๊ฒฐํด์ผ ํ๋ค. ํ๋์จ์ด ์ค๊ณ์๋ค์ ์ด๋ฐ ๋ง์ ์ฐ๊ฒฐ์ ์ค์ด๊ธฐ ์ํด์ ๋ฉ๋ชจ๋ฆฌ๋ผ๋ ๊ฒ์ด ์ฝ๊ณ ์ฐ๋ ๊ฒ์ ๋์์ ํ ๊ฒฝ์ฐ๋ ๊ฑฐ์ ์๋ค๋ ๊ฒ์ ํ์ฉํด ์ฐ๊ฒฐ์ ๋ง์ด ์ค์๋ค. ์ฆ, ์ ๋ ฅ๊ณผ ์ถ๋ ฅ ๋ฐ์ดํฐ ์ฐ๊ฒฐ์ ํฉ์น๊ณ read/write ์ ์ด ์ ํธ๋ฅผ ์ฌ์ฉํ๋ค. ์๋์ ๊ทธ๋ฆผ์ ๋จ์ํํ ๋ฉ๋ชจ๋ฆฌ์ ์คํค๋งคํฑ ๊ธฐํธ์ด๋ค.
์ ๊ทธ๋ฆผ์์ $enable$ ์ ์ด ์ ํธ๋ ๋ฉ๋ชจ๋ฆฌ ์ ์ฒด๋ฅผ ์ผ๊ฑฐ๋ ๊บผ์ ์ฌ๋ฌ ๋ฉ๋ชจ๋ฆฌ ์นฉ์ ํจ๊ป ์ฐ๊ฒฐํ ์ ์๋๋ก ํด์ค๋ค. ๋, ๊ทธ๋ฆผ์์ ํ์ดํ๋ก ๋์ด ์๋ ๋ถ๋ถ์ด ์๋ค. ์ด๋ '๋ฒ์ค(bus)'๋ผ๊ณ ๋ถ๋ฅด๋๋ฐ, ๋ฒ์ค๋ ๋นํธ๋ฅผ ์ด๋์ํค๋ ๋๋ ๊ตํต ์๋จ์ ์๋ฏธํ๋ค. ๋ฉ๋ชจ๋ฆฌ ์นฉ์์๋ ์ฃผ์ ๋ฒ์ค, ๋ฐ์ดํฐ ๋ฒ์ค๊ฐ ์กด์ฌํ๋ค.
3-1. ์์ ์ ๊ทผ ๋ฉ๋ชจ๋ฆฌ, RAM(Random Access Memory)
์ง๊ธ๊น์ง ์ดํด๋ณธ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์์ ์ ๊ทผ ๋ฉ๋ชจ๋ฆฌ, RAM(๋จ) ์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. ๋จ์ ์ฌ์ฉํ๋ฉด ๋ฉ๋ชจ๋ฆฌ ์์น ์ค ์ํ๋ ๊ณณ์ ์ด๋๋ ์ํ๋ ์์๋ก ์ฐ๊ฑฐ๋ ์ฝ์ ์ ์๋ค. ๋จ ์ค์์๋ ์ ์ ๋จ(SRAM, Static RAM)๊ณผ ๋์ ๋จ(DRAM, Dynamic RAM)์ผ๋ก ํฌ๊ฒ ๋๋๋ค.
๋จผ์ ์ ์ ๋จ์ธ SRAM์ ๋น์ธ์ง๋ง ๋งค์ฐ ๋น ๋ฅธ ํน์ฑ์ด ์๋ค. SRAM์ ๊ฐ ๋นํธ์ ํธ๋์ง์คํฐ๊ฐ 6๊ฐ๊ฐ ๋ค์ด๊ฐ์ ๊ณต๊ฐ์ ๋ง์ด ์ฐจ์งํ๋ค. ๊ทธ๋์ ์์ญ์ต~์์กฐ ๋นํธ๋ฅผ ์ ์ฅํ๊ธฐ์๋ ๋ถ์ ์ ํ ์ ์๋ค. ๋ฐ๋ฉด์ ๋์ ๋จ์ธ DRAM์ ์ผ์ข ์ ๋ฒํท์ธ ์ปคํจ์ํฐ(Capacitor) ์์ ์ ์๋ฅผ ๋ด๊ณ ํธ๋์ง์คํฐ 1๊ฐ๋ง์ ํ์ฉํด ๋๊ป์ ๋ฎ๋๋ค. ํ์ง๋ง ์ด ๋ฒํท์ ์ด์ง ๋ถ์(?)ํด์ ์์ ์๋ ์ ์๊ฐ ๋ฐ๊นฅ์ผ๋ก ์ ์๋ ์๋ค. ๋ฐ๋ผ์ ์ฃผ๊ธฐ์ ์ผ๋ก ๊ฐ๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ฐฑ์ ํด์ฃผ์ด์ผ ํ๋ค. ์ฆ, ์ ์๋ฅผ ๋ฒํท ์์ ์ฃผ๊ธฐ์ ์ผ๋ก ๋ค์ ๋ฃ์ด์ฃผ์ด์ผ ํ๋ค. DRAM์ ์ง์ ๋(๋จ์ ๋ฉด์ ๋น ๋นํธ ๊ฐ์, ๋ฐ๋๋ฅผ ์๋ฏธ)๊ฐ ๋๊ธฐ ๋๋ฌธ์ ํฐ ๋ฉ๋ชจ๋ฆฌ ์นฉ์ ์ฌ์ฉ๋๋ค. ํฐ ๋ฉ๋ชจ๋ฆฌ ์นฉ์ ๊ณง ์ฃผ์๊ฐ ๋ ๋ง๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค.
(๋จ์ ๊ตฌ์ฒด์ ์ธ ์ข ๋ฅ์ ํน์ฑ์ ๋ํด์๋ ํด๋น ๋ธ๋ก๊ทธ๋ฅผ ์ฐธ๊ณ ํด๋ณด๋๋ก ํ์)
์ด๋ฌํ SRAM, DRAM์ ๋ชจ๋ ํ๋ฐ์ฑ ๋ฉ๋ชจ๋ฆฌ์ด๋ค. ์ฆ, ์ ์์ด ์ ๊น ๊บผ์ง๊ฑฐ๋ ๋๋ ์์ ํ ๊บผ์ง๋ค๋ฉด ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ค์ ๋ชจ๋ ์ฌ๋ผ์ง๋ค. ํ์ง๋ง ์ฝ์ด ๋ฉ๋ชจ๋ฆฌ๋ผ๋ RAM์ ๋ ๋ค๋ฅธ ์ข ๋ฅ๊ฐ ์กด์ฌํ๋๋ฐ, ์ด๋ ๋ฐ์ดํฐ๊ฐ ๋ ์๊ฐ์ง ์๋ ๋นํ๋ฐ์ฑ์ ํน์ฑ์ ๊ฐ๊ณ ์๋ค.
3-2. ์ฝ๊ธฐ ์ ์ฉ ๋ฉ๋ชจ๋ฆฌ, ROM(Read-Only Memory)
ROM์ ๋ง ๊ทธ๋๋ก ํ ๋ฒ ์ฐ๊ณ ๋๋ฉด ์ฌ๋ฌ๋ฒ ์ฝ์ ์๋ ์์ง๋ง ๋ค์๋ ์ธ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋ฏธํ๋ค. ์ฑ ์์๋ ์ด ROM์ ์ด๊ธฐ ์ ํ๊ณผ ์ ์ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์๋กญ๊ฒ ๋ฐ์ ๋์ด ์จ ROM ์ข ๋ฅ๋ค์ ๋ํด ์ค๋ช ํด์ค๋ค. ์ด์ ๋ํด ๊ถ๊ธํ๋ค๋ฉด ์ฑ ์ ํตํด ์ฝ์ด๋ณด๋๋ก ํ์. ๊ทธ๋ฆฌ๊ณ ๊ฐ์ธ์ ์ผ๋ก ROM ํ๋ ์๊ฐ๋ ๊ฒ์ด ์์๋๋ฐ, ๋ฐ๋ก Apache Spark์ RDD ํ์ ์ด์๋ค. Spark์ ๋ํ ๊ฐ๋ ์ ํ์ฉํธ๋์ ์ฌ๋ผ์ด๋๋ฅผ ํตํด ๋ฐฐ์ ์๋๋ฐ, ๊ทธ ๋ ์ค๋ช ์๋ฃ์์ ์ฝ๊ธฐ๋ง ๊ฐ๋ฅํ ๋ฉ๋ชจ๋ฆฌ์ธ ROM์ ์ ์ ํ ์ฌ์ฉํด Spark์ RDD๊ฐ ๋ง๋ค์ด์ก๋ค๋ ๊ฒ์ ๋ณธ ์ ์ด ์๋ค.
4. ๋๋์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํด๋์, ๋ธ๋ก ์ฅ์น
์์์ ๋ฐฐ์ด RAM, ROM ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ ์ฝ๊ฑฐ๋ ์ธ ๊ฒฝ์ฐ์๋ ์๊ฐ์ด ๊ฑธ๋ฆฌ๊ธฐ ๋ง๋ จ์ด๋ค. ๊ทธ๋ ๋ค๋ฉด ๋๋์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์ค๊ฑฐ๋ ์ธ ๊ฒฝ์ฐ์๋ RAM, ROM์ ์ฌ์ฉํด์ผ ํ ๊น? ๊ทธ๋ณด๋ค๋ ๋๋ ์ ์ฅ์ฅ์น๋ก ์๋ ค์ ธ ์๋ ๋์คํฌ ๋๋ผ์ด๋ธ๋ฅผ ์ฌ์ฉํด ๋๋์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ค. ๋์คํฌ ๋๋ผ์ด๋ธ๋ ์ฐ๋ฆฌ๊ฐ ํ๋์ ์ ์ฌ์ฉํ๋ 'ํ๋ ๋์คํฌ'์ ๋์ผํ ์๋ฏธ์ด๋ค. ๋ฌผ๋ก ์ด ํ๋(Hard, ๋ฑ๋ฑํ) ๋์คํฌ๋ผ๋ ์ฉ์ด๋ ์ฝ๊ฒ ๊ตฌ๋ถ๋ฌ์ง ์ ์๋ ํ๋กํผ ๋์คํฌ๊ฐ ๋ฑ์ฅํ๋ฉด์ ์ฉ์ด ๊ตฌ๋ถ์ ์ํด์ ๊ทธ ๋๋ถํฐ ํ๋ ๋์คํฌ๋ผ๋ ์ฉ์ด๊ฐ ์ฌ์ฉ๋์๋ค๊ณ ํ๋ค. ์ด์จ๊ฑฐ๋ ์ด๋ฌํ ๋์คํฌ ๋๋ผ์ด๋ธ๋ ํ์ ํ๊ณผ ๋น์ทํ ์ํ(์๊ธฐ์ฅ ์์ ๋ฌผ์ฒด๊ฐ ์์์ด ๊ฐ๋ ์ฑ์ง์ ๋๋ ๊ฒ)๋ ํ์ ๋นํธ๋ฅผ ์ ์ฅํ๋ค. ๊ทธ๋ฆฌ๊ณ ๋์คํฌ ํค๋๊ฐ ๋์คํฌ์ ์ ์ฅ๋ ํน์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์จ๋ค. ์๋ ๊ทธ๋ฆผ์ ๋์คํฌ ๋๋ผ์ด๋ธ์ด๋ค.
๊ทธ๋ฐ๋ฐ ๋์คํฌ ๋๋ผ์ด๋ธ๋ ๋๋์ ๋ฐ์ดํฐ ์ ์ฅ์ด ๊ฐ๋ฅํ์ง๋ง ๋ค๋ฅธ ์ข ๋ฅ์ ๋ฉ๋ชจ๋ฆฌ์ ๋นํด ์๋์ ์ผ๋ก ๋๋ฆฌ๋ค. ์๋ํ๋ฉด ๋ฐฉ๊ธ ํค๋๋ฅผ ์ง๋๊ฐ ๋ฐ์ดํฐ๊ฐ ํ์ํ ๊ฒฝ์ฐ ๊ทธ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ผ๋ ค๋ฉด ํ์ ํ์ด ๊ฑฐ์ ํ ๋ฐํด ๋ ๋๊น์ง ๊ธฐ๋ค๋ ค์ผ ํ๊ธฐ ๋๋ฌธ์ด๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฌผ๋ฆฌ์ ์ธ ๊ธฐ๊ณ ๋ถํ์ด ์๊ฐ์ด ์ง๋๋ฉด์ ๋ก์์ ธ ๋์คํฌ ์ค๋ฅ๋ฅผ ์ผ์ผํฌ ์ ์๋ค๋ ๋จ์ ์ด ์กด์ฌํ๋ค. ๊ทธ๋ฆฌ๊ณ ๋์คํฌ ๋๋ผ์ด๋ธ๋ ์ฝ์ด ๋ฉ๋ชจ๋ฆฌ์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋นํ๋ฐ์ฑ์ ํน์ฑ์ ๊ฐ๋๋ค. ๊ทธ๋์ ์ฐ๋ฆฌ๊ฐ ๋ฐํํ๋ฉด์ ์ ์ฅํ ํ์ผ๋ค์ด ์ปดํจํฐ๋ฅผ ๊ป๋ค ์ผ๋ ์ฌ์ ํ ์กด์ฌํ๋ ๊ฒ์ด ์ด๋ฌํ ์ด์ ๋๋ฌธ์ด๋ค.
5. ํ๋์ ๋ฉ๋ชจ๋ฆฌ์ SSD
ํ๋์ ๋ฉ๋ชจ๋ฆฌ๋ ๊ฐ์ฅ ์ต๊ทผ์ ๋ง๋ค์ด์ง EEPROM์ ํ ์ข ๋ฅ์ด๋ค. EEPROM์ด๋, ์ ๊ธฐ๋ก ์ง์ธ ์ ์๋ ROM ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋ฏธํ๋๋ฐ, ์ง์ฐ๋ ๊ณผ์ ์ ๋๋ฆฌ์ง๋ง RAM ์ฒ๋ผ ๋ด๋ถ ๋ฐ์ดํฐ๋ฅผ ์๋ฌด ์์๋ก ์ฝ๊ณ ์ธ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ์ด๋ค. ๊ทธ๋ฐ๋ฐ ํ๋์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์ด๋ฌํ EEPROM์ ํ ์ข ๋ฅ์ด๋ค.
ํ๋์ ๋ฉ๋ชจ๋ฆฌ๋ DRAM(์ ์ RAM)๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ฒํท์ ์ ์๋ฅผ ๋ด๋ ๋ฐฉ์์ด์ง๋ง ํ๋์ ๋ฉ๋ชจ๋ฆฌ์ ๋ฒํท์ DRAM์ ๋ฒํท๋ณด๋ค ๋ ํฌ๊ณ ๋ด๊ตฌ์ฑ์ด ์ข์ ์ ์๊ฐ ์์ง ์์ ์ ์๋ฅผ ๊ฐฑ์ ์์ผ์ค ํ์๊ฐ ์๋ค. ํ์ง๋ง ์ฌ๋ฌ ๋ฒ ์ฝ๊ณ ์ฐ๊ธฐ ์ํด ํธ๋์ง์คํฐ ๋๊ป์ ์ฌ๋ซ๋ค ๋ณด๋ฉด ๋๊ป์ ๊ฒฝ์ฒฉ์ด ๋ณ์ ๋์ด์ ธ ๋ฒ๋ฆฌ๋ ๋จ์ ์ด ์๋ค. ๋ํ ํ๋์ ๋ฉ๋ชจ๋ฆฌ๋ EEPROM ๋ณด๋ค ๋ ๋น ๋ฅด๊ฒ ์ง์ธ ์ ์๊ณ ๋ ์ ๋ ดํ๊ฒ ๋ง๋ค ์ ์๋ค. ๊ทธ๋ฆฌ๊ณ RAM์ฒ๋ผ ์ํ๋ ์์น์ ๋ฐ์ดํฐ๋ฅผ ๋ง์๋๋ก ์ฝ์ ์ ์๋ค.
๊ณ ์ฒด ์ํ ๋๋ผ์ด๋ธ(Solid-State Drive)๋ผ๊ณ ์๋ ค์ ธ ์๋ SDD๋ ๋์คํฌ ๋๋ผ์ด๋ธ๋ฅผ ์ ์ ๋์ฒดํด๊ฐ๊ณ ์๋ค. SSD๋ ๋์คํฌ ๋๋ผ์ด๋ธ ๋ชจ์์ ํจํค์ง ์์ ๋ฃ์ ํ๋์ ๋ฉ๋ชจ๋ฆฌ์ด๋ค. ๊ทธ๋์ ๊ธฐ์กด์ ๋์คํฌ ๋๋ผ์ด๋ธ์ ๋๋ฆฐ ์๋๋ฅผ ๋น ๋ฅด๊ฒ ํ ์ ์๋ SSD๊ฐ ์ฃผ๋ชฉ์ ๋ฐ๊ณ ์๋ค. ์ฐธ๊ณ ๋ก ํ๋์ ๋ฉ๋ชจ๋ฆฌ๋ ์์์ ์ธ๊ธํ ๊ฒ์ฒ๋ผ ๊ณ์ ์ฌ์ฉํ ์๋ก ์ ์ ๋ก๊ธฐ ๋๋ฌธ์ SSD์๋ ์ฌ๋ฌ๋ฒ ์ฌ์ฉํ ํ์๋ฅผ ๊ธฐ์ตํด์ ๋ชจ๋ ๋ธ๋ก์ด ๊ฐ๋ฅํ๋ฉด ๋๊ฐ์ ์์ค์ผ๋ก ๋ก๋๋ก ์กฐ์ ํ๋ ํ๋ก์ธ์๊ฐ ๋ค์ด์๊ธฐ๋ ํ๋ค.