SemiMatrix / TOPICS / STATIC TIMING ANALYSIS & CONSTRAINTS
IC DESIGN — TIMING

Static Timing Analysis & Constraints

ENGINEERING

01 บทนำ: Static Timing Analysis & Constraints คืออะไร

ในขั้นตอนการออกแบบวงจรรวม (Integrated Circuit Design) การเปลี่ยนผ่านจากภาษาจำลองพฤติกรรมอย่าง RTL (Register-Transfer Level) ไปสู่โครงสร้างเกตในระดับกายภาพ (Gate-Level Netlist) ที่มีความเร็ว พลังงาน และพื้นที่ (PPA - Power, Performance, Area) ที่เหมาะสมที่สุดนั้น ถือเป็นหัวใจสำคัญที่กำหนดความสำเร็จของชิปเซ็ต ในกระบวนการนี้ Static Timing Analysis (STA) และการกำหนดเงื่อนไขการทำงานผ่าน SDC (Synopsys Design Constraints) เปรียบเสมือนเข็มทิศและกฎเหล็กที่ควบคุมไม่ให้เกิดความล้มเหลวทางกายภาพ (Silicon Failure) ในกระบวนการผลิตจริง

Static Timing Analysis (STA) คือระเบียบวิธีทางคณิตศาสตร์ที่ใช้วิเคราะห์ประสิทธิภาพด้านเวลา (Timing Performance) ของวงจรดิจิทัลทั้งหมดโดยไม่จำเป็นต้องอาศัยสัญญาณจำลอง (Simulation Vectors) วิธีนี้ช่วยให้วิศวกรสามารถตรวจพบปัญหาการละเมิดจังหวะเวลา (Timing Violations) ทั้งหมดในทุกๆ เส้นทางสัญญาณ (Timing Path) ภายใต้กรอบเวลาที่รวดเร็วระดับ $O(n)$ เมื่อเทียบกับการทำ Dynamic Simulation ที่ต้องใช้เวลามหาศาลแบบ Exponential และยังไม่รับประกันว่าจะสามารถครอบคลุมสัญญาณทดสอบทุกรูปแบบได้ครบถ้วน (Testbench Coverage)

ความสำคัญของ SDC (Synopsys Design Constraints): SDC คือไฟล์ข้อกำหนดทางโครงสร้างและการทำงานเชิงเวลา เช่น ความถี่ของสัญญาณนาฬิกา (Clock Frequency) ความไม่แน่นอนของสัญญาณนาฬิกา (Clock Uncertainty) ค่าความล่าช้าในจุดเชื่อมต่อภายนอก (I/O Delay) ตลอดจนเงื่อนไขข้อยกเว้นพิเศษ เช่น False Paths และ Multi-cycle Paths หากปราศจาก SDC เครื่องมือสังเคราะห์วงจร (Synthesis Tools) จะทำงานอย่างขาดทิศทาง ส่งผลให้วงจรไม่สามารถคำนวณ Timing ได้อย่างแม่นยำและล้มเหลวในระดับ Silicon
📍 CAREER ROADMAP CONTEXT
STAGE 04 — SYNTHESIS & STA: Logic Synthesis & Static Timing Analysis
แปลง RTL เป็น gate-level netlist ด้วย Design Compiler กำหนด SDC constraints, วิเคราะห์ timing path, fix hold/setup violations, clock gating
Tools: Synopsys Design Compiler / Genus, PrimeTime, Formality
Related: Logic Synthesis (DC/Genus) · SDC Constraints · Equivalence Checking
Path: IC Design Engineer

02 หลักการพื้นฐาน

รากฐานทางวิศวกรรมของ STA ตั้งอยู่บนกฎเกณฑ์สองประการคือ Setup Time (เวลาเตรียมพร้อมสัญญาณ) และ Hold Time (เวลารักษาสถานะสัญญาณ) ซึ่งทำงานสอดรับกับสถาปัตยกรรมแบบ Synchronous Register-to-Register Path โดยในทุกๆ เส้นทางสัญญาณจะมี Launch Register ที่ส่งข้อมูลออกไปเมื่อได้รับขอบสัญญาณนาฬิกาต้นทาง และ Capture Register ที่คอยรับข้อมูลนั้นเมื่อสัญญาณนาฬิกาปลายทางมาถึง

