It seems like old nets are kept in the database even if they are not in the new eco netlist. For example, I had a change that made this code:
DTC23 \otpData_o_reg[spare2][0] (.Q(\otpData_o[spare2] [0]),
.D(n_18),
.CLRZ(p4),
.CLK(clkTrim17Lo));
DTC23 \otpData_o_reg[spare2][1] (.Q(\otpData_o[spare2] [1]),
.D(n_17),
.CLRZ(p4),
.CLK(clkTrim17Lo));
DTC23 \otpData_o_reg[spare2][2] (.Q(\otpData_o[spare2] [2]),
.D(n_15),
.CLRZ(p4),
.CLK(clkTrim17Lo));
DTC23 \otpData_o_reg[spare2][3] (.Q(\otpData_o[spare2] [3]),
.D(n_16),
.CLRZ(FE_OFN235_porZ),
.CLK(clkTrim17Lo));
Change to this:
DTC23 \otpData_o_reg[spare2][0] (.Q(NVM_TRACKER_SEL),
.D(n_18),
.CLRZ(p4),
.CLK(clkTrim17Lo));
DTC23 \otpData_o_reg[spare2][1] (.Q(NVM_BOOST_DIS),
.D(n_17),
.CLRZ(p4),
.CLK(clkTrim17Lo));
DTC23 \otpData_o_reg[spare2][2] (.Q(NVM_SYS_ALT_SEL),
.D(n_15),
.CLRZ(p4),
.CLK(clkTrim17Lo));
DTC23 \otpData_o_reg[spare2][3] (.Q(otpData_spare2_3),
.D(n_16),
.CLRZ(FE_OFN235_porZ),
.CLK(clkTrim17Lo));
So, I am only changing the output net to a new name. When I do this, Encounter takes the old names (i.e. \otpData_o[spare2] [0]) and defines internal wires for them like this:
wire \SPARE[19] ;
wire \SPARE[20] ;
wire \SPARE[21] ;
wire \\otpData_o[spare2] [0] ;
wire \\otpData_o[spare2] [1] ;
wire \\otpData_o[spare2] [2] ;
wire \\otpData_o[spare2] [3] ;
The “\\” is keeping the database from saving. I get this error when trying to save:
**ERROR: (ENCOAX-156): OA Exception : Input name (or member): \\otpData_o[spare2] [0] has improper bus syntax..
**ERROR: (ENCOAX-426): Error in creating EMH hierarchy.
TIMER: oaOut total process: 0h 0m 0.05s cpu {0h 0m 0s elapsed} Memory = 0.0
**ERROR: (ENCIMEX-7323): Could not save design into OA database.
Does anyone know a way to tell Encounter not to name it with \\ or how to remove the old physical wires from the database?? This is a postMask ECO, so I cannot re-synthesize.
Thanks!