🧪 5.4 LVSの仕組みと等価性判定の論理

Understanding LVS and Logical Equivalence Checking


🎯 本節の目的|Objectives


🧪 LVSとは?|What is LVS?

LVS(Layout vs. Schematic) とは、以下の2つが等価かどうかを検証する工程です:

📌 等価性の確認により、製造されるチップが設計通り動作することを保証します。


🔧 使用ツール:Netgen|Tool: Netgen

Sky130 PDK には、LVS 用の設定ファイル(setup.tcl)が付属しています。
Netgen は、物理と論理のネットリストを比較して等価性を検証します。


🔍 LVS実行の基本手順(Netgen)|Running LVS with Netgen

【1】🧪 実行例:FSMモジュールのLVSチェック

netgen -batch lvs \
  "fsm_engine.spice fsm_engine" \
  "fsm_engine.scs fsm_engine" \
  setup.tcl | tee lvs_report.log
ファイル名 説明(JP) 説明(EN)
fsm_engine.spice Magicで抽出したレイアウトSPICE Extracted layout netlist
fsm_engine.scs Verilogを変換した参照SPICE Reference schematic netlist
setup.tcl Sky130付属のLVSルール設定 LVS rules provided in PDK

📋 LVSチェック項目の例|LVS Check Items

チェック項目
Check Item
🔍 内容
Description
ノード数一致
Node Count Match
ピン・配線のノード数が一致しているか
Matching number of nodes
接続関係一致
Connectivity Match
各ピンが正しく接続されているか
Correct wiring of each pin
デバイス一致
Device Match
トランジスタやセルの種類・数の一致
Same number and type of devices

⚠️ LVS不一致の原因と対策|Mismatch Causes and Solutions

原因
Cause
対策
Solution
ネット名不一致
Net name mismatch
Verilogと抽出結果の名前を統一する
Ensure consistent naming
抽出失敗(DRC未解決)
Extraction failure due to DRC errors
先にDRCを完全クリア
Clear all DRC issues first
I/Oピン未整合
I/O port mismatch
入出力の方向・命名を見直す
Review I/O declaration and order

✅ 本節まとめ|Summary


🔗 前後のリンク|Navigation