Setup Time ($T_{setup}$) คือช่วงเวลาขั้นต่ำสุดที่ข้อมูลในสายสัญญาณต้องเสถียร (Stable) ก่อนที่ขอบสัญญาณนาฬิกาตัวถัดไป (Capture Clock Edge) จะมาถึง เพื่อให้มั่นใจว่าหน่วยความจำสามารถเก็บค่าข้อมูลที่ถูกต้องได้อย่างแม่นยำ สมการสำหรับตรวจสอบเงื่อนไข Setup มีดังนี้:

$T_{launch} + T_{comb} + T_{setup} < T_{capture} + T_{cycle}$

และหากจัดรูปเพื่อคำนวณค่า Setup Slack ($S_{setup}$) จะได้สมการดังนี้:

$S_{setup} = (T_{capture} + T_{cycle}) - (T_{launch} + T_{comb} + T_{setup})$

หากค่า Slack เป็นลบแสดงว่าเกิด Setup Violation ซึ่งวิศวกรสามารถแก้ไขเบื้องต้นด้วยการลดความถี่ของสัญญาณนาฬิกา (เพิ่มค่า $T_{cycle}$)

ในทางตรงกันข้าม Hold Time ($T_{hold}$) คือช่วงเวลาน้อยที่สุดที่ข้อมูลในสายสัญญาณต้องคงสถานะเดิมไว้อย่างต่อเนื่องหลังจากขอบสัญญาณนาฬิกา (Capture Clock Edge) มาถึงแล้ว เพื่อป้องกันไม่ให้ข้อมูลใหม่ที่เคลื่อนที่เร็วเกินไปเข้ามาทดแทนหรือเขียนทับข้อมูลชุดเดิม เงื่อนไขของ Hold Time สามารถเขียนในรูปความสัมพันธ์ได้ดังนี้:

$T_{launch} + T_{comb} > T_{capture} + T_{hold}$

และสูตรการคำนวณ Hold Slack ($S_{hold}$) คือ:

$S_{hold} = (T_{launch} + T_{comb}) - (T_{capture} + T_{hold})$
ข้อพึงระวังขั้นวิกฤต: การวิเคราะห์ Hold Time ไม่มีส่วนเกี่ยวข้องกับตัวแปรคาบเวลาของสัญญาณนาฬิกา ($T_{cycle}$) แต่อย่างใด ดังนั้น หากเกิด Hold Violation ชิปเซ็ตนั้นจะเกิดความล้มเหลวอย่างถาวรที่ระดับฮาร์ดแวร์โดยไม่สามารถแก้ไขด้วยการลดความเร็วรอบนาฬิกาได้ วิธีแก้ไขเพียงอย่างเดียวคือการเพิ่ม Delay Cell หรือ Buffer เข้าไปในกลุ่ม Combinational Path เพื่อดึงสัญญาณให้ช้าลงในขั้นตอนทางกายภาพ (Physical Design)

03 วิธีการและเทคนิค

