Low-Power IC Design & UPF 3.0
Clock Gating, Power Domains, DVFS & IEEE 1801 Implementation
เจาะลึกศาสตร์การออกแบบวงจรรวมพลังงานต่ำพิเศษ: กลไกการลด Dynamic และ Static Leakage Power, การสร้างโครงข่าย Integrated Clock Gating (ICG), การคำนวณขนาดสวิตช์ตัดตอนพลังงาน (Sleep Transistors), วงจรรักษาสถานะ (Retention Latches), การแปลงระดับสัญญาณด้วย Level Shifters/Isolation Cells และการกำหนด Power Intent ผ่านมาตรฐาน IEEE 1801 (UPF 3.0)
01 นิยามและงบประมาณพลังงาน (The Power Wall Crisis)
ในยุคการประมวลผลประสิทธิภาพสูง (High-Performance Computing - HPC), อุปกรณ์พกพา 5G/6G, และชิปเร่งความเร็วปัญญาประดิษฐ์ (AI Accelerators) วงการเซมิคอนดักเตอร์ได้ก้าวเข้าสู่ภาวะ "The Power Wall" ซึ่งขีดจำกัดสูงสุดในการพัฒนาชิปไม่ได้ขึ้นอยู่กับจำนวนทรานซิสเตอร์ที่สามารถบรรจุลงไปได้อีกต่อไป แต่ถูกจำกัดด้วย "ปริมาณความร้อนที่สามารถระบายออกจากแพ็กเกจได้ (Thermal Design Power - TDP)"
Low-Power Design จึงไม่ใช่เพียงแค่การลดการกินแบตเตอรี่ในอุปกรณ์พกพา แต่เป็นกลยุทธ์เชิงสถาปัตยกรรมที่ช่วยป้องกันปัญหาชิปละลาย (Thermal Runaway), ลดปัญหาการตกของแรงดัน (Dynamic IR-Drop), และยืดอายุการใช้งานของอุปกรณ์จากปรากฏการณ์ Electromigration (EM)
Multi-Vt strategy, power gating (UPF/CPF), dynamic voltage frequency scaling (DVFS), FinFET / GAA parasitic effects, double patterning constraints
Tools: Synopsys Power Compiler, Cadence Joules, Ansys RedHawk-SC, Siemens Questa Power
Related: CMOS Digital Logic · Floorplanning & Power Planning · IR Drop & EM Analysis
Path: Low-Power Architect, SoC Integration Lead, Power Integrity Engineer
02 องค์ประกอบพลังงาน: Dynamic Power vs Static Leakage Power
พลังงานที่สูญเสียไปในวงจรรวมดิจิทัลจำแนกออกเป็น 2 กลุ่มใหญ่ทางฟิสิกส์:
03 โครงสร้าง Integrated Clock Gating (ICG)
เครือข่ายสัญญาณนาฬิกา (Clock Tree) มักกินพลังงานไดนามิกสูงถึง 30%–50% ของชิปทั้งตัว เนื่องจากสัญญาณนาฬิกามีอัตราการสลับสถานะสูงสุด ($\alpha = 1$) ตลอดเวลา การทำ Clock Gating จึงเป็นเทคนิคที่มีประสิทธิภาพสูงสุดในการตัดสัญญาณนาฬิกาออกจากกลุ่มรีจิสเตอร์ที่ไม่มีข้อมูลใหม่เข้ามาอัปเดต:
เครื่องมือ Logic Synthesis (เช่น Synopsys Design Compiler / Fusion Compiler) สามารถตรวจจับเงื่อนไขการคงค่าของรีจิสเตอร์ (Register Feedback Loops) จากโค้ด RTL และทำการแทรกเซลล์ ICG เข้าสู่โครงสร้างวงจรโดยอัตโนมัติ (Automated ICG Insertion)
04 สถาปัตยกรรม Power Gating และการคำนวณสวิตช์ตัดตอน (MTCMOS)
การทำ Clock Gating ลดได้เฉพาะพลังงานไดนามิก แต่ไม่ได้ลดกระแสรั่วไหลสถิต (Leakage) เลย การแก้ปัญหาในบล็อกวงจรที่ไม่ได้ใช้งาน (เช่น โมดูลถอดรหัสวิดีโอ หรือคอร์ประมวลผลที่กำลังสลีป) จึงต้องใช้เทคนิค Power Gating โดยการตัดการเชื่อมต่อระหว่างวงจรและรางไฟเลี้ยงหลักด้วยทรานซิสเตอร์สวิตช์ (Sleep Transistors / MTCMOS):
การควบคุม Inrush Current และ State Retention (SRPG)
ในจังหวะที่ปลุกโดเมนพลังงานให้ตื่นขึ้นมา (Wake-up Sequence) การเปิดสวิตช์พร้อมกันหมดจะทำให้เกิดกระแสกระชากขนาดมหาศาล (Inrush Current) ดึงให้แรงดันของรางไฟข้างเคียงตกวูบ (Ground Bounce / VDD Droop) วิศวกรจึงต้องจัดเรียงการเปิดสวิตช์แบบเป็นทอดๆ สลับกัน (Daisy-Chained Buffer Network) พร้อมทั้งใช้ State Retention Power Gating (SRPG) ซึ่งมีเซลล์ Balloon Latch ที่ต่อไฟเลี้ยงจากโดเมน Always-On คอยเก็บข้อมูลสำคัญไว้ก่อนปิดเครื่อง
05 เซลล์เชื่อมต่อข้ามโดเมน: Level Shifter & Isolation Cells
ในระบบ System-on-Chip (SoC) สมัยใหม่ วงจรจะถูกแบ่งออกเป็นหลายโดเมนที่มีแรงดันไฟฟ้าแตกต่างกัน (Multi-Voltage) และบางโดเมนสามารถดับไฟได้ การเชื่อมต่อสัญญาณข้ามเขตแดนเหล่านี้ต้องการเซลล์พิเศษเพื่อความปลอดภัยของระบบ:
| เซลล์เชื่อมต่อเฉพาะทาง | สภาวะการใช้งาน | กลไกทางวิศวกรรม |
|---|---|---|
| Level Shifter (Low-to-High) | ส่งสัญญาณจากโดเมนแรงดันต่ำ (เช่น 0.6V) ไปยังโดเมนแรงดันสูง (เช่น 0.9V) | หากต่อตรง สัญญาณ 0.6V จะไม่สามารถปิดทรานซิสเตอร์ pMOS ในโดเมน 0.9V ได้อย่างสมบูรณ์ เกิดกระแสรั่วไหลลัดวงจรขนาดมหาศาล วงจร Level Shifter ใช้โครงสร้าง Cross-Coupled Level Translator เพื่อขยายสวิงอย่างสมบูรณ์ |
| Level Shifter (High-to-Low) | ส่งสัญญาณจากโดเมนแรงดันสูง (0.9V) ไปยังโดเมนแรงดันต่ำ (0.6V) | ป้องกันไม่ให้แรงดันสูงเกินไปอัดเข้าเกตออกไซด์บางของโดเมนแรงดันต่ำ ซึ่งอาจทำให้เกิด Gate Oxide Breakdown มักใช้โครงสร้างอินเวอร์เตอร์คู่ที่ต่อกับไฟโดเมนต่ำ |
| Isolation Cell (ISO) | ส่งสัญญาณจากโดเมนที่สามารถปิดไฟได้ (Power-Gated) ไปยังโดเมนที่เปิดตลอดเวลา (Always-On) | เมื่อโดเมนต้นทางดับไฟ สายสัญญาณจะลอยตัวเคว้ง (Floating Node) ทำให้เกตที่รับสัญญาณเกิดการนำกระแสครึ่งๆ กลางๆ เซลล์ ISO จะทำการล็อกระดับสัญญาณเอาต์พุตให้เป็นลอจิก 0 หรือ 1 ที่ปลอดภัยตามคำสั่ง Isolation Enable |
| Always-On (AON) Buffers | สายสัญญาณควบคุม (เช่น Reset, Wake-up, Clock) ที่ต้องวิ่งตัดผ่านโดเมนที่กำลังปิดไฟ | เซลล์บัฟเฟอร์เหล่านี้ถูกสร้างขึ้นบน N-Well และรางไฟเฉพาะที่ต่อตรงกับ Always-On Power Grid เพื่อให้ส่งผ่านสัญญาณได้แม้โดเมนรอบข้างจะดับไฟมืดสนิท |
06 Dynamic Voltage and Frequency Scaling (DVFS & AVS)
เนื่องจากภาระงานของชิป (Workload) มีความแปรผันตลอดเวลา การให้ชิปรันที่ความเร็วและความดันสูงสุดตลอดเวลาจึงเป็นการสิ้นเปลือง เทคนิค DVFS จะปรับลดแรงดันและความถี่ลงพร้อมกันตามตาราง Operating Performance Points (OPP):
ในระดับก้าวหน้า ระบบ Adaptive Voltage Scaling (AVS) จะติดตั้งเซนเซอร์มอนิเตอร์กระบวนการผลิตและความร้อนบนตัวชิป (On-Chip In-Situ Timing Monitors / Critical Path Monitors) เพื่อปรับแรงดันลงมาอยู่ที่ระดับต่ำที่สุดเท่าที่ชิปตัวนั้นๆ จะยังทำงานได้ตามสเปกโดยไม่เกิดข้อผิดพลาด ชดเชยความผันผวนของ Process Variation เฉพาะชิปแต่ละตัว
07 การกำหนด Power Intent ด้วยมาตรฐาน IEEE 1801 (UPF 3.0 Flow)
เนื่องจากโค้ดภาษา RTL (Verilog / VHDL / SystemVerilog) ไม่มีไวยากรณ์สำหรับอธิบายแรงดันไฟฟ้า, สวิตช์ตัดไฟ, หรือโดเมนพลังงาน สมาคม IEEE จึงได้กำหนดมาตรฐาน IEEE 1801 (Unified Power Format - UPF) เพื่อใช้ประกาศเจตนารมณ์ด้านพลังงาน (Power Intent) ควบคู่ไปกับไฟล์ RTL ตั้งแต่ขั้นตอนสถาปัตยกรรมไปจนถึงการ Signoff:
# ============================================================================== # IEEE 1801 (UPF 3.0) LOW-POWER SPECIFICATION SCRIPT # ============================================================================== # 1. ประกาศโดเมนพลังงานหลัก (Always-On) และโดเมนที่สามารถสลีปได้ (CPU Core) create_power_domain PD_TOP create_power_domain PD_CPU -elements { u_cpu_core } # 2. สร้างพอร์ตและรางจ่ายไฟเลี้ยง (Supply Ports & Supply Nets) create_supply_port VDD_MAIN create_supply_port VSS_GND create_supply_net VDD_MAIN -domain PD_TOP create_supply_net VSS_GND -domain PD_TOP create_supply_net VDD_CPU_VIRTUAL -domain PD_CPU # 3. กำหนดสวิตช์ตัดต่อพลังงาน (Power Switch Cell Definition) create_power_switch SW_CPU \ -domain PD_CPU \ -input_supply_port { in VDD_MAIN } \ -output_supply_port { out VDD_CPU_VIRTUAL } \ -control_port { sleep_en u_pmu/cpu_sleep_b } \ -on_state { CPU_ON in {!sleep_en} } # 4. กำหนดกฎการแทรก Isolation Cells เมื่อโดเมน CPU ดับไฟ set_isolation ISO_CPU_TO_TOP \ -domain PD_CPU \ -isolation_power_net VDD_MAIN \ -isolation_ground_net VSS_GND \ -clamp_value 0 \ -applies_to outputs # 5. กำหนดตารางสถานะพลังงาน (Power State Table - PST) add_power_state PD_TOP.primary -state ACTIVE { -supply_expr { power == `{FULL_ON, 0.9} } } add_power_state PD_CPU.primary -state SLEEP { -supply_expr { power == `{OFF} } } \ -state ACTIVE { -supply_expr { power == `{FULL_ON, 0.9} } }
08 การบริหารพลังงานในโหนดระดับ Sub-2nm (GAAFET & CFET)
ในยุคสถาปัตยกรรมทรานซิสเตอร์แบบ Gate-All-Around (GAA Nanosheet) และ Complementary FET (CFET):
- Nanosheet Width Modulation: ในอดีต FinFET ถูกบังคับด้วยความสูงครีบแบบไม่ต่อเนื่อง (Fin Quantization) แต่ใน Nanosheet ผู้ออกแบบสามารถปรับขนาดความกว้างของแผ่นชีต ($W_{ns}$) ได้อย่างต่อเนื่อง ทำให้สามารถปรับจูนอัตราการขับกระแส ($I_{on}$) ให้พอดีกับโหลดความจุ ลดพลังงานสูญเปล่าที่เกิดจาก Over-designing
- Backside Power Delivery Network (BSPDN): การย้ายสายไฟเลี้ยงไปไว้ด้านหลังเวเฟอร์ ช่วยลดความต้านทาน $R_{grid}$ ลงอย่างมาก ทำให้สามารถลดแรงดันไฟเลี้ยง $V_{DD}$ ในระดับมิลลิโวลต์ได้โดยไม่สูญเสียความเร็ว ช่วยลดการกินพลังงานไดนามิกรวมของชิปทั้งระบบลงได้มากกว่า 15–20%