SemiMatrix / TOPICS / COVERAGE-DRIVEN VERIFICATION
SEMICONDUCTOR — DEEP DIVE

Coverage-Driven Verification:
Coverage-Driven Verification

ENGINEERING

01 บทนำ: Cdv คืออะไร

ในโลกของการออกแบบ IC ที่มีความซับซ้อนสูง การทำ Coverage-Driven Verification (CDV) ถือเป็นกระบวนการหัวใจสำคัญที่ช่วยรับประกันคุณภาพและความถูกต้องของ RTL ก่อนส่งเข้าสู่กระบวนการ Physical Implementation โดย CDV ไม่ได้เป็นเพียงการเขียน Testbench แต่เป็นระเบียบวิธีที่เน้นการวัดผล (Metrics) เพื่อยืนยันว่าฟังก์ชันการทำงานทั้งหมดได้ผ่านการทดสอบอย่างครบถ้วนแล้ว

ความสำคัญของ CDV อยู่ที่การจัดการกับ Design Space ที่มีขนาดมหาศาลซึ่งวิธีการแบบ Directed Testing แบบเดิมไม่สามารถครอบคลุมได้ทั้งหมด CDV จึงเข้ามาผสานการใช้ Constrained-Random Simulation ร่วมกับ Functional Coverage เพื่อให้มั่นใจว่าทุก Corner case, FSM state, และ Data path สำคัญถูกกระตุ้นให้ทำงานได้อย่างถูกต้องตาม Specification ของระบบ

📍 CAREER ROADMAP CONTEXT
STAGE 03 — FUNCTIONAL VERIFICATION: Verification & Coverage
ตรวจสอบ design ด้วย UVM testbench, coverage-driven verification, constrained-random simulation และ formal verification (property checking)
Tools: Cadence Xcelium, Synopsys VCS, Questa Formal, Jasper Gold
Related: UVM / OVM Testbench · Formal Verification · Lint & CDC Checking
Path: IC Design Engineer

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

หัวใจสำคัญของ CDV คือการคำนวณความครอบคลุม (Coverage Metrics) ซึ่งสามารถนิยามได้ในเชิงปริมาณผ่านสมการ $Coverage = \frac{\text{Covered Items}}{\text{Total Required Items}} \times 100\%$ โดยเป้าหมายสูงสุดคือการทำ 100% Functional Coverage เพื่อลดความเสี่ยงในการเกิด Bug ที่อาจหลุดรอดไปสู่ Silicon

ในเชิงตรรกะ CDV อาศัยการทำ Constrained-Random Stimulus Generation ซึ่งใช้หลักการของความน่าจะเป็นในการสุ่ม Input โดยมี Constraints กำหนดขอบเขตให้มีความสมเหตุสมผลตาม Protocol (เช่น AXI, PCIe) นอกจากนี้ยังมีการใช้ Formal Verification หรือ Property Checking ที่ใช้สูตรคณิตศาสตร์แบบ Mathematical Proofs เพื่อพิสูจน์คุณสมบัติของ Design เช่น $Assert: \forall t (Req_t \implies \exists \delta > 0 : Ack_{t+\delta})$ เพื่อยืนยันความถูกต้องในระดับ Proof โดยไม่ต้องใช้ Testbench

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

ขั้นตอนการทำ CDV ในระดับอุตสาหกรรมเริ่มต้นจากการสร้าง Verification Plan (VPlan) ซึ่งจะระบุคุณสมบัติที่ต้องทดสอบทั้งหมด จากนั้นจึงเริ่มพัฒนา UVM Testbench ที่มีองค์ประกอบหลักคือ Driver, Monitor, และ Scoreboard เพื่อเปรียบเทียบผลลัพธ์ระหว่าง Model กับ RTL โดยใช้แนวทาง Constrained-Random เพื่อสุ่มเงื่อนไขการทำงานที่คาดไม่ถึง