กระบวนการทำงานด้าน Timing และ Synthesis ในอุตสาหกรรมจะดำเนินงานในรูปแบบวงจรปิด (Feedback Loop) เริ่มต้นจากการแปลง RTL และ Physical Library (.lib) ผ่านโปรแกรมสังเคราะห์วงจร (Synthesis Compiler) เพื่อสร้างเป็น Gate-level Netlist ที่สัมพันธ์กับกระบวนการผลิตทางกายภาพจริง โดยมีขั้นตอนที่ต้องดำเนินไปตามลำดับดังนี้:

  • Constraint Definition (การจำกัดเงื่อนไขเวลา): วิศวกรจะใช้คำสั่งใน SDC เพื่อประกาศคุณลักษณะของสัญญาณนาฬิกาหลัก เช่น create_clock และ create_generated_clock กำหนดค่าสัญญาณรบกวนผ่าน set_clock_uncertainty รวมถึงการระบุข้อจำกัดที่ขาอินพุต/เอาต์พุตด้วย set_input_delay และ set_output_delay ร่วมกับการประกาศข้อยกเว้นพิเศษ เช่น set_false_path สำหรับเส้นทางที่ไม่จำเป็นต้องวิเคราะห์ และ set_multicycle_path สำหรับระบบที่ต้องการเวลาทำงานมากกว่าหนึ่งคาบนาฬิกา
  • Timing Analysis (การรันและตรวจวิเคราะห์เชิงลึก): การใช้คำสั่งในเครื่องมือ STA เพื่อดึงรายงานออกมาตรวจสอบ เช่น report_timing -delay max สำหรับวิเคราะห์เส้นทาง Setup และ report_timing -delay min สำหรับตรวจสอบ Hold โดยพารามิเตอร์สำคัญที่ต้องนำมาวิเคราะห์เปรียบเทียบคือ Worst Negative Slack (WNS) ซึ่งเป็นค่าติดลบที่รุนแรงที่สุดในหนึ่ง Path และ Total Negative Slack (TNS) ซึ่งเป็นผลรวมของค่าความล่าช้าที่ติดลบในทุกๆ Path
  • Fixing Violations (การกำจัดจุดผิดพลาด): สำหรับวิกฤตด้าน Setup วิศวกรจะใช้วิธี Gate Sizing (ขยายขนาดทรานซิสเตอร์เพื่อขยายช่องสัญญาณ) และการปรับลดความจุแฝงของลายเส้นผ่านเทคนิค CTS (Clock Tree Synthesis) ส่วนการแก้ไข Hold มักเกี่ยวข้องกับการใส่ Buffer Insertion เพื่อชะลอสัญญาณให้เหมาะสม
  • Equivalence Checking (การตรวจสอบความถูกต้องเชิงตรรกะ): เพื่อให้แน่ใจว่าการปรับแต่ง Gate-level Netlist ในระหว่างการทำ Synthesis และการแก้ Timing ไม่ส่งผลให้ฟังก์ชันการทำงานเปลี่ยนแปลงไป วิศวกรจะใช้เครื่องมือ Logic Equivalence Checking (LEC) เปรียบเทียบ RTL เริ่มต้นกับ Netlist ผลลัพธ์ว่าตรงกันทุกประการ

04 เทคนิคขั้นสูง

เมื่อก้าวเข้าสู่การออกแบบชิปที่โหนดระดับนาโนเมตรที่เล็กมาก เช่น sub-7nm, 5nm และ 3nm ตัวแปรทางกายภาพที่ไม่คงที่อันเนื่องมาจากกระบวนการผลิต ความร้อน และแรงดันไฟฟ้า (PVT Variations - Process, Voltage, Temperature) รวมถึงการใช้สถาปัตยกรรมใหม่อย่าง FinFET และ GAA (Gate-All-Around) ทำให้เกิดความท้าทายระดับรุนแรงต่อกระบวนการวิเคราะห์เวลา

