In reply to caowangyang:
You shouldn’t rely on the execution order of connected imp ports as this is a UVM BCL implementation aspect (not documented, allowed to change, etc.). Why don’t you rather cascade your second component by connecting it to the register predictor?
Something like:
reg2jtag_predictor.reg_ap.connect(reg_state.jtag_reg_imp);
Naturally, you’ll have to change your reg_state component to work with register items instead of JTAG item. This way you’ll ensure that register updates are done before any other code gets executed.