Clock Gating๋ ๋์งํธ ํ๋ก ์ค๊ณ์์ ์ ๋ ฅ ์๋น๋ฅผ ์ค์ด๊ธฐ ์ํด ์ฌ์ฉ๋๋ ๊ธฐ์ ๋ก, ํด๋ญ ์ ํธ์ ์ ๋ฌ์ ์ ์ดํ์ฌ ํ์ํ์ง ์์ ํ๋ก ๋ธ๋ก์ ๋์์ ๋นํ์ฑํํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ์ด ๊ธฐ์ ์ VLSI ์์คํ ์์ ํนํ ์ค์ํ๋ฉฐ, ํ๋ก์ ํน์ ๋ถ๋ถ์ด ์ฌ์ฉ๋์ง ์์ ๋ ํด๋ญ ์ ํธ๋ฅผ ์ฐจ๋จํจ์ผ๋ก์จ ์ ๋ ฅ ์๋ชจ๋ฅผ ์ต์ํํฉ๋๋ค. Clock Gating์ ์ฃผ์ ๋ชฉ์ ์ ์ ๋ ฅ ํจ์จ์ฑ์ ๋์ด๋ ๊ฒ์ด๋ฉฐ, ์ด๋ ๋ชจ๋ฐ์ผ ๊ธฐ๊ธฐ ๋ฐ ๊ธฐํ ๋ฐฐํฐ๋ฆฌ ๊ตฌ๋ ์ฅ์น์์ ์ฑ๋ฅ๊ณผ ๋ฐฐํฐ๋ฆฌ ์๋ช ์ ์ต์ ํํ๋ ๋ฐ ํ์์ ์ ๋๋ค.
Clock Gating์ ์๋ ์๋ฆฌ๋ ํน์ ํ๋ก ๋ธ๋ก์ด ํ์ฑํ๋์๋์ง ์ฌ๋ถ์ ๋ฐ๋ผ ํด๋ญ ์ ํธ๋ฅผ ์ฐจ๋จํ๊ฑฐ๋ ํ์ฉํ๋ ๊ฒ์ ๋๋ค. ์ด๋ฅผ ํตํด ๋ถํ์ํ ์ค์์นญ ํ๋์ ์ค์ด๊ณ , ๊ฒฐ๊ณผ์ ์ผ๋ก ๋ค์ด๋ด๋ฏน ์ ๋ ฅ ์๋ชจ๋ฅผ ๊ฐ์์ํต๋๋ค. ์ด ๊ธฐ์ ์ ํนํ ๊ณ ์ ๋์งํธ ํ๋ก์์ ํด๋ญ ์ฃผํ์๊ฐ ๋์ ๋ ๋์ฑ ํจ๊ณผ์ ์ ๋๋ค. ํ๋ก์ ๋์ ์ํ๋ฅผ ๋ชจ๋ํฐ๋งํ๊ณ , ํด๋ญ์ ์ ์ดํ๋ ๋ก์ง์ ํฌํจํ์ฌ, Clock Gating์ ์ค๊ณ ๊ณผ์ ์์ ํ์์ ์ธ ๊ณ ๋ ค์ฌํญ์ด ๋ฉ๋๋ค.
Clock Gating์ ์ ๋ ฅ ๊ด๋ฆฌ์ ์ค์ํ ์์๋ก ์๋ฆฌ ์ก๊ณ ์์ผ๋ฉฐ, ํ๋์ ๋ง์ ๋ฐ๋์ฒด ์ค๊ณ์์ ํ์์ ์ผ๋ก ์ฌ์ฉ๋๊ณ ์์ต๋๋ค. ์ด ๊ธฐ์ ์ ์ฌ์ฉํ๋ฉด ํ๋ก์ ์ฑ๋ฅ์ ์ ์งํ๋ฉด์๋ ์ ๋ ฅ ์๋ชจ๋ฅผ ์๋นํ ์ค์ผ ์ ์์ผ๋ฉฐ, ์ด๋ ์ ์ฒด ์์คํ ์ ํจ์จ์ฑ์ ๋์ด๋ ๋ฐ ๊ธฐ์ฌํฉ๋๋ค. ๋ฐ๋ผ์ Clock Gating์ ๋์งํธ ํ๋ก ์ค๊ณ์์ ํ์์ ์ธ ๊ธฐ์ ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค.
Clock Gating์ ๊ตฌ์ฑ ์์์ ์๋ ์๋ฆฌ๋ ๋ค์๊ณผ ๊ฐ์ด ๋๋ ์ ์์ต๋๋ค. ์ด ๊ธฐ์ ์ ์ฃผ๋ก ํด๋ญ ์ ์ด ๋ก์ง, ๊ฒ์ดํธ ๋ก์ง, ๊ทธ๋ฆฌ๊ณ ํด๋ญ ์ ํธ๋ฅผ ์ฐจ๋จํ๋ ์ค์์น๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ๊ฐ ๊ตฌ์ฑ ์์๋ ์๋ก ์ํธ์์ฉํ์ฌ ํด๋ญ ์ ํธ์ ์ ๋ฌ์ ์ ์ดํฉ๋๋ค.
์ฒซ ๋ฒ์งธ๋ก, Clock Gating์ ํต์ฌ ๊ตฌ์ฑ ์์์ธ ํด๋ญ ์ ์ด ๋ก์ง์ ํ๋ก์ ์ํ๋ฅผ ๋ชจ๋ํฐ๋งํ๊ณ , ํน์ ์กฐ๊ฑด์ด ์ถฉ์กฑ๋ ๋ ํด๋ญ ์ ํธ๋ฅผ ์ฐจ๋จํ๋ ์ญํ ์ ํฉ๋๋ค. ์ด ๋ก์ง์ ์ผ๋ฐ์ ์ผ๋ก ์ํ ๋จธ์ ์ด๋ ์กฐ๊ฑด๋ถ ๋ก์ง์ผ๋ก ๊ตฌํ๋๋ฉฐ, ํ๋ก๊ฐ ํ์ฑํ๋์ด์ผ ํ ๋์ ๋นํ์ฑํ๋์ด์ผ ํ ๋๋ฅผ ๊ฒฐ์ ํฉ๋๋ค.
๋ ๋ฒ์งธ๋ก, ๊ฒ์ดํธ ๋ก์ง์ ํด๋ญ ์ ํธ๋ฅผ ์ฐจ๋จํ๊ฑฐ๋ ํ์ฉํ๋ ์ญํ ์ ํฉ๋๋ค. ์ด ๋ก์ง์ AND, OR, NOT ๊ฒ์ดํธ์ ๊ฐ์ ๊ธฐ๋ณธ ๋ ผ๋ฆฌ ๊ฒ์ดํธ๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌ์ฑ๋๋ฉฐ, ํด๋ญ ์ ํธ์ ํด๋ญ ์ ์ด ์ ํธ๋ฅผ ๊ฒฐํฉํ์ฌ ์ต์ข ํด๋ญ ์ ํธ๋ฅผ ์์ฑํฉ๋๋ค. ์ด ๊ณผ์ ์์ ํด๋ญ ์ ํธ๊ฐ ์ฐจ๋จ๋๋ฉด ํด๋น ํ๋ก ๋ธ๋ก์ ๋์ํ์ง ์๊ฒ ๋๋ฉฐ, ์ด๋ก ์ธํด ์ ๋ ฅ ์๋ชจ๊ฐ ์ค์ด๋ญ๋๋ค.
์ธ ๋ฒ์งธ๋ก, ํด๋ญ ์ ํธ๋ฅผ ์ฐจ๋จํ๋ ์ค์์น๋ ์ผ๋ฐ์ ์ผ๋ก ๋ฉํฐํ๋ ์(MUX) ๋๋ ํธ๋์ง์คํฐ๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํ๋ฉ๋๋ค. ์ด ์ค์์น๋ ํด๋ญ ์ ํธ๊ฐ ํ์ํ ํ๋ก ๋ธ๋ก์๋ง ์ ๋ฌ๋๋๋ก ํ์ฌ, ๋ถํ์ํ ์ค์์นญ ํ๋์ ๋ฐฉ์งํฉ๋๋ค. ์ด๋ฌํ ๋ฐฉ์์ผ๋ก, Clock Gating์ ํ๋ก์ ํน์ ๋ถ๋ถ์ด ์ฌ์ฉ๋์ง ์์ ๋ ์ ๋ ฅ์ ์ ์ฝํ ์ ์๋๋ก ํฉ๋๋ค.
์ด๋ฌํ ๊ตฌ์ฑ ์์๋ค์ ํจ๊ป ์๋ํ์ฌ Clock Gating์ ํจ์จ์ฑ์ ๊ทน๋ํํฉ๋๋ค. ํ๋ก ์ค๊ณ์๋ ์ด๋ฌํ ๊ธฐ์ ์ ๊ณ ๋ คํ์ฌ ์ ๋ ฅ ์๋ชจ๋ฅผ ์ค์ด๋ ๋์์ ์ฑ๋ฅ์ ์ ์งํ ์ ์๋ ์ต์ ์ ์ค๊ณ๋ฅผ ๊ตฌํํด์ผ ํฉ๋๋ค.
Clock Control Logic์ ํ๋ก์ ์ํ๋ฅผ ๊ฐ์งํ๊ณ ํด๋ญ ์ ํธ์ ํ์์ฑ์ ํ๋จํ๋ ์ญํ ์ ํฉ๋๋ค. ์ด ๋ก์ง์ ๋ค์ํ ์ผ์์ ํผ๋๋ฐฑ ๋ฉ์ปค๋์ฆ์ ํตํด ํ๋ก์ ํ์ฌ ์ํ๋ฅผ ๋ชจ๋ํฐ๋งํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ํน์ ์กฐ๊ฑด์ด ์ถฉ์กฑ๋๋ฉด ํด๋ญ์ ํ์ฑํํ๊ณ , ๊ทธ๋ ์ง ์์ผ๋ฉด ๋นํ์ฑํํ์ฌ ์ ๋ ฅ ์๋น๋ฅผ ์ค์ ๋๋ค.
Gate Logic์ ํด๋ญ ์ ํธ์ ์ ์ด ์ ํธ๋ฅผ ๊ฒฐํฉํ์ฌ ์ต์ข ์ ์ผ๋ก ํ๋ก์ ์ ๋ฌ๋๋ ํด๋ญ ์ ํธ๋ฅผ ์์ฑํฉ๋๋ค. ์ด ๊ณผ์ ์์ ์ฌ์ฉ๋๋ ๋ ผ๋ฆฌ ๊ฒ์ดํธ๋ ํ๋ก์ ์ค๊ณ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง ์ ์์ผ๋ฉฐ, ์ต์ ์ ์ฑ๋ฅ์ ์ํด ์ ์คํ๊ฒ ์ ํ๋์ด์ผ ํฉ๋๋ค.
์ค์์น ๊ตฌํ์ ํด๋ญ ์ ํธ๋ฅผ ์ฐจ๋จํ๋ ๋ฐ ํ์์ ์ ๋๋ค. ๋ฉํฐํ๋ ์๋ ํธ๋์ง์คํฐ์ ๊ฐ์ ๋ค์ํ ๋ฐฉ๋ฒ์ด ์ฌ์ฉ๋ ์ ์์ผ๋ฉฐ, ๊ฐ ๋ฐฉ๋ฒ์ ์ค๊ณ์ ์๊ตฌ ์ฌํญ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ์ ์ฉ๋ ์ ์์ต๋๋ค. ์ด ์ค์์น๋ ํด๋ญ ์ ํธ์ ๊ฒฝ๋ก๋ฅผ ์ ์ดํ์ฌ ์ ๋ ฅ ์๋ชจ๋ฅผ ์ต์ํํฉ๋๋ค.
Clock Gating์ ๋ค์ํ ์ ๋ ฅ ๊ด๋ฆฌ ๊ธฐ์ ๊ณผ ๋น๊ต๋ ์ ์์ผ๋ฉฐ, ๊ทธ ์ค์์๋ Power Gating, Dynamic Voltage and Frequency Scaling (DVFS), ๊ทธ๋ฆฌ๊ณ Adaptive Body Biasing๊ณผ ๊ฐ์ ๊ธฐ์ ๋ค์ด ์์ต๋๋ค. ๊ฐ ๊ธฐ์ ์ ์ ๋ ฅ ์๋ชจ๋ฅผ ์ค์ด๋ ๋ฐฉ๋ฒ์ด ๋ค๋ฅด๋ฉฐ, ํน์ ์ํฉ์ ๋ฐ๋ผ ์ฅ๋จ์ ์ด ์์ต๋๋ค.
Power Gating์ ํ๋ก ๋ธ๋ก ์ ์ฒด๋ฅผ ์์ ํ ๋นํ์ฑํํ์ฌ ์ ๋ ฅ์ ์ฐจ๋จํ๋ ๊ธฐ์ ์ ๋๋ค. ์ด ๊ธฐ์ ์ Clock Gating๊ณผ ํจ๊ป ์ฌ์ฉ๋ ์ ์์ผ๋ฉฐ, ์ผ๋ฐ์ ์ผ๋ก ๋ ํฐ ์ ๋ ฅ ์ ์ฝ ํจ๊ณผ๋ฅผ ์ ๊ณตํฉ๋๋ค. ๊ทธ๋ฌ๋ Power Gating์ ํ๋ก๊ฐ ๋ค์ ํ์ฑํ๋ ๋ ์๊ฐ์ด ์์๋๋ฏ๋ก, ์๋ต ์๊ฐ์ด ์ค์ํ ์ ํ๋ฆฌ์ผ์ด์ ์์๋ ๋จ์ ์ด ๋ ์ ์์ต๋๋ค.
Dynamic Voltage and Frequency Scaling (DVFS)๋ ์ ์๊ณผ ์ฃผํ์๋ฅผ ๋์ ์ผ๋ก ์กฐ์ ํ์ฌ ์ ๋ ฅ ์๋ชจ๋ฅผ ์ค์ด๋ ๊ธฐ์ ์ ๋๋ค. ์ด ๋ฐฉ๋ฒ์ ํด๋ญ ์ฃผํ์์ ์ ์์ ์กฐ์ ํจ์ผ๋ก์จ ์ฑ๋ฅ์ ์ต์ ํํ ์ ์์ง๋ง, ๊ตฌํ์ด ๋ณต์กํ๊ณ ์ถ๊ฐ์ ์ธ ํ๋ก๊ฐ ํ์ํ ์ ์์ต๋๋ค. ๋ฐ๋ฉด Clock Gating์ ์๋์ ์ผ๋ก ๊ฐ๋จํ๊ฒ ๊ตฌํํ ์ ์์ผ๋ฉฐ, ํน์ ํ๋ก ๋ธ๋ก์ ์ ๋ ฅ ์๋ชจ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ์ค์ผ ์ ์์ต๋๋ค.
Adaptive Body Biasing์ ๋ฐ๋์ฒด ์์์ ํน์ฑ์ ์กฐ์ ํ์ฌ ์ ๋ ฅ ์๋ชจ๋ฅผ ์ค์ด๋ ๊ธฐ์ ์ ๋๋ค. ์ด ๋ฐฉ๋ฒ์ ์์์ ๋์์ ์ต์ ํํ๋ ๋ฐ ์ ์ฉํ์ง๋ง, ์ค๊ณ ๋ณต์ก์ฑ์ด ์ฆ๊ฐํ ์ ์์ต๋๋ค. Clock Gating์ ์๋์ ์ผ๋ก ๊ฐ๋จํ๊ฒ ์ ์ฉํ ์ ์๋ ๊ธฐ์ ๋ก, ์ ๋ ฅ ๊ด๋ฆฌ์ ๊ธฐ๋ณธ์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก ๋๋ฆฌ ์ฌ์ฉ๋ฉ๋๋ค.
์ด๋ฌํ ๋น๊ต๋ฅผ ํตํด Clock Gating์ ๋ค์ํ ์ ๋ ฅ ๊ด๋ฆฌ ๊ธฐ์ ์ค์์ ํจ๊ณผ์ ์ด๊ณ ๊ตฌํ์ด ์ฉ์ดํ ๋ฐฉ๋ฒ์ผ๋ก ์๋ฆฌ ์ก๊ณ ์์ต๋๋ค. ๊ฐ ๊ธฐ์ ์ ์ฅ๋จ์ ์ ์ดํดํ๊ณ ์ ์ ํ๊ฒ ์กฐํฉํ์ฌ ์ฌ์ฉํ ๊ฒฝ์ฐ, ์ต์ ์ ์ ๋ ฅ ํจ์จ์ฑ์ ๋ฌ์ฑํ ์ ์์ต๋๋ค.
Clock Gating์ ๋์งํธ ํ๋ก์์ ์ ๋ ฅ ์๋ชจ๋ฅผ ์ค์ด๊ธฐ ์ํด ํด๋ญ ์ ํธ์ ์ ๋ฌ์ ์ ์ดํ๋ ๊ธฐ์ ๋ก, VLSI ์์คํ ์ค๊ณ์์ ํ์์ ์ธ ์์์ ๋๋ค.