ในโหนดแบบดั้งเดิม การจำลองความไม่แน่นอนจะใช้โมเดล On-Chip Variation (OCV) แบบราบเดี่ยว (Flat Derate) ซึ่งจะลดทอนความเร็วลงด้วยค่าเปอร์เซ็นต์คงที่ ทว่าวิธีนี้สร้างความตึงเครียดให้กับดีไซน์แบบมองโลกในแง่ร้ายเกินไป (Pessimistic Guard Band) จนส่งผลต่อ PPA ดังนั้นในปัจจุบันจึงต้องประยุกต์ใช้โมเดลขั้นสูงขึ้นเป็นลำดับ:

  • Advanced OCV (AOCV): ปรับเปลี่ยนค่าดีเรท (Derating Factor) ตามความลึกทางตรรกะ (Logic Depth) และระยะห่างเชิงกายภาพของอุปกรณ์ (Spatial Distance) ทำให้อุปกรณ์ที่เชื่อมโยงกันลึกและใกล้ มีการชดเชยที่สมเหตุสมผลมากขึ้น
  • Parametric OCV (POCV) / Statistical OCV (SOCV): เป็นแนวทางการวิเคราะห์เชิงสถิติ (Statistical STA) โดยจำลองพฤติกรรมความไม่แน่นอนของความล่าช้า (Propagation Delay) ของแต่ละเซลล์เป็นเส้นโค้งระฆังคว่ำตามหลักการทางสถิติ (Gaussian Distribution) แทนการคำนวณแบบจำกัดมุมอับ (Deterministic Corners) วิธีนี้กลายเป็นมาตรฐานภาคบังคับในโหนดระดับ 5nm และต่ำกว่าเพื่อกำจัดผลกระทบของ Pessimism และลดปริมาณ Guard Band ให้ไม่สิ้นเปลืองพื้นที่ซิลิคอน
ความก้าวหน้าด้าน Signal Integrity (SI) & Power Optimization: ภายใต้ความกว้างของลายเส้นที่สเกลลง พื้นที่และระยะห่างระหว่างสายสัญญาณที่ชิดกันอย่างมากจะทำให้เกิด Crosstalk Delay และ Crosstalk Noise (Glitch) จากตัวเก็บประจุแฝง (Parasitic Coupling Capacitance) นอกจากนี้การใช้เทคนิค Clock Gating และการจัดการความต้องการทางพลังงานผ่านกระบวนการ Multi-Vt Optimization (การสลับใช้อุปกรณ์ที่มีแรงดันย้อนกลับต่างๆ กันเช่น Low-Vt เพื่อความเร็วสูง และ High-Vt เพื่อลดพลังงานรั่วไหล) ต้องถูกนำมาคำนวณร่วมกับ STA อย่างต่อเนื่องเพื่อรักษาขีดความสามารถการรันงานระดับสูง

05 เครื่องมือและอุปกรณ์

เครื่องมือซอฟต์แวร์วิเคราะห์และออกแบบ (Electronic Design Automation - EDA Tools) เป็นรากฐานสำคัญในห่วงโซ่อุปทานของการผลิตเซมิคอนดักเตอร์ โดยมีกลุ่มบริษัทชั้นนำสองรายครองตลาดอุตสาหกรรมในส่วนของการประมวลผล Static Timing Analysis และ Synthesis อย่างเด็ดขาด

Synopsys Inc. ถือเป็นผู้นำที่ครองตำแหน่งระดับอุตสาหกรรมด้วยเครื่องมือหลักอย่าง Design Compiler (DC) สำหรับแปลงสถาปัตยกรรมตรรกะ และมี PrimeTime (PT) ซึ่งเป็น "Gold Standard" หรือมาตรฐานทองคำที่ฟาวน์ดรีผลิตชิปทั่วโลกให้การยอมรับสูงสุดสำหรับการทำ STA Signoff ก่อนการส่งมอบแบบพิมพ์ นอกจากนี้ยังมี Formality ที่ใช้ตรวจสอบ Equivalence Checking ของรหัสวงจร

ทางด้านของคู่แข่งสำคัญอย่าง Cadence Design Systems ได้นำเสนอโซลูชัน Genus Synthesis Solution สำหรับการสังเคราะห์วงจรความเร็วสูง และมี Tempus Timing Signoff Solution ที่ได้รับความนิยมอย่างสูงจากสถาปัตยกรรมการประมวลผลคู่ขนานขนาดใหญ่ (Massively Parallel Processing) ซึ่งสามารถคำนวณ Timing ของการออกแบบระดับ SoC ขนาดใหญ่ที่มีขนาดเกตนับพันล้านตัวได้อย่างรวดเร็วและใช้หน่วยความจำน้อยลง นอกจากนี้ยังมี Conformal ที่สอดประสานด้านงานวิเคราะห์ทางตรรกะ