หลังจากได้ผลการ Simulation วิศวกรจะทำการตรวจสอบ Coverage Report หากจุดใดที่ Coverage ยังไม่ถึงเกณฑ์ที่กำหนด (Functional Gap) วิศวกรต้องปรับปรุง Constraints หรือเพิ่ม Directed Tests เพื่อให้ครอบคลุมสถานะนั้นๆ กระบวนการนี้จะทำซ้ำแบบ Iterative จนกว่า Coverage ทั้งหมดจะบรรลุเป้าหมาย ควบคู่ไปกับการรัน Linting และ CDC (Clock Domain Crossing) Checking เพื่อป้องกันปัญหาในระดับโครงสร้าง

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

ความท้าทายในระดับ Sub-5nm คือการจัดการกับ Verification Complexity ที่เพิ่มขึ้นแบบทวีคูณ เนื่องจาก Logic gates ที่หนาแน่นขึ้นและผลกระทบจาก Parasitic ที่ซับซ้อนทำให้การทำ Simulation รอนานหลายสัปดาห์ แนวทางแก้ไขในปัจจุบันจึงเป็นการใช้ Emulation/FPGA Prototyping เช่น Cadence Palladium หรือ Synopsys ZeBu เพื่อเร่งความเร็วในการรัน Test cases

นอกจากนี้ ในระดับ Advanced ยังต้องมีการทำ Formal Verification เพื่อตรวจจับ Deadlock หรือ Livelock ในวงจร Concurrent ที่ซับซ้อน รวมถึงการวิเคราะห์ Power-Aware Verification เพื่อให้มั่นใจว่าเมื่อมีการทำ Power Gating หรือ Dynamic Voltage and Frequency Scaling (DVFS) แล้ว วงจรยังคงทำงานได้ถูกต้องโดยไม่เกิดความเสียหายต่อข้อมูล (Data Integrity)

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

ใน Ecosystem ของ CDV เครื่องมือ EDA คือตัวกำหนดประสิทธิภาพในการทำงาน โดยผู้ให้บริการชั้นนำมีเครื่องมือมาตรฐานระดับอุตสาหกรรมดังนี้:

  • Simulation: Cadence Xcelium และ Synopsys VCS ถือเป็นหัวใจหลักในการรัน Parallel Simulation และรองรับ UVM มาตรฐาน
  • Formal Verification: Cadence JasperGold และ Questa Formal จาก Siemens เป็นเครื่องมือหลักในการทำ Mathematical Proofs และ Property Checking
  • Debugging & Analysis: ใช้ Verdi (Synopsys) ในการวิเคราะห์ Waveform และทำ Coverage Analysis เพื่อหาสาเหตุของความล้มเหลว (Root Cause Analysis)

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

บริษัท Semiconductor ชั้นนำอย่าง TSMC, Intel และ Samsung ให้ความสำคัญกับ CDV เป็นอย่างยิ่งในการออกแบบ SoCs สำหรับ AI และ 5G เนื่องจากต้นทุนการผลิต Mask set ใน Node ขั้นสูงมีมูลค่ามหาศาล การผิดพลาดเพียงจุดเดียว (Silicon Bug) อาจหมายถึงความเสียหายระดับร้อยล้านดอลลาร์และการล่าออกสู่ตลาด (Time-to-Market) ที่เสียเปรียบ

การประยุกต์ใช้ CDV อย่างเข้มงวดช่วยให้บริษัทเหล่านี้สามารถรักษามาตรฐานความน่าเชื่อถือ (Reliability) ในผลิตภัณฑ์ที่ใช้งานใน Data Center หรือยานยนต์ไร้คนขับ (Automotive IC) ซึ่งความผิดพลาดไม่สามารถเกิดขึ้นได้เลย ถือเป็นการขับเคลื่อนสำคัญใน Supply chain ทั่วโลกที่เน้น Zero-Defect Policy