Timing Closure Algorithms๋ ๋์งํธ ํ๋ก ์ค๊ณ์์ ํ๋ก์ ์ฑ๋ฅ์ ์ต์ ํํ๊ณ ์๊ตฌ๋๋ ํ์ด๋ฐ ์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ ์๊ณ ๋ฆฌ์ฆ ์งํฉ์ ๋๋ค. ์ด ์๊ณ ๋ฆฌ์ฆ์ VLSI(์ด๋ํ ์ง์ ํ๋ก) ์ค๊ณ์ ์ค์ํ ๋จ๊ณ ์ค ํ๋๋ก, ์ค๊ณ๋ ํ๋ก์ ๋์์ด ์ฃผ์ด์ง ํด๋ญ ์ฃผํ์์์ ์ ์์ ์ผ๋ก ์ํ๋ ์ ์๋๋ก ๋ณด์ฅํฉ๋๋ค. ํ์ด๋ฐ ํด๋ก์ ๋ ํนํ ๊ณ ์ ๋์งํธ ํ๋ก์์ ํ์์ ์ด๋ฉฐ, ํ๋ก์ ๊ฐ ๊ฒฝ๋ก๊ฐ ์๊ตฌ๋๋ ์๊ฐ ๋ด์ ์ ํธ๋ฅผ ์ ์กํ๋๋ก ํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค.
ํ์ด๋ฐ ํด๋ก์ ์๊ณ ๋ฆฌ์ฆ์ ์ค์์ฑ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ์ฒซ์งธ, ํ๋ก์ ์ฑ๋ฅ์ ๊ทน๋ํํ์ฌ ๋ ๋์ ํด๋ญ ์ฃผํ์๋ฅผ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค. ๋์งธ, ์ ๋ ฅ ์๋น๋ฅผ ์ต์ํํ๊ณ ํจ์จ์ฑ์ ๋์ด๋ ๋ฐ ๊ธฐ์ฌํฉ๋๋ค. ์ ์งธ, ์ค๊ณ์ ๋ณต์ก์ฑ์ด ์ฆ๊ฐํจ์ ๋ฐ๋ผ ๋ฐ์ํ ์ ์๋ ํ์ด๋ฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ฌ ์ ๋ขฐ์ฑ์ ํฅ์์ํต๋๋ค. ์ด๋ฌํ ์๊ณ ๋ฆฌ์ฆ์ ๋ค์ํ ๋ฐฉ๋ฒ๋ก ์ ํตํด ๊ตฌํ๋๋ฉฐ, ๊ฐ ๋ฐฉ๋ฒ๋ก ์ ํน์ ์ค๊ณ ์๊ตฌ ์ฌํญ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ์ ์ฉ๋ฉ๋๋ค.
Timing Closure Algorithms๋ ์ผ๋ฐ์ ์ผ๋ก ๋ค์๊ณผ ๊ฐ์ ๋จ๊ณ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ๋จผ์ , ์ด๊ธฐ ํ์ด๋ฐ ๋ถ์์ ํตํด ํ๋ก์ ๊ฒฝ๋ก๋ฅผ ํ๊ฐํ๊ณ , ๊ทธ ๊ฒฐ๊ณผ์ ๋ฐ๋ผ ํ์ํ ์ต์ ํ ์์ ์ ๊ฒฐ์ ํฉ๋๋ค. ๊ทธ ํ, ์๊ณ ๋ฆฌ์ฆ์ ๊ฒฝ๋ก๋ฅผ ์ฌ์กฐ์ ํ๊ฑฐ๋ ํ๋ก์ ๊ตฌ์กฐ๋ฅผ ๋ณ๊ฒฝํ์ฌ ํ์ด๋ฐ ์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํ๋๋ก ์ค๊ณ๋ฉ๋๋ค. ์ด๋ฌํ ๊ณผ์ ์ ๋ฐ๋ณต์ ์ผ๋ก ์ํ๋๋ฉฐ, ์ต์ข ์ ์ผ๋ก ๋ชจ๋ ๊ฒฝ๋ก๊ฐ ์๊ตฌ๋ ํ์ด๋ฐ์ ์ถฉ์กฑํ ๋๊น์ง ์งํ๋ฉ๋๋ค.
Timing Closure Algorithms๋ ์ฌ๋ฌ ๊ตฌ์ฑ ์์๋ก ์ด๋ฃจ์ด์ ธ ์์ผ๋ฉฐ, ๊ฐ ๊ตฌ์ฑ ์์๋ ์๋ก ์ํธ ์์ฉํ์ฌ ์ต์ ์ ํ์ด๋ฐ ํด๋ก์ ๋ฅผ ๋ฌ์ฑํฉ๋๋ค. ์ด ์๊ณ ๋ฆฌ์ฆ์ ์ฃผ์ ๋จ๊ณ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
Static Timing Analysis (STA): STA๋ ํ๋ก์ ํ์ด๋ฐ ํน์ฑ์ ๋ถ์ํ๋ ๊ณผ์ ์ ๋๋ค. ์ด ๋จ๊ณ์์๋ ๊ฐ ๊ฒฝ๋ก์ ์ง์ฐ ์๊ฐ์ ๊ณ์ฐํ๊ณ , ํด๋ญ ์ฃผํ์์ ๋ฐ๋ฅธ ํ์ด๋ฐ ์ฌ์ ๋ฅผ ํ๊ฐํฉ๋๋ค. STA๋ ํ๋ก์ ๋ชจ๋ ๊ฒฝ๋ก๋ฅผ ํ๊ฐํ ์ ์๊ธฐ ๋๋ฌธ์, ํ์ด๋ฐ ๋ฌธ์ ๋ฅผ ์กฐ๊ธฐ์ ๋ฐ๊ฒฌํ ์ ์๋๋ก ๋์์ค๋๋ค.
Path Optimization: ๊ฒฝ๋ก ์ต์ ํ๋ STA์ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํ์ผ๋ก ์ํ๋ฉ๋๋ค. ์ด ๋จ๊ณ์์๋ ์ง์ฐ ์๊ฐ์ด ๊ธด ๊ฒฝ๋ก๋ฅผ ์๋ณํ๊ณ , ํด๋น ๊ฒฝ๋ก์ ์ง์ฐ์ ์ค์ด๊ธฐ ์ํ ๋ค์ํ ๊ธฐ์ ์ด ์ ์ฉ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด, ๊ฒ์ดํธ ํฌ๊ธฐ๋ฅผ ์กฐ์ ํ๊ฑฐ๋, ์ถ๊ฐ์ ์ธ ๋ฒํผ๋ฅผ ์ฝ์ ํ์ฌ ์ ํธ ์ ์ก ์๊ฐ์ ๋จ์ถํ ์ ์์ต๋๋ค.
Clock Tree Synthesis (CTS): ํด๋ญ ํธ๋ฆฌ ํฉ์ฑ์ ํด๋ญ ์ ํธ๋ฅผ ๋ชจ๋ ํ๋ฆฝํ๋กญ์ ๊ท ๋ฑํ๊ฒ ๋ถ๋ฐฐํ๊ธฐ ์ํ ๊ณผ์ ์ ๋๋ค. CTS๋ ํด๋ญ ์ง์ฐ์ ์ต์ํํ๊ณ , ํด๋ญ ์ ํธ์ ์๊ณก์ ๋ฐฉ์งํ์ฌ ํ์ด๋ฐ ํด๋ก์ ๋ฅผ ๋ฌ์ฑํ๋ ๋ฐ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. ์ด ๊ณผ์ ์์ ํด๋ญ ํธ๋ฆฌ์ ์ค๊ณ๋ ์ ํธ ์ ์ก ์ง์ฐ์ ๊ณ ๋ คํ์ฌ ์ต์ ํ๋ฉ๋๋ค.
Dynamic Simulation: ๋์ ์๋ฎฌ๋ ์ด์ ์ ํ๋ก์ ๋์์ ์๋ฎฌ๋ ์ด์ ํ์ฌ ํ์ด๋ฐ ํด๋ก์ ๋ฅผ ๊ฒ์ฆํ๋ ๋จ๊ณ์ ๋๋ค. ์ด ๊ณผ์ ์์๋ ์ค์ ์ ํธ ์ ์ก์ ๋ชจ์ฌํ์ฌ ํ์ด๋ฐ ์๊ตฌ ์ฌํญ์ด ์ถฉ์กฑ๋๋์ง๋ฅผ ํ์ธํฉ๋๋ค. ๋์ ์๋ฎฌ๋ ์ด์ ์ STA์ ๊ฒฐํฉํ์ฌ ๋์ฑ ์ ํํ ํ์ด๋ฐ ๋ถ์์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
Iterative Refinement: ์ต์ ํ ๊ณผ์ ์ ๋ฐ๋ณต์ ์ผ๋ก ์ํ๋ฉ๋๋ค. ๊ฐ ๋ฐ๋ณต์ STA, ๊ฒฝ๋ก ์ต์ ํ, CTS ๋ฐ ๋์ ์๋ฎฌ๋ ์ด์ ์ ํฌํจํ์ฌ, ์ต์ข ์ ์ผ๋ก ๋ชจ๋ ๊ฒฝ๋ก๊ฐ ์๊ตฌ๋ ํ์ด๋ฐ์ ์ถฉ์กฑํ ๋๊น์ง ์งํ๋ฉ๋๋ค. ์ด ๊ณผ์ ์์ ๋ค์ํ ์๊ณ ๋ฆฌ์ฆ๊ณผ ๊ธฐ์ ์ด ์กฐํฉ๋์ด ์ต์ ์ ๊ฒฐ๊ณผ๋ฅผ ๋์ถํฉ๋๋ค.
Timing Closure Algorithms์์ ์ฌ์ฉ๋๋ ๊ธฐ์ ๋ค์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
Retiming: Retiming์ ํ๋ฆฝํ๋กญ์ ์์น๋ฅผ ๋ณ๊ฒฝํ์ฌ ๊ฒฝ๋ก ์ง์ฐ์ ์กฐ์ ํ๋ ๊ธฐ๋ฒ์ ๋๋ค. ์ด ๊ธฐ๋ฒ์ ์ ํธ ์ ์ก ์๊ฐ์ ์ค์ด๊ณ , ํ์ด๋ฐ ํด๋ก์ ๋ฅผ ๋ฌ์ฑํ๋ ๋ฐ ๋์์ ์ค๋๋ค.
Buffer Insertion: ์ถ๊ฐ์ ์ธ ๋ฒํผ๋ฅผ ์ฝ์ ํ์ฌ ์ ํธ ์ ์ก ์๊ฐ์ ๋จ์ถํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ์ด ๊ธฐ๋ฒ์ ํนํ ๊ธด ๊ฒฝ๋ก์์ ํจ๊ณผ์ ์ ๋๋ค.
Gate Sizing: ๋ ผ๋ฆฌ ๊ฒ์ดํธ์ ํฌ๊ธฐ๋ฅผ ์กฐ์ ํ์ฌ ์ง์ฐ ์๊ฐ์ ์ต์ ํํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ๊ฒ์ดํธ ํฌ๊ธฐ๋ฅผ ์ฆ๊ฐ์ํค๋ฉด ์ ๋ฅ๊ฐ ์ฆ๊ฐํ๊ณ , ๊ฒฐ๊ณผ์ ์ผ๋ก ์ง์ฐ ์๊ฐ์ด ์ค์ด๋ญ๋๋ค.
Timing Closure Algorithms๋ ์ฌ๋ฌ ์ ์ฌ ๊ธฐ์ ๋ฐ ๋ฐฉ๋ฒ๋ก ๊ณผ ๋น๊ต๋ ์ ์์ต๋๋ค. ์ฌ๊ธฐ์์๋ ์ฃผ์ ๋น๊ต ์์๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
Static Timing Analysis vs. Dynamic Timing Analysis: STA๋ ํ๋ก์ ๋ชจ๋ ๊ฒฝ๋ก๋ฅผ ์ ์ ์ผ๋ก ๋ถ์ํ๋ ๋ฐ๋ฉด, Dynamic Timing Analysis๋ ์ค์ ๋์์ ๊ธฐ๋ฐ์ผ๋ก ์๋ฎฌ๋ ์ด์ ํ์ฌ ํ์ด๋ฐ์ ํ๊ฐํฉ๋๋ค. STA๋ ๋น ๋ฅธ ๋ถ์์ด ๊ฐ๋ฅํ์ง๋ง, ๋์ ๋ถ์์ ์ค์ ๋์์ ๋ฐ์ํ์ฌ ๋ ์ ํํ ๊ฒฐ๊ณผ๋ฅผ ์ ๊ณตํฉ๋๋ค.
Clock Tree Synthesis vs. Global Optimization: CTS๋ ํด๋ญ ์ ํธ๋ฅผ ํจ์จ์ ์ผ๋ก ๋ถ๋ฐฐํ๋ ๋ฐ ์ค์ ์ ๋๋ ๋ฐ๋ฉด, Global Optimization์ ์ ์ฒด ํ๋ก์ ์ฑ๋ฅ์ ์ต์ ํํ๋ ๋ฐ ์ค์ ์ ๋ก๋๋ค. ๋ ๋ฐฉ๋ฒ ๋ชจ๋ ํ์ด๋ฐ ํด๋ก์ ์ ๊ธฐ์ฌํ์ง๋ง, ์ ๊ทผ ๋ฐฉ์์ด ๋ค๋ฆ ๋๋ค.
Design for Timing (DFT): DFT๋ ์ค๊ณ ๋จ๊ณ์์๋ถํฐ ํ์ด๋ฐ ๋ฌธ์ ๋ฅผ ๊ณ ๋ คํ๋ ๋ฐฉ๋ฒ๋ก ์ ๋๋ค. Timing Closure Algorithms๋ ์ฃผ๋ก ํ์ ๋จ๊ณ์์ ์ํ๋๋ ๋ฐ๋ฉด, DFT๋ ์ด๊ธฐ ์ค๊ณ ๋จ๊ณ์์ ํ์ด๋ฐ ๋ฌธ์ ๋ฅผ ์๋ฐฉํ๋ ๋ฐ ์ค์ ์ ๋ก๋๋ค.
Real-world Examples: Timing Closure Algorithms๋ ๊ณ ์ ํ๋ก์ธ์ ๋ฐ FPGA ์ค๊ณ์์ ํ์์ ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด, Intel์ ์ต์ ํ๋ก์ธ์ ์ค๊ณ์์ ์ด๋ฌํ ์๊ณ ๋ฆฌ์ฆ์ด ์ ์ฉ๋์ด ๋์ ์ฑ๋ฅ๊ณผ ์์ ์ฑ์ ํ๋ณดํ๊ณ ์์ต๋๋ค. ๋ํ, Xilinx์ FPGA ์ค๊ณ ๋๊ตฌ์์๋ ํ์ด๋ฐ ํด๋ก์ ์๊ณ ๋ฆฌ์ฆ์ด ์ค์ํ ์ญํ ์ ํ๊ณ ์์ต๋๋ค.
Timing Closure Algorithms๋ ๋์งํธ ํ๋ก ์ค๊ณ์์ ํ์ด๋ฐ ์๊ตฌ ์ฌํญ์ ๋ง์กฑ์ํค๊ธฐ ์ํด ํ์์ ์ผ๋ก ์ ์ฉ๋๋ ์๊ณ ๋ฆฌ์ฆ ์งํฉ์ ๋๋ค.