ในขั้นตอนการสกัดหาค่าความจุและแรงต้านทานทางฟิสิกส์ (RC Extraction) เครื่องมือจาก Siemens EDA (Mentor Graphics) ตระกูล Calibre จะถูกนำมาใช้เพื่อดึงค่า Parasitic ในรูปแบบไฟล์ SPEF (Standard Parasitic Exchange Format) เพื่อป้อนกลับเข้าสู่โปรแกรมวิเคราะห์ Timing อย่าง PrimeTime หรือ Tempus ให้ได้ค่าที่สอดคล้องกับสภาพความเป็นจริงหลังการจัดวาง (Post-Layout Simulation) มากที่สุด

06 การประยุกต์ใช้ในอุตสาหกรรม

ในภาคอุตสาหกรรมเซมิคอนดักเตอร์ยุคปัจจุบัน การส่งมอบพิมพ์เขียวเกตตรรกะที่ได้รับการตรวจสอบเสร็จสมบูรณ์เข้าสู่กระบวนการผลิตจริงของโรงงานรับจ้างผลิต (Foundry) เช่น TSMC, Samsung Foundry, และ Intel Foundry เรียกว่าขั้นตอน Tape-out ขั้นตอนนี้คือจุดที่ไม่อาจย้อนกลับได้ (Point of No Return) หากมีข้อผิดพลาดทางตรรกะหรือทางด้านเวลาหลุดรอดไปเพียงเล็กน้อย ค่าใช้จ่ายในการแก้ไขและทำหน้ากากผลิตใหม่ (Photomask Re-spin) สำหรับเทคโนโลยีระดับ FinFET หรือ GAA จะมีมูลค่าสูงตั้งแต่สิบล้านดอลลาร์ไปจนถึงเกือบหนึ่งร้อยล้านดอลลาร์สหรัฐ อีกทั้งยังสูญเสียโอกาสทางธุรกิจจากการส่งมอบสินค้าล่าช้า (Time-to-Market Delay)

ด้วยเหตุนี้ ข้อกำหนดสำหรับการทำ Timing Signoff จึงมีความเข้มงวดอย่างยิ่ง โดยดีไซน์ทั้งหมดจะต้องมีค่า Violation เป็นศูนย์ (0 Setup and Hold Violations) ภายใต้กระบวนการวิเคราะห์เชิงลึกแบบ Multi-Corner Multi-Mode (MCMM) ซึ่งจะตรวจเช็คพฤติกรรมการทำงานทุกๆ เงื่อนไขการสลับโหมดของชิป (เช่น Active Mode, Sleep Mode, Test Mode) ร่วมกับสภาวะแวดล้อมทางอุณหภูมิ แรงดันไฟฟ้า และสภาพเนื้อซิลิคอนที่ต่างกันหลายสิบรูปแบบ

ยิ่งไปกว่านั้น ในตลาดยานยนต์อัจฉริยะ (Automotive SoC) และอุปกรณ์ทางการแพทย์ ซึ่งต้องการความปลอดภัยระดับสูง ชิปเหล่านี้จะต้องสอดคล้องกับมาตรฐานอุตสาหกรรมระดับสากล เช่น AEC-Q100 และมาตรฐานความปลอดภัยทางระบบไฟฟ้าอิเล็กทรอนิกส์ยานยนต์ ISO 26262 ASIL-D การออกแบบและการทำ Static Timing Analysis จึงต้องเพิ่มกรอบวิเคราะห์ที่เผื่อรับกรณีอุปกรณ์ชราภาพ (Device Aging) และการทำงานภายใต้สภาพแวดล้อมที่โหดร้ายเป็นเวลานานนับทศวรรษ เพื่อเป็นเกราะป้องกันความปลอดภัยของผู้ใช้งานในโลกความเป็นจริง