Automatic functional ECO is to find non-equivalent points in the logic cone under ECO, minimize the "Fix Scope" as shown in the Figure 1 by finding the proper non-equivalent boundary points.
If the initial Fix Scope is smaller, the tool can normally do better. There is practical way to reduce the initial Fix Scope size.
Figure 1: Functional ECO Fix Scope
The Fix Scope shown in the Figure 1 is decided by three non-equivalent points, A, B and C. Point A is to tie input port to zero in the parent level and it's an easy manual fix. Point B and C are extracted by the tool. If we use 'change_pin' command to fix Point A, the Fix Scope will be redefined and shrunk.
The following is the script to mix the change_pin and automatic ECO command fix_design:
After Point A is fixed, the Fix Scope is refined by Point B, C and a new point D. And it is greatly shrunk as shown in the Figure 2. Sometimes, the tool can do much better on the smaller Fix Scope.
Figure 2: Reduced ECO Fix Scope
For complicated ECO, manual intervene can help improve the ECO quality. Mixing Automatic and Manual ECO can get a much smaller ECO patch.
Check another Mixed Mode ECO example.