CLP: How to verify UPF for back to back ISO

Verifying UPF Functional Equivalency for Back-to-Back Isolation Cells Using CLP (Conformal Low Power)

When implementing back-to-back isolation cells (e.g., for bidirectional signals or redundant isolation), ensuring functional equivalency between the original design and the UPF-annotated netlist is critical. Here’s how to verify this using Synopsys Conformal Low Power (CLP).


Step 1: Understand Back-to-Back Isolation Cells

  • Purpose:
  • Used when a signal crosses two power domains (e.g., PD_A → PD_B → PD_A).
  • Prevents floating values when either domain is powered off.
  • Structure:
  PD_A (ON) → Isolation Cell 1 → PD_B (OFF) → Isolation Cell 2 → PD_A (ON)

Step 2: UPF for Back-to-Back Isolation

Example UPF Commands


Step 3: CLP Verification Flow

Key Checks

  1. Isolation Enable Conditions
  • Verify isolation cells activate only when their domain is OFF.
  1. Clamping Behavior
  • Ensure outputs are clamped to 0/1/Z as specified.
  1. Bidirectional Signal Integrity
  • No combinational loops or undefined states.

CLP Script Example


Step 4: Debugging Common Failures

Failure 1: Isolation Cell Not Triggering

  • Cause: Incorrect -isolation_signal mapping.
  • Fix:
  set_isolation_control iso_AB -domain PD_A -isolation_signal power_enable_AB

Failure 2: Clamping Conflict

  • Cause: Back-to-back cells drive conflicting values (e.g., 0 vs. 1).
  • Fix:
  set_isolation iso_BA -clamp_value Z  # High-Z when conflicting

Failure 3: Combinational Loop

  • Cause: Bidirectional signal forms a loop when both domains are ON.
  • Fix:
  set_disable_domain_checking PD_A:PD_B  # Allow direct connection when both ON

Step 5: Advanced Checks

Power State-Dependent Verification

# Check behavior when PD_A=ON, PD_B=OFF
set_power_state PD_A -state {ON}
set_power_state PD_B -state {OFF}
verify

# Check behavior when PD_A=OFF, PD_B=ON
set_power_state PD_A -state {OFF}
set_power_state PD_B -state {ON}
verify

Waveform Debugging

# Dump waveforms for failing scenarios
write_waveforms -golden -revised -format VCD -output isolation_debug.vcd


Key Takeaways

CheckCLP CommandUPF Requirement
Isolation Enableset_power_stateCorrect -isolation_signal.
Clamping Valuereport_failing_pointsMatch -clamp_value in UPF.
Bidirectional Safetyset_disable_domain_checkingAvoid combinational loops.
Power-State Coverageverify -power_statesTest all ON/OFF combinations.

Conclusion

  1. UPF Must Define:
  • Isolation cells for both directions (iso_AB, iso_BA).
  • Clamping behavior (0/1/Z).
  1. CLP Must Verify:
  • Functional equivalency per power state.
  • No undefined states or loops.

Pro Tip: Use -debug mode in CLP to trace signal propagation through isolation cells.

Facebook
Twitter
LinkedIn
Email
Signup our newsletter to get update information, news, insight or promotions.